Задать вопрос
Ответы пользователя по тегу Iptables
  • Как написать правильно NAT правило в iptables в такой конфигурации?

    akelsey
    @akelsey Автор вопроса
    Сам же и отвечу, нужно было вдумчиво почитать документацию по iptables и применить src-nat, оставлю на память:

    iptables -t nat -A POSTROUTING -o tun0 -s Y.Y.Y.Y -p tcp --dport 25 -j SNAT --to-source 10.1.0.1
    или что универсальнее в моём случае (т.к. нужны все порты):
    iptables -t nat -A POSTROUTING -o tun0 -s Y.Y.Y.Y -j SNAT --to-source 10.1.0.1

    Теперь все пакеты приходящие с моего статического IP Y.Y.Y.Y в качестве источника подменяются на 10.1.0.1 (адрес интерфейса tun0) и корректно ходят по настроенным маршрутам. (Теперь маршрут отмеченный красной стрелочкой, которую можно продлить через туннель до VPS, достигает VPS, где уже из таблицы НАТ делается обратное преобразование и корректно маршрутизируется до моего host 192.168.101.100)
    Само собой для всех требуемых портов нужно подменять источник.
    Всем спасибо за желание помочь.
    PS
    Константин Антонов вам тоже спасибо, хоть netmap и не помог (т.к. у меня все же подсети разные), но это натолкнуло на правильную мысль.
    Ответ написан
  • Как фильтровать dnat/forward в микротик/mikrotik/iptables?

    akelsey
    @akelsey Автор вопроса
    спасибо, стоит только задать вопрос, в любом случае задача у меня сформулирована была лукаво )
    я бился на порт условно 5505 - а он DNATился в 22 :-)
    Посмотрел Wireshark и обомлел от своей невнимательности, ведь порт уже подменен, а я таблице FORWARD пытаюсь разрешить коннект на старый порт.
    Всё схема жизнеспособна, еще не уверен на 100%, но похоже я близок. За ссылку спасибо, посмотрю.
    PS
    Да подтверждаю, что ошибка была в том что порт DNATился в другой, а в таблице Filter (цепочке forward), попытка фильтрации была по старому порту, хотя он уже был в DNAT подменён (что логично). Проблема решена, всем спасибо.
    Ответ написан
    Комментировать