PPTP-VPN mit dem iPhone + Debian-Server
iPhoneBlog-Leser Philipp Wegner (E-Mail) hat uns das folgende PPTP-VPN Tutorial geschickt, um sich von Unterwegs in sein heimisches Netzwerk einzuwählen. Natürlich mit einem iPhone.
Ohne andauerndes Port-Forwarding werdet ihr so auch ‚auf Reisen‘ zum Teil eures eigenen LANs und tunnelt neben VoIP, IM euren ganzen wichtigen NAS-Dokumenten den Inhalt eures Webservers, der nicht ins Internet gestellt werden soll.
**
Eine kurze Anmerkung vorweg: Als meinen eigenen Debian-Homeserver betreibe ich die Slug, ein NAS-Gerät von Linksys, welches kaum mehr als zwei Watt Stromverbrauch verzeichnet, aber ein vollwertiges Debian für ARM bereithält.
Schritt 1: Aufsetzen des Servers
Ab Kernel 2.6.15 wird bei Debian MPPE unterstützt. Mit dem Befehl
apt-get install pptpd
installiert ihr den pptp-Dienst. Danach in der /etc/pptpd.conf-Konfigurationsdatei die Lokale- und die Remote-IP setzen. Die lokale IP wird auf die IP des pptp-Servers eingestellt, die Remote-IP ist die Range, die an Geräte vergeben wird, die sich per VPN verbinden.
localip 192.168.1.23 remoteip 192.168.0.220-230
Die Einträge sind beispielhaft auskommentiert. Einfach die Raute wegnehmen und die IPs anpassen. Dann in der /etc/ppp/pptpd-options einen DNS-Server eintragen:
ms-dns 192.168.1.1
Auch dieser Eintrag ist auskommentiert schon vorhanden, weshalb eine weitere einfache Anpassung genügt. Jetzt können die Geräte auch Namen auflösen.
Schritt 2: User hinzufügen
Danach in der /etc/ppp/chap-secrets einen Benutzer hinzufügen. Für einen iPhone-User beispielsweise:
iphone pptpd "passwort" *
Das Passwort muss tatsächlich in Anführungszeichen geschrieben werden. Passwörter ab 12 Stellen gelten als sicher. ‚iphone‘ ist hier ein beispielhafter Benutzername. Als Server kann man ‚pptpd‘ eintragen.
Schritt 3: Server-Neustart
Damit alle Settings aktiv werden gilt:
/etc/init.d/pptpd restart
Schritt 4: iPhone konfigurieren
Dieser Screenshot ist eine mögliche Konfiguration für den oben genannten User:
Optional:
Ich weiß nicht ob man es braucht, aber ich habe noch IP-Forwarding aktiviert:
echo "1" > /proc/sys/net/ipv4/ip_forward
Der TCP-Port 1723 für pptp sollte vom Router auf den Server zeigen, womit der Leitweg dann auch korrekt funktionieren müsste.
Die Linux-Distibution DD-WRT für WiFi-Router unterstützt die PPTP-Einstellungen übrigens schon von Haus aus.