Anleitung: OpenVPN auf einem Router mit OpenWRT

PP Daniel

Staff member
Dieser Thread bezieht sich auf die Anleitung OpenVPN auf einem Router mit OpenWRT. Bitte schreibt hier nur, wenn Ihr Fragen, Anmerkungen oder anderes Feedback zu dieser Dokumentation habt. Um diesen Thread übersichtlich und frei von veralteten Postings zu halten, wird er ab und zu vom Moderatoren-Team aufgeräumt.
 

Gerd

Junior Member
Die Erstellung mehrerer OpenVPN Clients



Wenn ihr mehrere OpenVPN Clients erstellen wollt, dann müsst ihr folgendes beachten:

  • In der /etc/openvpn/ppserver.ovpn Datei “dev tunX“ angeben (X steht hier für eine beliebige Zahl)
  • Dann für jeden OpenVPN Client im OpenWRT Menü (Network=>Interfaces) ein Interface mit tunX erstellen. X steht hier für eine Zahl, die ihr unter /etc/openvpn/ppserver.ovpn ausgewählt habt. Unter "Firewall Settings Tab" die Firewall-Regel "PP_Firewall" wie gewohnt angeben
  • Das Script für IPv6 dürft ihr bei mehreren Clients nicht aktivieren. Deaktivieren könnt ihr es mit WinSCP, indem ihr unter "/etc" die Datei "firewall.nat6" und unter "/etc/config/firewall" diese Option löscht:
Code:
config include 'nat6'
    option path '/etc/firewall.nat6'
    option reload '1'
Routen einzelner Endgeräte könnt ihr dann z. B. mit dem Package VPN Policy Routing festlegen.
 
Last edited:

Gerd

Junior Member
VPN Policy Routing Package



Diese Anleitung beschreibt, wie man VPN Policy Routing Package auf OpenWRT 18.06.x einrichtet. Hier die englische Beschreibung. Damit könnt ihr z. B. OpenVPN Routen einzelner Endgeräte festlegen.

Hinweis: Für die Nutzung des VPN Policy Routing Package müsst ihr den OpenVPN Kill-Switch ausschalten. (Danach wird wie bei jedem Router ohne Kill-Switch, zwischen dem “Hochbooten“ und dem OpenVPN Start für eine kurze Zeit ein IP-Leak entstehen.)

Zur Konfiguration:
Öffnet das Programm PuTTY oder ein Terminal Programm und führt folgende Kommandos für OpenWRT aus: (Quelle)

Code:
opkg update; opkg install ipset resolveip ip-full kmod-ipt-ipset iptables
Code:
opkg update; opkg install uclient-fetch libustream-mbedtls ca-bundle ca-certificates;
echo -e -n 'untrusted comment: OpenWrt usign key of Stan Grishin\nRWR//HUXxMwMVnx7fESOKO7x8XoW4/dRidJPjt91hAAU2L59mYvHy0Fa\n' > /tmp/stangri-repo.pub && opkg-key add /tmp/stangri-repo.pub
! grep -q 'stangri_repo' /etc/opkg/customfeeds.conf && echo 'src/gz stangri_repo https://raw.githubusercontent.com/stangri/openwrt-repo/master' >> /etc/opkg/customfeeds.conf
Code:
opkg update; opkg install vpn-policy-routing luci-app-vpn-policy-routing
Das Menü könnt ihr danach unter Services=>VPN Policy Routing aufrufen.

  • Endgeräte die an den OpenWRT Router angeschlossen bzw. mit dem OpenWRT Router verbunden sind, können unter Local addresses eingetragen werden
  • Geräte die vor OpenWRT angeschlossen sind, wie z. B. DSL/Cabel Router, könnt ihr unter Remote addresses eintragen
Routing.jpg


Wie man an dem oberen Bild sehen kann, benutzt PC1 und PlayStation das Interface PP_VPN1. PP_VPN1 ist in meinem Beispiel Amsterdam1.

PC2 und iPhone nutzen das Interface PP_VPN2. PP_VPN2 ist in meinem Beispiel Basel1.

Alle anderen Endgeräte nutzen das WAN Interface. Diese sind vom OpenVPN ausgeschlossen.

Im oberen Post wird erklärt, wie man ein Client (z. B. Amsterdam1) mit tunX an ein Interface (z. B. PP_VPN1) bindet.
 
Last edited:
Top