The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Очередной вопрос по IPTABLES"
Вариант для распечатки Архивированная нить - только для чтения! 
Пред. тема | След. тема 
Форумы Информационная безопасность (Public)
Изначальное сообщение [Проследить за развитием треда]

"Очередной вопрос по IPTABLES"
Сообщение от Alex_Kursant emailИскать по авторуВ закладки on 27-Фев-03, 14:46  (MSK)
Суть такая, есть локальная сеть 10.0.0.0/24 (eth1)
есть другая локальная сеть 192.168.0.0/24 (eth2) в которой находится веб и майл сервера
ну и соответственно есть интернет (eth0)
надо:
1) чтоб пользователи свободно бороздили просторы интернета ( с этим я справился)
2) чтоб пользователи из локалоной сети (eth1) могли забирать почту с почтового сервера (eth2) (не получилось)
3) чтоб почтовый сервер мог отправлять почту на другие почтовые сервера (не проверял)
4) чтоб пользователи из Интернета могли лазить на наш веб-сервер

Вот мой конфиг (x.x.x.x - реальный IP):
# WEB
-A POSTROUTING -p tcp -m tcp -s 192.168.0.25 --sport 80 -o eth0 -j SNAT --to-source x.x.x.x:80
-A POSTROUTING -p tcp -m tcp -s x.x.x.x --dport 80 -o eth2 -j SNAT --to-source 192.168.0.25:80
# MAIL naruju
-A POSTROUTING -p tcp -m tcp -s 192.168.0.20 --sport 25 -o eth0 -j SNAT --to-source x.x.x.x:25
-A POSTROUTING -p tcp -m tcp -s x.x.x.x --dport 25 -o eth2 -j SNAT --to-source 192.168.0.20:25
-A POSTROUTING -p tcp -m tcp -s 192.168.0.20 --sport 110 -o eth0 -j SNAT --to-source x.x.x.x:110
-A POSTROUTING -p tcp -m tcp -s x.x.x.x --dport 110 -o eth2 -j SNAT --to-source 192.168.0.20:110
# MAIL vovnutr
-A POSTROUTING -p tcp -m tcp -s 10.0.0.0/24 --dport 25 -o eth2 -j SNAT --to-source 192.168.0.20:25
-A POSTROUTING -p tcp -m tcp -s 10.0.0.0/24 --dport 110 -o eth2 -j SNAT --to-source 192.168.0.20:110
# MAIL and WEB
-A FORWARD -p tcp -m tcp -d 192.168.0.0/24 -i eth0 --dport 80 -j ACCEPT
-A FORWARD -p tcp -m tcp -s 192.168.0.0/24 -o eth0 --sport 80 -j ACCEPT
-A FORWARD -p tcp -m tcp -d 192.168.0.0/24 -i eth0 --dport 25 -j ACCEPT
-A FORWARD -p tcp -m tcp -s 192.168.0.0/24 -o eth0 --sport 25 -j ACCEPT
-A FORWARD -p tcp -m tcp -d 192.168.0.0/24 -i eth0 --dport 110 -j ACCEPT
-A FORWARD -p tcp -m tcp -s 192.168.0.0/24 -o eth0 --sport 110 -j ACCEPT
-A FORWARD -p tcp -m tcp -d 10.0.0.0/24 -i eth2 --dport 25 -j ACCEPT
-A FORWARD -p tcp -m tcp -s 10.0.0.0/24 -o eth2 --sport 25 -j ACCEPT
-A FORWARD -p tcp -m tcp -d 10.0.0.0/24 -i eth2 --dport 110 -j ACCEPT
-A FORWARD -p tcp -m tcp -s 10.0.0.0/24 -o eth2 --sport 110 -j ACCEPT

Буду очень благодарен за любую помощь!

  Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "RE: Очередной вопрос по IPTABLES"
Сообщение от loki emailИскать по авторуВ закладки on 28-Фев-03, 07:36  (MSK)
в принципе не сложно
твой веб сервер - 192,168,0,5
твой почтовик - 192,168,0,10 (оба адреса для примера, заменишь на свои...)
теперь правила-
пропускаем из локалки на веб и на мыло
iptables -t nat -A PREROUTING -i eth1 -p tcp -d 0/0 --dport 80 -j DNAT --to-destination 192.168.0.5
iptables -t nat -A PREROUTING -i eth1 -p tcp -d 0/0 --dport 25 -j DNAT --to-destination 192.168.0.10
iptables -t nat -A PREROUTING -i eth1 -p tcp -d 0/0 --dport 110 -j DNAT --to-destination 192.168.0.10
хотя можно сразу пустить всех туда
iptables -t nat -A PREROUTING -i eth+ -p tcp -d 0/0 --dport 80 -j DNAT --to-destination 192.168.0.5
но это грозит потенциальной опасностью, так что лучше отдельно напиши строки для тех кто из инета т.е. с eth0
ну вот вроде бы и все....пиши если что....
  Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "RE: Очередной вопрос по IPTABLES"
Сообщение от Alex_Kursant emailИскать по авторуВ закладки on 28-Фев-03, 11:58  (MSK)
>пропускаем из локалки на веб и на мыло
>iptables -t nat -A PREROUTING -i eth1 -p tcp -d 0/0 --dport
>80 -j DNAT --to-destination 192.168.0.5
>iptables -t nat -A PREROUTING -i eth1 -p tcp -d 0/0 --dport
>25 -j DNAT --to-destination 192.168.0.10
>iptables -t nat -A PREROUTING -i eth1 -p tcp -d 0/0 --dport
>110 -j DNAT --to-destination 192.168.0.10
>хотя можно сразу пустить всех туда
>iptables -t nat -A PREROUTING -i eth+ -p tcp -d 0/0 --dport
>80 -j DNAT --to-destination 192.168.0.5
Так а если мой сервак отправляет почту ведь это он должен инициализировать соединение с другим сервером какие тогда правила нужны?
Ты смотрел мой конфиг? Чего там не правильно почему надо через цепочку PREROUTING a  не POSTROUTING?
Все ли у меня в порядке с цепочкой FORWARD?
Мне не очень хочется чтоб ты за меня цепочки писал я понимания хочу :)
Мануал почитал что здесь на опеннете лежит.... но как-то мне его не хватает :-|
Короче объясни если тебе не влом... пожалуйста
  Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "RE: Очередной вопрос по IPTABLES"
Сообщение от loki emailИскать по авторуВ закладки on 28-Фев-03, 12:32  (MSK)
Обьяснить навряд ли смогу,
твой конфиг в корне не верен, ты нагружаешь цепочку SNAT что тормозит прохождение пакетов, лучше использовать MASQUERADE.
А для понимания надо читать то что написано в мануале,
а про почтовик не могу понять, что ты хочешь?
  Рекомендовать в FAQ | Cообщить модератору | Наверх

4. "RE: Очередной вопрос по IPTABLES"
Сообщение от Alex_Kursant emailИскать по авторуВ закладки on 28-Фев-03, 13:14  (MSK)
>твой конфиг в корне не верен, ты нагружаешь цепочку SNAT что тормозит
>прохождение пакетов, лучше использоватьMASQUERADE .
Так ведь MASQUERADE вроде для динамических IP и он вроде как раз больше нагружаетмашину чем NAT (если верить мануалу)

>а про почтовик не могу понять, что ты хочешь?
Ну вот ты предлагаешь такое правило использовать:
iptables -t nat -A PREROUTING -i eth1 -p tcp -d 0/0 --dport 25 -j DNAT --to-destination 192.168.0.10
Я так понимаю по-русски это звучит так: Пакет с интерфейса eth1 пришедший на любой адрес порт 25 (-d 0/0 --dport 25 так надо это понимать? Кстати может это должно так выглядеть -s 0/0 --dport 25 типа с любого адреса на порт 25 или тогда вместо 0/0 я должен конкретный адрес подставить типа -d 10.0.0.254 --dport 25) отправлять на 192.168.0.10?
Так?
Тоесть клиент из одной сети инициализирует соединение с сервером находящимся в другой сети это первый случай
Второй это когда сервер из своей сети лезет на другой сервер в интернете чтобы отдать ему почту - правильно?
Это же ведь другое правило?
iptables -t nat -A PREROUTING -i eth2 -p tcp -s 192.168.0.10 --sport 25 -j DNAT --to-destination x.x.x.x:25
или  -A POSTROUTING -o eth0 -p tcp -s 192.168.0.10 --sport 25 -j SNAT --to-source x.x.x.x:25
Не слишком путано? :)

  Рекомендовать в FAQ | Cообщить модератору | Наверх


Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру