Prima di tutto:questo non è un duplicato. Ho provato di tutto tranne OpenVPN o IPSec. Ricevo una stretta di mano tra il client e il server e SSH e Ping funzionano tra i client, ma non riesco ad accedere a Internet globale e nemmeno all'IP pubblico del server. La mia configurazione è solo la solita, chiavi, endpoint, ho seguito esattamente la guida di Linode. Il mio client è openSUSE ma il mio server è Ubuntu, che presumo sia il punto di strozzatura.
Risposta accettata:
Questa è esattamente la situazione che avevo. Il tuo server ha un IP pubblico o è dietro un NAT? Se si trova dietro un NAT, il PostUp
e PostDown
I comandi iptables della guida Linode non si applicano.
Prova ad aggiungere quanto segue al file di configurazione del tuo server, cambiando eth0
a come lo chiama il tuo computer:
PreUp = iptables -t nat -A POSTROUTING -j MASQUERADE -o eth0
PreDown = iptables -t nat -D POSTROUTING -j MASQUERADE -o eth0
Fonte:https://unix.stackexchange.com/questions/530790/wireguard-not-routing-traffic-from-client-to-other-servers-on-the-network
Esempio di configurazione
Ecco una configurazione di esempio in cui il router è su 10.0.1.1 (rete normale) e 10.0.0.x è la nuova rete WireGuard, con il server configurato per 10.0.0.1 e il client per 10.0.0.2. La porta utilizzata è 51820 e l'interfaccia di rete predefinita è eth0. Tutto il traffico viene instradato tramite WireGuard, ma non rimane all'interno della sottorete WireGuard. Il client ha accesso alla rete locale del server (10.0.1.x) e a Internet in generale. Non dimenticare di inoltrare la porta 51820 dal router al server e di abilitare l'inoltro ipv4 sul server (# sysctl -w net.ipv4.ip_forward=1
)
Configurazione del server
[Interface]
Address = 10.0.0.1/24
PrivateKey = YOUR_SEVER_PRIVATE_KEY
ListenPort = 51820
PreUp = iptables --table nat --append POSTROUTING --jump MASQUERADE --out-interface eth0
PreDown = iptables --table nat --delete POSTROUTING --jump MASQUERADE --out-interface eth0
[Peer]
PublicKey = YOUR_CLIENT_PUBLIC_KEY
AllowedIPs = 10.0.0.2/32
Configurazione client
[Interface]
Address = 10.0.0.2/24
DNS = 10.0.1.1
PrivateKey = YOUR_CLIENT_PRIVATE_KEY
ListenPort = 51820
[Peer]
PublicKey = YOUR_SERVER_PUBLIC_KEY
AllowedIPs = 0.0.0.0/0, ::/0
Endpoint = YOUR.DYNAMIC_DNS.COM:51820