servidor fail2ban / ipfw / Mac OS X não negando conexões

0

Estou tentando configurar um firewall para o meu servidor 10.5, mas parece que não consigo fazê-lo funcionar. O principal objetivo é tentar impedir as tentativas constantes de login por correio de força bruta.

Para este fim, instalei o fail2ban, para detectar e banir os logins com falha. Na maior parte isso funciona, ou seja, a mecânica de enviar os endereços IP proibidos e enviar-me um email para esse efeito é realizada. Se eu iniciar uma sessão de terminal, receberei dezenas de endereços IP listados com o seguinte comando:

sudo ipfw list

Com uma entrada parecida com:

12345 deny tcp from 123.123.23.123 to any in

Mas a proibição não é efetiva - o mesmo endereço IP tentará novamente mais tarde, às vezes em intervalos de poucos segundos por horas.

Quando verifico o log do fail2ban que ele reclama (depois de ter detectado uma tentativa de login mal-intencionado várias vezes):

"WARNING [sasl-ipfw] 123.123.123.123 already banned"

Eu tentei formatar a proibição de maneiras diferentes:

12345 deny tcp from 123.123.23.123 to 127.0.0.1 dst-port 25
12345 deny tcp from 123.123.23.123 to 192.168.123.123 dst-port 25

Mas não faz diferença. Eu até tentei apenas uma proibição de rede de rede local para o serviço da web:

12345 deny tcp from 192.168.123.122 to 192.168.123.123 dst-port 80

Mas, novamente, isso não tem nenhum efeito. As outras regras, parece ser o padrão, na lista IPFW se parecem com:

12300 allow log logamount 1000 tcp from any to any established
12301 allow log logamount 1000 tcp from any to any out
12302 allow log logamount 1000 tcp from any to any dst-port 22 …

e uma regra final na lista (que eu li em algum lugar não pode ser alterada):

65535 allow ip from any to any

O aplicativo de administração do servidor indica que o serviço de firewall está sendo executado; não há listagens de "negação" no log do ipfw. As entradas corrigidas no IPFW pelo fail2ban não aparecem nas entradas do Server Admin em nenhum lugar, nem nos arquivos ipfw.conf ou ipfw.conf.apple (portanto, não tenho certeza de onde eles estão armazenados). Mas eu os vejo quando recebo "ipfw list" no terminal e eles estão listados na aba "Active Rules" da seção Firewall no Server Admin.

Obrigado por qualquer ajuda sobre este assunto.

    
por typonaut 27.09.2016 / 02:43

1 resposta

1

Parece que o seu script fail2ban está usando um número de regra muito alto. O ipfw avalia as regras em ordem numérica, e o primeiro que se aplica a um dado pacote determina o que é feito com ele. Isso significa que as regras de números mais baixos têm maior prioridade. Como as regras "negar" do fail2ban estão sendo adicionadas com o número 12345, mas as regras de "permissão" configuradas pelo Servidor Administrativo começam em 12302, pelo menos algumas das regras de permissão estão substituindo as regras de negação do fail2ban.

Correção simples: encontre onde o número da regra está definido no seu script fail2ban e diminua para algo como 12200.

BTW, o fato de que as regras do fail2ban não estão sendo adicionadas aos arquivos de configuração é normal e provavelmente bom. Esses arquivos são usados quando o firewall é recarregado (por exemplo, quando você reinicializa), mas não refletem necessariamente o estado do firewall "ativo". Se você quisesse, poderia editar o script fail2ban para adicionar suas regras a esses arquivos, além de defini-los no estado ativo, mas isso significa que o conjunto de regras se tornaria arbitrariamente grande ao longo do tempo. IMO, a única vez que você deve se preocupar com essas proibições "permanentes" é se você continuar vendo abusos dos mesmos IPs repetidas vezes por um longo período de tempo ... mas eu esperaria que isso fosse raro.

    
por 28.09.2016 / 01:54