4

I recently upgraded my Ubuntu from 16.04 to 18.04 (clean install, full wipe). Now I can no longer connect to the corporate network at my office (perhaps related to these bugs: bug 1, bug 2). What proved to fix this issue in Ubuntu 16.04 is the answer to this question; Downgrade wpa_supplicant to 2.1.

However, even with the linode repository, this fix can no longer be applied. There is no version for wpa_supplicant below 2.6 to the best of my knowledge for Ubuntu 18.04.

My question is this: How can I downgrade wpa_supplicant to 2.1 for Ubuntu 18.04?

Configuration needed for corporate the wifi connection:

  • Security: WPA & WPA2 Enterprise
  • Authentication: Protected EAP (PEAP)
  • Checkbox No CA certificate required.
  • Inner authentication: MSCHAPv2
pomsky
  • 68,507
Laurens
  • 253
  • 2
    Perhaps related are these launchpad issues:https://bugs.launchpad.net/ubuntu/+source/network-manager/+bug/1748839?comments=all & https://bugs.launchpad.net/ubuntu/+source/network-manager/+bug/1761003 – Laurens Jun 18 '18 at 07:54
  • I have not performed any of the proposed fixes to this answer and the launchpad issue to date. But the problem now seems resolved for me and others in the launchpad. I am not sure what changed, either a fix was pushed trough the regular Ubuntu 18.04 updates, or the corporation I work at have changed their Wi-Fi configuration. – Laurens Oct 11 '18 at 08:06

3 Answers3

3

I found a solution and it is working flawlessly. Here are the steps:

  1. Add Ubuntu Vivid and Xenial repos.

    $ 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. Update your repo list.

    $ sudo apt -y update
    
  3. Downgrade wpasupplicant and install 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. Setup priority for the recently installed packages.

    $ 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. Restart your computer.

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

noelbk
  • 103
Snydox
  • 137
  • 2
  • 9
  • 1
    You should add a warning to the answer or something, mixing repos is not a good idea in general. – pomsky Oct 06 '18 at 18:58
2

This is fixed sort of. This worked on Ubuntu 18.04 MATE.

Need to get https://launchpad.net/ubuntu/+source/wpa/2:2.4-1.1ubuntu1 version of wpa_supplicant.

Get those files ready to build:

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

with something like

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

Install dependecies:

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 

(these are described in the .dsc file)

then build it

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

and it should spit some .deb files to install

like:

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

You will have some problems if you are inexperienced, but this should give you somewhere to start....

I promise it worked for me with an Intel wireless (iwl firmware and driver) which couldn't connect to the wpa2 enterprise tls with auth certs. Now it works like it did in 16.04.

keywords to look up to help compile might be google:how to compile debian source code or https://wiki.debian.org/BuildingTutorial.

Vasco
  • 113
  • I tried this on Ubuntu-18.04, but it didn't work. Downgrading to wpasupplicant=2.1-0ubuntu7.3 and libssl1.0.0=1.0.2g-1ubuntu4.14 did though – noelbk Jan 04 '19 at 12:28
0

I've just downloaded an older version of wpasupplicant (2.4-1.1) and installed with:

dpkg -i wpasupplicant_2.4-1.1ubuntu1_amd64.deb

It solved my problem.

The .udeb file for this older version of wpasupplicant is available for download on Launchpad: wpasupplicant_2.4-1.1ubuntu1_amd64.deb

Nmath
  • 12,333