Отправляет email-рассылки с помощью сервиса Sendsay

KirovLUG: пользователи Linux в Вятке

ipchains

Уважаемый ALL
Помоги плиз разобраться где ошибка.

Что имеем:
prov - a.b.c.d IP провайдера
net - 192.0.0.0/24
eth0 - внутренний IP
eth1 - внешний IP
ppp0 и ppp1 модемы
Условия
на ружу открыты eth1 25 110 порты
из локалки можно только на eth0
с модемов тоже, только eth0

Что имеем /etc/sysconfig/ipchains
:input DENY
:forward ACCEPT
:output ACCEPT
-A input -i lo -j ACCEPT
-A input -s net -d eth0 -i eth0 -j ACCEPT
-A input -s net -d eth0 -i ppp0 -j ACCEPT
-A input -s net -d eth0 -i ppp1 -j ACCEPT
-A input -s prov 53 -d eth1 53 -j ACCEPT
-A input -s 0/0 -d eth1 25 -p tcp -y -j ACCEPT
-A input -s 0/0 -d eth1 110 -p tcp -y -j ACCEPT
-A forward -i eth1 -p all -s net -d 0/0 -j MASQ
При таких правилах почта не отправляется

Ответить   Иван Fri, 14 Nov 2003 13:06:19 +0300 (#20559)

 

Ответы:

а все таки eth0 это интерфейс или ip-адрес? тоже самое и про eth1?
"-y" - пакеты с установленным флагом "SYN" все остальные "ACK и FIN" сброшены...
Т.е. ты разрешаешь проходить только этим пакетам (а это пакеты на установку
соединения), а пакеты продолжающие соединение запрещаются политикой по
умолчанию... так?
настроены ли у тебя таблицы маршрутизации? т.е. побегут ли пакетики из
ppp-интрефесов (у них у каждого свой IP-адрес?) к eth0 (будь то интерфейс или
ip-адрес)
и наконец, почта не отправляется откуда куда? из Инета? из локалки? со шлюза?

C уважением, Kolotov Alexandr aka mr. Эбола
отвечать: myscri***@e*****.ru
ICQ: 100349254

| Registered Linux user # 236664 |
-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.linux.kirovlug-list@subscribe.ru
Отписаться: http://subscribe.ru/member/unsub?grp=comp.soft.linux.kirovlug&email=
http://subscribe.ru/ mailto:ask@subscribe.ru

Ответить   Kolotov Alexandr Tue, 18 Nov 2003 12:28:45 +0300 (#21697)

 

Hello Kolotov,

Tuesday, November 18, 2003, 12:28:45 PM, you wrote:

или

Вобщем с ключем -i интерфес все остальное IP адрес.
Проблем с ррр соединением нет, там все нормально.
писал правила и без -у все тоже.
Есть рабочее правило написанное через Ж....., но их около 21 штуки.
Почта неотправляется с сервера в инет. Все принимается, локальная
доставка работает.

Ответить   Иван Tue, 18 Nov 2003 15:25:24 +0300 (#21817)

 

1. есть возможность логи смотреть т.е. какие пакетики пытались бежать... какие
пропущены, а какие нет?
2. а почему ты думаешь что проблема в настройках ipchains? при пустых правилах
работает?
3. ядро какое?
4. upgrade? iptables?
5. с нуля настраиваешь или раньше все работало?

что за "рабочее правило" в кол-ве 21 штуки? правила ipchains? может их покажешь
- там подробнее посмотрим...

C уважением, Kolotov Alexandr aka mr. Эбола
отвечать: myscri***@e*****.ru
ICQ: 100349254

| Registered Linux user # 236664 |
-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.linux.kirovlug-list@subscribe.ru
Отписаться: http://subscribe.ru/member/unsub?grp=comp.soft.linux.kirovlug&email=
http://subscribe.ru/ mailto:ask@subscribe.ru

Ответить   Kolotov Alexandr Wed, 19 Nov 2003 10:17:26 +0300 (#22222)

 

Hello Kolotov,

Wednesday, November 19, 2003, 10:17:26 AM, you wrote:

какие

При пустых все работает.

2.4.18

Нет

Да

Привожу свой /etc/sysconfig/ipchains целиком
:input DENY
:output ACCEPT
:forward ACCEPT
-A input -s 0/0 echo-request -d eth1 -p icmp -j DENY
-A input -s 0/0 -d eth1 33435:33525 -p udp -j DENY
-A input -s 0/0 -d eth14 111 -p tcp -j DENY
-A input -s 0/0 -d eth1 135:139 -p tcp -j DENY
-A input -s 0/0 -d eth1 143 -p tcp -j DENY
-A input -s 0/0 -d eth1 1024 -p tcp -j DENY
-A input -s 0/0 -d eth1 10000 -p tcp -j DENY
-A input -s 0/0 -d eth1 25 -p tcp -y -j ACCEPT
-A input -s 0/0 -d eth1 110 -p tcp -y -j ACCEPT
-A input -s 0/0 -d 0/0 -i lo -j ACCEPT
-A input -s 0/0 -d 0/0 -i eth0 -j ACCEPT
-A input -s 0/0 -d 0/0 -i eth1 -j ACCEPT
-A input -s net -d eth0 -i ppp0 -j ACCEPT
-A input -s net -d eth0 -i ppp1 -j ACCEPT
-A input -s net -d eth0 22 -p tcp -y -j ACCEPT
-A input -s net -d eth0 110 -p tcp -y -j ACCEPT
-A input -s net -d eth0 143 -p tcp -y -j ACCEPT
-A input -s net -d eth0 10000 -p tcp -y -j ACCEPT
-A input -s prov -d eth1 53 -p udp -j ACCEPT
-A input -s prov -d eth1 53 -p tcp -j ACCEPT
-A input -s ppov -d eth0 53 -p udp -j ACCEPT
-A input -s prov -d eth0 53 -p tcp -j ACCEPT
-A input -s 0/0 -d 0/0 -p tcp -y -j REJECT
-A input -s 0/0 -d 0/0 -p udp -j REJECT
-A input -s net -d eth0 8080 -p tcp -j ACCEPT
-A forward -i eth1 -p all -s net -d 0/0 -j MASQ

Пояснения
eth1 - IP внешний
eth0 - IP внутренний
net - внутренняя подсеть
prov - IP провайдера
-i интерфейс все остальное IP

Это все работает

Ответить   Иван Wed, 19 Nov 2003 13:47:22 +0300 (#22328)

 

для ядра ветки 2.4 штатный инструмент управления таблицами фильтрации - iptables
(ИМХО, тем более он логичнее в настройке)

а какие изменения привели к тому что все работать перестало? честно, я не понял?

вот эти правила разрешают прохождение всех пакетов (с любыми ip источника и
получателя) на все сетевые интерфейсы.
Так? Имеют ли смысл все следующие правила касающиеся этих интерфейсов?

а если ты подставляешь те "короткие" правила, которые указывал в начале
обсуждения, то не работает?
может причина в том, что:
ты должен разрешить входящие соединения, которые уже установлены, т.е. флаг SYN
не установлен.
Поясню:
1. твоя почтовая программа стучит на 25 порт удаленного сервера от имени
непривилегированного порта, например 1275 (цепочка output, флаг пакета SYN)
2. сервер принимает запрос и отвечает на запрос с 25 порта на 1275 (цепочка
input, флаг пакета SYN/ACK)
3. почтовая программа посылает подтверждение и все остальные пакеты, общаются
они между собой теперь на этих двух портах - удаленный 25, локальный 1275
(цепочка output/input, флаг пакета ACK)
В противном случае:
1. твоя почтовая программа стучит на 25 порт удаленного сервера от имени
непривилегированного порта, например 1275 (цепочка output, флаг пакета SYN)
2. сервер принимает запрос и отвечает на запрос с 25 порта на 1275 (цепочка
input, флаг пакета SYN/ACK). Но этот пакет не проходит, т.к. запрещены
прохождения пакетов, т.е. не разрешены ни подсоединения с
непривилегированным портом, ни входящие с 25 порта...
3. почтовая программа опять пытается соединиться с 25 портом удаленного
сервера и т.д.
Таким образом у тебя, как вариант, проблему можно решить след. образом:
первое правило запрещает вхождение всех SYN пакетов на eth1 на
непривилегированные порты
второе правило разрешает вхождения всех остальных пакетов на eth1 на
непривилегированные порты
Т.е. несанкционированных новых соединений на твой шлюз производится не будет,
а
разрешены только уже установленные... (а также все замаскировавшиеся под "уже
установленные" ;) но это отдельный разговор)

C уважением, Kolotov Alexandr aka mr. Эбола
отвечать: myscri***@e*****.ru
ICQ: 100349254

| Registered Linux user # 236664 |
-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.linux.kirovlug-list@subscribe.ru
Отписаться: http://subscribe.ru/member/unsub?grp=comp.soft.linux.kirovlug&email=
http://subscribe.ru/ mailto:ask@subscribe.ru

Ответить   Kolotov Alexandr Wed, 19 Nov 2003 15:22:20 +0300 (#22402)

 

On Wed, Nov 19, 2003 at 03:22:20PM +0300, Kolotov Alexandr wrote:


кстати да, народ говорил, что в 2.4 в ipchains что-то поломали,
так что под 2.2 народ пользуется ipchains, а под 2.4 iptables,
кстати говоря на одной машине без перенастройки :-)

сам я в ipchains ни бум бум, так что сказать ничего конкретного
не могу, увы :-(

Ответить   Wed, 19 Nov 2003 17:04:09 +0300 (#22495)

 

Здравствуйте, Alexander.

На сколько я знаю ipchains надстройка над iptables. Так что
разници нет, только написание немного другое.

Ответить   Thu, 20 Nov 2003 08:29:08 +0900 (#22672)

 

On Thu, Nov 20, 2003 at 08:29:08AM +0900, Коньков Е.А. wrote:

разница есть. В 2.2 ipchains не был надстройкой над iptables, а
сейчас он надстройка, т.е. заведомо хуже.

ЗЫ я конечно ничего не имею против восьмибитных заголовков, но
твое письмо попало в ящик со спамом именно благодаря им, так
что советую подумать, а не последовать ли стандарту.

Ответить   Fri, 21 Nov 2003 18:17:12 +0300 (#23597)