We use the Cisco AnyConnect Secure Mobility Client at work, and it’s OK… My biggest issue is that I have several Cisco ASA systems that I need to connect to throughout the day, and our administrator has never gotten around to providing profiles that allow the AnyConnect client to remember the IP addresses or hostnames of the systems that I connect to. Using the script below I am able to quickly move form one VPN to another, without having to type in new addresses. As a side benefit, my credentials are stored in my Keychain, and thus they are remembered. It is good.
There is probably room for improvement. I would like to add some error handling, but that will have to wait for another day.
Also, you need to install the python modules ‘pexpect’ and ‘keyring’