Pierre-Alain Bandinelli : Entretenir et sécuriser Roundcube avec logrotate et fail2ban
samedi 26 octobre 2013 à 15:03Roundcube entrepose certaines informations dans le dossier logs/ à la racine de l'installation. Le fichier 'errors' contiendra par exemple la trace des tentatives d'accès avec mot de passe erroné.
Pour éviter que ce fichier ne grossisse trop sans surveillance, nous allons : - mettre en place une rotation des logs avec logrotate - surveiller le log avec fail2ban pour bannir toute IP qui tenterait de forcer le passage en multipliant les essais de nom d'utilisateur et de mot de passe.
La rotation des logs
Dans /etc/logrotate.d/roundcube, on placera le paramétrage (assez explicite) suivant :
/var/www/roundcube/logs/errors { weekly missingok rotate 8 compress notifempty create 640 www-data www-data }
et le tour est joué.
On pourra appliquer la même rotation au fichier /var/www/roundcube/logs/sendmail si la volumétrie de votre webmail le nécessite !
Surveillance avec fail2ban
Nous allons créer un nouveau filtre dans /etc/fail2ban/filter.d/roundcube.conf :
[Definition] failregex = Login failed for .*. fromignoreregex =
et une nouvelle règle :
[roundcube] enabled = true port = http,https filter = roundcube action = iptables46-multiport[name=apache, port="http,https", protocol=tcp] logpath = /var/www/roundcube/logs/errors maxretry = 6
(attention, la règle d'action iptables46 correspond à une astuce temporaire pour ajouter le support de l'IPv6 à Fail2ban comme décrit ici)
et désormais, toute tentative d'accès répétée conduira à l'exclusion de l'IP douteuse !
Original post of Pierre-Alain Bandinelli.Votez pour ce billet sur Planet Libre.
Articles similaires
- Openwebtech : Sécurité pro-active avec fail2ban (17/09/2011)
- theClimber : Monitorer les hôtes Linux (Debian) distant avec le serveur NRPE de Nagios (18/11/2009)
- Pierre-Alain Bandinelli : DNS local et filtrage DNS tout simplement (08/09/2013)
- Pierre-Alain Bandinelli : Forcer la bascule vers HTTPS derrière un 'reverse proxy' (18/10/2013)