Cisco AnyConnect VPN – OS X-en, terminálból

A cégnél, ahol dolgozom, a tesztrendszerek csak VPN kapcsolaton keresztül elérhetőek, és sokszor hamarabb akarok SSH-n csatlakozni egy ilyen géphez minthogy kapcsolódnék a vállalat belső hálózatához.
Automatizálási céllal utána néztem, hogy hogyan lehet ezt terminálból, egy paranccsal megoldani és a következő weblapon találtam rá megoldást: gist.github.com
2 csomagot kell hozzá telepíteni, ezek a keyring és a pexpect:
pip install keyring pexpect
A python scriptet kicsit módosítani kellett (a segítséget ezúton is köszönöm GHost-nak), mert máskülönben hibát dobva leállt, továbbá a Keychain-be felvettem egy saját bejegyzést, az “account” a felhasználónevem lett, a “where” a csoport amiben vagyok, a “password” értelemszerűen a jelszó amivel csatlakozom.
A script-et innét tudod letölteni: VPN.py

Első használat előtt érdemes legalább egyszer parancssorból bejelentkezni VPN-re, hogy lásd mikre is van pontosan szükséged. Például nálunk csatlakozáskor nincs banner, ezért azokat a sorokat kikommenteltem.
Mikor mindent leteszteltem létre hoztam egy alias-t a scriptre mutatva, így csupán 3 betűvel megoldom a dolgot.
A Cisco AnyConnect 3.1.0407-es verziójával tökéletesen működik.