[FUG-BR] BruteBlock como anti-spammer
Joao Rocha Braga Filho
goffredo em gmail.com
Quinta Dezembro 14 13:12:08 BRST 2006
On 12/13/06, Joao Rocha Braga Filho <goffredo at gmail.com> wrote:
> Fiz um malabarismo aqui.
>
> Estou usando o BruteBlock como antispammer
>
> Para quem não conhece o BruteBlock, ele é um programa que está nos ports
> feito para trabalhar com o syslogd. O syslogd passa para ele alguns dos logs,
> e ele analisa segundo uma expressão regular. Se bater com a expressão, ele
> armazena o IP (que é pego como parte da expressão regular), e se aparecer
> mais que algumas vezes em um certo prazo de tempo, o que é configurável,
> ele coloca o IP em uma table do IPFW. Ele foi concebido para bloquear quem
> tenta força bruta no ssh e no ftp.
>
> Eu tive uma sacada diferente. Com o IPFW pode-se fazer regras que gerem
> log, mesmo que seja a de contagem. Então puz uma destas. Configurei o
> syslogd para repassar os logs do firewall, e configurei o bruteblock para as
> regras de firewall. Depois de 20 conexões de envio de e-mail em um minuto
> eu coloco o IP em uma lista negra. Claro que os parâmetros são configuráveis.
>
> Abaixo vão os detalhes de configuração:
>
> Coloque a seguinte linha no syslogd.conf:
>
> security.* | exec /usr/local/sbin/bruteblock -f
> /usr/local/etc/bruteblock/spam.conf
>
> Atenção, eu coloquei logo depois da linha:
>
> security.* /var/log/security
>
> E tem que ser antes de qualquer !programa.
>
> O arquivo /usr/local/etc/bruteblock/spam.conf vai abaixo:
>
> "
> regexp = kernel. ipfw. .* Count TCP
> (\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}):.*:25
Uma pequena correção aqui.
egexp = kernel: ipfw: .* Count TCP
(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}):.*:25 in
>
>
> # Number of mail connections attempts within time before we block
> max_count = 20
>
> # Time in seconds in which all attempts must occur
> within_time = 60
>
> # Time in seconds to block ip in firewall
>
> # 4 Hours
> reset_ip = 14400
>
> # IPFW table number to add spammers users
> ipfw2_table_no = 0
>
> "
>
> E agora vem a parte de detecção. Coloque a seguinte regra no seu firewall,
> na interface que lida com os usuários internos, e com o número adequado.
>
> ipfw add <n> count log logamount 10000 tcp from any to any dst-port 25 setup
>
> Não pode esquecer a flag setup, pois isto terá conseqüências desastrosas, e
> tem que colocar uma regra para dar deny na tabela que você está jogando os
> spammers da sua rede.
>
> Periodicamente você terá que dar um resetlog, ou zerar os contadores, da
> regra de contagem mostrada acima.
>
>
> Abraços,
> João Rocha.
>
>
> --
> "Sempre se apanha mais com as menores besteiras. Experiência própria."
>
> goffredo at goffredo.eti.br
> goffredo at gmail.com
> http://www.goffredo.eti.br
>
--
"Sempre se apanha mais com as menores besteiras. Experiência própria."
goffredo at goffredo.eti.br
goffredo at gmail.com
http://www.goffredo.eti.br
Mais detalhes sobre a lista de discussão freebsd