Zimbra bloque les comptes qui ont trop de tentative de connexion en erreur d'authentification. Du coup, des utilisateurs se retrouvent bloqués alors que c'est des pirates qui ont tenté des connexions.

Il est possible de filtrer les pirates avec fail2ban. Ils seront alors blacklistés dans le firewall.

Pour cela, installer apt-get install fail2ban.
Créer un nouveau filtre /etc/fail2ban/filter.d/zimbra-auth-fail.conf :
# On va filtrer les IP tentant des connexions en erreur sur le serveur
[Definition]
failregex = ;oip=<HOST>;.* - authentication failed for

Tester le parser avec la commande fail2ban-regex /opt/zimbra/log/mailbox.log /etc/fail2ban/filter.d/zimbra-auth-fail.conf

Si des adresses sont bien capturées, il est temps de mettre en place le filtrage.

Créer le fichier /etc/fail2ban/jail.local qui surcharge le fichier par défaut :
# Ce fichier surcharge les valeurs proposées par jail.conf

[DEFAULT]

#
# Destination email address used solely for the interpolations in
# jail.{conf,local} configuration files.
destemail = XXXX@DOMAIN.TLD

[ssh]

enabled  = false


[zimbra-imaps-fail]

enabled = true
logpath = /opt/zimbra/log/mailbox.log
port = imaps,pop3s
filter = zimbra-auth-fail
maxretry = 2
findtime = 3600
bantime  = 86400
ignoreip = 127.0.0.1/8 x.x.x.x/16

Editer le fichier /etc/fail2ban/fail2ban.conf et changer
#logtarget = /var/log/fail2ban.log
logtarget = SYSLOG

Et on démarre tout cela : service fail2ban restart