nixp.ru v3.0

23 мая 2017,
вторник,
08:05:48 MSK

DevOps с компанией «Флант»
grisha написал 5 марта 2008 года в 16:49 (476 просмотров) Ведет себя как мужчина; открыл 34 темы в форуме, оставил 202 комментария на сайте.

Консольная дженту. Iptables-L показывает политики по умолчанию INPUT,FORWARD,OUTPUT. Но когда я хочу сделать например так

iptables -A INPUT -p ALL -d 192.168.1.1 -m state --state ESTABLISHED,RELATED -j ACCEPT

оно пишет так

no chain/target/match by that name

Хочу спросить, почему это нет цепочки с таким именем, когда она есть (INPUT)

fly4life

Ядро, насколько я понимаю, самосбор? Есть подозрение, что не хватает модуля ip_conntrack, который необходим для «-m state».

grisha

Да предварительно как раз специально для этих целей пересобирал ядро, но в нем определенно не наблюдается ip_conntrack. Все там в конфиге обшарил, особенно на вкладках и подменю с соответствующими названиями netfilter, networking options, почти везде отметки там поставил.

fly4life
grisha
Да предварительно как раз специально для этих целей пересобирал ядро, но в нем определенно не наблюдается ip_conntrack. Все там в конфиге обшарил, особенно на вкладках и подменю с соответствующими названиями netfilter, networking options, почти везде отметки там поставил.

Ну, поищи прямо в .config строку с «CONFIG_IP_NF_CONNTRACK» и дай ей значение 'm' или 'y’. Если этой опции по какой-то причине нет вообще, то впиши руками.

Anarchist
grisha
Да предварительно как раз специально для этих целей пересобирал ядро, но в нем определенно не наблюдается ip_conntrack. Все там в конфиге обшарил, особенно на вкладках и подменю с соответствующими названиями netfilter, networking options, почти везде отметки там поставил.

Во-первых: включение включению рознь.

Когда я пробовал жёстко включать указанные элементы в состав ядра мне тоже не удалось запустить файрволл.

После пересборки модулями — всё заработало.

Во-вторых: что говорит

# grep CONNTRACK .config

В-третьих: не слушай Флая, он плохому научит.

Просто вставлять строку ручками низзя!

USE menuconfig

grisha

Conntrack нашелся, правда не там где я его ожидал и название у него слегка измененное 8-). Вот как бывает когда по быстрому хочешь чего нибудь сделать, поэтому наверно нихрена не видишь. Включил его прямо в ядро и соседние опции тоже (на всякий случай,может изучу кгда нибудь). Кстати что лучше, модулем или «ядрено-цельно»? Где то читал что зависет от оборудования в основном. Если будет подключаться новое оборудование, то придется пересобирать если все all included. А с другой стороны быстрее работает и меньше весит.

Dr. Evil
grisha
Кстати что лучше, модулем или «ядрено-цельно»? Где то читал что зависет от оборудования в основном. Если будет подключаться новое оборудование, то придется пересобирать если все all included. А с другой стороны быстрее работает и меньше весит.

Первое. В современных нормальных дистрибутивах Linux (не те, которые являются инструментом разработчика) множество людей работает над оптимизацией работы ядра и ОС в целом. Собанное ими ядро должно работать в общих случаях одинаково эффективно у большиства пользователей. Думаю, что у тебя вряд ли получится пересобрать его лучше (тольк без обид).

Второе. Ядро, если ты решил всё-таки его пересобрать, лучше делать модульным, чтобы оно было меньшим по размеру. Все необходимые модули для работы ядра при существующей конфигурации «железа» могут быть включены в ядро. Некоторые из ОБЯЗАТЕЛЬНО, например драйвер для чипсета жесткого диска. Когда конфигурация ядра изменится, необходимые модули будут загружены по команде соответствующих демонов.

Третье (или вывод). Не надо слушать тех, кто что-то где-то сказал. Пробуй всё сам. Linux тебе это позволяет на все 100. :)

grisha

По поводу логов… Действие LOG делает запись в /var/log/messages, а я хочу сделать отдельным файлом, например в /var/log/iptables. Можно ли это сделать при помощи LOG или обязательно нужен ULOG?

grisha

Или читать syslog-ng? :)

Anarchist
grisha
Или читать syslog-ng? :)

Ну да: читать доки по syslog-ng и прописать объявление нужного тебе лога.