Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Select an option

  • Save pawel-t/c3e0fa9f23ffe377f69924bafd97e80d to your computer and use it in GitHub Desktop.

Select an option

Save pawel-t/c3e0fa9f23ffe377f69924bafd97e80d to your computer and use it in GitHub Desktop.

To install Pulse Secure for Ubuntu 20.04, it is a bit complicated since the support isn't great.

First, we'll want to install the deb file at http://go.pulsesecure.net/j5iN083NS00iv05qEfk0500. Once that is in your Downloads folder, you can run:

$ cd ~/Downloads
$ sudo dpkg -i ps-pulse-linux-9.1r4.0-b143-ubuntu-debian-64-bit-installer.deb

Now, we'll want to go into the pulse directory and install dependencies. We update the shell script file first to support Ubuntu 20.

$ cd /usr/local/pulse/
$ sudo sed -i "s/UBUNTU_VER\ \=\ 18\ \]/& \|\|\ [\ \$UBUNTU_VER\ \=\ 20 \]/" PulseClient_x86_64.sh
$ ./PulseClient_x86_64.sh install_dependency_packages

Next, we'll want to create an extras and debs folder inside the pulse folder.

$ mkdir /usr/local/pulse/extra
$ mkdir /usr/local/pulse/debs   

Then we'll want to download the following debs into /usr/local/pulse/debs/:

$ cd /usr/local/pulse/debs
$ sudo wget http://archive.ubuntu.com/ubuntu/pool/main/i/icu/libicu60_60.2-3ubuntu3_amd64.deb
$ sudo wget http://archive.ubuntu.com/ubuntu/pool/universe/w/webkitgtk/libjavascriptcoregtk-1.0-0_2.4.11-3ubuntu3_amd64.deb
$ sudo wget http://archive.ubuntu.com/ubuntu/pool/universe/w/webkitgtk/libwebkitgtk-1.0-0_2.4.11-3ubuntu3_amd64.deb

Next we will extract the debs into the extras folder:

$ cd /usr/local/pulse/extra
$ sudo dpkg -x /usr/local/pulse/debs/libicu60_60.2-3ubuntu3_amd64.deb .
$ sudo dpkg -x /usr/local/pulse/debs/libjavascriptcoregtk-1.0-0_2.4.11-3ubuntu3_amd64.deb .
$ sudo dpkg -x /usr/local/pulse/debs/libwebkitgtk-1.0-0_2.4.11-3ubuntu3_amd64.deb .

Then we'll want to add the library path to our shell startup file and for convience, we can alias the pulse secure command in your shell startup file with the following:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/pulse/extra/usr/lib/x86_64-linux-gnu/
alias vpn=/usr/local/pulse/pulseUi

Lastly, we just want to make sure to source that same shell startup file so the changes are loaded. We can then startup the client using:

$ vpn

Resources

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment