Using the VPNC Open-Source Client on UNIX Systems

VPNC is an open-source VPN client that is compatible with Cisco VPN setups. VPNC is much easier to configure than the Cisco client and works on almost every flavor of UNIX systems including Linux, Macs and BSD, as well as Ubuntu.

  • Install VPNC through your system's package management system (APT, ports, portage, etc). On Ubuntu, this would be:

    sudo apt-get install vpnc

  • Create a configuration file for the RPI Wireless and/or RPI External profile. Usually these files would be stored in /etc/vpnc/profile_name.conf. An example configuration file would contain the following:

    RPI External

    IPSec gateway
    IPSec id rpi
    IPSec secret see secret (RCS authentication required)

    # Only include the following lines if you want to store your username.and password
    # If they are not included, you will need to type in this information every time you connect to the VPN
    # Xauth username _YOUR_USERNAME_HERE_
    # Xauth password _YOUR_PASSWORD_HERE_

  • The RPI Internal configuration would be exactly the same except use as the gateway.

To connect to the VPN you would run one of the following commands as root or using sudo:

  • sudo vpnc -- This command would run VPNC using /etc/vpnc/default.conf, if it exists. If it does not, it would prompt for the connection information
  • sudo vpnc external -- This would run VPNC using /etc/vpnc/external.conf, if it exists.

VPNC can also be run with the full path to a configuration file instead of the specification of a relative path (based in /etc/vpnc) or profile name.