Регистрация пакетов, отброшенных с помощью nfq_set_verdict2 (NF_DROP)

В моем приложении я передаю пакеты из netfilter в пользовательское пространство с помощью NFQUEU, а затем сравниваю его с моими критериями и отбрасываю или принимаю пакеты через NF_DROP или NF_ACCEPT в функции nfq_set_verdict2. Я хочу регистрировать отброшенные пакеты в обычном формате журнала iptables. Как могу ли я этого добиться?


person barp    schedule 15.06.2012    source источник


Ответы (1)


Для регистрации отброшенных пакетов создайте новую цепочку, которая будет отбрасывать каждый полученный пакет. перенаправьте все те пакеты, которые вы хотите отбросить, в новую цепочку и используйте синтаксис ведения журнала при объявлении новой цепочки

iptables -N LOGGING
iptables -A INPUT -j LOGGING
iptables -A LOGGING -m limit --limit 2/min -j LOG --log-prefix "IPTables-Dropped: " --log-level 4
iptables -A LOGGING -j DROP

строка №3: ​​-m limit: используется модуль сопоставления лимитов. Используя это, вы можете ограничить ведение журнала, используя опцию –limit.

–limit 2/min: указывает максимальную среднюю скорость совпадения для ведения журнала. В этом примере для аналогичных пакетов будет ограничено ведение журнала до 2 пакетов в минуту. Вы также можете указать 2/second, 2/minute, 2/hour, 2/day. Это полезно, если вы не хотите загромождать сообщения журнала повторяющимися сообщениями об одних и тех же отброшенных пакетах.

-j LOG: указывает, что целью этого пакета является LOG. то есть запись в файл журнала.

–log-prefix “IPTables-Dropped: «Вы можете указать любой префикс журнала, который будет добавлен к сообщениям журнала, которые будут записываться в файл /var/log/messages.

–log-level 4 Это стандартные уровни системного журнала. 4 - предупреждение. Вы можете использовать число от 0 до 7. 0 — аварийный, 7 — отладочный.

iptables -A LOGGING -j DROP: Наконец, отбросьте все пакеты, пришедшие в цепочку LOGGING. то есть теперь он действительно отбрасывает входящие пакеты.

person Neji    schedule 31.10.2012