Здравствуйте, у меня есть вопросы о том, как использовать iptables для пересылки данных IPsec VPN. Вот что я хочу сделать:
Компьютер WAN - (eth1 / WAN IP) Server1 (eth0 / 10.81.1.2) - (eth0 / 10.66.2.3) Server2 (eth1 / WAN IP) - WAN
НОТА: Внутренняя сеть Server1 и Server2 может быть подключена
Я попытался настроить их на Server1:
iptables -t nat -A PREROUTING -p udp --dport 4500 -j DNAT --to-destination 10.66.2.3
iptables -t nat -A PREROUTING -p udp --dport 500 -j DNAT --to-destination 10.66.2.3
iptables -t nat -A PREROUTING -p udp --dport 1701 -j DNAT --to-destination 10.66.2.3
iptables -t nat -A POSTROUTING -p udp -d 10.66.2.3 --dport 4500 -j SNAT --to-source 10.81.1.2
iptables -t nat -A POSTROUTING -p udp -d 10.66.2.3 --dport 500 -j SNAT --to-source 10.81.1.2
iptables -t nat -A POSTROUTING -p udp -d 10.66.2.3 --dport 1701 -j SNAT --to-source 10.81.1.2
iptables -A FORWARD -p esp -j ACCEPT
iptables -A FORWARD -p ah -j ACCEPT
Но теперь я не могу подключиться к Server2 на компьютере WAN, используя IP-адрес WAN Server1 (IPsec VPN можно использовать для подключения к Server2 непосредственно на компьютере WAN через WAN).
Я могу ошибаться в какой-то части, как я могу настроить использование Server1 для подключения к Server2 для доступа к WAN?
Я рекомендую тебе сделать это
eth0 - ваш "публичный интерфейс"
/sbin/iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
активная маршрутизация
/bin/echo 1 > /proc/sys/net/ipv4/ip_forward
установить nat для перенаправления запросов на внутренний сервер ipsec
/sbin/iptables -t nat -A PREROUTING -i eth0 -p utp --dport 1701 -j DNAT --to-destination 10.66.2.3:1701
/sbin/iptables -t nat -A PREROUTING -i eth0 -p utp --dport 500 -j DNAT --to-destination 10.66.2.3:500
/sbin/iptables -t nat -A PREROUTING -i eth0 -p utp --dport 4500 -j DNAT --to-destination 10.66.2.3:4500
Ваши настройки iptables в порядке. Вы включили переадресацию IP на server1? (по умолчанию отключено)
echo 1 > /proc/sys/net/ipv4/ip_forward