Verwenden Sie den Wireguard-Server in der Cloud als Medium, um vom Internet aus auf den lokalen Server zuzugreifen?

Verwenden Sie den Wireguard-Server in der Cloud als Medium, um vom Internet aus auf den lokalen Server zuzugreifen?

Grundsätzlich möchte ich die öffentliche IP der Google Cloud-VM verwenden, um auf meinen lokalen Webserver zuzugreifen. Auf meiner lokalen Seite habe ich keine öffentliche IP.

Wenn ichgcloud_public_ip:80In der URL-Leiste meines Browsers möchte ich statt auf das Web der Cloud-VM auf den Web-Port meines lokalen Servers zugreifen.

Ich habe Wireguard erfolgreich konfiguriert. WG0-Schnittstellen sowohl auf der GCloud-VM als auch auf dem lokalen Server sind aktiv und einsatzbereit. In meinem lokalen Router gibt es keine Portblockierung oder IP-Filterung. Ich habe auch die Web-Ports 80/443 UDP/TCP-Ingress in der Google Cloud Firewall sowie einige andere Ports für den Wireguard-Tunnel geöffnet.

Ich habe gelesen, dass ich den Befehl iptables auf der Cloud-VM verwenden muss, um eingehenden Datenverkehr aus dem Internet auf den Webport 80/443 meines lokalen Servers umzuleiten, der sich auf der anderen Seite des Wireguard-Tunnels befindet. Ich bin damit nicht sehr vertraut, aber soweit ich weiß, muss ich zwei Befehle eingeben: einen für PREROUTING und einen für POSTROUTING.

Dies sind die Befehle, die ich ausgegeben habe, aber sie funktionieren nicht, oder zumindest glaube ich, dass mir noch etwas fehlt.

sudo iptables -t nat -A PREROUTING -i ens4 -p tcp --dports 80,443 -j DNAT --to-destination 10.0.3.2
sudo iptables -t nat -A POSTROUTING -p tcp -d 10.0.3.2 --dports 80,443 -j SNAT --to-source 10.140.0.2
  • ens4 ist die interne Schnittstelle einer Google Cloud-VM, der eine öffentliche IP zugeordnet ist.

  • 10.0.3.2 ist die Tunnel-IP des lokalen Servers.

  • 10.140.0.2 ist die IP von ens4, der eine öffentliche IP zugeordnet ist.

Antwort1

Sie haben auf Ihrem VPS-Server Regeln eingerichtet, damit dieser den Datenverkehr von/zu Ihrem Webserver ordnungsgemäß verarbeiten kann.

Sie müssen jedoch Regeln auf Ihrem Webserver einrichten, die den gesamten Datenverkehr über den Wireguard-Tunnel weiterleiten.

Sie müssen eine Standardroute über den Wireguard-Tunnel auf Ihrem Webserver einrichten. Es muss eine Hostroute zum VPS über die von Ihnen verwendete Internetverbindung geben.

Alle Details hängen von den genaueren Einzelheiten Ihrer Netzwerkkonfiguration ab.

verwandte Informationen