LINUX.ORG.RU
ФорумAdmin

Как работают модули iptables?

 , , ,


0

1

Требуется разрешить доступ к сетевому сканеру (к saned).
Суть в том, что sane во время работы может ожидать соединение на любом порту, и открыть один порт 6566, на который клиенты подключаются изначально, недостаточно. Сканер начинает сканировать, потом останавливается, и всё зависает, надо прибивать процесс saned.
В комментариях к конфигу, где можно задать порты, написано

If your firewall is a Linux machine, we strongly recommend using the Netfilter nf_conntrack_sane connection tracking module

Как им пользоваться?
Просто подгружаю модуль modprobe nf_conntrack_sane - не работает.
Добавляю в /etc/modules, чтобы загружался сразу - тоже не работает.
При этом модуль загружается, в обоих случаях, если посмотреть lsmod.

Правила, допустим, такие

-A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --dport 6566 -j ACCEPT

Пробовал добавлять
-m state --state RELATED -j ACCEPT
- не помогает.

Может у вас там в логах ядра есть строка:

nf_conntrack: default automatic helper assignment has been turned off for security reasons and CT-based  firewall rule not found. Use the iptables CT target to attach helpers instead.

mky ★★★★★ ()
Ответ на: комментарий от gobot

Это предупреждение, появляющиеся при инициализации conntrack (загрузке NAT-правил), означающие что где-то с ядер 4.7 просто писать правило:

--ctstate RELATED -j ACCEPT

бесполезно. Нужно как-то так:

-ctstate RELATED -m helper --helper ftp

Или включать старое поведение хелперов через параметр модуля.

Не думаю, что это сообщение связано с падением сети. Оно появилось на локальном компе или на маршрутизаторе с NAT'ом?

mky ★★★★★ ()
Ответ на: комментарий от mky

Разве conntrack обязательно подразумевает NAT? У меня нет нат правил. Появилось на сервере с iptables. Не знаю с чем связано падение сети, но я сразу зашел в syslog и увидел это сообщение. Совпадение? Не думаю

gobot ★★★★ ()
Ответ на: комментарий от gobot

Нет, не обязательно.

Я точно не знаю в какой момент выводится это сообщение — при загрузке модуля conntrack или при загрузке в iptables первого правила, связанного с conntrack или хелпером. И исходники ядра смотреть лень.

Возможно, у вас был рестарт firewalld и тот выгрузил и снова загрузил модули iptables и nf_conntrack.

mky ★★★★★ ()
Ответ на: комментарий от mky

Я правила загрузил, а через минут 15-20 сеть резко провалилась(все сессии ssh слетели резко и одновременно), я полез сразу в syslog и там это

gobot ★★★★ ()
Ответ на: комментарий от anonymous

Модулю nf_conntrack передать параметр nf_conntrack_helper=1. Гугл поможет узнать, в какой файл прописывать этот параметр в вашем дистрибутиве.

Или можно записать 1 в файл /proc/sys/net/netfilter/nf_conntrack_helper после того, как модуль загружен. Ну тут опять, зависит от дистрибутива, куда засовывать команду ″echo 1 > /proc/sys/net/netfilter/nf_conntrack″ или ″sysctl -w net.netfilter.nf_conntrack_helper=1″, чтобы она выполнялась при загрузке системы, но после загрузки модуля.

ИМХО, первый вариант с указанием параметра модулю правильнее.

mky ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.