Lançador Produtos Bitnami Documentaçãoimaxe CLI Blog Contacto
imaxe fail2ban bans v1.0.0

Bans sob controlo, sem tocar no fail2ban

Consulta e gere os bans do fail2ban a partir de um único comando: vê quais jails estão ativas, quem está banido, bane ou desbane IPs à mão e desbloqueia num aperto. Sem ter de recordar a sintaxe do fail2ban-client.

$ imaxe fail2ban status
Versão
v1.0.0
Subcomandos
7
Requer root
sim
Saída JSON
status · banned · check
Backend
fail2ban-client

O que faz este módulo #

O fail2ban é o guardião que vigia os logs do teu servidor e, quando deteta tentativas de acesso maliciosas (por exemplo, muitas falhas de palavra-passe por SSH), bane automaticamente o IP infrator durante algum tempo. Cada serviço vigiado organiza-se numa jail (por exemplo sshd).

O módulo fail2ban dá-te o controlo desses bans em tempo de execução, sem teres de recordar a sintaxe do fail2ban-client: consulta o estado das jails, lista quem está banido, verifica se um IP específico está bloqueado, bane ou desbane à mão, desbloqueia tudo de uma vez numa emergência e recarrega a configuração após uma alteração.

Antes de começar

Este módulo atua sobre um fail2ban já instalado e em execução. Cada subcomando consulta ou modifica o estado do serviço, por isso precisam de privilégios de root (usa sudo). Se te trancaste fora com o teu próprio IP, vai diretamente ao desbloqueio de emergência.

Guia rápidotarefas passo a passo

Tarefas comuns #

Escolhe o que queres fazer. Cada receita traz o comando já pronto — basta trocar o IP ou a jail pelos teus e clicar em Copiar.

1

Ver o estado e as jails

Verifica num relance se o fail2ban está ativo e quantos estão banidos.

Liga-te por SSH ao teu servidor com o utilizador ubuntu e pede o estado geral:

terminal
$ sudo imaxe fail2ban status

Queres em formato legível por máquina, para um script ou um painel? Adiciona --json:

terminal
$ sudo imaxe fail2ban status --json
Verás se o serviço está ativo, a lista de jails (como sshd) e o número de IPs banidos em cada uma.
2

Ver que IPs estão banidos

Lista os bans ativos, em todas as jails ou apenas numa.

Todos os IPs banidos, em todas as jails de uma vez:

terminal
$ sudo imaxe fail2ban banned

Interessa-te apenas uma jail? Passa-a como argumento:

terminal
$ sudo imaxe fail2ban banned sshd
Obténs a lista de IPs bloqueados. Se algum for legítimo, leva-o à receita Banir ou desbanir.
3

Verificar se um IP está banido

Descobre em que jails um endereço específico está bloqueado.

Pergunta diretamente pelo IP; dir-te-á em que jails aparece banido:

terminal
$ sudo imaxe fail2ban check 203.0.113.7
Saberás instantaneamente se esse IP está bloqueado e em que jails. Usa-o antes de desbanir alguém que reporte problemas de acesso.
4

Banir ou desbanir um IP

Bloqueia um endereço abusivo à mão ou liberta um utilizador legítimo.

Bane um IP numa jail específica (se só houver uma jail, é inferida automaticamente):

terminal
$ sudo imaxe fail2ban ban 203.0.113.7 --jail sshd

Baniste alguém legítimo? Desbane-o de todas as jails de uma vez:

terminal
$ sudo imaxe fail2ban unban 203.0.113.7
A alteração tem efeito imediato. Confirma-a com imaxe fail2ban check nesse mesmo IP.
5

Desbloquear tudo (emergência)

Estás trancado fora: liberta todos os IPs de todas as jails.

Se o teu próprio IP ficou apanhado e precisas de recuperar o acesso já, desbane-os a todos. Adiciona --yes para saltar a confirmação:

terminal
$ sudo imaxe fail2ban unban-all --yes

Após uma alteração à configuração das jails, recarrega-a para que tenha efeito:

terminal
$ sudo imaxe fail2ban reload
Todas as jails ficam sem bans. É uma medida temporária: o fail2ban voltará a banir os abusivos assim que reincidam.
Cuidado com o unban-all

É uma operação de ban destrutiva: deixa todos os IPs desbloqueados, os maliciosos incluídos. Usa-o apenas para recuperar o acesso numa emergência e verifica o estado a seguir com imaxe fail2ban status.

Referência CLIcomandos, flags e ficheiros

Sinopse #

uso
imaxe fail2ban <subcomando> [<ip>|<jail>] [--jail JAIL] [flags]

Cada subcomando requer privilégios de root (usa sudo) porque consultam ou modificam o estado do fail2ban através do fail2ban-client. Adiciona --json a status, banned ou check para obter saída legível por máquina, apta para scripting.

Subcomandos #

SubcomandoO que fazFlags relevantes
statusEstado do fail2ban: ativo, jails e número de IPs banidos por jail.--json
bannedLista os IPs banidos (todas as jails ou uma específica).--json
checkIndica em que jails um IP está banido.--json
banBane manualmente um IP numa jail.--jail
unbanDesbane um IP de todas as jails.
unban-allEMERGÊNCIA: desbane TODOS os IPs de todas as jails.--yes
reloadRecarrega a configuração do fail2ban (valida jail.local).

Argumentos e flags #

Argumento / FlagTipoPor omissãoDescrição
<ip> obr.stringO IP sobre o qual operar. Obrigatório em check, ban e unban.
<jail>stringtodasEm banned, uma jail específica a listar. Sem argumento, listam-se todas as jails.
--jailstringautoEm ban, a jail de destino do ban. Se só houver uma jail, é inferida automaticamente.
--yesboolfalseEm unban-all, confirma sem perguntar (operação de ban destrutiva).
--jsonboolfalseEm status/banned/check, emite o resultado como JSON em stdout.

Ficheiros e caminhos #

CaminhoConteúdo
/etc/fail2ban/jail.localConfiguração local do fail2ban: jails ativas, tempos de ban e limiares. O que o reload valida.
/var/run/fail2ban/fail2ban.sockSocket de controlo que o fail2ban-client usa para comunicar com o serviço.
/var/log/fail2ban.logLog próprio do fail2ban: bans, desbans e recargas.

Códigos de saída e logs #

Cada execução devolve um código que podes verificar com echo $? — útil para encadear em scripts:

0OKOperação concluída com sucesso.
1ERRErro genérico não classificado. Revê o log.
2USAGEArgumentos inválidos ou em falta.
3SERVICEO fail2ban não está ativo ou não responde no socket.
4JAILA jail indicada não existe ou não pôde ser inferida.
5RELOADA configuração não valida; não foi recarregada.

Segue o log em direto enquanto depuras:

terminal
$ sudo journalctl -u fail2ban -f
$ sudo tail -f /var/log/fail2ban.log

Resolução de problemas #

SintomaCausa provávelSolução
Sai SERVICE (código 3)O fail2ban está parado ou o socket não responde.Inicia o serviço com systemctl start fail2ban e tenta de novo.
Sai JAIL (código 4)A jail de --jail não existe, ou há várias e não pode ser inferida.Vê as jails com imaxe fail2ban status e passa a correta em --jail.
Sai RELOAD (código 5)Há um erro de sintaxe em jail.local.Corrige /etc/fail2ban/jail.local e executa reload de novo.
Fiquei trancado fora por SSHO teu próprio IP acumulou falhas e foi banido em sshd.A partir de outra via, desbane-o com unban ou liberta-os a todos com unban-all --yes.

Ficou bloqueado com o módulo Fail2ban?

Escreva-nos com a saída de «imaxe <module> status --json» e respondemos rapidamente.

Contactar o suporte