1

У меня nat и маршрутизация пакетов работают нормально, но я бы хотел перенаправить все порты, кроме SSH, на статический ip(192.168.0.3)

Какой будет правильный синтаксис iptables для этого?

1 ответ1

3

Так как правила iptables выполняются по порядку (первое соответствие применяется, следующие правила даже не проверяются), вы можете сделать это следующим образом:

 iptables -t nat -A PREROUTING -i eth0 -d 192.168.0.2 -j DNAT --to 192.168.0.3
 iptables -t nat -A PREROUTING -i eth0 -d 192.168.0.2 -j DNAT --to 192.168.0.3
 iptables -A FORWARD -i eth0 -d 192.168.0.2 --dport 22 -j REJECT
 iptables -A FORWARD  -i eth0 -d 192.168.0.2 -j ACCEPT
 iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

предполагая, что компьютер, на котором вы это делаете, имеет IP-адрес 192.168.0.2, в противном случае измените его соответствующим образом. Последнее правило необходимо для обеспечения связи компьютера с IP-адресом 192.168.0.3.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .