[FUG-BR] Expriência Qmail + fail2ban
Rejaine Monteiro
rejaine em bhz.jamef.com.br
Segunda Fevereiro 28 09:47:29 BRT 2011
excelente dica,
já uso o fail2ban para algumas outras coisas, mas não havia pensando
ainda associar ao qmail.
também uso no qmail com diversos pathes para combater spam, rblsmtp ,
além do proprio spamassasin
para limitar o numero de conexoes simultaneas, uso recursos como como o
MAXCONNIP, MAXCONNC e GREETDELAY+DROP_PRE_GREET , mas a ideia do
fail2ban para auxiliar o qmail é muito boa
valeu a dica!
Em 28-02-2011 08:16, Jean Everson Martina escreveu:
> Ola Pessoal,
>
>
> Não sei mais alguém aqui usa este mesmo tipo de solução, mas eu queria compartilhar um pouco do sucesso que eu tive em reduzir a carga de meia duzia de servidores de e-mail que eu cuido usando fail2ban e qmail. A redução nos meus casos foram de na casa de 20% na carga média da maquina durante uns dois meses que eu estou monitorando as maquinas graficamente via munin. A maquinas que eu instalei são maquinas de hosting onde deve ter uns 100 domínios cada e na casa de 5000-8000 emails ativos.
> A solução que a gente encontrou aqui que diminuiu bastante nosso problema de carga com SA e o qmail foi dar um ban via pf de IPs que não estão se comportando como deviam, e também mantendo uma lista de servidores de email marketing (eu não entendo ainda a diferença disso pra SPAM) que não são bem vindos. O que a gente faz é dar ban pelo domínio nos ips dos servidores listado no cdb do qmail como deny (ex.: =.virtualtarger.com.br:deny), dar ban em todo mundo que aparece em RBL, dar ban em todo mundo que da probe no relay da porta 25, e dar ban em todo mundo que da failed_rcptto (eu estou testando agora uns bans em DNSs com os strings "mkt" e " marketing"). O banimento é temporário e varia de caso em caso. Por exemplo failed_rcptto a gente ta colocando 30 mins, enquanto RBL são 6 horas, ja o deny são na casa de 1 dia.
> Isso diminuiu o numero de conexões simultâneas no qmail de forma absurda. De mais de 50 simultâneas pra menos de 10, e o SA também tem trabalhado menos o que diminuiu a carga das maquinas.
>
> Alguns dos nossos arquivos de configuração (simplificados):
>
> filter.d/qmail.conf
>
> failregex = (?: rblsmtpd: | tcpserver: deny [\d].* | Reject::RCPT::Failed_Rcptto: P:ESMTP S:| Reject::SNDR::Invalid_Relay: P:ESMTP S:)<HOST>
> ignoreregex = (?: .*terra.com.* | .*hotmail.com.* | .*google.com.* )
>
> action.d/pf.onf
> actionban = pfctl -t fail2ban -T add <ip>
> actionunban = pfctl -t fail2ban -T delete `pfctl -t fail2ban -T show 2>/dev/null | grep <ip>`
>
> jail.conf
> [qmail-pf]
> enabled = true
> filter = qmail
> action = pf
> logpath = /var/log/qmail/qmail-smtpd/current
> maxretry = 1
> bantime = 3600
>
> pf.conf
> table <fail2ban> persist
> block in quick from <fail2ban> to any
> block out quick from any to <fail2ban>
>
> Do mais de 600 clientes com uns 20 mil usuários não tivemos muitas reclamações. E as reclamações tem ido no ignoreregex e resolvido (os arquivos ali em cima são simplificações das nossas configurações verdadeiras).
>
> O que eu estou procurando agora é sugestões de como afinar ainda mais essa solução.
>
>
> Abraços,
>
>
> Jean
>
>
>
> -------------------------
> Histórico: http://www.fug.com.br/historico/html/freebsd/
> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>
Mais detalhes sobre a lista de discussão freebsd