FastNetMon

Wednesday, 24 February 2010

При старте системы некорректно стартует fail2ban

В логах вот такая фигня:
tail -f /var/log/fail2ban.log
2010-02-25 01:17:49,943 fail2ban.jail : INFO Jail 'sasl' started
2010-02-25 01:17:50,086 fail2ban.actions.action: ERROR iptables -N fail2ban-dovecot
iptables -A fail2ban-dovecot -j RETURN
iptables -I INPUT -p tcp -m multiport --dports 110,143,993,995 -j fail2ban-dovecot returned 200
2010-02-25 01:17:50,087 fail2ban.actions.action: ERROR iptables -N fail2ban-sasl
iptables -A fail2ban-sasl -j RETURN
iptables -I INPUT -p tcp -m multiport --dports 25,587 -j fail2ban-sasl returned 200
2010-02-25 01:17:50,090 fail2ban.actions.action: ERROR iptables -N fail2ban-proftpd
iptables -A fail2ban-proftpd -j RETURN
iptables -I INPUT -p tcp -m multiport --dports ftp -j fail2ban-proftpd returned 200


Кто подскажет, почему так?

UPDATE:
И это тоже баг fail2ban: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=554162 а фикс взят отсюда: http://sourceforge.net/tracker/?func=detail&aid=2870788&group_id=121032&atid=689044

Фиксим.
vi /etc/fail2ban/action.d/iptables-multiport.conf


И корректируем actionstart следующим образом (добавляем sleep....):

14 actionstart = sleep ${RANDOM:0:1}.${RANDOM: -1:1}
15 iptables -N fail2ban-
16 iptables -A fail2ban- -j RETURN
17 iptables -I INPUT -p -m multiport --dports -j fail2ban-


И аналогично поступаем с actionstop:

23 actionstop = sleep ${RANDOM:0:1}.${RANDOM: -1:1}
24 iptables -D INPUT -p -m multiport --dports -j fail2ban-
25 iptables -F fail2ban-
26 iptables -X fail2ban-


После этого попробуйте перезапустить машину и все должно подняться успешно. Бага вызвана тем, что fail2ban мультипоточный и при запуске нескольких процессов происходит race-condition - попытка добавить забаниваемого юзера до того, как правило fail2ban-name будет создано. Вот так, да.

UPDATE:
Все заработало! На 8ядерном i7 полет нормальный, 4 правила после ребута поднимаются на ура.

UPDATE:
при повторном ребуте также все окей!

2 comments :

  1. щас вроде баги этой нет, но как-то хреново работает fail2ban (или есть, на всяк прописал фикс)
    ошибок вроде нет

    но банит только на раз 10-15 неправильного ввода пароля ssh хотя должен с 6-ого
    видать там регексы устарели

    ReplyDelete
  2. Вполне возможно, сам он весьма кривоват, к сожалению.

    ReplyDelete

Note: only a member of this blog may post a comment.