OpenVPN: Leiten Sie eine IP vom Client-LAN ​​zum Server weiter

OpenVPN: Leiten Sie eine IP vom Client-LAN ​​zum Server weiter

Mein Setup sieht wie folgt aus:

  • Server (Ubuntu-Server) mit öffentlicher IP-Adresse, 1.2.3.4der als OpenVPN-Server fungiert
  • RaspberryPi (Raspbian) verbunden mit dem OpenVPN-Server mit Adresse 10.8.0.6im OpenVPN-Netzwerk und lokaler Adresse im physischen Netzwerk192.168.178.36
  • "Lan-Client" befindet sich im selben physischen Netzwerk wie der Raspberry Pi mit der lokalen Adresse192.168.178.56
  • "Client" befindet sich im selben OpenVPN-Netzwerk wie der Raspberry Pi mit der Adresse10.8.0.10

Mit meinem aktuellen Setup sind der „Client“ und der Raspberry Pi erfolgreich mit dem OpenVPN-Server verbunden und können miteinander kommunizieren. Jetzt möchte ich den „LAN-Client“ an das OpenVPN-Netzwerk weiterleiten und dabei den Raspberry Pi als Router verwenden, damit jeder mit dem OpenVPN-Server verbundene Client darauf zugreifen kann.

Ich kann OpenVPN nicht auf dem „LAN-Client“ installieren, noch kann ich eine Portweiterleitung dorthin durchführen oder überhaupt eine Konfiguration ändern.

Ist das überhaupt mit OpenVPN möglich? Und wenn ja, wie mache ich das? Ich möchte nur diese bestimmte IP weiterleiten und nicht alle Clients im Raspberry Pi-LAN.

Meine aktuellen Konfigurationen sehen folgendermaßen aus:

server.conf

port  1194
proto udp
dev   tun

ca   /etc/certs/ca.crt
cert /etc/certs/server.crt
key  /etc/certs/server.key

dh   /etc/certs/dh4096.pem

cipher AES-256-CBC

server    10.8.0.0 255.255.255.0
keepalive 10 120
client-to-client

ifconfig-pool-persist /etc/openvpn/ipp.txt
client-config-dir /etc/openvpn/ccd

persist-key
persist-tun

status     /var/log/openvpn/status.log
log        /var/log/openvpn/openvpn.log
log-append /var/log/openvpn/openvpn.log

verb 3

ipp.txt(Server)

client-rpi,10.8.0.4

ccd/client-rpi(Server)

ifconfig-push 10.8.0.6 10.8.0.1

client.conf(Himbeer-Pi)

client
dev     tun
proto   udp
remote  1.2.3.4 1194

resolv-retry infinite
nobind
persist-key
persist-tun

ca   /etc/certs/ca.crt
cert /etc/certs/client-rpi.crt
key  /etc/certs/client-rpi.key

cipher AES-256-CBC

remote-cert-tls server

verb 3

Obwohl ich nur eine IP-Adresse routen möchte, habe ich bereits einige Anleitungen online befolgt, um das gesamte LAN zu routen. Dazu habe ich hinzugefügt

route 192.168.178.0 255.255.255.0

zumserver.confUnd

iroute 192.168.178.0 255.255.255.0

zumccd/client-rpiconfig. Wenn ich z.B. versuche, 192.168.178.20den Server anzupingen, bekomme ich einen 100% Paketverlust (keine Antwort). Auf dem Raspberry Pi sieht das so aus:

$ sudo tcpdump -i tun0
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on tun0, link-type RAW (Raw IP), capture size 262144 bytes
09:39:09.863118 IP 10.8.0.1 > 192.168.178.20: ICMP echo request, id     19467, seq 1, length 64
09:39:10.869903 IP 10.8.0.1 > 192.168.178.20: ICMP echo request, id 19467, seq 2, length 64
09:39:11.878093 IP 10.8.0.1 > 192.168.178.20: ICMP echo request, id 19467, seq 3, length 64

Wenn ich dieselbe Adresse, aber vom Raspberry Pi aus anpinge (der sich im selben physischen Netzwerk wie das Ziel befindet), funktioniert alles wie erwartet einwandfrei. Es liegt also nicht an der Firewall des Ziels, die die Anfragen ablehnt.

Ich vermute, dass der Raspberry Pi die Ping-Anfragen empfängt und weiterleitet, das Ziel aber 192.168.178.20nicht weiß, wie es antworten soll. Das Problem ist, wie bereits erwähnt, dass ich weder die Routing-Tabelle noch andere Einstellungen auf diesem Gerät ändern kann. Ich habe nur Zugriff auf den Server und den Raspberry Pi. Habe ich das richtig verstanden und gibt es eine Lösung, die funktionieren würde? Oder liegt es nur an meiner Fehlkonfiguration und meinem Missverständnis? Es könnte auch ein Problem mit den Routen auf dem Raspberry Pi geben, aber ich habe keine Ahnung, wie ich das beheben kann.

verwandte Informationen