Start the CISCO VPN client from the command line

python gitst

https://gist.github.com/alecthegeek/62b340ecb1480326eee1a13252ea83bb

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#!/usr/bin/env expect -f

# Start the CISCO VPN client on a Mac. Adapted from
# https://blog.felipe-alfaro.com/2014/05/23/automating-cisco-anyconnect-secure-mobility-client-on-mac-os-x/

set HOSTNAME vpn.server.com
set USER_NAME user.name
set PASSWORD password

spawn /opt/cisco/anyconnect/bin/vpn

expect {
"state: Connected" { send disconnect\n ; exp_continue; sleep 3 }
"state: Disconnected" {sleep 2;send "connect $HOSTNAME\n"}
}

expect -timeout 60 -re "Username: .+] "; send $USER_NAME\n
expect "Password: " ; send $PASSWORD\n
expect "state: Connected"; sleep 2; send exit\n