Ich habe die CentOS 7.6-Version und habe den Wireguard-VPN-Testserver installiert. Die gesamte Installation und Konfiguration ist ziemlich einfach, zumindest laut Dokumentation, also was ich getan habe, ich habe wireguard-tools, wireguard-dkms und linux-headers installiert
Der nächste Schritt war, dass ich einen privaten und öffentlichen Schlüssel des Servers generierte und die Konfiguration des Servers wie folgt schrieb:
[Interface]
Address = 10.7.0.1/24
ListenPort = 34777
PrivateKey = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx=
[Peer]
PublicKey = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx=
AllowedIPs = 10.7.0.2/32
[Peer]
PublicKey = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx=
AllowedIPs = 10.7.0.3/32
[Peer]
PublicKey = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx=
AllowedIPs = 10.7.0.4/32
[Peer]
PublicKey = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx=
AllowedIPs = 10.7.0.5/32
Von der Serverseite aus habe ich Port 34777 udp auf einer Firewall geöffnet und sysctl -w net.ipv4.ip_forward eingestellt (um die Weiterleitung zu aktivieren), da dieser Server den Datenverkehr vom Client an andere Server im Subnetz des VPN-Servers weiterleiten soll br /> Stellen wir uns nun vor, dass die öffentliche IP dieses Servers 11.11.11.11/23 ist
Auf der Client-Seite sieht die Konfiguration wie folgt aus:
[Interface]
Address = 10.7.0.4/24
PrivateKey = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx=
[Peer]
PublicKey = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx=
AllowedIPs = 10.7.0.1/32,11.11.11.0/23 (for having route to 11.11.11.0/23 subnet) or 0.0.0.0/0
Endpoint = 11.11.11.11:34777
jetzt bedeutet 0.0.0.0/0, dass ich den gesamten Datenverkehr an mein VPN weiterleite (es ist nicht obligatorisch), es kann ein Split-Tunnel sein…. Was ich nicht verstehe, wenn ich mich verbinde, kann ich die Schnittstelle des Servers 10.7.0.1 pingen, aber ich kann nichts vom Netzwerk 11.11.11.0/23 pingen.
Da das Netzwerk 11.11.11.0/23 öffentlich ist, es gibt kein NAT.
Außerdem verwende ich unter CentOS firewalld statt iptables.
Wie und warum kann ich das interne Netzwerk hinter der getunnelten Schnittstelle nicht sehen?
Bild wie das Setup aussieht:
P.S. Auf dem Bild befindet sich zwischen Host A und dem Wireguard-Server ein weiterer Linux-Router (ein Hauptrouter), also denken Sie bitte daran.
Akzeptierte Antwort:
Nach so vielen Versuchen und Scheitern und Brainstorming mit Wireguard-IRC-Kanal-Jungs, habe ich anscheinend vergessen, eine statische Route für 10.7.0.0/24 für jeden Server hinter Wireguard hinzuzufügen. Ping geht zum Server, kehrt aber nicht zurück, da der Server nicht weiß, wohin er diese Echo-Antwort senden soll:
ip route add 10.7.0.0/24 via 11.11.11.11 dev eth0 (main device for communication)
Für mich Problem gelöst 😉