无法降级 wpa_supplicant 来修复 Ubuntu 18.04 中与公司网络(没有 CA 证书的 WPA2/PEAP)的 Wi-Fi 连接

无法降级 wpa_supplicant 来修复 Ubuntu 18.04 中与公司网络(没有 CA 证书的 WPA2/PEAP)的 Wi-Fi 连接

我最近将 Ubuntu 从 16.04 升级到了 18.04(全新安装,完全清除)。现在我无法再连接到办公室的企业网络(可能与这些错误有关:错误 1错误 2)。事实证明,在 Ubuntu 16.04 中修复此问题的答案是这个问题;降级wpa_supplicant到 2.1。

wpa_supplicant但是,即使有了 linode 存储库,此修复也无法再应用。据我所知,Ubuntu 18.04没有低于 2.6 的版本。

我的问题是:如何将 Ubuntu 18.04 的 wpa_supplicant 降级到 2.1?

企业wifi连接所需配置:

  • 安全性:WPA 和 WPA2 企业版
  • 身份验证:受保护的 EAP (PEAP)
  • 复选框不需要 CA 证书。
  • 内部身份验证:MSCHAPv2

答案1

我找到了一个解决方案,它运行完美。步骤如下:

  1. 添加 Ubuntu Vivid 和 Xenial 存储库。

    $ cat <<'EOF' | sudo tee /etc/apt/sources.list.d/vivid.list
    deb http://old-releases.ubuntu.com/ubuntu/ vivid main restricted universe multiverse
    deb http://old-releases.ubuntu.com/ubuntu/ vivid-updates main restricted universe multiverse
    deb http://old-releases.ubuntu.com/ubuntu/ vivid-security main restricted universe multiverse
    EOF
    
    $ cat <<'EOF' | sudo tee /etc/apt/sources.list.d/xenial.list
    deb http://archive.ubuntu.com/ubuntu/ xenial main restricted universe multiverse
    deb http://archive.ubuntu.com/ubuntu/ xenial-updates main restricted universe multiverse
    deb http://archive.ubuntu.com/ubuntu/ xenial-security main restricted universe multiverse
    EOF
    
  2. 更新你的 repo 列表。

    $ sudo apt -y update
    
  3. 降级 wpasupplicant 并安装 libssl。

    $ sudo apt -y --allow-downgrades install wpasupplicant=2.1-0ubuntu7.3
    
    $ sudo apt -y --allow-downgrades install libssl1.0.0=1.0.2g-1ubuntu4.14
    
  4. 设置最近安装的软件包的优先级。

    $ sudo echo -e "Package: wpasupplicant\nPin: release o=Ubuntu,n=vivid\nPin-Priority: 1001" | sudo tee /etc/apt/preferences.d/vivid
    
    $ sudo echo -e "Package: libssl1.0.0\nPin: release o=Ubuntu,n=xenial\nPin-Priority: 1001" | sudo tee /etc/apt/preferences.d/xenial
    
  5. 重启你的电脑。

致谢: http://viranzo.blogs.upv.es/2018/09/11/downgrade-wpa_supplicant-ubuntu-18-04

答案2

这是固定的。这在 Ubuntu 18.04 MATE 上运行良好。

需要获得https://launchpad.net/ubuntu/+source/wpa/2:2.4-1.1ubuntu1版本的wpa_supplicant

准备好要构建的文件:

wpa_2.4.orig.tar.xz                   1.7 MiB   a1e4eda50796b2234a6cd2f00748bbe09f38f3f621919187289162faeb50b6b8
wpa_2.4-1.1ubuntu1.debian.tar.xz    101.0 KiB   05668f7d4cc9111c3760622199006e726da0bd7929340106380d7aac92853d4e
wpa_2.4-1.1ubuntu1.dsc                2.6 KiB   26ece998f27884d4c80c85088ecb1fd4217b1da6ed227729499f626707ff9af3

类似于

dpkg-source -x wpa_2.4-1.1ubuntu1.dsc 

安装依赖项:

sudo apt-get install g++ debhelper libdbus-1-dev libssl1.0-dev libqt4-dev libncurses5-dev libpcsclite-dev libnl-3-dev libnl-genl-3-dev libnl-route-3-dev libpcap-dev libbsd-dev libreadline-dev pkg-config qt4-qmake docbook-to-man docbook-utils android-headers 

(这些在文件中有描述.dsc

然后建造它

cd wpa-2.4/
dpkg-buildpackage -us -uc -d

它会吐出一些.deb需要安装的文件

喜欢:

cd ..
sudo dpkg -i wpasupplicant_2.4-1.1ubuntu1_amd64.deb 

如果您缺乏经验,您可能会遇到一些问题,但这应该会为您提供一个起点......

iwl我保证它可以与无法使用身份验证证书连接到 wpa2 enterprise tls 的Intel 无线设备(固件和驱动程序)配合使用。现在它可以像在 16.04 中一样工作。

查找有助于编译的关键字可能是 google:如何编译 debian 源代码或https://wiki.debian.org/BuildingTutorial

答案3

我刚刚下载了旧版本的 wpasupplicant (2.4-1.1) 并安装了:

dpkg -i wpasupplicant_2.4-1.1ubuntu1_amd64.deb

它解决了我的问题。

您可以在 Launchpad 上下载此旧版本 wpasupplicant 的 .udeb 文件:wpasupplicant_2.4-1.1ubuntu1_amd64.deb

相关内容