Migrar ignoreip no Fail2Ban é o processo de transferir a lista de IPs e redes legítimas que o Fail2Ban nunca deve banir — do jail.conf padrão ou de um servidor antigo — para jail.local (ou jail.d) no AlmaLinux 10, preservando acesso de administradores, monitores e proxies confiáveis. Para migrar ignoreip e evitar bloqueio indevido, siga estes passos:
- Instale ou confirme o Fail2Ban no AlmaLinux 10 e pare o serviço se for recriar jails
- Exporte a lista atual de ignoreip do servidor de origem ou do jail.conf
- Crie ou edite /etc/fail2ban/jail.local com a seção [DEFAULT] e ignoreip
- Inclua IPv4, IPv6 e CIDR confiáveis (escritório, VPN, healthcheck)
- Recarregue o Fail2Ban e valide com fail2ban-client get sshd ignoreip
- Desbanha IPs legítimos que ainda estiverem na banned list e teste o SSH
Pré-requisitos
- Servidor AlmaLinux 10 com acesso root ou sudo
- Fail2Ban instalado (pacote fail2ban via dnf)
- Lista dos IPs/redes legítimos a preservar (admin, escritório, monitoramento, VPN)
- Acesso SSH alternativo ou console (KVM/IPMI) caso o IP atual esteja banido
- Backup de /etc/fail2ban antes de editar
- Conhecimento básico de jails (sshd, nginx-http-auth, etc.)
Migrar ignoreip no Fail2Ban: por que jail.local no AlmaLinux 10
A whitelist de IPs legítimos no Fail2Ban só permanece estável se estiver fora do arquivo de pacote. No AlmaLinux 10, jail.conf é sobrescrito em atualizações dnf; qualquer ignoreip colocado só ali some no próximo upgrade. A migração correta concentra ignoreip em /etc/fail2ban/jail.local ou em um drop-in em /etc/fail2ban/jail.d/, onde a seção [DEFAULT] propaga a lista a todos os jails que não redefinem o parâmetro.
Em ambientes com vários jails (sshd, recidive, filtros de painel), um IP de monitoramento ou de um proxy reverso interno pode gerar falhas repetidas e cair na banned list se não estiver em ignoreip. Isso trava healthchecks, backups automatizados e o próprio acesso do sysadmin. Migrar ignoreip no Fail2Ban no AlmaLinux 10 reduz esse risco sem enfraquecer a proteção contra força bruta, desde que a lista seja enxuta e documentada.
Antes de alterar arquivos, faça cópia de segurança:
sudo cp -a /etc/fail2ban /root/fail2ban-backup-$(date +%F)
sudo systemctl status fail2ban
sudo fail2ban-client status
Output esperado:
● fail2ban.service - Fail2Ban Service
Active: active (running)
Status for the jail: sshd
|- Filter
| |- Currently failed: 0
| `- Total failed: 12
`- Actions
|- Currently banned: 2
`- Total banned: 5
Se o serviço não estiver ativo, instale e habilite com dnf e systemctl. Para acesso inicial ao host, o material Acessando servidores VPS Linux da AviraHost cobre o fluxo de conexão segura.
Exportar ignoreip antigo e montar a lista de IPs legítimos
Redes confiáveis e endereços de administração precisam ser inventariados antes de colar no jail.local. No servidor de origem (ou no AlmaLinux 10 se o Fail2Ban já rodava com config legada), leia o valor efetivo:
sudo fail2ban-client get sshd ignoreip
grep -R "ignoreip" /etc/fail2ban/ --include="*.conf" --include="*.local"
Output esperado:
These IP addresses/networks are ignored:
|- 127.0.0.1/8
|- ::1
|- 203.0.113.10
|- 198.51.100.0/24
Anote IPv4 fixo do escritório, range da VPN corporativa, IPv6 do link dedicado e IPs de monitores externos. Use sempre faixas de documentação em exemplos (203.0.113.0/24, 198.51.100.0/24, 2001:db8::/32) e substitua pelos seus valores reais. Evite /8 ou /16 públicos inteiros: ranges amplos abrem caminho para ataques originados na mesma rede.
Se o IP do administrador já estiver banido, use o console do provedor e desbanha antes de seguir:
sudo fail2ban-client set sshd unbanip 203.0.113.10
sudo fail2ban-client status sshd
Problemas de login após banimento indevido costumam se misturar com falhas de chave ou firewall; o guia Como solucionar problemas de acesso SSH no VPS Linux ajuda a separar causa de sintoma.
Configurar ignoreip em jail.local e recarregar o serviço
Arquivo local de jails é o destino definitivo da migração. Crie ou edite /etc/fail2ban/jail.local no AlmaLinux 10:
sudo mkdir -p /etc/fail2ban/jail.d
sudo tee /etc/fail2ban/jail.local <<'EOF'
[DEFAULT]
ignoreip = 127.0.0.1/8 ::1 203.0.113.10 198.51.100.0/24 2001:db8::/32
bantime = 1h
findtime = 10m
maxretry = 5
[sshd]
enabled = true
EOF
Atenção: não apague jail.conf; o Fail2Ban mescla conf + local. Editar só o conf faz a migração se perder no update do pacote. Se um jail específico precisar de lista diferente, declare ignoreip apenas na seção desse jail.
Valide a sintaxe e aplique:
sudo fail2ban-client -t
sudo systemctl reload fail2ban
sudo fail2ban-client get sshd ignoreip
sudo fail2ban-client get sshd bantime
Output esperado:
OK: configuration test is successful
These IP addresses/networks are ignored:
|- 127.0.0.1/8
|- ::1
|- 203.0.113.10
|- 198.51.100.0/24
|- 2001:db8::/32
Com ignoreip global em [DEFAULT], sshd, recidive e demais jails herdam a whitelist. Confirme que o backend de banimento (firewalld ou nftables no AlmaLinux 10) está coerente com o resto da stack de segurança do host. Em servidores web, combine a lista com boas práticas de painel e SSH; a leitura de Compreendendo o Servidor VPS: O que é e Como Funciona contextualiza isolamento e exposição de portas.
Validar jails, desbanir legítimos e endurecer sem auto-bloqueio
Teste de whitelist após reload evita surpresa em produção. A partir de um IP listado em ignoreip, force algumas falhas de senha SSH de propósito: o contador de failed pode subir, mas o endereço não deve entrar em Currently banned.
sudo fail2ban-client status sshd
sudo journalctl -u fail2ban -n 50 --no-pager
sudo ss -tlnp | grep -E ':22|:2222'
Output esperado:
Status for the jail: sshd
|- Filter
| |- Currently failed: 3
| `- Total failed: 20
`- Actions
|- Currently banned: 1
|- Total banned: 6
`- Banned IP list: 198.51.100.200
Se um IP legítimo ainda aparecer na Banned IP list, unban e revise se o jail sobrescreve ignoreip ou se o reload não foi aplicado. Para exceção pontual só no sshd:
sudo tee /etc/fail2ban/jail.d/sshd-ignore.local <<'EOF'
[sshd]
ignoreip = 127.0.0.1/8 ::1 203.0.113.10 198.51.100.0/24
EOF
sudo systemctl reload fail2ban
Documente cada entrada (quem é, para que serve, data). Listas órfãs de ex-funcionários ou ranges antigos de provedor enfraquecem a auditoria. Em migrações de host, repita o mesmo jail.local no destino AlmaLinux 10 antes de apontar DNS ou trocar IP flutuante, para o primeiro healthcheck já nascer protegido da banimento acidental.
Problemas comuns e como resolver
Sintoma: ignoreip editado no jail.conf some após dnf update
Causa: o pacote fail2ban substitui jail.conf na atualização; alterações locais nesse arquivo não são preservadas de forma confiável.
Solução: mova ignoreip para /etc/fail2ban/jail.local ou jail.d/*.local, rode fail2ban-client -t e systemctl reload fail2ban. Confira com fail2ban-client get sshd ignoreip.
Sintoma: IP do escritório continua banido mesmo após incluir em ignoreip
Causa: o serviço não foi recarregado, o jail redefine ignoreip vazio, ou o banimento antigo permanece na action até unban manual.
Solução: systemctl reload fail2ban; fail2ban-client set sshd unbanip 203.0.113.10; verifique a seção efetiva do jail e se não há segundo ignoreip sobrescrevendo o DEFAULT.
Sintoma: fail2ban-client -t acusa erro de configuração após colar a lista
Causa: vírgulas indevidas, aspas erradas ou CIDR inválido na linha ignoreip (o separador padrão é espaço).
Solução: use espaços entre entradas, sem vírgula; valide IPv6 e prefixos; corrija o arquivo e teste de novo com fail2ban-client -t antes do reload.
Sintoma: monitores IPv6 ou VPN CIDR ainda geram ban no sshd
Causa: só IPv4 foi migrado, ou o range CIDR da VPN está incompleto em relação ao endereço de saída real.
Solução: inclua ::1 e o prefixo IPv6 correto (ex.: 2001:db8::/32 de documentação); descubra o IP de saída com logs do journal e amplie só o necessário, nunca a internet inteira.
Perguntas frequentes sobre migrar ignoreip no Fail2Ban
O que é ignoreip no Fail2Ban?
O ignoreip é a lista de endereços e redes que o Fail2Ban nunca deve banir, mesmo após falhas de autenticação. Serve para proteger o IP do administrador, monitores, escritório e proxies confiáveis. Sem ele, um login errado ou healthcheck pode bloquear acesso legítimo.
Onde configurar ignoreip sem perder a configuração no update?
Defina ignoreip em /etc/fail2ban/jail.local ou em um arquivo sob jail.d, nunca só em jail.conf. O jail.local sobrescreve o padrão e permanece após atualizações do pacote. Depois de editar, recarregue o serviço e confira com fail2ban-client get sshd ignoreip.
Posso usar CIDR e IPv6 no ignoreip do Fail2Ban?
Sim. Aceita IPv4, IPv6 e notação CIDR, por exemplo 203.0.113.0/24 ou 2001:db8::/32, além de 127.0.0.1/8. Inclua só redes realmente confiáveis; ranges amplos reduzem a proteção contra força bruta vinda de dentro da mesma faixa.
Como saber se meu IP foi banido mesmo com ignoreip?
Consulte fail2ban-client status e o status do jail (por exemplo sshd) para ver a banned IP list. Se o IP estiver na lista, use fail2ban-client set JAIL unbanip IP e corrija o ignoreip. Verifique também se o jail usa a seção [DEFAULT] correta e se o serviço foi recarregado após a alteração.
ignoreip global vale para todos os jails?
Sim quando está em [DEFAULT] no jail.local: todos os jails herdam a lista, salvo se um jail específico redefinir ignoreip. Para exceções pontuais, declare ignoreip só naquele jail. Mantenha a lista global enxuta e documentada para facilitar auditoria.
Conclusão
- Migre ignoreip para jail.local (ou jail.d) no AlmaLinux 10 e nunca dependa só do jail.conf do pacote.
- Valide com fail2ban-client get sshd ignoreip, unban IPs legítimos residuais e teste falhas de login a partir da whitelist.
- Documente cada CIDR/IPv6, evite ranges largos demais e recarregue o Fail2Ban após qualquer mudança.
Leia também
- Solucionar problemas de bloqueio de IP por fail2ban em VPS Linux e servidor dedicado
- Entenda o que é Fail2Ban: como funciona e exemplos práticos
- Guia para configurar acesso SSH apenas para IPs específicos no Ubuntu 22.04
Precisa de ajuda com Fail2Ban e ignoreip no AlmaLinux 10?
Um VPS com acesso root e rede estável facilita migrar ignoreip, validar jails e manter SSH acessível sem abrir mão da proteção contra força bruta. A equipe AviraHost pode orientar o dimensionamento do ambiente para o seu caso.