Jak zainicjować połączenie VPN z wiersza poleceń?

8

Chciałbym zapisać kilka kliknięć myszką i naciśnięć klawiszy, inicjując połączenie VPN z wiersza poleceń. Czy jest na to narzędzie w Mac OS X? Idealnie byłoby zaakceptować nazwę i hasło połączenia VPN i rozpocząć połączenie VPN.

Aktualizacja: Mówię o wbudowanym kliencie VPN dla Cisco IPSec VPN.

Peter Štibraný
źródło
1
Istnieje wiele protokołów VPN. Czy mówimy o protokołach obsługiwanych przez wbudowaną implementację VPN (PPTP, L2TP lub Cisco)?
Sören Kuklau,
Tak, mówię o wbudowanym kliencie VPN na Macu, a konkretnie „Cisco IPSec”.
Peter Štibraný

Odpowiedzi:

10

Najlepszym rozwiązaniem wydaje się AppleScript:

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

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

Jeśli chodzi o wprowadzanie nazwy użytkownika i hasła, nie jestem pewien, jak to zrobić. Dalsze skrypty mogą sprawić, że zobaczysz pierwsze okno i wprowadzisz nazwę użytkownika i hasło, a następnie prześle okno dialogowe, ale ponieważ nie mam Cisco VPN do przetestowania, nie mogłem powiedzieć, jak to skonfigurować.

Jeśli masz zainstalowanego klienta Cisco VPN (co nie jest konieczne), możesz po prostu użyć tego polecenia:

open /Applications/VPNClient.app --args -c -user <YourUsername> -pwd <YourPassword> <ProfileNameToConnect>
Dan Udey
źródło
Nie mam zainstalowanego dodatkowego klienta Cisco VPN, używam wbudowanego VPN na Macu. Dzięki, spróbuję tego.
Peter Štibraný
Nie polecam wpisywania hasła w wierszu poleceń. Może być odczytany przez innych użytkowników.
bahamat
@ bahamat, jasne, ale ponieważ jestem jedynym użytkownikiem na moim komputerze, nie obchodzi mnie to.
Peter Štibraný,
Dokładnie to, czego szukałem, ALE kiedy próbuję tego skryptu, pojawia się komunikat „Błąd składni: oczekiwany koniec wiersza, ale znaleziony identyfikator” i podkreśla on pierwsze wystąpienie słowa „lokalizacja”.
@ bahamat, jeśli podasz tylko -copcję, pojawi się okno GUI z nazwą użytkownika i hasłem (dla profilu domyślnego).
haridsv,