Z racji usunięcia przez Apple możliwości konfiguracji połączeń VPN PPTP poprzez GUI, trzeba sobie radzić inaczej – ale nadal bez żadnych dodatkowych aplikacji 😉
Do /etc/ppp/peers
dodajemy plik pptp
z zawartością np. taką jak poniżej:
debug
logfile /tmp/ppp.log
plugin PPTP.ppp
remoteaddress <ADRES_VPN>
redialcount 1
redialtimer 5
idle 1800
#mru 1320
mtu 1320
receive-all
novj 0:0
ipcp-accept-local
ipcp-accept-remote
#noauth
#refuse-pap
#refuse-chap-md5
refuse-eap
user <NAZWA_UŻYTKOWNIKA_VPN>
hide-password
#noaskpassword
#mppe-stateless
#mppe-128
require-mppe
nomppe-40
nomppe-128
mppe-stateful
passive
looplocal
password <HASŁO_VPN>
nodetach
defaultroute
ms-dns 8.8.8.8
usepeerdns
Code language: YAML (yaml)
Gdzie <ADRES_VPN>
, <NAZWA_UŻYTKOWNIKA_VPN>
i <HASŁO_VPN>
podstawiamy dane wg własnych potrzeb.
Do uruchamiania/zatrzymywania połączenia VPN można wykorzystać prosty skrypt AppleScript:
set pppStatus to do shell script "ps aux|grep '[p]ppd'|wc -l|awk {'print $1'}" with administrator privileges
if pppStatus > 0 then
set buttonStatus to display dialog "PPTP status: connected" buttons {"Disconnect", "Close"} cancel button "Close" default button "Disconnect" with title "PPTP VPN"
else
set buttonStatus to display dialog "PPTP status: disconnected" buttons {"Connect", "Close"} cancel button "Close" default button "Connect" with title "PPTP VPN"
end if
if button returned of buttonStatus is "Connect" then
display notification "Connecting PPTP VPN..."
do shell script "exec pppd call pptp >/dev/null 2>&1 &" with administrator privileges
delay 1
else if button returned of buttonStatus is "Disconnect" then
display notification "Disconnecting PPTP VPN..."
do shell script "exec kill -HUP `cat /var/run/ppp0.pid` >/dev/null 2>&1 &" with administrator privileges
delay 1
end if
Code language: AppleScript (applescript)
Leave a Reply