Si votre serveur n’assure pas de filtrage réseau, denyhosts est la solution pour limiter les attaques par bruteforce SSH. Ce dernier s’appuie sur les tcp wrappers – les fichiers historiques /etc/hosts.allow et /etc/hosts.deny – afin d’autoriser / bloquer l’accès aux services réseaux, dont SSH. Encore une fois iptables n’est pas nécessaire pour que la protection soit effective.

L’installation est aisée :

root@skinner:~# apt-get install denyhosts

Reste à éditer le fichier de configuration /etc/denyhosts.conf pour spécifier la période de purge des hosts bloqués, les paramètres de messagerie pour l’envoi des notifications… Bref rien de très compliqué.

Par exemple, si l’hôte 192.168.0.1 effectue un trop grand nombre de connexions SSH erronées, denyhosts va ajouter la ligne suivante dans le fichier /etc/hosts.deny :

sshd:      192.168.0.1

A la prochaine tentative, le démon SSH refusera directement la connexion.