Skip to content

Instantly share code, notes, and snippets.

@mfr
Forked from alecthegeek/start_vpn.expect
Created July 10, 2019 17:21
Show Gist options
  • Save mfr/007b0049b7138bc237115252932c39c5 to your computer and use it in GitHub Desktop.
Save mfr/007b0049b7138bc237115252932c39c5 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