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


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: переадресация внутри сервера iptables  (Прочитано 1360 раз)

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

Оффлайн W03L

  • Автор темы
  • Участник
  • *
  • Сообщений: 128
    • Просмотр профиля
привет.
ребята, подскажите, как сделать используя iptables переадресацию внутри сервера.
есть Ubuntu сервер. одна сетевуха 192.168.50.0 смотрит в локалку, другая 192.168.1.0 смотрит на роутер.
мне надо из локалки 192.168.50.0 получить доступ к административным фишкам роутера на 192.168.1.1
я так полагаю, что надо использовать SNAT, только не могу прикинуть как именно.
плз, хелп.

Оффлайн Mam(O)n

  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
Re: переадресация внутри сервера iptables
« Ответ #1 : 19 Марта 2010, 13:08:01 »
iptables -t nat -A POSTROUTING -o eth_какой_смотрит_на_роутер -j MASQUERADE

Остальное зависит от текущих настроек.

Оффлайн W03L

  • Автор темы
  • Участник
  • *
  • Сообщений: 128
    • Просмотр профиля
Re: переадресация внутри сервера iptables
« Ответ #2 : 19 Марта 2010, 13:22:04 »
iptables -t nat -A POSTROUTING -o eth_какой_смотрит_на_роутер -j MASQUERADE

Остальное зависит от текущих настроек.
мне надо только конкретные адреса:
для 192.168.50.50 при обращении в 192.168.1.2 чтобы переадресовывал на 192.168.1.1
сейчас при открытии 192.168.1.2 открывается страница апачи.

Оффлайн Mam(O)n

  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
Re: переадресация внутри сервера iptables
« Ответ #3 : 19 Марта 2010, 13:25:22 »
А нахрена 192.168.1.2? Почему не сразу на 192.168.1.1? А для остальных в FORWARD прикорй: iptables -A FORWARD ! -s 192.168.50.50 -d 192.168.1.1 -j DROP

Оффлайн W03L

  • Автор темы
  • Участник
  • *
  • Сообщений: 128
    • Просмотр профиля
Re: переадресация внутри сервера iptables
« Ответ #4 : 19 Марта 2010, 13:30:06 »
сенкс, работает, но мне кажется лишние правила только нагружают сервер.
ща поломаю голову как сделать в одну строчку используя -s 192.168.50.50 -d 192.168.1.1

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28366
    • Просмотр профиля
Re: переадресация внутри сервера iptables
« Ответ #5 : 19 Марта 2010, 13:32:31 »
Покажи
sudo iptables-save
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

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

Оффлайн W03L

  • Автор темы
  • Участник
  • *
  • Сообщений: 128
    • Просмотр профиля
Re: переадресация внутри сервера iptables
« Ответ #6 : 19 Марта 2010, 13:37:01 »
Покажи
sudo iptables-save
:PREROUTING ACCEPT [11836416:7416462187]
:INPUT ACCEPT [869337:229328296]
:FORWARD ACCEPT [10966655:7187112541]
:OUTPUT ACCEPT [1030264:876145652]
:POSTROUTING ACCEPT [11997662:8063390513]
COMMIT
# Completed on Fri Mar 19 18:34:00 2010
# Generated by iptables-save v1.4.4 on Fri Mar 19 18:34:00 2010
*nat
:PREROUTING ACCEPT [115049:11058009]
:POSTROUTING ACCEPT [153247:13133324]
:OUTPUT ACCEPT [95376:8754140]
-A PREROUTING -p tcp -m tcp --dport 6900 -j DNAT --to-destination 192.168.50.2:6900
-A PREROUTING -p tcp -m tcp --dport 5834 -j DNAT --to-destination 192.168.50.2:5834
-A PREROUTING -p udp -m udp --dport 48594 -j DNAT --to-destination 192.168.50.2:48594
-A PREROUTING -p tcp -m tcp --dport 5835 -j DNAT --to-destination 192.168.100.2:5835
-A PREROUTING -p udp -m udp --dport 48595 -j DNAT --to-destination 192.168.100.2:48595

-A POSTROUTING -s 192.168.50.2/32 -o ppp0 -j MASQUERADE
-A POSTROUTING -s 192.168.100.2/32 -o ppp0 -j MASQUERADE
-A POSTROUTING -s 192.168.1.2/32 -o ppp0 -j MASQUERADE
-A POSTROUTING -s 127.0.0.1/32 -o ppp0 -j MASQUERADE
COMMIT
# Completed on Fri Mar 19 18:34:00 2010
# Generated by iptables-save v1.4.4 on Fri Mar 19 18:34:00 2010
*filter
:INPUT ACCEPT [445201:197236774]
:FORWARD ACCEPT [29:1543]
:OUTPUT ACCEPT [181:19859]
-A INPUT -i ppp0 -p tcp -m tcp --dport 4662 -j ACCEPT
-A INPUT -i ppp0 -p tcp -m tcp --dport 6901 -j ACCEPT
-A INPUT -i eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i ppp0 -p tcp -m tcp --dport 25 -j ACCEPT
-A INPUT -i eth1 -p tcp -m tcp --dport 25 -j ACCEPT
-A INPUT -i ppp0 -p tcp -m tcp --dport 110 -j ACCEPT
-A INPUT -i eth1 -p tcp -m tcp --dport 110 -j ACCEPT
-A INPUT -i ppp0 -p tcp -m tcp --dport 6900 -j ACCEPT
-A INPUT -i eth1 -p tcp -m tcp --dport 6900 -j ACCEPT
-A INPUT -i ppp0 -p tcp -m tcp --dport 5834 -j ACCEPT
-A INPUT -i eth1 -p tcp -m tcp --dport 5834 -j ACCEPT
-A INPUT -i ppp0 -p tcp -m tcp --dport 20 -j ACCEPT
-A INPUT -i eth1 -p tcp -m tcp --dport 20 -j ACCEPT
-A INPUT -i ppp0 -p tcp -m tcp --dport 21 -j ACCEPT
-A INPUT -i eth1 -p tcp -m tcp --dport 21 -j ACCEPT
-A INPUT -i ppp0 -p udp -j ACCEPT
-A INPUT -i eth1 -p udp -j ACCEPT
-A INPUT -i ppp0 -p tcp -m tcp --tcp-flags FIN,SYN,ACK SYN -j LOG --log-prefix "INPUT reject ppp0" --log-level 7 --log-tcp-options
-A INPUT -i eth1 -p tcp -m tcp --tcp-flags FIN,SYN,ACK SYN -j LOG --log-prefix "INPUT reject eth1" --log-level 7 --log-tcp-options
-A INPUT -i ppp0 -p tcp -m tcp --tcp-flags FIN,SYN,ACK SYN -j REJECT --reject-with icmp-port-unreachable
-A INPUT -i eth1 -p tcp -m tcp --tcp-flags FIN,SYN,ACK SYN -j REJECT --reject-with icmp-port-unreachable

-A FORWARD -o ppp0 -p tcp -m tcp --dport 6900 -j ACCEPT
-A FORWARD -o eth1 -p tcp -m tcp --dport 6900 -j ACCEPT
-A FORWARD -o ppp0 -p tcp -m tcp --dport 5834 -j ACCEPT
-A FORWARD -o eth1 -p tcp -m tcp --dport 5834 -j ACCEPT
-A FORWARD -s 192.168.50.0/24 -i ppp0 -j ACCEPT
-A FORWARD -s 192.168.50.0/24 -i eth0 -j ACCEPT
-A FORWARD -d 192.168.50.0/24 -o ppp0 -j ACCEPT
-A FORWARD -d 192.168.50.0/24 -o eth0 -j ACCEPT
-A FORWARD -s 192.168.100.0/24 -i ppp0 -j ACCEPT
-A FORWARD -s 192.168.100.0/24 -i eth2 -j ACCEPT
-A FORWARD -d 192.168.100.0/24 -o ppp0 -j ACCEPT
-A FORWARD -d 192.168.100.0/24 -o eth2 -j ACCEPT
-A FORWARD -o ppp0 -p tcp -j LOG --log-prefix "FORWARD drop ppp0" --log-level 7 --log-tcp-options
-A FORWARD -o eth1 -p tcp -j LOG --log-prefix "FORWARD drop eth1" --log-level 7 --log-tcp-options
-A FORWARD -o ppp0 -p tcp -j DROP
-A FORWARD -o eth1 -p tcp -j DROP
-A FORWARD -o eth0 -p tcp -j DROP
-A OUTPUT -j ACCEPT
COMMIT
# Completed on Fri Mar 19 18:34:00 2010

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28366
    • Просмотр профиля
Re: переадресация внутри сервера iptables
« Ответ #7 : 19 Марта 2010, 13:43:34 »
-A POSTROUTING -s 127.0.0.1/32 -o ppp0 -j MASQUERADE
Лишнее.

Все правила в INPUT бессмысленны кроме 4 последних.

-A OUTPUT -j ACCEPT
Бессмысленно.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

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

Оффлайн W03L

  • Автор темы
  • Участник
  • *
  • Сообщений: 128
    • Просмотр профиля
Re: переадресация внутри сервера iptables
« Ответ #8 : 19 Марта 2010, 13:45:14 »
-A POSTROUTING -s 127.0.0.1/32 -o ppp0 -j MASQUERADE
Лишнее.
без этой строчки на самом сервере инета нету после обновления до ubuntu 9.10 Carmic  :-\

а к примеру без -A INPUT -i ppp0 -p tcp -m tcp --dport 4662 -j ACCEPT
не работает eMule клиент на сервере
« Последнее редактирование: 19 Марта 2010, 13:48:29 от W03L »

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28366
    • Просмотр профиля
Re: переадресация внутри сервера iptables
« Ответ #9 : 19 Марта 2010, 13:48:52 »
Быть такого не может. Даже если может - потрудись хотябы -m state --state NEW добавить.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

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

Оффлайн W03L

  • Автор темы
  • Участник
  • *
  • Сообщений: 128
    • Просмотр профиля
Re: переадресация внутри сервера iptables
« Ответ #10 : 19 Марта 2010, 13:53:09 »
Быть такого не может. Даже если может - потрудись хотябы -m state --state NEW добавить.
а зачем мне инициализация соединения из вне по просьбе аутхостера
клиентская прога всё сама делает и получается, что она просто "отвечает" на пакеты.

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28366
    • Просмотр профиля
Re: переадресация внутри сервера iptables
« Ответ #11 : 19 Марта 2010, 18:29:17 »
Чё?
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

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

Оффлайн Mam(O)n

  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
Re: переадресация внутри сервера iptables
« Ответ #12 : 19 Марта 2010, 18:57:51 »
Не, в INPUT там всё рабочее, т.к. в конце reject'ятся пакеты не прошедшие проверку... А вот про маскардинг 127.0.0.1/32 - действительно либо бред, либо интерфейсы с маршрутами неправильно настроены.

 

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