
У меня есть одна машина в AWS EC2, на которой работает Ubuntu 16.04 (B) с Wireguard, работающим в качестве VPN-сервера для некоторых устройств Road Warrior (C).
Я попробую обрисовать это ниже:
+-----+ +-----+ +-----+
| | ---------------------------> | | -------------------------> | |
| A | 172.30.0.5/16 172.30.0.6/16 | B | 10.70.0.1/24 10.70.0.2/32 | C |
| | ens5 eth0 | | wg0 wg0 | |
+-----+ +-----+ +-----+
Я хочу направить трафик, адресованный 10.70.0.0/24
из (A) в (C) через (B).
Я попробовал следующую конфигурацию:
На хосте (А):
ip route add 10.70.0.0/24 via 172.30.0.6
Группа безопасности EC2 разрешает весь входящий и исходящий трафик 172.16.0.0/12
.
На хосте (B):
sysctl -w net.ipv4.ip_forward 1
ufw allow from 172.16.0.0/12
ufw route allow out on wg0
iptables -t nat -A POSTROUTING -s 172.16.0.0/12 -o wg0 -j MASQUERADE
Я проверил, что переадресация включена для всех интерфейсов, как описано здесь:https://askubuntu.com/a/923292
net.ipv4.conf.eth0.forwarding = 1
net.ipv4.conf.wg0.forwarding = 1
Группа безопасности EC2 разрешает весь входящий и исходящий трафик 172.16.0.0/12
.
Я даже пробовал DEFAULT_FORWARD_POLICY="ACCEPT"
устанавливать /etc/default/ufw
.
У меня нет идей, что еще здесь не хватает, я не могу заставить проходить никакие пакеты. На хосте (B) iptables
не видит никаких пакетов, проходящих через его FORWARD
цепочку:
iptables -nv -L FORWARD
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
0 0 ufw-before-logging-forward all -- * * 0.0.0.0/0 0.0.0.0/0
0 0 ufw-before-forward all -- * * 0.0.0.0/0 0.0.0.0/0
0 0 ufw-after-forward all -- * * 0.0.0.0/0 0.0.0.0/0
0 0 ufw-after-logging-forward all -- * * 0.0.0.0/0 0.0.0.0/0
0 0 ufw-reject-forward all -- * * 0.0.0.0/0 0.0.0.0/0
0 0 ufw-track-forward all -- * * 0.0.0.0/0 0.0.0.0/0