Wie initiiere ich eine VPN-Verbindung über die Befehlszeile?

9

Ich möchte einige Mausklicks und Tastenanschläge speichern, indem ich eine VPN-Verbindung über die Befehlszeile initiiere. Gibt es ein Tool dafür in Mac OS X? Idealerweise sollte es den Namen und das Kennwort der VPN-Verbindung akzeptieren und die VPN-Verbindung starten.

Update: Ich spreche über den eingebauten VPN-Client für Cisco IPSec VPN.

Peter Štibraný
quelle
1
Es gibt zahlreiche VPN-Protokolle. Sprechen wir über die Protokolle, die von der integrierten VPN-Implementierung (PPTP, L2TP oder Cisco) unterstützt werden?
Sören Kuklau
Ja, ich spreche von einem in Mac integrierten VPN-Client, insbesondere "Cisco IPSec".
Peter Štibraný

Antworten:

10

Ihre beste Wahl scheint AppleScript zu sein:

tell application "System Events"
   tell current location of network preferences
       set VPNservice to service "VPN (L2TP) 2" -- name of the VPN service
       if exists VPNservice then connect VPNservice
   end tell
end tell

(von http://macscripter.net/viewtopic.php?id=22992 )

Ich bin mir nicht sicher, wie Sie das tun sollen, wenn Sie einen Benutzernamen und ein Passwort eingeben. Bei weiteren Skripten können Sie das vorderste Fenster öffnen, den Benutzernamen und das Kennwort eingeben und dann den Dialog senden. Da ich jedoch kein Cisco-VPN zum Testen habe, kann ich Ihnen nicht sagen, wie Sie das einrichten sollen.

Wenn Sie den eigentlichen Cisco VPN-Client installiert haben (was nicht erforderlich ist), können Sie einfach diesen Befehl verwenden:

open /Applications/VPNClient.app --args -c -user <YourUsername> -pwd <YourPassword> <ProfileNameToConnect>
Dan Udey
quelle
Ich habe keinen zusätzlichen Cisco VPN-Client installiert, ich verwende integriertes VPN in Mac. Danke, ich werde es versuchen.
Peter Štibraný
Ich würde empfehlen, das Passwort nicht in die Kommandozeile zu setzen. Es kann von anderen Benutzern gelesen werden.
Bahamat
@ Bahamat, klar, aber da ich der einzige Benutzer auf meinem Computer bin, ist es mir egal.
Peter Štibraný
Genau das, wonach ich gesucht habe, ABER wenn ich dieses Skript versuche, erhalte ich "Syntaxfehler: Zeilenende erwartet, aber gefundener Bezeichner" und es hebt das erste Vorkommen des Wortes "Ort" hervor.
@bahamat Wenn Sie nur die -cOption angeben , erhalten Sie die Eingabeaufforderung des GUI-Fensters für den Benutzernamen und das Kennwort (für das Standardprofil).
Haridsv