Cannot downgrade wpa_supplicant to fix Wi-Fi connection to a corporate network (WPA2/PEAP with no CA certificate) in Ubuntu 18.04

Solution 1:

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

Solution 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.