воскресенье, 24 марта 2013 г.

Установить модуль xt_LOG (Gentoo)

Имеется Gentoo, не хватает модуля для логгирования iptables. Краткая инструкция для себя.
# В данном случае версия ядра 3.5.7
cd /usr/src/linux
make menuconfig

# Установить CONFIG_NETFILTER_XT_TARGET_LOG=m и выйти, сохранив конфиг

# Откомпилировать модуль
make net/netfilter/xt_LOG.ko

# Скопировать в нужный каталог
cp net/netfilter/xt_LOG.ko /lib/modules/3.5.7-gentoo/kernel/net/netfilter/

# Создать файл зависимостей модулей
depmod -a

# Проверить наличие xt_LOG
grep -i xt_log /lib/modules/3.5.7-gentoo/modules.dep

# Получить информацию о модуле
modinfo xt_LOG

# Загрузить модуль
modprobe xt_LOG

# Добавить модуль в автозагрузку в файле /etc/conf.d/modules
modules="xt_LOG"

# Добавить правило в iptables для ограничения числа сообщений о блокировке пакета от
одного хоста-отправителя до 1 раза в минуту
iptables -A INPUT -m hashlimit --hashlimit-upto 1/min --hashlimit-burst 1 
--hashlimit-mode srcip --hashlimit-name lim_log --hashlimit-htable-expire 60000 
-j LOG --log-prefix "IPTABLES: DEF DROP: "

# Сохранить текущий набор правил
iptables-save > /var/lib/iptables/rules-save

# Отредактировать в /etc/syslog-ng/syslog-ng.conf
destination iptables { file("/var/log/iptables.log"); };
filter f_iptables {    message("IPTABLES.*") };
log { source(src); filter(f_iptables); destination(iptables); flags(final); };

# Перезапустить syslog-ng
/etc/init.d/syslog-ng reload

# Добавить в /etc/logrotate.d/syslog-ng.conf
/var/log/iptables.log {
    missingok
    notifempty
    rotate 300
    compress
    sharedscripts
    postrotate
        /etc/init.d/syslog-ng reload > /dev/null 2>&1 || true
    endscript
}

Комментариев нет:

Отправить комментарий