Назад | Перейти на главную страницу

iptables ничего не регистрирует

Я пытаюсь защитить свой сервер (Ubuntu Lucid 10.04) от некоторых атак грубой силы ssh, настроив iptables. Я хочу зарегистрировать совпадения с правилами DROP, но это не сработало, поэтому я попробовал самое простое:

iptables -A INPUT -p tcp --dport 22 -j LOG --log-level info --log-prefix "TEST: "

Но ничего не регистрирует! Я попытался изменить уровень журнала: отладка или 7 и добавить kern.=debug -/var/log/firewall к /etc/syslog.conf но ничего не пишут/var/log/messages или /var/log/firewall

Правило имеет несколько совпадений:

$ iptables -L -v
pkts bytes target     prot opt in     out     source               destination
44  5543 LOG        tcp  --  any    any     anywhere             anywhere            tcp dpt:ssh LOG level debug prefix `TEST: '

ведение журнала iptables не работает есть решение обновить rsyslog до более новой версии. Однако согласно этот источник "это решение мешает работе системы регистрации по умолчанию"

Кто-нибудь знает лучшее решение?

Если нет, я мог бы попробовать обновить rsyslog (скомпилировать из исходного кода), но как я могу вернуться к rsyslog по умолчанию, если он все испортил?

РЕДАКТИРОВАТЬ: rsyslog лишает его привилегий, поэтому он не может читать / proc / kmesg. Это должно быть решено в новых ядрах, но, к сожалению, я застрял на 2.6.18.

«тот факт, что он не читает kmsg на старых ядрах, является УМЕРЕННЫМ и не будет исправлен».

Я попытался позволить rsyslog сохранить свои привилегии root, изменив /etc/rsyslogd.conf

$PrivDropToUser root
$PrivDropToGroup root

Но это тоже не работает, что меня смущает. Почему этот корневой процесс не может прочитать файл, принадлежащий корню?

Вы можете установить fail2ban и настройте тюрьму ssh для автоматического запрета IP-адресов, атакующих ваш сервер, на основе сообщений, которые sshd помещает в журналы. Это довольно стандартный способ делать то, что вы хотите.

Если вы еще не сделали этого, вам следует отключить вход в систему с правами root через ssh, а также включить и использовать аутентификацию на основе ключей.

Вы устанавливаете информацию на уровне журнала, но ваша конфигурация системного журнала выводит отладку на уровне журнала. Либо измените syslog на вывод kern.info, либо ваше правило iptables для вывода на отладку на уровне журнала в соответствии с конфигурацией вашего набора правил.