SSL VPN is one of the common modes of VPN that allows a remote user to connect to the corporate network. While SSL VPN can be done via a web browser using https, a more common way is to use a ssl-vpn-client.
Fig. 1. A compilation of SSL-VPN clients supported on contemporary operating systems. Officially supported Linux distributions are shown in Fig. 2.
Fig. 2 is an excerpt from the man NetExtender (Linux man page on NetExtender), which compiles the compatibility list- appliances and OS. As can be seen it also requires a working pppd (ppp daemon).
NOTE: Please note that Mac OS 10.12 and up do not support NetExtender.
The present study is based on Element, which is a Ubuntu based distribution, installed as a virtual machine on Hyper-V in Windows 10 .
Select NetExtender option and under Get NetExtender for Linux, select the desired version from the dropdown list.
The downloaded NetExtender file was extracted using tar (Fig. 5) CLI utility. One may consider using a GUI utility offered in a distribution. It extracts a directory called NetExtender client.
tar xzvf filename.tgz
Extracting the NetExtender.Linux.xxx.tgz file. The README file provides brief instructions.
NetExtender Client's GUI uses Java runtime. Therefore one has to install a Java Development Kit (JDK) and Java Runtime Environment (JRE). Without them, the NetExtender GUI will not be functional. However, one can still use it by the CLI commands, discussed later in this article. For the present study, only a JRE was installed.
NOTE: Java Runtime Environment (JRE). For the present study, openjdk was and Runtime were used.
Install NetExtender As suggested in the README file , NetExtender was installed by executing the installfile . In the example, below the command was executed from inside the NetExtender client. If you are running the command from a different location, please update the appropriate file path.
sudo ./install ... Set pppd to run as root [y/N]? y
NOTE: Installing NetExtender from the Package directory. Please notice the prompt Set pppd ... . One has to permit (y) NetExtender to run pppd as the root.
From GUI One can use the NetExtender Icon from the Applications . Accessing this depends on the User Interface (UI) of the distribution.
Operating NetExtender from the GUI control. A successful connection is indicated by the Status:Connected, Client IP, Sent, Received and Duration.
From CLI As pointed out that earlier, one may operate NetExtender from the CLI, which is also the only option if there is no JDK and JRE. NetExtender has a man page that can be accessed by man NetExtender .
man NetExtender the manual page. Please notice that one can invoke NetExtender by the command NetExtender and provide the parameters interactively. Alternatively, the parameters can be supplied in line with appropriate switches: -u (user name) -p (password) -d (domain).
Invoking NetExtender from the CLI. A successful connection provides a list of remote subnets accessible. Please notice that Control-C terminates an SSL-VPN session.