Cisco AnyConnect

Cisco AnyConnect client on Linux

Install

# sh vpnsetup.sh
Installing Cisco AnyConnect VPN Client ...
Extracting installation files to /tmp/vpn.zPbSov/vpninst657351097.tgz...
Unarchiving installation files to /tmp/vpn.zPbSov...
insserv: warning: script 'vpnagentd_init' missing LSB tags and overrides
insserv: warning: script 'vpnagentd_init' missing LSB tags and overrides
insserv: Default-Start undefined, assuming default start runlevel(s) for script `vpnagentd_init'
Note: This output shows SysV services only and does not include native
systemd services. SysV configuration data might be overridden by native
systemd configuration.
vpnagentd_init            0:off  1:off  2:off  3:on   4:off  5:on   6:off
Starting the VPN agent...
Done!

Init script

/etc/init.d/vpnagentd_init

Basically, it does the following:

modprobe tun
/opt/cisco/vpn/bin/vpnagentd

Installed files

/opt/cisco/vpn/bin/vpn_uninstall.sh
/opt/cisco/vpn/bin/vpnagentd
/opt/cisco/vpn/bin/vpnui
/opt/cisco/vpn/bin/vpn
/opt/cisco/vpn/bin/manifesttool
/opt/cisco/vpn/bin/vpndownloader
/opt/cisco/vpn/bin/vpndownloader.sh
/opt/cisco/vpn/lib/libssl.so.0.9.8
/opt/cisco/vpn/lib/libcrypto.so.0.9.8
/opt/cisco/vpn/profile/AnyConnectProfile.xsd
/opt/cisco/vpn/profile/AnyConnectProfile.tmpl
/opt/cisco/vpn/script
/opt/cisco/vpn/pixmaps
/opt/cisco/vpn/pixmaps/systray_notconnected.png
/opt/cisco/vpn/pixmaps/vpnui48.png
/opt/cisco/vpn/pixmaps/company-logo.png
/opt/cisco/vpn/pixmaps/systray_quarantined.png
/opt/cisco/vpn/pixmaps/systray_disconnecting.png
/opt/cisco/vpn/pixmaps/cvc-configure.png
/opt/cisco/vpn/pixmaps/systray_reconnecting.png
/opt/cisco/vpn/pixmaps/cvc-info.png
/opt/cisco/vpn/pixmaps/systray_connected.png
/opt/cisco/vpn/pixmaps/cvc-connect.png
/opt/cisco/vpn/pixmaps/cvc-disconnect.png
/opt/cisco/vpn/pixmaps/cvc-about.png
/opt/cisco/vpn/VPNManifestClient.xml
/opt/cisco/vpn/update.txt
/opt/cisco/vpn/AnyConnectLocalPolicy.xsd
/opt/cisco/vpn/VPNManifest.dat
/opt/cisco/vpn/anyconnect-Linux_64-2.5.3046-k9-01125322122011.log

Running vpnagentd directly

-d debug (stays in foreground and handles signals)

-v version

-h help

# /opt/cisco/vpn/bin/vpnagentd -h
Cisco Systems VPN Agent (version 2.5.3046 )
Copyright (C) 1998-2010 All Rights Reserved.
usage: vpnagentd [-h] [-v] [-d] [-n <level]

Files

/var/run/vpnagentd.pid - pidfile (however, the init script uses killall...)

/opt/cisco/vpn/profile/ - profile directory for *.xml files

There might be an option for an iptables ruleset:

iptables v1.4.12.1: Couldn't load target `ciscovpn':No such file or directory

Logging

Via syslog:

Dec 22 01:39:09 carbo vpnagent[4103]: Cisco AnyConnect VPN Client Agent started, version 2.5.3046