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:
Garm: This is very useful! Thank you very much