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
- Aggiungere l'IP o CIDR a
fail2ban_ignoreipininfra/roles/fail2ban/defaults/main.ymlo in group/host vars. - 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.