Améliorations (relecture, ajout d'une info et d'une question/réponse)
This commit is contained in:
parent
d6f7a41546
commit
363fcd4b9d
|
@ -159,10 +159,29 @@ The following regular expression are defined:
|
|||
[...]
|
||||
~~~
|
||||
|
||||
## Ajouter ses propres jails
|
||||
|
||||
## Règles de filtrage
|
||||
On peut bien sûr ajouter ses propres _jails_ en ajoutant dans le fichier `jail.local`, un exemple :
|
||||
|
||||
Un certain nombre de règles de filtrage sont définies dans `/etc/fail2ban/filter.d/` :
|
||||
~~~
|
||||
[custom-1234]
|
||||
|
||||
enabled = true
|
||||
port = http,https
|
||||
filter = accesslog-custom-1234
|
||||
logpath = /var/log/access.log
|
||||
maxretry = 5
|
||||
findtime = 180
|
||||
bantime = 86400
|
||||
ignoreip = 127.0.0.1/8 192.0.2.42
|
||||
action = iptables-multiport,sendmail[dest=jdoe@example.com]
|
||||
~~~~
|
||||
|
||||
> *Attention* : en cas d'action liée à iptables (ce qui est le défaut), le nom de la jail ne doit pas excéder 20 caractères !
|
||||
|
||||
### Règles de filtrage
|
||||
|
||||
Les règles de filtrage sont définies dans `/etc/fail2ban/filter.d/` :
|
||||
|
||||
~~~
|
||||
3proxy.conf apache-noscript.conf couriersmtp.conf exim.conf lighttpd-auth.conf openwebmail.conf proftpd.conf selinux-ssh.conf squid.conf webmin-auth.conf
|
||||
|
@ -173,7 +192,7 @@ apache-modsecurity.conf common.conf ejabberd-auth.conf gssftpd.conf
|
|||
apache-nohome.conf courierlogin.conf exim-common.conf horde.conf nsd.conf postfix-sasl.conf selinux-common.conf solid-pop3d.conf vsftpd.conf
|
||||
~~~
|
||||
|
||||
On peut écrire ses propres règles en s'appuyant sur [les expressions régulières Python](https://docs.python.org/3/library/re.html) pour détecter la variable _<HOST>_.
|
||||
On peut écrire ses propres règles de filtrage en s'appuyant sur [les expressions régulières Python](https://docs.python.org/3/library/re.html) pour détecter la variable _<HOST>_.
|
||||
|
||||
Exemple d'une règle :
|
||||
|
||||
|
@ -202,12 +221,11 @@ $ fail2ban-regex auth.log /etc/fail2ban/filter.d/evolix-test.conf
|
|||
[...]
|
||||
~~~
|
||||
|
||||
## Actions
|
||||
### Actions
|
||||
|
||||
Les actions se trouvent par défaut dans /etc/fail2ban/action.d/
|
||||
Les actions sont définies dans `/etc/fail2ban/action.d/` :
|
||||
|
||||
~~~
|
||||
# ls /etc/fail2ban/action.d/
|
||||
apf.conf firewallcmd-ipset.conf iptables.conf iptables-xt_recent-echo.conf osx-ipfw.conf sendmail-whois-lines.conf
|
||||
badips.conf firewallcmd-new.conf iptables-ipset-proto4.conf mail-buffered.conf pf.conf shorewall.conf
|
||||
blocklist_de.conf hostsdeny.conf iptables-ipset-proto6-allports.conf mail.conf route.conf ufw.conf
|
||||
|
@ -217,17 +235,16 @@ dshield.conf iptables-allports.conf iptables-multiport-log.conf
|
|||
dummy.conf iptables-blocktype.conf iptables-new.conf osx-afctl.conf sendmail-whois.conf
|
||||
~~~
|
||||
|
||||
Par défaut dans le jail.conf est définis l'action par défaut si non indiqué pour chaque jail (services) configurés :
|
||||
Si l'on ne précise pas d'action, l'action sera par défaut _iptables-multiport_ (définie dans `jail.conf`) :
|
||||
|
||||
~~~
|
||||
banaction = iptables-multiport
|
||||
~~~
|
||||
|
||||
Exemple pour jail ssh avec envoie de mail vers user@example.com :
|
||||
Exemple pour bannir et déclencher l'envoi d'un email :
|
||||
|
||||
~~~
|
||||
action = iptables[name=ssh,port=22,protocol=tcp]
|
||||
sendmail[name=ssh,dest=user@example.com]
|
||||
action = iptables-multiport,sendmail[dest=jdoe@example.com]
|
||||
~~~
|
||||
|
||||
|
||||
|
@ -565,3 +582,19 @@ Pour mettre en whitelist certaines adresses IP, il faut utiliser le paramètre _
|
|||
~~~
|
||||
ignoreip = 127.0.0.1/8 192.0.2.42
|
||||
~~~
|
||||
|
||||
### Erreur "fail2ban.actions.action: ERROR" avec jail au nom trop long
|
||||
|
||||
Si le nom de votre jail dépasse 20 caractères, vous obtiendrez des erreurs du type :
|
||||
|
||||
~~~
|
||||
fail2ban.actions.action: ERROR iptables -N fail2ban-accesslog-custom-12345
|
||||
fail2ban.actions.action: ERROR iptables -n -L INPUT | grep -q fail2ban-accesslog-custom-12345 returned 100
|
||||
~~~
|
||||
|
||||
la raison est que Fail2Ban utilise le nom de la jail pour ajouter une chaîne IPTables et elle ne doit pas dépasser une certaine longueur :
|
||||
|
||||
~~~
|
||||
22:52 < reg> iptables v1.4.14: chain name `fail2ban-accesslog-custom-12345' too long (must be under 29 chars)
|
||||
~~~
|
||||
|
||||
|
|
Loading…
Reference in a new issue