Eu tenho duas fail2ban
prisões que lidam com postfix
: uma chamada postfixsasl
e outra chamada postfixauth
. Cada um deles está procurando diferentes correspondências de regex para acionar proibições. É possível que ambos sejam acionados pela atividade do mesmo endereço IP, e isso ocorre às vezes.
Se um dos banimentos expirar antes do outro, parece que o endereço IP está sendo desbanido, mesmo que o segundo ban ainda esteja ativo.
Por exemplo, suponha que eu execute fail2ban-client get postfixauth banip --with-time
e obtenha a seguinte linha em sua saída (endereço IP real simulado):
aaa.bbb.ccc.ddd 2020-09-28 10:58:24 + 86400 = 2020-09-29 10:58:24
... e suponha que eu execute fail2ban-client get postfixsasl banip --with-time
e obtenha a seguinte saída. O mesmo endereço IP é simulado da mesma maneira:
aaa.bbb.ccc.ddd 2020-09-28 20:00:37 + 3600 = 2020-09-28 21:00:37
Obviamente, o segundo banimento expirará antes do primeiro. No entanto, parece que uma vez que o segundo item é desbanido, o aaa.bbb.ccc.ddd
endereço IP parece ser desbanido, mesmo antes do tempo de expiração do primeiro item.
Eu quero que o aaa.bbb.ccc.ddd
endereço IP permaneça bloqueado até que a última proibição expire, mas isso não está ocorrendo para mim.
Antes das 21:00:37 de 29-09-2020, a seguinte linha aparece na f2b-postfixauth
seção de iptables -L
saída:
REJECT all -- aaa.bbb.ccc.ddd anywhere reject-with icmp-port-unreachable
... e a seguinte linha aparece na f2b-postfixsasl
seção da iptables -L
saída:
REJECT all -- aaa.bbb.ccc.ddd anywhere reject-with icmp-port-unreachable
Após 21:00:37 em 29-09-2020, ambas as linhas desapareceram da iptables -L
saída.
Esse é o comportamento esperado? Ou pode haver algo totalmente não relacionado que está errado com minha fail2ban
configuração que faz com que isso ocorra? Se esse não for o comportamento esperado, investigarei minha fail2ban
configuração mais a fundo.
Muito obrigado.
Estou usando
csf
para processamento "normal", nãofail2ban
firewall, e descobri issocsf
efail2ban
interajoiptables
de maneiras incompatíveis, e essa é a causa do meu problema.Eu estava usando
iptables-multiport
dentrofail2ban
para fazer o banimento, e a presença simultânea de como meu serviço de firewall fazia com que endereços IPcsf
previamente banidos (via ) ainda passassem pelo firewall.fail2ban
Em vez de usar
iptables-multiport
, alterei minhafail2ban
configuração de jail para banir e desbanir apenas viacsf
, conforme descrito aqui: https://github.com/fail2ban/fail2ban/issues/2340Com
iptables-multiport
as ações não sendo mais executadas na minha configuraçãocsf
habilitadafail2ban
, todas as tentativas de banimento e desbanimento agora estão funcionando conforme o esperado.