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


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

Автор Тема: Iptables проброс портов с внешки на внешку.  (Прочитано 6549 раз)

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

Оффлайн lehanikolaev27

  • Автор темы
  • Новичок
  • *
  • Сообщений: 3
    • Просмотр профиля
Доброго времени суток, уважаемое сообщество.
Нужно пробросить порты с внешнего сервера (находится в Германии)(ip 1.2.3.4)
на другой внешний сервер (в России)( 5.6.7.8 ).
Посредством iptables.
пока что только изучаю Linux (и iptables в частности) (раньше все время имел дело с фряхой)
подскажите примерное правило на проброс по порту 25000 с одного адреса на другой.
Заранее спасибо.

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13761
    • Просмотр профиля
Re: Iptables проброс портов с внешки на внешку.
« Ответ #1 : 06 Сентября 2012, 10:57:28 »
sudo iptables -t nat -A PREROUTING -d 1.2.3.4 -p tcp --dport 25000 -j DNAT --to-destination 5.6.7.8

Оффлайн lehanikolaev27

  • Автор темы
  • Новичок
  • *
  • Сообщений: 3
    • Просмотр профиля
Re: Iptables проброс портов с внешки на внешку.
« Ответ #2 : 06 Сентября 2012, 13:09:02 »
а форварды не нужны? или построуты?


Пользователь решил продолжить мысль 06 Сентября 2012, 14:30:51:
Спасибо огромное за помощь. Разобрался. работает так:

echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A PREROUTING -d 1.2.3.4 -p tcp --dport 25000 -j DNAT --to-destination 5.6.7.8
iptables -t nat -A POSTROUTING -d 5.6.7.8 -p tcp -m tcp --dport 25000 -j SNAT --to-source 1.2.3.4
iptables -t nat -A FORWARD -d 5.6.7.8 -p tcp -m tcp --dport 25000 -j ACCEPT

еще раз спасибо.
« Последнее редактирование: 06 Сентября 2012, 14:30:51 от lehanikolaev27 »

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13761
    • Просмотр профиля
Re: Iptables проброс портов с внешки на внешку.
« Ответ #3 : 06 Сентября 2012, 19:47:37 »
iptables -t nat -A POSTROUTING -d 5.6.7.8 -p tcp -m tcp --dport 25000 -j SNAT --to-source 1.2.3.4
Это если хотите, чтобы все запросы шли от имени Вашего интерфейса и ответный шёл тоже через Вас.

iptables -t nat -A FORWARD -d 5.6.7.8 -p tcp -m tcp --dport 25000 -j ACCEPT
1. В таблице nat цепочки FORWARD нет, поэтому как у Вас это правило сработало не понятно.
2. Исходя из 1 и из назначения этого правила (фильтрация), это правило нужно поместить в таблицу filter.
3 Это правило в цепочке FORWARD таблицы filter нужно, если дефолтное правило DROP

Оффлайн lehanikolaev27

  • Автор темы
  • Новичок
  • *
  • Сообщений: 3
    • Просмотр профиля
Re: Iptables проброс портов с внешки на внешку.
« Ответ #4 : 06 Сентября 2012, 22:50:45 »
Признаю. описался.
правило должно быть
iptables -A FORWARD -d 5.6.7.8 -p tcp -m tcp --dport 25000 -j ACCEPT

Оффлайн olegik-hp

  • Участник
  • *
  • Сообщений: 166
    • Просмотр профиля
Re: Iptables проброс портов с внешки на внешку.
« Ответ #5 : 11 Сентября 2012, 13:07:12 »
А если требуется перенаправить на _другой_ порт?

То есть было 1.2.3.4:25000

Надо отправлять на 5.6.7.8:25555

?

Как это настроить?

iptables -t nat -A POSTROUTING -d 5.6.7.8 -p tcp -m tcp --dport 25000 -j SNAT --to-source 1.2.3.4
Это если хотите, чтобы все запросы шли от имени Вашего интерфейса и ответный шёл тоже через Вас.


Как отказаться от пересылки через меня?
1) Лучшая помощь -- Линк на доку.
2) Главное -- не просто сделать, а понять как.
3) Просто пару слов, для понимания -- лучший ответ.

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13761
    • Просмотр профиля
Re: Iptables проброс портов с внешки на внешку.
« Ответ #6 : 11 Сентября 2012, 20:40:26 »
А если требуется перенаправить на _другой_ порт?
То есть было 1.2.3.4:25000
Надо отправлять на 5.6.7.8:25555
sudo iptables -t nat -A PREROUTING -d 1.2.3.4 -p tcp --dport 25000 -j DNAT --to-destination 5.6.7.8:25555Может всё-таки хотя бы абзац прочитаете в оисании iptables? А?

Это если хотите...
Как отказаться от пересылки через меня?
Ну ответ же сам напрашивается: не применяйте это правило.

Оффлайн olegik-hp

  • Участник
  • *
  • Сообщений: 166
    • Просмотр профиля
Re: Iptables проброс портов с внешки на внешку.
« Ответ #7 : 12 Сентября 2012, 22:36:14 »
А если требуется перенаправить на _другой_ порт?
То есть было 1.2.3.4:25000
Надо отправлять на 5.6.7.8:25555
sudo iptables -t nat -A PREROUTING -d 1.2.3.4 -p tcp --dport 25000 -j DNAT --to-destination 5.6.7.8:25555Может всё-таки хотя бы абзац прочитаете в оисании iptables? А?

Это если хотите...
Как отказаться от пересылки через меня?
Ну ответ же сам напрашивается: не применяйте это правило.

Спасибо. Почитаю. Не применю.
1) Лучшая помощь -- Линк на доку.
2) Главное -- не просто сделать, а понять как.
3) Просто пару слов, для понимания -- лучший ответ.

 

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