DD-WRT als OpenVPN Server
Hallo,
ich habe einen DD-WRT Router (Netgear Router mit DD-WRT v24-sp2 (03/25/13) std) und wollte diesen als OpenVPN-Server laufen lassen. Ich bin dieser Anleitung hier gefolgt und OpenVPN Server installieren auf pfSense Firewall, Mikrotik. DD-WRT oder GL.inet Router bekomme eine Verbindung zwar hin (wird grün). Nur kann ich nicht in das eigentliche IP Netz (192.168.1.X) zugreifen ...
Die Server-Konfiguration sieht wie folgt aus:
Die Client-Konfiguration (Windows 7):
und auf dem Router selbst führte ich dann wie in der Anleitung folgendes aus
Kann mir jemand sagen, was das Problem ist??? Im Grunde will ich im ersten Schritt, dass der Client von Extern auf das interne Netz zugreifen kann (am liebsten mit NetBIOS).
ich habe einen DD-WRT Router (Netgear Router mit DD-WRT v24-sp2 (03/25/13) std) und wollte diesen als OpenVPN-Server laufen lassen. Ich bin dieser Anleitung hier gefolgt und OpenVPN Server installieren auf pfSense Firewall, Mikrotik. DD-WRT oder GL.inet Router bekomme eine Verbindung zwar hin (wird grün). Nur kann ich nicht in das eigentliche IP Netz (192.168.1.X) zugreifen ...
Die Server-Konfiguration sieht wie folgt aus:
port 15000
proto udp
dev tun0
ca /tmp/openvpn/ca.crt
cert /tmp/openvpn/cert.pem
key /tmp/openvpn/key.pem
dh /tmp/openvpn/dh.pem
server 172.16.2.0 255.255.255.0
push "route 192.168.1.0 255.255.255.0"
push "dhcp-options DNS 192.168.1.1"
keepalive 10 120
comp-lzo
persist-key
persist-tun
verb 3
client
port 15000
proto udp
dev tun0
ca ca.crt
cert client1.crt
key client1.key
cipher AES-256-CBC
remote server.dyndns.org
resolv-retry infinite
nobind
persist-key
persist-tun
mute-replay-warnings
verb 3
mute 20
# Akzeptiert eingehende Anfragen am Port UDP 1194.
iptables -I INPUT 1 -p udp --dport 15000 -j ACCEPT
# Erlaubt den VPN Clients den Zugriff auf routerinterne Prozesse (Weboberfläche, SSH etc)
iptables -I INPUT 3 -i tun0 -j ACCEPT
# Erlaubt Verbindungen zwischen VPN Clients sofern "Client-to-Client" bei OpenVPN aktiviert ist.
iptables -I FORWARD 3 -i tun0 -o tun0 -j ACCEPT
# Erlaubt Verbindungen vom lokalen Netz ins VPN Netz und umgekehrt (br0 steht für LAN und WLAN).
iptables -I FORWARD -i br0 -o tun0 -j ACCEPT
iptables -I FORWARD -i tun0 -o br0 -j ACCEPT
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 232016
Url: https://administrator.de/contentid/232016
Ausgedruckt am: 05.11.2024 um 21:11 Uhr
20 Kommentare
Neuester Kommentar
Hi traller,
kommst Du denn per ping oder ssh (wenn sshd auf dem Router aktiviert ist) vom Client wenigstens auf den Router ?
Dann wären da noch die Logs und die Routingtabelle des Routers interessant, sonst wird das hier nur Rätsel raten.
Folgende Regel wäre nur bei einem Multiclienttunnel, für Dich also nicht zutreffend...
Gruß orcape
kommst Du denn per ping oder ssh (wenn sshd auf dem Router aktiviert ist) vom Client wenigstens auf den Router ?
Dann wären da noch die Logs und die Routingtabelle des Routers interessant, sonst wird das hier nur Rätsel raten.
Folgende Regel wäre nur bei einem Multiclienttunnel, für Dich also nicht zutreffend...
07. # Erlaubt Verbindungen zwischen VPN Clients sofern "Client-to-Client" bei OpenVPN aktiviert ist.
08. iptables -I FORWARD 3 -i tun0 -o tun0 -j ACCEPT
Auskommentieren oder weglassen.08. iptables -I FORWARD 3 -i tun0 -o tun0 -j ACCEPT
Gruß orcape
Zugriff mit Netbios über Layer3 ist so nicht möglich. Eine Namensauflösung aus deinem entfernten Netz kannst du so einfach nicht erreichen.
Due verbindest zwei Netze mit Open-VPN. Die müssen unterschiedlich sein. Die angegebene IP des Zielnetzes macht mich stutzig, da sie häufig default ist und damit auf beiden Seiten sein könnte.
Prüfe das mal mit dem Befehl tracert zielnetz-IP.
Gruß
Netman
Due verbindest zwei Netze mit Open-VPN. Die müssen unterschiedlich sein. Die angegebene IP des Zielnetzes macht mich stutzig, da sie häufig default ist und damit auf beiden Seiten sein könnte.
Prüfe das mal mit dem Befehl tracert zielnetz-IP.
Gruß
Netman
Hallo,
ich würde die Firewall erst dann aktivieren, wenn die VPN-Verbindung ohne Probleme läuft und nicht vorher !!!
Ausserdem gehe ich davon aus, dass sich dein DD-WRT-Server hinter einem (DSL)Router befindet, dann brauchst du in dem Router
eine statische Route ins VPN-Netz, sonst, weiss der Router nicht, wie er das VPN-Netz erreichen kann, also im DSL-Rouer trägst du ein:
Zielnetz: 172.16.2.0 (VPN-Netz)
Netmask: 255.255.255.0
Gateway: <die ip adresse von DD-WRT>
Gruß
m
ich würde die Firewall erst dann aktivieren, wenn die VPN-Verbindung ohne Probleme läuft und nicht vorher !!!
Ausserdem gehe ich davon aus, dass sich dein DD-WRT-Server hinter einem (DSL)Router befindet, dann brauchst du in dem Router
eine statische Route ins VPN-Netz, sonst, weiss der Router nicht, wie er das VPN-Netz erreichen kann, also im DSL-Rouer trägst du ein:
Zielnetz: 172.16.2.0 (VPN-Netz)
Netmask: 255.255.255.0
Gateway: <die ip adresse von DD-WRT>
Gruß
m
@matthew77,
Er spricht hier aber nur einem Netgear Router mit DD-WRT. Nicht von einem vorgeschaltet Router.
Genau so gut kann da nur ein DSL- Modem stehen.
Selbst wenn dort ein Router steht, dann ist der Begriff statische Route wohl nicht korrekt, da meinst Du sicher ein Portforwarding.
Das ist aber bei einem OpenVPN-Tunnel nicht notwendig.
Gruß orcape
Ausserdem gehe ich davon aus, dass sich dein DD-WRT-Server hinter einem (DSL)Router befindet, dann > brauchst du in dem Router eine statische Route ins VPN-Netz, sonst, weiss der Router nicht, wie er das
VPN-Netz erreichen kann
...das sich der TO bei der Beschreibung seiner Netzstruktur, nicht gerade mit "Ruhm bekleckert" hat, ist klar.VPN-Netz erreichen kann
Er spricht hier aber nur einem Netgear Router mit DD-WRT. Nicht von einem vorgeschaltet Router.
Genau so gut kann da nur ein DSL- Modem stehen.
Selbst wenn dort ein Router steht, dann ist der Begriff statische Route wohl nicht korrekt, da meinst Du sicher ein Portforwarding.
Das ist aber bei einem OpenVPN-Tunnel nicht notwendig.
Gruß orcape
Hi,
mfg
Cthluhu
Zitat von @orcape:
Selbst wenn dort ein Router steht, dann ist der Begriff statische Route wohl nicht korrekt, da meinst Du sicher ein
Portforwarding.
Das ist aber bei einem OpenVPN-Tunnel nicht notwendig.
Doch, wenn noch ein Router (oder so eine unsägliche Modem/Router Kombination wie man die von vielen Providern vorgesetzt bekommt) vorgeschalten ist muss schon Portforwarding betrieben werden. Zwar nicht auf dem Router auf dem OpenVPN läuft, sondern auf dem der davor hängt.Selbst wenn dort ein Router steht, dann ist der Begriff statische Route wohl nicht korrekt, da meinst Du sicher ein
Portforwarding.
Das ist aber bei einem OpenVPN-Tunnel nicht notwendig.
mfg
Cthluhu
@Cthluhu
Ich betreue einen Kunden, der einen Vodafone-DSL-Anschluß mit einer Easy-Box hat.(statische IP´s Router-Betrieb) Am LAN der Easy-Box hängt ein WRT54 mit DD-WRT und OpenVPN mit seinem WAN-Anschluß.
Hier brauchte keine Portweiterleitung gemacht werden, der Tunnel funktioniert auch ohne den Port 1194 weiter zu leiten.
Ich bring da mal noch ein Zitat von Aqui....
Doch, wenn noch ein Router (oder so eine unsägliche Modem/Router Kombination wie man die von vielen Providern vorgesetzt bekommt)
vorgeschalten ist muss schon Portforwarding betrieben werden.
Da muss ich Dir leider widersprechen.vorgeschalten ist muss schon Portforwarding betrieben werden.
Ich betreue einen Kunden, der einen Vodafone-DSL-Anschluß mit einer Easy-Box hat.(statische IP´s Router-Betrieb) Am LAN der Easy-Box hängt ein WRT54 mit DD-WRT und OpenVPN mit seinem WAN-Anschluß.
Hier brauchte keine Portweiterleitung gemacht werden, der Tunnel funktioniert auch ohne den Port 1194 weiter zu leiten.
Ich bring da mal noch ein Zitat von Aqui....
aqui am 03.03.2014 um 20:13 Uhr
Da nützt die Passthrough-Weiterleitung nichts.
Womit Kollege orcape Recht hat ! Sie wäre auch überflüssiger Unsinn, denn OpenVPN ist ein SSL VPN Netzwerk.
Bei OpenVPN braucht rein gar nichts konfiguriert werden, da kann man beide Router einfach kaskadieren. Da immer der Client den VPN Aufbau
initiiert muss auch kein Port Forwarding konfiguriert werden im vorgeschalteten Router.
Gruß orcapeDa nützt die Passthrough-Weiterleitung nichts.
Womit Kollege orcape Recht hat ! Sie wäre auch überflüssiger Unsinn, denn OpenVPN ist ein SSL VPN Netzwerk.
Bei OpenVPN braucht rein gar nichts konfiguriert werden, da kann man beide Router einfach kaskadieren. Da immer der Client den VPN Aufbau
initiiert muss auch kein Port Forwarding konfiguriert werden im vorgeschalteten Router.
Wenn ein tracert dir zeigt, dass du keinen Pfad hast, was kümmerst du dich dann um andere Parameter.
Nichterreichbarkeit muss zuerst behoben werden.
Also das Routing.
Und erzähl doch mal, welche Netze du verbinden willst und warum du die Funktion des default Gateway nicht kennst.
Nichterreichbarkeit muss zuerst behoben werden.
Also das Routing.
Und erzähl doch mal, welche Netze du verbinden willst und warum du die Funktion des default Gateway nicht kennst.
bekomme eine Verbindung zwar hin (wird grün). Nur kann ich nicht in das eigentliche IP Netz (192.168.1.X) zugreifen ...
das grün bezieht sich wohl auf deine Erfahrung.
Hi traller,
laut Deiner Routing-Tabelle läuft bei Dir ein Multiclient-Tunnel, mit dem man normalerweise mehrere remote Standorte verbinden kann.
Du brauchst aber einen remote Access, d.h. der Tunnel sollte serverseitig, also auf dem Netgear, die IP 172.16.2.1 und auf Deinem Windows-Client die IP 172.16.2.2 haben. Ob das dann die Ursache für Dein nicht funtionierendes Routing ist, wird sich zeigen.
Der Tunnel steht, sonst würde das nicht in der Routing-Tabelle auftauchen.
Da Du in Deiner server.conf keinen Eintrag "client-to-client" stehen hast, vermute ich, das Du Serverseitig ein ccd-File hast, welches diesen Eintrag fälschlicherweise aufweist.
In diesem ccd-File, welches bei DD-WRT unter /tmp/openvpn zu finden ist, sollte nur den Eintrag "ifconfig-push 172.16.2.2 172.16.2.1" beinhalten.
Verbinde Dich mit einem Client mit dem Netgear und kontrolliere dieses File mit Putty, eine direkte Änderung ist zwar möglich, beim nächsten boot des Routers aber wieder im Urzustand, da /tmp "flüchtig" ist. Normalerweise werden alle Einträge über den GUI gemacht, dadurch werden alle erforderlichen Parameter beim boot des Routers übernommen.
In die server.conf (GUI), solltest Du dann aber noch den Eintrag "client-config-dir /tmp/openvpn-ccd" machen.(Pfad entsprechend anpassen)
Das ein Multiclienttunnel beim Routing Probleme macht, wenn eigentlich nur ein remote Access vorhanden ist, habe ich schon mehrfach feststellen müssen.
Es liegt hier sicher eine Fehlkonfiguration des Tunnels vor, auch wenn dieser sich aufgebaut hat.
Was bedeutet übrigens dieses Netz 192.168.56.0 255.255.255.0 in Deiner Routing-Tabelle ?
Gruß orcape
laut Deiner Routing-Tabelle läuft bei Dir ein Multiclient-Tunnel, mit dem man normalerweise mehrere remote Standorte verbinden kann.
Du brauchst aber einen remote Access, d.h. der Tunnel sollte serverseitig, also auf dem Netgear, die IP 172.16.2.1 und auf Deinem Windows-Client die IP 172.16.2.2 haben. Ob das dann die Ursache für Dein nicht funtionierendes Routing ist, wird sich zeigen.
Der Tunnel steht, sonst würde das nicht in der Routing-Tabelle auftauchen.
Da Du in Deiner server.conf keinen Eintrag "client-to-client" stehen hast, vermute ich, das Du Serverseitig ein ccd-File hast, welches diesen Eintrag fälschlicherweise aufweist.
In diesem ccd-File, welches bei DD-WRT unter /tmp/openvpn zu finden ist, sollte nur den Eintrag "ifconfig-push 172.16.2.2 172.16.2.1" beinhalten.
Verbinde Dich mit einem Client mit dem Netgear und kontrolliere dieses File mit Putty, eine direkte Änderung ist zwar möglich, beim nächsten boot des Routers aber wieder im Urzustand, da /tmp "flüchtig" ist. Normalerweise werden alle Einträge über den GUI gemacht, dadurch werden alle erforderlichen Parameter beim boot des Routers übernommen.
In die server.conf (GUI), solltest Du dann aber noch den Eintrag "client-config-dir /tmp/openvpn-ccd" machen.(Pfad entsprechend anpassen)
Das ein Multiclienttunnel beim Routing Probleme macht, wenn eigentlich nur ein remote Access vorhanden ist, habe ich schon mehrfach feststellen müssen.
Es liegt hier sicher eine Fehlkonfiguration des Tunnels vor, auch wenn dieser sich aufgebaut hat.
Was bedeutet übrigens dieses Netz 192.168.56.0 255.255.255.0 in Deiner Routing-Tabelle ?
Gruß orcape
Hi,
Ich verstehe zwar nicht, warum Du nun Dein Tunnelnetz von...
172.16.2.0/24 auf 192.168.66.0/24 geändert hast ?...ist so schon verwirrend genug.
Deine Client Routing-Tabelle weist übrigens einen Fehler auf (fett)....
Du kannst also so gar nicht in dieses Netz kommen.
Gruß orcape
im Ordner /tmp/openvpn/ccd ist keine einzige Datei
...dann füge mal "ifconfig-push 192.168.66.2 192.168.66.1" in die Server.conf ein und schau ob er dann ein Tunnelnetz mit 2 IP´s macht.Ich verstehe zwar nicht, warum Du nun Dein Tunnelnetz von...
172.16.2.0/24 auf 192.168.66.0/24 geändert hast ?...ist so schon verwirrend genug.
Deine Client Routing-Tabelle weist übrigens einen Fehler auf (fett)....
192.168.6.0 255.255.255.0 192.168.66.5 192.168.66.6 4256
..ausserdem fehlt eine Route auf 192.168.1.0/24.Du kannst also so gar nicht in dieses Netz kommen.
Gruß orcape
Hallo, ich bin auch gerade dabei mein OpenVPN-Server einzurichten. Ich habe jetzt schon wirklich diverse Anleitungen durchgearbeitet. Diese hier ist die letzte gewesen. Es kann nicht sein, dass auf jeder Seite geschrieben wird, dass es klappt, aber niemand postet eine vollständig funktionierende Config. Diese hier funktioniert auch nicht richtig. Mit den Zertifikaten habe ich keine Probleme.
Die Verbindung kann hergestellt werden.
Jetzt ist es so, dass ich zuletzt die Server-Config und Firewall-Regeln von Traller eingefügt habe. Natürlich habe ich meine Config soweit angepasst. Der einzige Unterschied ist bei mir, dass der DD-WRT-Router (TP-Link TL-WDR3600) hinter einer FrotzBox 7390 steckt und ich via Port-Forwarding den Tunnel auf Port 1194 weiterleite. Leider habe ich nach dem Copy-Pasten und speichern von Trallers Einstellungen keinen Zugriff mehr auf meine DD-WRT Web-GUI bzw. mit Putty auch nicht. Nmap zeigt, dass keine Ports offen sind. Die Gateway-Funktion läuft aber noch, ich kann noch im Internet surfen. Deshalb kann ich meine Konfig gerade nicht auslesen und hier reinstellen. Wenn ich später zu Hause bin, würde ich das dann noch nachträglich machen.
Ich möchte alle Leute, die ein vollstädnig funktionsfähiges OpenVPN auf ihrem DD-WRT zum laufen bekommen haben, dazu auffordern, einmal hier ihre Server-Config, ihre Clientconfig und ihre Firewallregeln zu posten. Natürlich auch in veränderter Form, um keine persönlichen Adressen etc. hier preiszugeben.
Ich bin es langsam Leid ständig irgendwelche Anleitungen, Forenbeiträge usw. durchzuarbeiten, ohne ein Erfolgserlebnis zu haben.
Es ist immer das Selbe: Clients werden ohne weiteres mit dem VPN-Server verbunden, jedoch haben die VPN-Clients keine Verbindung ins DD-WRT-LAN und keine Verbindung ins Internet.
Wenn Ihr der Meinung seid, es ist besser, wenn ich erstmal fürs Troubleshooting meine Configs hier poste, dann würde ich das heute abend versuchen. Ich muss erstmal wieder auf meinen Router kommen.
Ich hoffe wirklich, dass ihr Verständnis für meine Lage habt. Ich hänge jetzt schon seit fast 2 Wochen an dem Thema und komm nicht weiter.
Wie gesagt, wenn Ihr irgendwelche Daten braucht, oder etwas fehlt, dann fragt und ich werde es umgehend posten.
EDIT: Überall in den Anleitungen ist die Rede vom tun0-Adapter. Wenn ich meine ifconfig ausgegeben habe, dann war nur ein tun2 Adapter zu sehen, weshalb ich in mienen Regeln auch immer einen tun2-Adapter, statt tunß eingetragen habe. Ich bin mir zwar etwas unsicher, aber wenn man es logisch betrachtet, sollte es so funktionieren.
@traller: Du hast in diene Firewall-Regeln die Zeile von Administrator.de eingefügt: iptables -I INPUT 3 -i tun0 -j ACCEPT
Es verwirrt mich, dass hier auch ein tun0-Adapter un din allen anderen Zeilen tun2 hinterlegt wurde. Ist das einfach ein Fehler beim Copy-Pasten gewesen oder gehört das wirklich so?
Liebe Grüße
Nicke
Die Verbindung kann hergestellt werden.
Jetzt ist es so, dass ich zuletzt die Server-Config und Firewall-Regeln von Traller eingefügt habe. Natürlich habe ich meine Config soweit angepasst. Der einzige Unterschied ist bei mir, dass der DD-WRT-Router (TP-Link TL-WDR3600) hinter einer FrotzBox 7390 steckt und ich via Port-Forwarding den Tunnel auf Port 1194 weiterleite. Leider habe ich nach dem Copy-Pasten und speichern von Trallers Einstellungen keinen Zugriff mehr auf meine DD-WRT Web-GUI bzw. mit Putty auch nicht. Nmap zeigt, dass keine Ports offen sind. Die Gateway-Funktion läuft aber noch, ich kann noch im Internet surfen. Deshalb kann ich meine Konfig gerade nicht auslesen und hier reinstellen. Wenn ich später zu Hause bin, würde ich das dann noch nachträglich machen.
Ich möchte alle Leute, die ein vollstädnig funktionsfähiges OpenVPN auf ihrem DD-WRT zum laufen bekommen haben, dazu auffordern, einmal hier ihre Server-Config, ihre Clientconfig und ihre Firewallregeln zu posten. Natürlich auch in veränderter Form, um keine persönlichen Adressen etc. hier preiszugeben.
Ich bin es langsam Leid ständig irgendwelche Anleitungen, Forenbeiträge usw. durchzuarbeiten, ohne ein Erfolgserlebnis zu haben.
Es ist immer das Selbe: Clients werden ohne weiteres mit dem VPN-Server verbunden, jedoch haben die VPN-Clients keine Verbindung ins DD-WRT-LAN und keine Verbindung ins Internet.
Wenn Ihr der Meinung seid, es ist besser, wenn ich erstmal fürs Troubleshooting meine Configs hier poste, dann würde ich das heute abend versuchen. Ich muss erstmal wieder auf meinen Router kommen.
Ich hoffe wirklich, dass ihr Verständnis für meine Lage habt. Ich hänge jetzt schon seit fast 2 Wochen an dem Thema und komm nicht weiter.
Wie gesagt, wenn Ihr irgendwelche Daten braucht, oder etwas fehlt, dann fragt und ich werde es umgehend posten.
EDIT: Überall in den Anleitungen ist die Rede vom tun0-Adapter. Wenn ich meine ifconfig ausgegeben habe, dann war nur ein tun2 Adapter zu sehen, weshalb ich in mienen Regeln auch immer einen tun2-Adapter, statt tunß eingetragen habe. Ich bin mir zwar etwas unsicher, aber wenn man es logisch betrachtet, sollte es so funktionieren.
@traller: Du hast in diene Firewall-Regeln die Zeile von Administrator.de eingefügt: iptables -I INPUT 3 -i tun0 -j ACCEPT
Es verwirrt mich, dass hier auch ein tun0-Adapter un din allen anderen Zeilen tun2 hinterlegt wurde. Ist das einfach ein Fehler beim Copy-Pasten gewesen oder gehört das wirklich so?
Liebe Grüße
Nicke