Проброс портов в iptables на NAT сервере

Однажды мне понадобилось пробросить порт к VPN серверу который имел серый IP адрес и находился за NAT.

Допустим на сервере используется правило для NAT:

iptables -t nat -A POSTROUTING -s 10.0.0.0/24 -o ens3f1 -j SNAT --to-source 172.16.5.2-172.16.5.100 --persistent

Теперь на один из NAT IP адресов пробросим порт к локальному устройству с OVPN (10.0.0.2):

iptables -t nat -A PREROUTING -d 172.16.5.5/32 -i ens3f1 -p tcp -m tcp --dport 1194 -j DNAT --to-destination 10.0.0.2:1194

Еще пример для L2TP:

iptables -t nat -A PREROUTING -d 172.16.5.5/32 -i ens3f1 -p udp --dport 500 -j DNAT --to-destination 10.0.0.2:500
iptables -t nat -A PREROUTING -d 172.16.5.5/32 -i ens3f1 -p udp --dport 1701 -j DNAT --to-destination 10.0.0.2:1701
iptables -t nat -A PREROUTING -d 172.16.5.5/32 -i ens3f1 -p udp --dport 4500 -j DNAT --to-destination 10.0.0.2:4500

Локальным устройством был MikroTik, соответственно на нем должны быть открыты порты которые пробрасываются через NAT, а также обновлена прошивка до последней версии чтобы избежать уязвимостей.

Смотрите также мои статьи:
Настройка удаленного доступа в Mikrotik
Настройка IPTables

Оставьте комментарий

Добавить комментарий