URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 89639
[ Назад ]

Исходное сообщение
"вопрос по применению extension-ов в iptables (conntrack etc)"

Отправлено georglk , 19-Авг-10 18:55 
Если писать правила разрешающие доступ по цепочкам используя conntrack,
то появляется (формально, по меньшей мере) возможность указать source и destination address в двух местах. это параметры --source, --destination и -m conntrack --ctorigsrc,--ctorigdst
какой в этом "тайный" смысл и как методологически делать правильно?

Стоит ли все правила для разрешения доступа, плюс правила DNAT/SNAT писать используя -m conntrack
на сколько conntrack "кашерная" штука?

Объясните, пожалуйста, смысл такого часто встречающегося выражения как -p tcp -m tcp
(аналогично -p udp -m udp, -p icmp -m icmp)
какие причины дополнительно к -p указывать такие extension-ы


Содержание

Сообщения в этом обсуждении
"вопрос по применению extension-ов в iptables (conntrack etc)"
Отправлено Andrey Mitrofanov , 19-Авг-10 19:41 
>какой в этом "тайный" смысл и как методологически делать правильно?

С точки зрения банальной ерундиции... -s - смотрит на ip в конкретном пакете,а --ctorigsrc - на адрес, откуда было открыто соединение, с которым "сопоставился" этот пакет.

Тайный смысл, наверное, в том, что оно никому не надо, а "правильно" -- не заморачиваться~~~ Но !методологически! это всё, конечно же, неправильно.


"не, ну man, конечно, никто не читает, но он-таки рУлит :)))"
Отправлено Andrey Mitrofanov , 19-Авг-10 20:04 
>Объясните, пожалуйста, смысл такого часто встречающегося выражения как -p tcp -m tcp
>
>(аналогично -p udp -m udp, -p icmp -m icmp)
>какие причины дополнительно к -p указывать такие extension-ы

Эти ключи относятся чуть к разным частям пакета.
Та, что "-p tcp" смотрит, что протокол-таки ==tcp и _не_ обрабатывается модулем -m tcp.

А за "-m tcp" обычно следуют параметры этого самого модуля -- осмысленные только для этого самого протокола (и соотв.пакетов).

Выражение часто встречается, так как считается, наверное, логичным сначала сделать (быструю) встроенную проверку (-p tcp), прежде чем вызывать более специализированную из внешнего модуля (медленную?).

-t filter -A in_mailpass_pop3_s1 -p tcp --sport 1024:65535 --dport 110 -m state --state NEW\,ESTABLISHED -j ACCEPT
-t filter -A out_mailpass_pop3_s1 -p tcp --sport 110 --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT

В более общем случае - первыми идут "встроенные" опции, потом "вызов" внеш.модулей -- каждого со своими параметрами... Хотя... если приглядеться к man iptables, то-таки

"-p tcp" _подразумевает загрузку "-m tcp" и всё выше сказанное оказывается... ээээ... немного :D неточным.


"не, ну man, конечно, никто не читает, но он-таки рУлит :)))"
Отправлено georglk , 20-Авг-10 10:37 
> Хотя... если приглядеться к man iptables, то-таки
> "-p tcp" _подразумевает загрузку "-m tcp" и всё выше сказанное оказывается... ээээ...
> немного :D неточным.

это меня  и смутило

> А за "-m tcp" обычно следуют параметры этого самого модуля -- осмысленные только для этого самого протокола (и соотв.пакетов).
> Выражение часто встречается, так как считается, наверное, логичным сначала сделать (быструю) встроенную проверку (-p tcp), прежде чем вызывать более специализированную из внешнего модуля (медленную?).

если смотреть -m udp и -m icmp то у них собственных параметров не густо :-)
то есть опять получается, что одно и тоже (в этом случаи порты) можно указать двумя способами