PPTP-Tunnel (IPv4) unter Debian-Linux einrichten (Anleitung)
Aus Portunity Wiki
Zeile 106: | Zeile 106: | ||
Die Default-Route kann wie folgt manuell gesetzt werden: | Die Default-Route kann wie folgt manuell gesetzt werden: | ||
- | <source lang="command">route add -net 0.0.0.0/0 ppp0</source | + | <source lang="command">route add -net 0.0.0.0/0 ppp0</source> |
Prüfen Sie bitte mit ifconfig, ob der portunity-Tunnel aktuell "ppp0" ist. Die Nummer kann sich schon mal ändern! z.B. ppp1. Wird der Tunnel abgebaut, wird die route automatisch gelöscht! | Prüfen Sie bitte mit ifconfig, ob der portunity-Tunnel aktuell "ppp0" ist. Die Nummer kann sich schon mal ändern! z.B. ppp1. Wird der Tunnel abgebaut, wird die route automatisch gelöscht! |
Version vom 13:11, 11. Aug. 2010
Diese Anleitung zeigt Ihnen in wenigen Schritten, wie Sie unter Linux (hier: Debian etch) einen PPTP - Tunnel mit einer statischen IP-Adresse (IPv4) einrichten.
Inhaltsverzeichnis |
Schritt 1: Paket installieren
Loggen Sie sich als "root" an Ihrem Server / Gateway ein und installieren Sie folgendes Debian Paket: "pptp-linux"
apt-get install pptp-linux
Nun gibt es das Verzeichnis "/etc/ppp". Hier sind die wichtigsten Config-Files für den PPTP-Tunnel. Ein kleines Was ist was:
- Verzeichnis: "peers" => Die wichtigsten Zugangsdaten und Einstellungen je Tunnel
- Verzeichnis: "ip-up.d" => Wird beim Tunnelaufbau ausgeführt (IPv4)
- Verzeichnis: "ip-down.d" => Wird beim Tunnelabbau (zusammenbruch) ausgeführt (IPv4)
- Datei: "chap-secrets" => Tunnelpasswörter
Schritt 2: Grundkonfiguration - peers
Legen Sie mit Ihrem Lieblingseditor im Verzeichnnis "/etc/ppp/peers" die Datei "portunity" an.
vi /etc/ppp/peers/portunity
Inhalt:
### Verbindungsziel - Portunity Server pty "pptp pptp.ffm.portunity.de --nolaunchpppd --nobuffer --timeout 10" ### PPTP - Loginname name vpn-pty/XXXXX ### Nach einer Trennung automatisch neu aufbauen persist ### MTU muss kleiner 1500 sein, da das PPTP-Protokoll ein TCP Paket vergrössert mtu 1400 ### Wird an die ip-up / ip-down Scripte übergeben zur eindeutigen Erkennung ipparam portunity # Terminate after n consecutive failed connection attempts. # # A value of 0 means no limit. The default value is 10. maxfail 0 # Soll der komplette Traffic durch den Tunnel geschickt werden? Default-Route! # HINWEIS: Gibt es bereits eine Route im System kann diese Option diese Route # leider nicht überschreiben, siehe dazu bitte weiter unten defaultroute #### Diverses remotename PPTP lock noauth refuse-eap nobsdcomp nodeflate #end
Mit "ESC ESC :wq ENTER" speichern und beenden Sie den vi-Editor
Anstelle "vpn-pty/XXXXX" geben Sie bitte Ihren PPTP-Loginnamen ein.
Nun muss das Passwort für den Tunnel noch in der Datei "chap-secrets im Verzeichnis "/etc/ppp" hinterlegt werden.
vi /etc/ppp/chap-secrets
Inhalt:
# Secrets for authentication using CHAP # client server secret IP addresses vpn-pty/XXXXX PPTP YYYYYY * #end
Anstelle "vpn-pty/XXXXX" geben Sie bitte wieder Ihren PPTP-Loginnamen ein und anstelle von "YYYYYY" Ihr PPTP-Passwort. (welches Sie vergeben haben. Nicht Ihr ISP-Suite Passwort!)
Sie sollten nun noch festlegen, das nur "root" Leserechte auf die Datei hat, damit niemand Ihr Passwort auslesen kann. Dies geht mit
chmod 600 /etc/ppp/chap-secrets
Besonderheit: Wir kennen natürlich nicht Ihren Rechner / Server, aber wir gehen davon aus, das Sie eine Firewall laufen haben. Die Firewall muss das Protokoll "GRE" und die Kommunikation zu unseren PPTP-Servern [TCP, UDP und Port 1723] durch-/zulassen!
Schritt 3: Erster Test des Tunnels
Tunnel aktivieren:
pon portunity
ifconfig eth0 .... ppp0 Protokoll:Punkt-zu-Punkt Verbindung inet Adresse:188.246.4.X P-z-P:188.246.4.1 Maske:255.255.255.255 UP PUNKTZUPUNKT RUNNING NOARP MULTICAST MTU:1400 Metric:1 RX packets:168585 errors:0 dropped:0 overruns:0 frame:0 TX packets:200554 errors:0 dropped:0 overruns:0 carrier:0 Kollisionen:0 Sendewarteschlangenlänge:3 RX bytes:17999794 (17.1 MiB) TX bytes:24537734 (23.4 MiB)
Es handelt sich um eine Point-2-Point Verbindung. Das Gateway auf Portunity Seite hat hier die: P-z-P:188.246.4.1
Schritt 4: Routen
Default Route setzen? Wenn Sie den kompletten Traffic durch den Tunnel schicken wollen, dann können Sie eine Defaultroute in den Tunnel setzen. Achten Sie nur darauf, das Ihr Server dann auch nur noch aus dem lokalen Netzsegment und durch den Tunnel erreichbar ist!
Route manuell setzen
Die Default-Route kann wie folgt manuell gesetzt werden:
route add -net 0.0.0.0/0 ppp0
Prüfen Sie bitte mit ifconfig, ob der portunity-Tunnel aktuell "ppp0" ist. Die Nummer kann sich schon mal ändern! z.B. ppp1. Wird der Tunnel abgebaut, wird die route automatisch gelöscht!
Route "bootfest" machen
Legen Sie mit Ihrem Lieblingseditor im Verzeichnnis "/etc/ppp/ip-up.d/" die Datei "portunity" an. Diese Datei wird nach erfolgreichem Tunnelaufbau automatisch ausgeführt.
vi /etc/ppp/ip-up.d/portunity
Inhalt:
#!/bin/sh -e # # Hilfe - Text: # --------------------------------------------------------------- # This script is called with the following arguments: # Arg Name Example # $1 Interface name ppp0 # $2 The tty ttyS1 # $3 The link speed 38400 # $4 Local IP number 12.34.56.78 # $5 Peer IP number 12.34.56.99 # $6 Optional ``ipparam'' value foo # --------------------------------------------------------------- # don't bother to restart postfix when lo is configured. if [ "$1" == "lo" ]; then exit 0 fi #if [ "$1" = "ppp0" ]; then if [ "$6" == "portunity" ]; then echo "`date +%b" "%e" "%H":"%M":"%S` Portunity: PPTP - ipparam: $6 Interface goeas up ($1). Now adding routing..." >> /var/log/messages route add -net 0.0.0.0/0 $1 fi exit 0 # ende der Datei
Die Datei muss natürlich ausführbar sein:
chmod 750 portunity
Erster Datentest: Bauen Sie nun den Tunnel einmal neu auf, damit die Route gesetzt wird:
poff portunity pon portunity
Nun können wir testen:
w3m http://www.portunity.de/ip
Wenn so etwas erscheint, läuft der Traffic nicht durch den Tunnel:
Ihre IP-Adresse lautet: 88.77.51.xx Hostname: dslb-088-051-023.pool.xxxx.net
Es muss Ihre Tunnel-IP ausgegeben werden dann läuft der Traffic durch den Tunnel:
Ihre IP-Adresse lautet: 188.246.4.x Hostname: meinptr.meinedomain.de
Tunnel abschalten:
poff portunity
Wenn sich der Tunnel nicht aufbaut, dann schauen Sie bitte im entsprechenden FAQ-Artikel nach: Der PPTP-Tunnel startet nicht unter Debian
Schritt 5: Tunnel bootfest machen
Den Tunnel komplett bootfest machen. Hierzu müssen wir 2 kleine Scripte anlegen und diese dann inter interfaces Datei eintragen. Dafurch wird der Tunnel immer aufgebaut, nachdem die Netzwerkkarte hochgefahren ist und abgebaut, bevor die Netzwerkkarte herunter fährt.
Anlegen der beiden Scripte:
START - Script
Für das Start-Script legen wir eine "up"-Datei an:
vi /etc/ppp/portunity-pptp-up.sh
Inhalt:
#!/bin/sh -e #### # Startet den Portunity: PPP - Tunnel # # Noch mal 2 Sekunden warten sleep 2 # Meldung bringen und Tunnel starten echo "`date +%b" "%e" "%H":"%M":"%S` Portunity - PPTP: Netzwork startet," \ " starting PPTP Tunnel to Portunity..." >> /var/log/messages /usr/bin/pon portunity #### IMMER mit ERFOLG enden, sonst fährt er das eth_x nicht hoch! exit 0 # ende der Datei
Die Datei muss natürlich ausführbar sein:
chmod 750 /etc/ppp/portunity-pptp-up.sh
STOP - Script
Und für das Stop-Script legen wir eine "down"-Datei an:
vi /etc/ppp/portunity-pptp-down.sh
Inhalt:
#!/bin/sh -e #### # Stoppt den Portunity: PPP - Tunnel # # Meldung bringen und Tunnel starten echo "`date +%b" "%e" "%H":"%M":"%S` Portunity - PPTP: Netzwork shutted down, " \ " stopping PPTP Tunnel to Portunity!" >> /var/log/messages /usr/bin/poff portunity # Noch 1 Sekunde warten sleep 1 #### IMMER mit ERFOLG enden, sonst fährt er das eth_x nicht hoch! exit 0 # ende der Datei
chmod 750 /etc/ppp/portunity-pptp-down.sh
Aktivieren der Scripte
Pürfen Sie zu erst, über welche Netzwerkkarte der Tunnel aufgebaut wird. Also welche Netzwerkkarte mit dem Internet verbinden ist. Meist "eth0", da nur eine eingebaut ist, sonst wissen Sie bestimmt wie Sie das prüfen.
vi /etc/network/interfaces
Inhalt:
# ... Auszug der Datei .... iface eth0 inet static address 192.168.10.xxx # Nur als Beispiel netmask 255.255.255.xxx # Nur als Beispiel gateway 192.168.10.xxx # Nur als Beispiel post-up /etc/ppp/portunity-pptp-up.sh pre-down /etc/ppp/portunity-pptp-down.sh # ... Auszug ende ...
Wichtige Hinweise:
- Seien Sie bitte sehr umsichtig beim Bearbeiten dieser Datei
- erstellen Sie sich zuvor besser eine Sicherungskopie "cp /etc/network/interfaces /etc/network/interfaces_sich"
- Die IP-Adressen sind Beispiele. Sie werden andere haben. Diese nicht ändern!
- Bei Fehlern fährt Ihr Rechner möglicherweise keine Netzwerkverbindungen mehr hoch!
Abschließende Hinweise
Wegen der Komplexität gehen wir in diesem Artikel nicht auch Dinge ein wie:
- IP-Netz routen
- Dienste an die neue statische IP binden
- autoamtisches starten des PPTP-Tunnels beim Rechnerstart
- PBR (Policy Based Routing)
Schauen Sie bitte in die entsprechenden FAQ Artikel, oder falls noch nicht vorhanden sprechen Sie uns bitte an: Supportmöglichkeiten