January 22, 2019

5 VPN Clients for Linux - page 2

Cisco, Juniper

  • January 18, 2011
  • By Eric Geier

PPTP Client

The PPTP Client (pptp-linux) works with PPTP-based VPN servers, such as offered in Microsoft Windows. It's licensed under the GNU General Public License (GPL) version 2 or later. It runs on Linux, FreeBSD, NetBSD and OpenBSD. It's also compatible with the Linux PPTP Server, many ADSL service providers, and Cisco PIX.

The PPTP Client supports 128-bit stateless encryption using MPPE. It also supports on-demand or persistent tunnels using pppd, psuedo-tty support and synchronous HDLC PPP encoding.

They offer great documentation with how-tos for many different Linux distributions. Configuration can be performed via the GUI (pptpconfig) or manually using configuration files and commands.


OpenVPN is an open source SSL/TLS-based VPN solution, offering both a server and client. In addition to the free community edition, they offer a premium edition called the OpenVPN Access Server. Authentication can be made via pre-shared secret keys, certificates, or usernames/passwords. OpenVPN clients are also implemented on Linux-based routers (such as DD-WRT, Tomato, and ZeroShell).

The OpenVPN client is configured via a config file (client.conf), located at /etc/openvpn. On a Linux desktop, a sample config file will reside at /usr/share/doc/packages/openvpn or /usr/share/doc/openvpn-2.0 if you installed from an RPM package. This contains settings compatible with the sample server config file, where changes need to be made based upon the server configuration. Rolling out a prefab config to your users with all the correct settings is easy since it's a plain text file, which should be located at /etc/openvpn. You must additionally replace the default ca file with the one used on the server. If you prefer certificate authentication, rather than username/password, you'll also need to replace the cert and key files with the ones generated for each user.

Once the config and certificate files are set, you can start a connection at the Terminal with the client conf file name:

openvpn client.conf

You can configure multiple connections by creating new config files with different names and specifying the file name at the command-line.


OpenL2TP offers both an open source L2TP VPN client and server, compatible with other L2TP/IPsec clients such as Microsoft Windows and Apple OS X. Their solution is designed to support enterprise and ISP environments with hundreds of sessions. For secure VPN access, the L2TP tunnels can be secured by IPSec. If you only want to use OpenL2TP for the client, you may want to disable the server functionality. The sample configuration file is located at /etc/openl2tpd.conf.

Eric Geier is the founder of NoWiresSecurity, which helps businesses easily protect their Wi-Fi networks with the Enterprise mode of WPA/WPA2 encryption by offering an outsourced RADIUS service. He is also a freelance tech writer, and has authored many networking and computing books for brands like For Dummies and Cisco Press.

Most Popular LinuxPlanet Stories