Форум русскоязычного сообщества Ubuntu


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

Автор Тема: Iptables port forward(map)  (Прочитано 1810 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн StribogB

  • Автор темы
  • Участник
  • *
  • Сообщений: 189
    • Просмотр профиля
Iptables port forward(map)
« : 19 Апрель 2011, 23:24:22 »
Поставил Ubuntu с iptables вместо ISA сервера. Нужно пробросить порт с внешнего интерфейса на на внутренний сервер. Написал:
IPTABLES -t nat -A PREROUTING -p tcp --dst xxx.xxx.xxx.71 --dport 25 -j DNAT --to-destination 172.16.0.76:25
IPTABLES -t nat -I POSTROUTING -p tcp --dst 172.16.0.76 --dport 25 -j SNAT --to xxx.xxx.xxx.71
разрешил в таблице FORWARD
IPTABLES -A FORWARD -p TCP -i eth1 -o eth0 -d 172.16.0.76 --dport 25 -j allowed
Но на постфиксе когда смотрел логи все входящие подключения были с моего внешнего IP. Что мне совсем не нужно. Мне нужно было , что бы пробрасывалсяя порт, а не менялся исходящий IP .
Нашел решение.
Поменял вместо
IPTABLES -t nat -A PREROUTING -p tcp --dst xxx.xxx.xxx.71 --dport 25 -j DNAT --to-destination 172.16.0.76:25
применил правило
iptables -A PREROUTING -t nat -i eth1 -p tcp --dport 25 -j DNAT --to 172.16.0.76:25
После этого все стало работать правильно.
Также в этой доке предлагали добавить еще одно правило
iptables -A INPUT -p tcp -m state --state NEW --dport 25 -i eth1 -j ACCEPT
Я не понимаю зачем это правило нужно. Т.к. поидее после моего правила
iptables -A PREROUTING -t nat -i eth1 -p tcp --dport 25 -j DNAT --to 172.16.0.76:25
Пакеты идут в таблицу FORWARD.
Еще один вопрос какая принципиальная разница в этих двух правилах
IPTABLES -t nat -A PREROUTING -p tcp --dst xxx.xxx.xxx.71 --dport 25 -j DNAT --to-destination 172.16.0.76:25
iptables -A PREROUTING -t nat -i eth1 -p tcp --dport 25 -j DNAT --to 172.16.0.76:25
Если есть какое то обьяснение где-то в документации я почитаю, только подскажите где почитать. Хочу выяснить для себя.
Заранее благодарю за ответы.
« Последнее редактирование: 20 Апрель 2011, 00:23:45 от StribogB »

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 27308
    • Просмотр профиля
Re: Iptables port forward(map)
« Ответ #1 : 20 Апрель 2011, 00:09:05 »
Так нефиг делать SNAT на внутренний IP...
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн StribogB

  • Автор темы
  • Участник
  • *
  • Сообщений: 189
    • Просмотр профиля
Re: Iptables port forward(map)
« Ответ #2 : 20 Апрель 2011, 00:22:52 »
Так нефиг делать SNAT на внутренний IP...
У тебя такие емкие всегда ответы. И к чему ты это сказал не понятно. К чему здесь SNAT. Как всегда поумничал, а куда прилепить твой ответ не ясно. Я залезу сейчас в документацию и почитаю, что я пропустил.

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 27308
    • Просмотр профиля
Re: Iptables port forward(map)
« Ответ #3 : 20 Апрель 2011, 00:39:44 »
А у тебя что, зубов нет, за тебя всё жевать? Учись думать, а то в той каше, что ты навалил, сам чёрт ногу сломит.
Проброс порта с внешенего интерфейса шлюза вовнутрь сети делается двумя правилами. Причём из них только одно будет уникальным.
Написать, или ты уже нашел, где на форуме форма поиска?
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн StribogB

  • Автор темы
  • Участник
  • *
  • Сообщений: 189
    • Просмотр профиля
Re: Iptables port forward(map)
« Ответ #4 : 20 Апрель 2011, 00:40:47 »
Так нефиг делать SNAT на внутренний IP...
Ты хотел сказать, что IPTABLES -t nat -I POSTROUTING -p tcp --dst 172.16.0.76 --dport 25 -j SNAT --to xxx.xxx.xxx.71
этим правилом я открываю как с внутреней сеети так и с наружной сети IP-ку 172.16.0.76 доступ на xxx.xxx.xxx.71. Я правильно понимаю???

Пользователь решил продолжить мысль 20 Апрель 2011, 00:45:14:
А у тебя что, зубов нет, за тебя всё жевать? Учись думать, а то в той каше, что ты навалил, сам чёрт ногу сломит.
Проброс порта с внешенего интерфейса шлюза вовнутрь сети делается двумя правилами. Причём из них только одно будет уникальным.
Написать, или ты уже нашел, где на форуме форма поиска?
Да не надо за меня все разжевывать, я тебя этого и не просил делать. Я просил ответить на два вопроса первый какая принципиальная разница
в этих двух правилах
IPTABLES -t nat -A PREROUTING -p tcp --dst xxx.xxx.xxx.71 --dport 25 -j DNAT --to-destination 172.16.0.76:25
iptables -A PREROUTING -t nat -i eth1 -p tcp --dport 25 -j DNAT --to 172.16.0.76:25
Я не просил тебя мне хамить и грубить. Заметь я попросил "Если есть какое то объяснение где-то в документации я почитаю, только подскажите где почитать.".
Поэтому завались, и хватит хамить.
« Последнее редактирование: 20 Апрель 2011, 00:45:14 от StribogB »

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 27308
    • Просмотр профиля
Re: Iptables port forward(map)
« Ответ #5 : 20 Апрель 2011, 01:18:25 »
Так нефиг делать SNAT на внутренний IP...
Ты хотел сказать, что IPTABLES -t nat -I POSTROUTING -p tcp --dst 172.16.0.76 --dport 25 -j SNAT --to xxx.xxx.xxx.71
этим правилом я открываю как с внутреней сеети так и с наружной сети IP-ку 172.16.0.76 доступ на xxx.xxx.xxx.71. Я правильно понимаю???
Нет. Этим правилом ты подменяешь адрес источника пакетов.

Цитировать
А у тебя что, зубов нет, за тебя всё жевать? Учись думать, а то в той каше, что ты навалил, сам чёрт ногу сломит.
Проброс порта с внешенего интерфейса шлюза вовнутрь сети делается двумя правилами. Причём из них только одно будет уникальным.
Написать, или ты уже нашел, где на форуме форма поиска?
Да не надо за меня все разжевывать, я тебя этого и не просил делать. Я просил ответить на два вопроса первый какая принципиальная разница
в этих двух правилах
IPTABLES -t nat -A PREROUTING -p tcp --dst xxx.xxx.xxx.71 --dport 25 -j DNAT --to-destination 172.16.0.76:25
iptables -A PREROUTING -t nat -i eth1 -p tcp --dport 25 -j DNAT --to 172.16.0.76:25
Никакой. У цели DNAT нет параметра --to, в чём несложно убедиться, посмотрев iptables-save после добавления такого правила.

Цитировать
Я не просил тебя мне хамить и грубить. Заметь я попросил "Если есть какое то объяснение где-то в документации я почитаю, только подскажите где почитать.".
Поэтому завались, и хватит хамить.
man iptables
Там работа каждого таргета очень доступно изложена, если ты знаком с основами стека TCP/IP.

P.S.
(Нажмите, чтобы показать/скрыть)
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн StribogB

  • Автор темы
  • Участник
  • *
  • Сообщений: 189
    • Просмотр профиля
Re: Iptables port forward(map)
« Ответ #6 : 20 Апрель 2011, 01:22:27 »
Спасибо. Завтра более вдумчиво прочитаю.

 

Страница сгенерирована за 0.187 секунд. Запросов: 24.