Skip to content

Instantly share code, notes, and snippets.

@richardsonlima
Forked from alecthegeek/start_vpn.expect
Created June 3, 2021 20:37
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save richardsonlima/f3d159bd3946ca4024e320a619596f74 to your computer and use it in GitHub Desktop.
Save richardsonlima/f3d159bd3946ca4024e320a619596f74 to your computer and use it in GitHub Desktop.
Start the CISCO VPN client from the command line
#!/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
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment