Fail2ban est un utilitaire qui analyse les logs du service désigné sous forme de « prison »(jail). Cela lui permet de bannir par ip les clients tentants de trop nombreuses connections ratées.
Installation fail2ban
apt install fail2ban
Démarrer fail2ban
systemctl start fail2ban
Configuration fail2ban (Exemple)
nano /etc/fail2ban/jail.conf
[DEFAULT]
ignoreip = 127.0.0.1 8.8.8.8
findtime = 3600
bantime = 86400
[sshd]
enabled = true
port = ssh,sftp,1234
filter = sshd
logpath = /var/log/auth.log
maxretry = 6
[DEFAULT]
ignoreip = 127.0.0.1 8.8.8.8
findtime = 3600
bantime = 86400
[sshd]
enabled = true
port = ssh,sftp,1234
filter = sshd
logpath = /var/log/auth.log
maxretry = 6
Reload de la configuration fail2ban
systemctl reload fail2ban
Status de fail2ban
systemctl status fail2ban
Controle de prison par entitée
fail2ban-client stop ssh
Surveillance côté server
fail2ban-client status sshd
Vider la liste des clients bannis sur fail2ban
fail2ban-client set sshd unbanip 192.168.137.228
Envoi de MAIL fail2ban
nano /etc/fail2ban/jail.conf
destemail = adresse@example.com
action = %(action_mwl)s
destemail = adresse@example.com
action = %(action_mwl)s
Reboot des services
systemctl restart sshd fail2ban
Autoriser SSH par-feu
ufw allow ssh
Afficher regles en cours
ufw status verbose
Autoriser port custom par-feu
ufw allow <port number>/tcp
ufw allow out 25/tcp
ufw allow out 25/tcp