И так, у нас есть шлюз и есть сервисы на внутреннем сервере к которым необходимо дать доступ из вне. Сделать это можно при помощи IPTables. Пускай внутренни IP — 10.10.0.1, а внешний — 80.91.175.92. Тогда нам необходимо выполнить такие команды:
iptables -t nat -A PREROUTING -p tcp -m tcp -d 80.91.175.92 —dport 8000 -j DNAT –to-destination 10.10.0.1:8000
iptables -t nat -A POSTROUTING -p tcp -m tcp –s 10.10.0.1 —sport 8000 -j SNAT –to-source 80.91.175.92:8000
iptables -t nat -A POSTROUTING -p tcp -m tcp –s 10.10.0.1 —sport 8000 -j SNAT –to-source 80.91.175.92:8000
Первое правило, весь входящий трафик на внешний интерфейс в порт 8000 перебрасываем на внутренний ip сервера в тот же порт. Второе правило выводит весь трафик с внутреннего сервера идущий с порта 8000 на внешний интерфейс с порта 8000.