@Bergtagen

Как устроить маппинг порта с помощью iptables через единственный интерфейс?

Привет :)
У меня есть хостерский vps, через который надо прокинуть на другой адрес один порт. Стоит ubuntu 18.04. Трудность в том, что сетевой интерфейс один и пришедший пакет надо отправить этим же путём.

Сочинил вот такие правила:
#тут очистка таблиц
#далее:
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT

iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -p TCP --dport 22 -j ACCEPT

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

iptables -t nat -A PREROUTING -p TCP --dport 2610 -j DNAT --to-destination 12.13.14.15:2710

Знаю что можно, с Kerio Control это получилось. Тут что-то не могу сформулировать правило. Терзают смутные сомнения, что не сделал маскарадинг и forward с state=new, но с единственным интерфейсом это странно.
Спасибо большое :)
  • Вопрос задан
  • 410 просмотров
Решения вопроса 1
ky0
@ky0
Миллиардер, филантроп, патологический лгун
Да, не хватает маскарадинга и разрешения форвардить (тут можно сделать правило с src и/или dst host/port). Ну и net.ipv4.ip_forward=1 в sysctl не забыли, надеюсь?

Как-то так:
-A FORWARD -d 12.13.14.15/32 -j ACCEPT
-t nat -A PREROUTING -p tcp -m tcp --dport 2610 -j DNAT --to-destination 12.13.14.15:2710
-t nat -A POSTROUTING -d 12.13.14.15/32 -j MASQUERADE
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@etaliorum
Платон мне друг, но истины не надо
-d забыл т.е. откуда получать
iptables -t nat -A PREROUTING -p tcp -m tcp -d IP_VDS --dport 2610 -j DNAT --to-destination 12.13.14.15:2710
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы