Installation et configuration de Rkhunter (CentOS 7.2)
Ajout du dépôt EPEL (Extra Packages for Entreprise Linux)
rkhunter (pour Rootkit Hunter) est un programme qui essaye de détecter les rootkits, portes dérobées et exploits. Pour cela, il compare le hash SHA256, SHA512, SH1 et MD5 des fichiers importants avec les hash connus, qui sont accessibles à partir d’une base de données en ligne. Il alerte également l’utilisateur lorsqu’il trouve des permissions qu’il juge anormales, des fichiers cachés, des chaînes suspectes dans le kernel etc.
Rkhunter n’étant pas disponible dans les dépôts officiel de CentOS nous allons ajout un nouveau dépôt. C’est le dépôt EPEL. Pour cela nous allons taper la commande suivante :
|
|
Ajout et configuration du plugin « Yum Priorities »
Afin de ne pas installer des packages qui peuvent mettre à mal la stabilité de notre système nous allons installer le plugin « Yum Priorities ». En temps normal si un paquet est présent dans plus d’un dépôt, c’est le numéro de version le plus haut qui sera proposé dans yum. Ce plugin permet de changer cela et de non plus tenir compte du numéro de version mais de la valeur de la priorité du dépôt. Pour cela, nous allons le faire à l’aide de la commande suivante :
|
|
Maintenant que le plugin est installé, il faut définir la priorité pour chaque dépôt. La priorité est une valeur de 1 à 99, le dépôt ayant 1 comme priorité étant le plus prioritaire. Les dépôts où la valeur de n’est pas renseignée ont automatiquement la valeur 99. Pour cela, nous allons éditer chaque fichier .repo pour ajouter la ligne priority=XX. Les fichiers de configuration des dépôts se trouvent dans /etc/yum.repo.d/. On édit le fichier via la commande suivante:
|
|
Voici le contenu de mon fichier CentOS-Base.repo après modification :
|
|
Il faut reproduire la même opération pour les fichiers suivant :
- CentOS-Debuginfo.repo
- CentOS-Media.repo
- CentOS-Vault.repo
Concernant le fichier de configuration du dépôt EPEL, il faudra mettre la priorité à 99, donc la plus basse. Voici le contenu de mon fichier epel.repo après modification :
|
|
Il faut à nouveau reproduire la même opération pour le fichier epel-testing.repo
Installation de Rkhunter
Maintenant que les dépôts sont configurés, nous pouvons installer Rkhunter via la commande suivante :
|
|
Configuration de Rkhunter
Avant de modifier le fichier de configuration, nous allons le sauvegarder via la commande suivante :
|
|
Nous allons maintenant l’éditer via la commande suivante :
|
|
Il faut remplacer la valeur de la variable « COPY_LOG_ON_ERROR » (ligne 255) et « ALLOW_SSH_ROOT_USER » (ligne 309) comme ci-dessous :
|
|
par
|
|
et
|
|
par
|
|
Activer la variable « COPY_LOG_ON_ERROR » va générer un fichier de log contenant les erreurs détectées dans le répertoire /var/log/rkhunter/ dont le nom sera du type rkhunter.log.2013-10-23_00:00:10. Mettre la variable « ALLOW_SSH_ROOT_USER » à « no » va indiquer à Rkhunter de vérifier que l’utilisateur root n’a pas été autorisé à se connecter via ssh à la machine.
Maintenant que Rkhunter est installé et configuré, il faut télécharger la base de données et l’initialiser via les commandes suivantes :
|
|
A ce stade Rkhunter est fonctionnel. Le problème c’est qu’après chaque mise à jour du système, il faudra retaper ces commandes. Afin d’éviter cela nous allons l’automatiser. Nous allons donc installer le plugin yum « posts-transaction-actions » via la commande suivante :
|
|
Maintenant que le plugin est installé, il faut que l’on créé un fichier contenant les commandes à exécuter après chaque mise à jour du système. Les fichiers devront obligatoirement être stockés dans le répertoire /etc/yum/posts-actions/ et leur nom devront être du type « ce_que_vous_voulez.action ». Les fichiers .actions sont des scripts shell.
Nous allons créer un fichier rkhunter.action via la commande suivante :
|
|
Voici ce qu’il doit contenir :
|
|
Maintenant après chaque mise à jour du système, yum exécutera les commandes contenues dans le fichier rkhunter.action