Linux OpenVPN Client als Side2Side "Router"
Moin Moin,
ich bin gerade dabei eine Ubuntu Server VM als "VPN-Router" zu nutzen.
Die VM hat zwei Netzwerkkarten, eine wo die FritzBox mit dem Internetzugang dran ist und das andere geht zum Switch mit VLAN.
Der Plan ist es, dass das VLAN zum UniFi AP geht und ein Netzwerk ausstrahlt, welches komplett durch die VPN geht.
Die Netzwerkkarte hat das richtige VLAN was auch am AP ankommt.
Das kann ich dadurch bestätigen, da ich auf der VM für die zweite Netzwerkkarte einen DHCP-Server erstellt habe und das WLAN Gerät in dem WLAN genau die IP bekommt, die dieser DHCP Server ausgibt.
(ISC-DHCP-Server)
Somit besteht schonmal die Konnektivität zum AP, nur die VPN bekomme ich nicht geroutet bzw. rüber geleitet.
Er bindet das ganze halt immer auf die "Netzwerkkarte" tun0 und nicht auf die zweite ens192 wo das VLAN drauf ist.
Ich will mit OpenVPN die config von dem Anbieter NordVPN durch die zweite Netzwerkkarte leiten für das WLAN.
Er verbindet soweit, aber halt nur auf tun0.
Ich habe etwas gegoogelt und Sachen mit iptables und route add gefunden, hat bei mir aber nicht funktioniert.
Kennt ihr euch damit aus und könnt mir helfen?
Liebe Grüße
ich bin gerade dabei eine Ubuntu Server VM als "VPN-Router" zu nutzen.
Die VM hat zwei Netzwerkkarten, eine wo die FritzBox mit dem Internetzugang dran ist und das andere geht zum Switch mit VLAN.
Der Plan ist es, dass das VLAN zum UniFi AP geht und ein Netzwerk ausstrahlt, welches komplett durch die VPN geht.
Die Netzwerkkarte hat das richtige VLAN was auch am AP ankommt.
Das kann ich dadurch bestätigen, da ich auf der VM für die zweite Netzwerkkarte einen DHCP-Server erstellt habe und das WLAN Gerät in dem WLAN genau die IP bekommt, die dieser DHCP Server ausgibt.
(ISC-DHCP-Server)
Somit besteht schonmal die Konnektivität zum AP, nur die VPN bekomme ich nicht geroutet bzw. rüber geleitet.
Er bindet das ganze halt immer auf die "Netzwerkkarte" tun0 und nicht auf die zweite ens192 wo das VLAN drauf ist.
jj@vpn-router:~$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
(Netzwerkkarte mit Fritz!Box im Nacken)
2: ens160: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 00:0c:29:a6:a0:76 brd ff:ff:ff:ff:ff:ff
altname enp3s0
inet 10.100.10.43/14 brd 10.103.255.255 scope global ens160
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:fea6:a076/64 scope link
valid_lft forever preferred_lft forever
(Netzwerkkarte mit VLAN zum AP)
3: ens192: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 00:0c:29:a6:a0:80 brd ff:ff:ff:ff:ff:ff
altname enp11s0
inet 10.100.5.1/24 brd 10.100.5.255 scope global ens192
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:fea6:a080/64 scope link
valid_lft forever preferred_lft forever
17: tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UNKNOWN group default qlen 500
link/none
inet 10.8.1.4/24 scope global tun0
valid_lft forever preferred_lft forever
inet6 fe80::7cfa:244c:2d4a:cf7e/64 scope link stable-privacy
Ich will mit OpenVPN die config von dem Anbieter NordVPN durch die zweite Netzwerkkarte leiten für das WLAN.
Er verbindet soweit, aber halt nur auf tun0.
Ich habe etwas gegoogelt und Sachen mit iptables und route add gefunden, hat bei mir aber nicht funktioniert.
Kennt ihr euch damit aus und könnt mir helfen?
Liebe Grüße
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 6710150287
Url: https://administrator.de/contentid/6710150287
Ausgedruckt am: 24.11.2024 um 18:11 Uhr
6 Kommentare
Neuester Kommentar
Nennt sich "Policy-Routing" und besteht aus folgenden Schritten:
Soweit das grundlegende Vorgehen. Mehr kannst du bei Google und dem Stichwort "Linux Policy Routing" nachlesen.
Blind nachmachen sollte man auch nicht, sondern sich die Grundlagen anlesen, und dann jeden Command verstehen wenn man sich daran begibt.
Cheers briggs
- Forwarding aktivieren:
sudo sysctl -w net.ipv4.ip_forward=1
- Erstellen einer neuen Routing-Tabelle:
sudo echo 1 vpn >>/etc/iproute2/rt_tables
- Erstellen der Default-Route in der neuen Tabelle über das Tunnel-GW:
sudo ip route add default via 10.8.1.1 dev tun0 table vpn
- Erstellen einer Routing Rule welche bestimmt welcher Traffic den Weg über die neue Routing-Tabelle nimmt :
sudo ip rule add from 10.100.5.0/24 table vpn
- Firewall Regel die den Traffic über den Tunnel MASQERADED :
sudo iptables -t nat -A POSTROUTING -o tun0 -s 10.100.5.0/24 -j MASQUERADE
- Firewall Regel die das Forwarding erlaubt falls die Forward Chain per Default gedroppt wird:
sudo iptables -A FORWARD -s 10.100.5.0/24 -o tun0 -j ACCEPT
Soweit das grundlegende Vorgehen. Mehr kannst du bei Google und dem Stichwort "Linux Policy Routing" nachlesen.
hat bei mir aber nicht funktioniert.
Naja, die Vorgehensweise hängt auch primär davon ab mit welcher Distro du überhaupt unterwegs bist etc. Das fehlt hier ja vollkommen im Post.Blind nachmachen sollte man auch nicht, sondern sich die Grundlagen anlesen, und dann jeden Command verstehen wenn man sich daran begibt.
Cheers briggs
Hi ButterBot,
nur mal noch ein Hinweis, um Dir vielleicht noch irgendwelche "zusätzlichen Kopfschmerzen" beim Routing zu ersparen.
Du hast hier eine Netzwerküberschneidung drin. Die /14 er Netzmaske würde ich noch einmal überdenken wollen.
Gruß orcape
nur mal noch ein Hinweis, um Dir vielleicht noch irgendwelche "zusätzlichen Kopfschmerzen" beim Routing zu ersparen.
(Netzwerkkarte mit Fritz!Box im Nacken)
2: ens160: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 00:0c:29:a6:a0:76 brd ff:ff:ff:ff:ff:ff
altname enp3s0
inet 10.100.10.43/14 brd 10.103.255.255 scope global ens160
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:fea6:a076/64 scope link
valid_lft forever preferred_lft forever
(Netzwerkkarte mit VLAN zum AP)
3: ens192: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 00:0c:29:a6:a0:80 brd ff:ff:ff:ff:ff:ff
altname enp11s0
inet 10.100.5.1/24 brd 10.100.5.255 scope global ens192
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:fea6:a080/64 scope link
valid_lft forever preferred_lft forever
Du hast hier eine Netzwerküberschneidung drin. Die /14 er Netzmaske würde ich noch einmal überdenken wollen.
Gruß orcape
Du hast hier eine Netzwerküberschneidung drin. Die /14 er Netzmaske würde ich noch einmal überdenken wollen.
Oh ja folgenreicher Tippfehler 😜 , good find👍
@ButterBot
Was mir noch gerade in den Sinn kam, zum Thema Routing und OpenVPN.
Normalerweise bestimmt der OpenVPN-Server und dessen Client-spezifische Überschreibungen, was mit dem Routing hinter dem OpenVPN-Client passiert.
Da diese Einstellungen auf dem NordVPN-Server von Dir aber wohl kaum modifiziert werden können, ist es wohl ohne die von @6247018886 vorgeschlagene Lösung kaum machbar.
Gruß orcape
Was mir noch gerade in den Sinn kam, zum Thema Routing und OpenVPN.
Normalerweise bestimmt der OpenVPN-Server und dessen Client-spezifische Überschreibungen, was mit dem Routing hinter dem OpenVPN-Client passiert.
Da diese Einstellungen auf dem NordVPN-Server von Dir aber wohl kaum modifiziert werden können, ist es wohl ohne die von @6247018886 vorgeschlagene Lösung kaum machbar.
Gruß orcape