Fail2Ban Deployment Analysis
Status: Accepted Date: 2026-05-18
Decisione
Deploy fail2ban via role Ansible dedicato, con jail differenziati per ruolo host e rollout P0 su Trigger #1: bastion, db e management staging.
Architect
Il role infra/roles/fail2ban centralizza pacchetti, jail globali e override per ruolo. Il playbook operativo P0 e' infra/playbooks/deploy_fail2ban.yml su gruppo inventory trigger1.
Security
I default bloccano brute force SSH con maxretry=3, findtime=600 e bantime=86400. Il jail recidive alza il ban a 7 giorni per recidivi. La whitelist include loopback, Tailscale CGNAT e Toolbox VPS.
SRE
La configurazione viene validata con fail2ban-client -t prima del riavvio effettivo. Promtail ingerisce /var/log/fail2ban.log con label app=fail2ban; Prometheus contiene alert per servizio down e ban rate alto.
FinOps
La soluzione usa pacchetti Ubuntu e componenti di osservabilita' gia' presenti, senza servizi esterni a pagamento. L'integrazione Hetzner Firewall resta fuori scope per fase futura.