How to setup Checkpoint Network SSL Extender on Ubuntu 13.10 64 bits

November 14th 2013 by Samuel Rossille

Some companies (as mine) use Checkpoint Network SSL Extender as their VPN solution.

Although Checkpoint Network SSL Extender supports linux, the installation is not as straightforward as it could, because the software doesn't come with a package, but just with an installation script that drops an executable on your disk. This is later used by the browser plugin. Dependencies ? Overrated!

If you don't have all the dependencies of the executable, il will still install, but the VPN client won't connect. And there is no feedback at all in the user interface. When running the browser from the console, we can see an interesting error:

snx: error while loading shared libraries: libpam.so.0: cannot open shared 
object file: No such file or directory

It looks like a dependency issue. Now let's identify the program with the dependency issues:

rossille@rossille-desktop: which snx
/usr/bin/snx

And now, let's identify the missing libraries:

rossille@rossille-desktop: sudo ldd /usr/bin/snx 
linux-gate.so.1 => (0xf7755000) 
libX11.so.6 => /usr/lib/i386-linux-gnu/libX11.so.6 (0xf7609000) 
libpthread.so.0 => /lib/i386-linux-gnu/libpthread.so.0 (0xf75ee000) 
libresolv.so.2 => /lib/i386-linux-gnu/libresolv.so.2 (0xf75d6000) 
libdl.so.2 => /lib/i386-linux-gnu/libdl.so.2 (0xf75d1000) 
libpam.so.0 => not found 
libnsl.so.1 => /lib/i386-linux-gnu/libnsl.so.1 (0xf75b8000) 
libstdc++.so.5 => not found 
libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xf7403000) 
libxcb.so.1 => /usr/lib/i386-linux-gnu/libxcb.so.1 (0xf73e2000) 
/lib/ld-linux.so.2 (0xf7756000) 
libXau.so.6 => /usr/lib/i386-linux-gnu/libXau.so.6 (0xf73de000) 
libXdmcp.so.6 => /usr/lib/i386-linux-gnu/libXdmcp.so.6 (0xf73d7000)

A little bit of research on google reveals that we that the packages "libpam0g" and "libstdc++5" provide the modules we need. So let's install them:

rossille@rossille-desktop: sudo apt-get install libpam0g libstdc++5

Problem: it says that these library are already installed:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
libpam0g is already the newest version.
libstdc++5 is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

Actually, snx is looking for 32 bit modules and I have 64bit version of the libraries installed here. So let's install the 32bit version:

rossille@rossille-desktop: sudo apt-get install libpam0g:i386 libstdc++5:i386

This times, the libraries install correctly. Let's see if we can use the VPN now... and it's a success:

Screenshot from 2013-11-17 07:19:23

Comments

Garm: This is very useful! Thank you very much