Passa al contenuto principale

Fail2Ban Operations

Stato

sudo fail2ban-client status
sudo fail2ban-client status sshd
sudo systemctl status fail2ban

Per Trigger #1 via Ansible:

ansible -i infra/inventory/staging.yml trigger1 -m shell -a "fail2ban-client status sshd"

Unban di un IP

sudo fail2ban-client set sshd unbanip <IP>

Per altri jail sostituire sshd con il nome del jail, ad esempio caddy-auth.

Whitelist permanente

  1. Aggiungere l'IP o CIDR a fail2ban_ignoreip in infra/roles/fail2ban/defaults/main.yml o in group/host vars.
  2. Rieseguire il playbook:
ansible-playbook infra/playbooks/deploy_fail2ban.yml -i infra/inventory/staging.yml --limit trigger1

Hotfix manuale temporaneo:

sudoedit /etc/fail2ban/jail.local
sudo systemctl reload fail2ban

Test detection SSH

Da una rete non in whitelist:

ssh wrong@<bastion-ip>
ssh wrong@<bastion-ip>
ssh wrong@<bastion-ip>
ssh wrong@<bastion-ip>

Poi verificare:

sudo fail2ban-client status sshd
sudo journalctl -u fail2ban --since "10 minutes ago"

Non eseguire questo test da IP amministrativi se non si ha un accesso alternativo via Tailscale.