vpnc (for Cisco VPNs with 2-factor authentication) on Ubuntu
In order to connect to firewall and DRACs of our new Rackspace cluster, I had to setup a VPN connection. Rackspace gave us a Cisco ASA device which is firewall and vpn in one. In order to connect to the VPN the client needs to do 2-factor authentication.
At first I tried to install the necessary add-ons for Ubuntu's network-manager, but after I spent an hour or so trying to make it work, I took an alternate route.
Here's all you need to get started:
$ sudo aptitude install vpnc ...
Create a configuration file — I called mine
$ gksudo gedit /etc/vpnc/rackspace.conf
I put in the following:
IPSec gateway X.X.X.X IPSec ID GROUPNAME IPSec secret GROUPPASSWORD Xauth username USERNAME Xauth password PASSWORD
Obviously, the capitalized values need to be replaced:
IPSec gateway: the VPN's gateway/address
IPSec ID: the group's name
IPSec secret: the group's password
Xauth username: the username
Xauth password: the password associated with the username
If you're with Rackspace, they'll tell you those exact things when the firewall is provisioned. I gather other ISPs call them similar.
Using your VPN
Once the file is saved, just start the vpn connection:
$ sudo vpnc rackspace VPNC started in background (pid: 2691)...
Note: Just rackspace is plenty, not rackspace.conf or similar.
$ ping 172.30.0.144 PING 172.30.0.144 (172.30.0.144) 56(84) bytes of data. 64 bytes from 172.30.0.144: icmp_seq=1 ttl=64 time=114 ms 64 bytes from 172.30.0.144: icmp_seq=2 ttl=64 time=113 ms 64 bytes from 172.30.0.144: icmp_seq=3 ttl=64 time=113 ms ^C --- 172.30.0.144 ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 2003ms rtt min/avg/max/mdev = 113.766/114.199/114.866/0.552 ms
To disconnect it:
$ sudo vpnc-disconnect Terminating vpnc daemon (pid: 2691)