DenyHosts est un outil open source basé sur Python développé par Phil Schwartz destiné à empêcher les attaques par force brute et les attaques basées sur un dictionnaire sur les serveurs SSH. Il s'agit d'un outil de sécurité basé sur les journaux.
C'est simple et la possibilité de configurer les règles manuellement.
DenyHosts est largement utilisé comme alternative à Fail2ban. S'il y a eu trop de tentatives de connexion SSH invalides, cela suppose qu'il s'agit d'attaques par force brute ou d'attaques basées sur un dictionnaire et empêche l'adresse IP de faire d'autres tentatives en l'ajoutant à /etc/hosts.deny sur le serveur.
( Apprenez à installer Fail2ban sur CentOS 7 )
Installer et configurer denyhost dans centos 7 à partir de Github Repo
Tout d'abord, installez git
# yum install git
Maintenant, cloud le dépôt denyhosts Github
# git clone https://github.com/denyhosts/denyhosts
Après avoir cloné les fichiers du Github, installez-le.
# cd denyhosts
# python setup.py install
Cela installera les modules DenyHosts dans le répertoire site-packages de python.
Configurons DenyHosts
Nous devons créer un fichier de configuration avant qu'il puisse fonctionner. L'exemple de fichier de configuration denyhosts.conf contient la plupart des paramètres possibles et nous devons le copier et éditer le fichier.
# cp denyhosts.conf /etc
# vim /etc/denyhosts.conf
L'exemple de fichier de configuration contient des commentaires d'information qui devraient vous aider à configurer rapidement DenyHosts. Après avoir modifié votre fichier de configuration, enregistrez-le.
Ensuite, nous devons copier l'exemple de script daemon-control.dist en tant que tel dans daemon-control et modifier la section recommandée en fonction de l'emplacement de votre fichier de configuration.
# cp daemon-control-dist daemon-control
Modifiez le fichier de contrôle du démon. Vous devriez seulement avoir besoin de modifier cette section vers le haut :
###############################################
#### Edit these to suit your configuration ####
###############################################
DENYHOSTS_BIN = "/usr/bin/denyhosts.py'
DENYHOSTS_LOCK = "/var/lock/subsys/denyhosts'
DENYHOSTS_CFG = "/etc/denyhosts.conf'
Une fois que vous avez modifié les fichiers de configuration et de contrôle du démon, assurez-vous que le script de contrôle du démon est exécutable.
Maintenant, démarrez DenyHosts manuellement
# ./daemon-control start
Vous devez vous référer au journal du démon (généralement /var/log/denyhosts) pour vous assurer que DenyHosts s'exécute correctement.
Pour démarrer DenyHosts automatiquement
Créez un lien symbolique depuis /etc/init.d tel que :
# cd /etc/init.d
# ln -s /usr/share/denyhosts/daemon-control denyhosts
Maintenant, nous pouvons gérer le service denyhosts à partir de la commande systemctl
Pour activer DenyHosts
# systemctl enable denyhosts
Commencer
# systemctl start denyhosts
Pour vérifier l'état
# systemctl status denyhosts
Aujourd'hui, nous avons vu comment nos ingénieurs de support installent et configurent DenyHosts dans CentOS 7 à l'aide de Github Repo et l'ont configuré.