Table des matières
Fail2ban
Installation
Debian
En root :
apt install fail2ban
Fail2ban est un service, une fois installer il se lancera automatiquement, et sera actif au démarrage de la machine.
Utilisation
Statuts
Exemple pour ssh, taper: fail2ban-client status sshd
Bannir manuellement
Exemple pour ssh, taper: fail2ban-client set sshd banip 192.168.1.2
De-bannir manuellement
- Exemple pour ssh, taper:
fail2ban-client set sshd unbanip 192.168.1.2
- Exemple pour toutes les IP, taper:
fail2ban-client unban –all
Configurations
Configurations générales
La configuration générale se trouve dans la section[DEFAULT]
, modifiable en root dans /etc/fail2ban/jail.conf
. Ces configurations sont appliquées si elles ne sont pas indiquées dans les jails.
- bantime: temps de bannissement, exemple:
bantime = 50m
- maxretry: nombre d'essai max avant bannissement, exemple:
maxretry = 3
- findtime: temps entre pendant lequel s'applique le nombre max. d'essai, exemple:
findtime = 5m
- Liste blanche: une IP, une IP avec CIDR masks, ou un hosts, exemple:
ignoreip = 127.0.0.1/8 192.168.1.0/8 42.50.26.154
Après un changement dans la configuration, relancer fail2ban en root: service fail2ban restart
Jail ssh
En root, dans /etc/fail2ban/jail.conf
, chercher la section [sshd]
, voir exemple de configuration ci-dessous.
[sshd] enabled = true port = ssh logpath = %(sshd_log)s backend = %(sshd_backend)s maxretry = 2 bantime = 30m findtime = 2m
Jail samba
En root, à la fin de /etc/fail2ban/jail.conf
, ajouter la jail [samba]
comme ceci:
[samba] enabled = true port = 135,139,445,137,138 filter = samba logpath = /var/log/syslog
En root, ajouter le fichier filtre /etc/fail2ban/filter.d/samba.conf
, et le remplir avec ceci:
[INCLUDES] before = common.conf [Definition] _daemon = smbd failregex = ^%(__prefix_line)s.*[aA]uthentication for user .* from <HOST> .* FAILED\s.*$ ^%(__prefix_line)s.*Failed [-/\w]+ for .* from <HOST>\s.*$ ^%(__prefix_line)s.*ROOT LOGIN REFUSED .* FROM <HOST>\s.*$ ^%(__prefix_line)s.*[iI](?:llegal|nvalid) user .* from <HOST>\s.*$ ^%(__prefix_line)s.*Denied connection from <HOST>\s.*$