DD-WRT VPN: PPTP Tunnel mit 2 Routern
Wer schonmal eine VPN Brücke aufgebaut hat, weiß, dass es manchmal ziemlich nervig sein kann, wenn die Geräte nicht so wollen wie man selbst will. Daher möchte ich die Einrichtung mal nach erfolgreichem Aufsetzen so einer Brücke zwischen zwei DD-WRT geflashten Routern mit diesem kleinen Tutorial festhalten:
Folgendes soll realisiert werden:
(Computer1)—Subnet1—Router1 mit PPTP-Server—Internet—Router2 mit PPTP-Client—Subnet2—(Computer2)
Das Routing soll Bidirektional und über dynamisch vergebene ISP IP’s laufen.
Zur Verfügung stehen zwei Router mit DD-WRT firmware. (In meinem Fall ist dies eine LaFonera der Uraltgeneration mit der Firmware: DD-WRT v24-sp2 (08/07/10) std und ein Linksys WRT54GL V1.1 mit der FW: DD-WRT v24-sp2 (08/07/10) vpn)
Grundkonfig für Router 1 (Lafonera):
- Addresse: 192.168.1.1
- Netzmaske: 255.255.255.0
- Gateway: 0.0.0.0
- DHCP Range: 192.168.1.100-150
- DDNS: router1.no-ip.com (DDNS Account bei einem Dienst aus der Liste anlegen- s. Foto unten)
Grundkonfig für Router 2 (WRT54GL):
- Addresse: 192.168.2.1
- Netzmaske: 255.255.255.0
- Gateway: 0.0.0.0
- DHCP Range: 192.168.2.100-150
- DDNS: router2.no-ip.com
ROUTER 1:
- Im Webinterface einloggen, dann auf Setup>Basic Setup klicken.
- Router- und Hostnamen setzen
- Local IP Address auf 192.168.1.1 setzen
- Subnet Mask auf 255.255.255.0 setzen
- auf save klicken
DDNS einrichten:
Setup>DDNS
Dienst auswählen, bei dem 2 Accounts anlegen und die Accountdaten vom ersten im Webinterface eintragen:
Nun müssen wir eine Route anlegen, damit die Daten auch durch den VPN Tunnel gehen und nicht woanders hin.
Dazu zu Setup>Advanced Routing gehen und folgendes eintragen:
- Route Name: z.B. router2
- Metric: 0
- Destination LAN NET: 192.168.2.0
- Subnet Mask: 255.255.255.0
- Gateway: 192.168.1.190
- Interface: ANY
Da der PPTP-Server an seine Clients eigene IP-Adressen vergibt, muss man in der Route auch angeben, dass der Traffic dorthin umgeleitet werden muss- in dem Fall 192.168.1.190. 192.168.2.1 wird nicht funktionieren! Erst danach ist der Router 192.168.2.1 mit einem Ping erreichbar.
- Dann unter Security>Firewall Filter WAN NAT Redirection deaktivieren.
Nun wollen wir den PPTP-Server unter Services>VPN konfigurieren:
- PPTP-Server: Enable setzen
- Broadcast support: Enable
- Force MPPE Encryption: Enable (wir wollen ja nichts unverschlüsselt übertragen)
- DNS1&2: leer lassen
- WINS1&2: leer lassen
- Server IP. 192.168.1.1
- Client IP(s): 192.168.1.190-199 (Schreibweise exakt nach dem Muster und außerhalb der DHCP IP-Vergabeliste. Kann auch was anderes als 190-199 sein- sollte aber dann oben auch geändert werden. Mehr dazu gleich.)
- CHAP-Secrets: Router2 * Ganzgeheimespassworthiereinsetzen * (wichtig: zwischen den Sternchen muss eine Leerstelle sein!)
- Save und apply Settings anklicken
- Router neustarten: Administration>Reboot Router (ganz unten)
Der erste VPN-Client der sich später verbindet, wird dann die erste IP aus dem Range zugewiesen bekommen. in dem Fall ist das die 192.168.1.190. Daher muss diese IP auch in der Route stehen, wenn der Router2 sich verbindet. Und zum erneuten Route aufbauen sollte sich dann auch kein anderer verbinden, da sonst eine andere IP zugewiesen wird. Dann muss die Route angepasst werden.
ROUTER 2:
- Im Webinterface einloggen, dann auf Setup>Basic Setup klicken.
- Router- und Hostnamen setzen
- Local IP Address auf 192.168.2.1 setzen
- Subnet Mask auf 255.255.255.0 setzen
- auf save klicken
DDNS einrichten:
Setup>DDNS
Rest wie oben, nur die Accountdaten der 2. Adresse router2.no-ip.com eingeben.
Damit nun die Pakete auch auf die andere Seite kommen, gehen wir nun wieder zur Routeneinstellung unter: Setup>Advanced Routing
- Route Name: z.B. router1
- Metric: 0
- Destination LAN NET: 192.168.1.0
- Subnet Mask: 255.255.255.0
- Gateway: 192.168.1.1
- Interface: ANY
Da die IP des PPTP-Servers statisch ist, muss diese nun logischerweise unter Gateway stehen.
Nun zu den PPTP-Client Einstellungen unter Services>VPN.
- PPTP Client Options: Enable
- Server IP or DNS Name: router1.no-ip.com
- Remote Subnet: 192.168.1.0
- Remote Subnet Mask: 255.255.255.0
- MPPE Encryption: noipdefault mppe required
- MTU: 1450
- MRU: 1450
- NAT: Enable
- User Name: Router2
- Password: Ganzgeheimespassworthiereinsetzen
- Save & Apply Settings
Wenn der Router2 vorher eine andere lokale IP-Adresse hatte (Standard: 192.168.1.1) sollte er nach kurzer zeit nun unter 192.168.2.1 erreichbar sein!
Dann noch den zweiten Router rebooten unter Administration>Reboot Router
Dann warten und hoffen das alles klappt.
Theoretisch braucht der 2. Router keine DDNS Adresse. Aber falls man den Tunnel andersherum aufbauen möchte, oder zusätzlich noch einen 2. PPTP Server starten will macht das Sinn (z.b. um sich von außerhalb per VPN direkt einklinken zu können)
Das sollte es gewesen sein. 😉
Dieses Tutorial ist an das m.E. veraltete Originaltutorial aus dem DD-WRT Wiki angelehnt: http://www.dd-wrt.com/wiki/index.php/Point-to-Point_PPTP_Tunneling_with_two_DD-WRT
pptp ist doch schon lange als konzeptionell kaputt zu betrachten:http://m.heise.de/security/artikel/Der-Todesstoss-fuer-PPTP-1701365.html?from-classic=1
Nimm lieber OpenVPN
ja ich weiß, dass pptp nicht benutzbar ist 😉 openvpn tunnel tut kommt auch bald. ging nur darum es einmal auszuprobieren und festzuhalten.