fail2ban: pára as tentativas de login do pop3?

2

Como configuro o fail2ban para que todas as tentativas de login do pop3 sejam atendidas? Eu estou usando o Ubuntu 9.04 e aqui está um extrato do log pop3 como eu vejo nos e-mails que o Logwatch envia:

   LOGIN FAILED, user=Administrador, ip=[::ffff:208.115.212.106]: 8 Time(s)
   LOGIN FAILED, user=Alfredo, ip=[::ffff:208.115.212.106]: 8 Time(s)
   LOGIN FAILED, user=Antonio, ip=[::ffff:208.115.212.106]: 6 Time(s)
   LOGIN FAILED, user=Carmelo, ip=[::ffff:208.115.212.106]: 8 Time(s)
   LOGIN FAILED, user=access, ip=[::ffff:208.115.212.106]: 7 Time(s)
   LOGIN FAILED, user=account, ip=[::ffff:208.115.212.106]: 7 Time(s)
   LOGIN FAILED, user=admin, ip=[::ffff:208.115.212.106]: 5 Time(s)
   LOGIN FAILED, user=angel, ip=[::ffff:208.115.212.106]: 9 Time(s)

EDIT: Eu acho que a solução é simplesmente alterar as configurações em /etc/fail2ban/jail.conf habilitando jails relacionados com courier. Alguém poderia confirmar isso?

    
por molidoli 15.03.2011 / 19:07

2 respostas

2

Eu não gosto de "fail2ban" porque ele "vive" na userland e tem muitas "partes móveis". Se você estiver usando o iptables na máquina, é bastante trivial limitar as novas conexões a partir do mesmo endereço IP.

iptables -A INPUT -p tcp --dport 110 -m state --state NEW -m recent --name pop --rsource --update --seconds 60 --hitcount 5 -j DROP
iptables -A INPUT -p tcp --dport 110 -m state --state NEW -m recent --name pop --rsource --set -j ACCEPT

Supondo que você tenha regras mais altas na cadeia INPUT para permitir que as conexões estabelecidas por essas regras funcionem para limitar as novas conexões TCP recebidas à sua porta POP3 (excedendo 5 em 60 segundos).

    
por 15.03.2011 / 19:17
1

o fail2ban é bastante flexível, ele pode reagir a qualquer expressão em qualquer arquivo de log: em /etc/fail2ban/jail.conf você especifica onde procurar ( logpath ), o que procurar ( filter ) e o que fazer ( action ).

No seu caso, você pode experimentar o filtro existente /etc/fail2ban/filter.d/courierlogin.conf (verifique a expressão regular, talvez você precise modificá-lo) e uma ação existente de /etc/fail2ban/action.d/ (veja exemplos em /etc/fail2ban/jail.conf ). Por exemplo, se você usar o shorewall:

[pop3]
enabled  = true
filter   = courierlogin
action   = shorewall
logpath  = /var/log/mail.log

Sempre adiciono bons IPs conhecidos a ignoreip , para que esses endereços não sejam banidos:

[DEFAULT]
ignoreip = 127.0.0.1 192.168.0.0/24 SOME.EXTERNAL.IPS
    
por 19.03.2011 / 11:42