Am o configurare funcțională a wireguard (server Ubuntu 20.04, un client Ubuntu 20.04 și un client Windows 10). Mă pot conecta la dispozitivele din spatele serverului VPN.
Server VPN (EndPoint): 1.2.3.2/32
Public Subnet EndPoint se află în: 1.2.3.0/27
Adresa serverului WireGuard: 10.2.0.1/16
Office LAN: 10.0.0.0/16
Adresă peer: 10.2.0.3/16
Problema este că clienții nu se pot conecta la nimic care ar trebui să treacă peste vpn, inclusiv adresa EndPoint atunci când adaug subrețeaua publică a interfeței publice WireGuard la IP-uri permise
în configurația clientului:
IP-uri permise = 10.2.0.0/16, 10.0.0.0/16, 1.2.3.0/27
SAU adăugați EndPoint
abordare:
IP-uri permise = 10.2.0.0/16, 10.0.0.0/16, 1.2.3.2/32
Funcționează când adaug alte adrese individuale din subrețeaua publică. Mă pot conecta la acele servere prin VPN (traceroute spune așa):
IP-uri permise = 10.2.0.0/16, 10.0.0.0/16, 1.2.3.3/32, 1.2.3.4/32
Informații suplimentare:
CLIENT
$ sudo cat /etc/wireguard/wg1.conf
[Interfață]
PrivateKey = <snipped>
Adresa = 10.2.0.3/16
[Peer]
PublicKey = <snipped>
IP-uri permise = 10.2.0.0/16, 10.0.0.0/16, 1.2.3.3/32, 1.2.3.4/32, 1.2.3.0/27
Punct final = 1.2.3.2:51820
$ traseu ip
implicit prin 10.25.0.1 dev wlp0s20f3 proto dhcp metric 600
10.0.0.0/16 dev wg1 scope link
10.25.0.0/16 dev wlp0s20f3 proto kernel scope link src 10.25.50.12 metric 600
10.2.0.0/16 dev wg1 proto kernel scope link src 10.2.0.3
1.2.3.0/27 dev wg1 scope link
1.2.3.3 dev wg1 scope link
1.2.3.4 dev wg1 scope link
$ sudo tcpdump -nn -i orice „port udp 51820”
tcpdump: ieșirea verbosă a fost suprimată, utilizați -v sau -vv pentru decodarea completă a protocolului
ascultare pe orice tip de legătură LINUX_SLL (Linux cooked v1), dimensiunea capturii 262144 octeți
23:21:43.439854 IP 10.2.0.3.34656 > 1.2.3.1.51820: UDP, lungime 148
23:21:48.705386 IP 10.2.0.3.34656 > 1.2.3.1.51820: UDP, lungime 148
23:21:54.081297 IP 10.2.0.3.34656 > 1.2.3.1.51820: UDP, lungime 148
23:21:59.201381 IP 10.2.0.3.34656 > 1.2.3.1.51820: UDP, lungime 148
Traceroute expiră.
SERVER
$ traseu ip
implicit prin 1.2.3.1 dev enp1s0 proto static
10.0.0.0/16 dev enp6s0 proto kernel scope link src 10.0.25.20
10.0.0.0/16 prin 10.0.1.254 dev enp6s0 proto metric static 100
10.2.0.0/16 dev wg0 proto kernel scope link src 10.2.0.1
1.2.3.0/27 dev enp1s0 proto kernel scope link src 1.2.3.2
$ sudo cat /etc/wireguard/wg0.conf
[Interfață]
Adresa = 10.2.0.1/16
SaveConfig = adevărat
PostUp = ufw route allow in on wg0 out on enp6s0
PostUp = iptables -t nat -I POSTROUTING -o enp6s0 -j MASQUERADE
PreDown = ștergerea rutei ufw permite intrarea pe wg0 pe enp6s0
PreDown = iptables -t nat -D POSTROUTING -o enp6s0 -j MASQUERADE
ListenPort = 51820
PrivateKey = <snipped>
[Peer]
PublicKey = <snipped>
AllowedIPs = 10.2.0.2/32
Punct final = <snipped>:37785
[Peer]
PublicKey = <snipped>
AllowedIPs = 10.2.0.3/32
Punct final = <snipped>:37950