
Ich habe also zwei Computer. Wir nennen sie Bob und Alice. Bob ist Client auf zwei VPNs, einem privaten VPN und einem öffentlich zugänglichen VPN. Alice hostet ein privates VPN und einen DHCP-Server. Jetzt haben wir einen dritten Computer, den ich mit dem VPN verbinden möchte und den wir Sally nennen. Sally verbindet sich problemlos mit Bob, aber sobald ich im VPN bin, kann ich nicht mehr so routen, wie ich möchte.
Ich möchte, dass Sally ihren Datenverkehr an Alice weiterleitet, die ihn dann an das öffentliche VPN weiterleitet. Ich kann dies tun, ohne dass Bob das private VPN hostet.
Alices VPN.conf
local 10.42.25.2
port 1194
proto udp
dev tun
ca /etc/openvpn/server/ca.crt
cert /etc/openvpn/server/server.crt
key /etc/openvpn/server/server.key # This file should be kept secret
dh /etc/openvpn/server/dh2048.pem
server 10.42.26.0 255.255.255.0
route-gateway 10.42.26.1
ifconfig-pool-persist /var/log/openvpn/ipp.txt
push "redirect-gateway def1 bypass-dhcp"
client-to-client
keepalive 10 120
tls-auth /etc/openvpn/server/ta.key 0 # This file is secret
cipher AES-256-CBC
user nobody
group nogroup
persist-key
persist-tun
status /var/log/openvpn/openvpn-status.log
verb 3
explicit-exit-notify 1
Bob und Sally stellen mit den erwarteten Client-Konfigurationen problemlos eine Verbindung zum Server von Alice her.
Bobs iptables:
-A FORWARD -i tun1 -o tun0 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i tun0 -o tun1 -j ACCEPT
-A FORWARD -i tun0 -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i eth0 -o tun0 -j ACCEPT
Ich kann im Laufe der Zeit weitere Informationen veröffentlichen, bin mir aber derzeit nicht sicher, was ich sonst noch veröffentlichen soll.