global network | X.X.X.X |
Wireguard network | 10.10.10.0/24 |
local networdk | 192.168.0.0/24 |
この環境で、MobileのWireguardから、local WireguardをGatewayとして、local network(192.168.0.0/24)に接続したい場合
こうする事で、192.168.0.0/24は、local Wireguardから出ていくことになります。
PostUpで、sysctl net.ipv4.ip_forward=1 と、iptablesを入れていく。
[Interface] Address = 10.10.10.1/24 ListenPort = 51820 PrivateKey = XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX= PostUp = sysctl net.ipv4.ip_forward=1 PostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE; iptables -t nat -A POSTROUTING -s 10.10.10.0/24 -j MASQUERADE PostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE; iptables -t nat -D POSTROUTING -s 10.10.10.0/24 -j MASQUERADE [Peer] ### Mobile PublicKey = YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY= PresharedKey = ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ= AllowedIPs = 10.10.10.2/32 [Peer] ### local PublicKey = AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= PresharedKey = BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB= AllowedIPs = 10.10.10.3/32,192.168.0.0/24
[Interface] # client01 PrivateKey = EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE= #~/client01/privkey の値 Address = 10.10.10.2/24 #client01のIP DNS = 8.8.8.8, 8.8.4.4 #参照させたいDNS MTU = 1353 PostUp = sysctl net.ipv4.ip_forward=1 [Peer] # server PublicKey = FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF= #~/server/pubkey の値 PresharedKey = BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB= #~/client01/preshared の値 AllowedIPs = 10.10.10.0/24 #WireGuard経由で接続したいIPアドレスを指定 Endpoint = X.X.X.X:51820 #WireGuardサーバーのグローバルIPアドレス:ポート番号を指定 PersistentKeepAlive = 30
※こちらは、もしCloud上のWireGuard01の設定 でNAT設定を入れずに、NAT設定をufwで行う場合の設定方法です。
https://dokuwiki.fl8.jp/01_linux/30_ubuntu/08_ubuntu_nat
# FORWARD *filter -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT -A FORWARD -i wg0 -s 10.10.10.0/24 -j ACCEPT COMMIT # NAT *nat -F :POSTROUTING ACCEPT [0:0] -A POSTROUTING -o eth0 -j MASQUERADE COMMIT # ufw reload Firewall reloaded
Mobile側も192.168.0.0/24はWireguard経由にしておく。
[Interface] PrivateKey = CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC= Address = 10.10.10.2/24 DNS = 8.8.8.8, 8.8.4.4 [Peer] PublicKey = DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD= PresharedKey = ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ= AllowedIPs = 10.10.10.0/24, 192.168.0.0/24 Endpoint = X.X.X.X:51820