Juniper Network Connect not working on ubuntu 16.04

I recently needed to get this working as well. It's quite tricky. The main points:

  • You must install 32-bit Firefox (16.04 ships with the 64-bit version)
  • You must install 32-bit Oracle Java (not OpenJRE)
  • You must manually install the 32-bit Firefox plugin.

You cannot use the webupd8 Java installer to install Oracle's Java because it will always match your architecture and install the 64-bit version. Firefox will only run plugins that match its binary (32 or 64-bit).

Going through all of these steps:

  1. Purge your previous versions of Java: sudo apt-get purge openjdk* sudo apt-get purge oracle-java*
  2. Set up apt-get to retrieve 32-bit versions as an option. sudo dpkg --add-architecture i386 sudo apt-get update
  3. As in the original poster's guide, install the libraries needed by Juniper: sudo apt-get install libstdc++6:i386 lib32z1 lib32ncurses5 libxext6:i386 libxrender1:i386 libxtst6:i386 libxi6:i386
  4. Install Firefox 32-bit (this will automatically replace the 64-bit version): sudo apt-get install firefox:i386

  5. Manually download Oracle Java and install as described from this StackOverflow post or this Wiki. Make sure it's the 32-bit version. Here's the abbreviated installation instructions: mkdir /opt/java cp -r ~/Downloads/jre1.8.0_91 /opt/java/ update-alternatives --install /usr/bin/java java /opt/java/jre1.8.0_91/bin/java 1 update-alternatives --set java /opt/java/jre1.8.0_91/bin/java export JAVA_HOME="/opt/java/jre1.8.0_91"

  6. Now install the Firefox plugin. The other post recommends you put the plugin in the Firefox binary directory, but new versions of Firefox require you put plugins in your home directory under .mozilla/plugins: mkdir ~/.mozilla/plugins ln -sf $JAVA_HOME/lib/i386/libnpjp2.so ~/.mozilla/plugins/

  7. Restart Firefox and type about:plugins into the URL bar. You should see Java(TM) Plug-in 11.91.2 under the list.

    You can also confirm Java is working by visiting https://www.java.com/verify/

  8. Juniper looks in the wrong location for update-alternatives. Make a symlink from the real location to where Juniper will look for it: sudo ln -s /usr/bin/update-alternatives /usr/sbin/update-alternatives

Here are Oracle's official documentation, which I did not find helpful but it reinforces this solution as being correct:

  • Install Java: https://java.com/en/download/help/linux_install.xml
  • Installing the Firefox plugin: http://docs.oracle.com/javase/7/docs/webnotes/install/linux/linux-plugin-install.html

The OpenConnect VPN client has recently added support for Juniper VPN, supporting both TCP and UDP data transports.

I just had to install openconnect and execute command as explained here

# openconnect --juniper https://vpn.server.com/