RaspberryPi als PPTP-VPN-Server
Wenn man (aus welchem Grund auch immer) Zugriff auf ein anderes Netzwerk haben möchte, das direkte Mitlesen beim Surfen im Internetcafé unterbinden will oder einfach nur mal eine andere IP-Adresse braucht, dann ist man sicher schon mal auf den Begriff VPN gestoßen. Ein VirtuellesPrivatesNetzwerk – Netzwerktunnel oder so ähnlich. Nun kann man sich bei einem Anbieter für teuer Geld Produkte (CyberGhost, AvastVPN etc.) verkaufen lassen, in die man nicht „hineinschauen“ kann. Oder man greift sich seinen RaspberryPi und macht es selber. Es ist einfacher als gedacht!
Ich setze mal voraus, dass Raspbian oder eine vergleichbare Distribution installiert ist. Internetzugriff ist natürlich auch essentiell.
Als Erstes bringen wir den Pi auf den aktuellen Stand:
sudo apt-get update ; sudo apt-get upgrade ; sudo apt-get dist-upgrade
Dann testen wir die Vorbedingungen:
sudo modprobe ppp-compress-18
Keine Fehler? Dann kann es ja losgehen. Wir installieren den Server:
sudo apt-get install pptpd
Wenn dies erfolgreich geschehen ist, müssen noch ein paar Anpassungen in Konfigurationsdateien durchgeführt werden. Als erstes nehmen wir und die pptp.conf vor:
sudo nano /etc/pptp.conf
Darin wird folgende Zeile angepasst:
localip 192.168.0.1
Die IP-Adresse muss natürlich durch die Adresse des Pi’s ersetzt werden (per ifconfig herausfinden). Mit Strg+x schließen und speichern. Jetzt öffnen wir /etc/ppp/pptpd-options :
sudo nano /etc/ppp/pptpd-options
Und geben folgendes ein am Ende der Datei ein:
ms-dns 8.8.8.8
ms-dns 8.8.4.4
Die IP-Adressen könne so gelassen werden (wenn der Pi wie meinem im Rack hängt (PCextreme.nl o.ä.)) sollten aber hinter einem Router durch dessen IP ersetzt werden. Speichern und in der Datei /etc/ppp/chap-sectrets die Nutzernamen und Passwörter festlegen.
sudo nano /etc/ppp/chap-secrets
Beispiel:
# Secrets for authentication using CHAP
# client server secret IP adresses
nutzername * passwort *
Speichern. Und Service neustarten.
sudo service pptpd restart
Jetzt musst die IP-Weiterleitung aktiviert werden. Dazu wird /etc/sysctl.conf editiert:
sudo nano /etc/sysctl.conf
Jetzt net.ipv4.ip_forward=1 suchen oder einfügen. Speichern. Als letzten schreiben wir noch folgendes in /etc/rc.local vor exit 0:
sudo sysctl net.ipv4.ip_forward=1
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
Jetzt den Pi neustarten und: Fertig!