Führen Sie den gesamten Online-Datenverkehr über eine PPTP-VPN-Verbindung aus

16

Ich würde gerne den gesamten ausgehenden Datenverkehr (insbesondere Torrent und Web) über eine PPTP-VPN-Verbindung (genauer gesagt ein StrongVPN.com-VPN) ausführen. Alles, was zum Einrichten und vor allem zum Starten der VPN-Verbindung benötigt wird, sollte über SSH erfolgen. Daher muss alles auf der Befehlszeile basieren.

Mein bisheriges Ziel ist es, ein Skript zu erstellen, um ein automatisch verbundenes, immer aktiviertes VPN-Skript zu erstellen.

Nur um sicher zu gehen: Es geht nicht darum, einen PPTP-Server auf dem pi einzurichten (dafür gibt es viele Tutorials), sondern sich mit einem PPTP-Server zu verbinden.

terman
quelle
Wie trenne ich mich? Ich habe die Verbindung hergestellt, aber ich kann nicht trennen ..
Jorrick Sleijster

Antworten:

19

Um zu starten, müssen Sie pptpclient installieren. Dies kann erreicht werden durch:

sudo apt-get install pptp-linux

Erstellen Sie als Nächstes eine Datei in / etc / ppp / peers mit einem beliebigen Namen und den folgenden Inhalten:

pty "pptp $VPNHOSTNAME --nolaunchpppd --debug"
name $USERNAME
password $PASSWORD
remotename PPTP
require-mppe-128
require-mschap-v2
refuse-eap
refuse-pap
refuse-chap
refuse-mschap
noauth
debug
persist
maxfail 0
defaultroute
replacedefaultroute
usepeerdns

Wo $VPNHOSTNAMEist Ihr VPN-Hostname, $PASSWORDist Ihr VPN-Passwort und $USERNAMEist Ihr VPN-Benutzername.

Nachdem Sie das getan haben, sollten Sie tun, sudo pon $FILENAMEwo $FILENAMEder Name der Datei ist, die Sie zuvor gespeichert haben.

Um Ihren VPN-Client beim Booten zu starten, folgen Sie den Anweisungen unter http://pptpclient.sourceforge.net/howto-debian.phtml (Punkt 8 oder 9, Abschnitt Hand configuration).

Eine alternative Methode, um Ihren VPN-Client beim Booten ausführen zu lassen, besteht darin, ein Skript /etc/init.dmit den folgenden Inhalten zu erstellen:

#! /bin/sh

case "$1" in
  start)
    pon $/etc/ppp/peers/FILENAME
    echo "PPTP Started"
    ;;
  stop)
    poff $/etc/ppp/peers/FILENAME
    echo "PPTP Stopped."
    ;;
  *)
    echo "Usage: /etc/init.d/blah {start|stop}"
    exit 1
    ;;
esac

exit 0

Dann renne:

update-rc.d [filename of script] defaults

Damit es beim Start ausgeführt wird.

hifkanotiks
quelle
Ehrfürchtig, du hast meinen Tag gemacht. Eine weitere Frage: Gibt es eine Möglichkeit zu überprüfen, ob eine Verbindung innerhalb eines Skripts hergestellt wurde?
terman
@terman Hmm, ich weiß es nicht, aber vom Lesen der Dokumentation denke ich nicht. Ich habe jedoch eine bessere Möglichkeit gefunden, das VPN beim Booten auszuführen. Ich werde es jetzt verknüpfen.
Hifkanotiks
Super, es hat bei mir funktioniert. Weißt du, wie man das mit einem geteilten Tunnel macht? Damit nur lokale Anfragen über das VPN abgesetzt werden und das Surfen im Internet größtenteils über die reguläre Verbindung erfolgt. Ich habe versucht , zu entfernen defaultrouteund , replacedefaultrouteaber es hat nicht funktioniert. Hast du irgendwelche Ideen dazu?
Scoop
Wenn ich dies ausführe, erhalte ich den Fehler In der Datei / etc / ppp / peers / provider:
3
Sie müssen chmod +x [filename of script]vor dem Laufenupdate-rc.d
fehlerhaft