Есть 2 виртуальные машины c Linux, которые запущены в VMware ESXi. Скажем, L-Linux и LW-Linux.
На L-Linux - только 1 сетевой интерфейс LAN c адресом 10.0.123.10
На LW-Linux - 2 сетевых интерфейса. 1) LAN ens224 c адресом 10.0.123.5 2) WAN ens192 с адресом 192.168.10.2Дальше к LW-Linux подключено какое-то устройство с белым ip. Пусть в качестве белого ip будет адрес 77.55.6.8
На L-Linux правила iptables все ACCEPT. То есть, файрволл абсолютно не настроен. Плюс для ssh изменили порт на 1234.
По итогу: можно с определенных ip-адресов подключаться удаленно к ssh к машине L-Linux вот так:
ssh dude@77.55.6.8 -p 1234
На LW-Linux машине в правилах nat iptables я не могу понять смысл одного правила (без которого вроде все работает). Вот правила nat:
-P PREROUTING ACCEPT -P INPUT ACCEPT -P POSTROUTING ACCEPT -P OUTPUT ACCEPT -A PREROUTING -s 93.230.140.3/32 -i ens192 -p tcp -m tcp --dport 1234 -j DNAT --to-destination 10.0.123.10 -A PREROUTING -s 13.85.95.3/32 -i ens192 -p tcp -m tcp --dport 1234 -j DNAT --to-destination 10.0.123.10 -A POSTROUTING -d 10.0.123.10/32 -o ens224 -p tcp -m tcp --dport 1234 -j SNAT --to-source 10.0.123.5 -A POSTROUTING -o ens192 -j MASQUERADE
Первые 2 правила PREROUTING - понятно - это «разрешение» заходить на порт 1234 для адресов 93.230.140.3/32 и 13.85.95.3/32 на L-Linux.
А смысл вот этого правила понять не могу:
-A POSTROUTING -d 10.0.123.10/32 -o ens224 -p tcp -m tcp --dport 1234 -j SNAT --to-source 10.0.123.5