Inspiré par les réponses des autres, j'ai écrit un Shell Shell pour moins de frappes :
#!/usr/bin/env bash
__quickvpn(){
local username="your_username_here"
local password="your_pwd_here"
local url="your_host_here"
local vpn_tool="/opt/cisco/anyconnect/bin/vpn"
if [[ -z $1 && -e /opt/cisco/anyconnect/bin/vpn ]];then
echo "usage: on | off | state \n - on: connect\n - off: disconnect\n - state: connect status\n"
elif [[ $1 == "on" ]];then
print "${username}\n${password}\ny" | $vpn_tool -s connect $url > /dev/null 2>&1
elif [[ $1 == "off" ]]; then
print "${username}\n${password}\ny" | $vpn_tool -s disconnect $url > /dev/null 2>&1
elif [[ $1 == "state" ]]; then
$vpn_tool -s state | sed 's/>>//' | sed -n 's/\(state:.*\).*/\1/p;/state/q'
else
echo "cisco vpn not found"
fi
}
__quickvpn $1
Enregistrez ce qui précède dans un fichier Shell Shell nommé comme suit myvpn
sous /usr/local/bin
y chmod 744 /usr/local/bin/myvpn
vous pouvez alors l'utiliser comme suit :
myvpn on # connect
myvpn off # disconnect
myvpn state # connection status