Automatisation des audits de sécurité avec Lynis sur les systèmes Linux
La sécurité du système est un aspect primordial de l’administration de Linux. Une fois que nous disposons d’un certain nombre de logiciels, de paramètres et de comptes d’utilisateurs sur notre système, la tâche de sécuriser chaque facette du système peut rapidement devenir écrasante. C’est pourquoi il est important d’utiliser un script tel que Lynis, qui vérifiera des tonnes de zones différentes du système à la recherche de failles de sécurité ou de surfaces d’attaque potentielles dont les programmes malveillants ou les utilisateurs peuvent tirer parti.
Dans ce tutoriel, nous allons voir comment automatiser les audits de sécurité à l’aide de Lynis sur un système Linux. Plutôt que d’essayer de se tenir au courant de tous les exploits connus et de vérifier manuellement le système à la recherche de failles de sécurité potentielles, Lynis vérifiera votre système à l’aide d’une liste de vulnérabilités documentées et de recommandations de sécurité.
Dans ce tutoriel, vous allez apprendre :
- Comment télécharger la dernière version de Lynis
- Comment effectuer un audit de sécurité Lynis avec des autorisations utilisateur et root normales
- Comment automatiser les audits de sécurité Lynis avec les options de commande cron et cron-safe
Comment installer et exécuter Lynis
Nous commencerons par télécharger Lynis, puis exécuter le programme pour effectuer un audit de sécurité et obtenir des recommandations sur les mesures à prendre pour renforcer davantage le système. Lynis est essentiellement un script Bash renforcé, donc l’exécution de l’utilitaire est aussi simple que l’exécution d’un script shell.
Dans votre terminal de ligne de commande, exécutez la commande
git
suivante pour cloner le dépôt GitHub officiel de Lynis :git clone https://github.com/CISOfy/lynis
Une fois le téléchargement des fichiers terminé, changez de répertoire et exécutez le script :
cd lynis && ./lynis audit system
Si Lynis trouve des failles de sécurité urgentes, elles seront considérées comme des « avertissements » et seront affichées avant les suggestions.
-[ Lynis 3.1.2 Results ]- Great, no warnings
Avec un peu de chance, vous obtenez le résultat indiqué ci-dessus. Si ce n’est pas le cas, envisagez de remédier aux causes des avertissements dès que possible.
Une fois l’analyse terminée, la sortie de votre terminal contient également une liste de recommandations pour renforcer le système. La plupart des explications sont également accompagnées d’un lien, que vous pouvez ouvrir pour plus de détails sur ce que la recommandation implique.
Tout cela est indiqué dans la section « suggestions », qui vient après les avertissements. C’est aussi une bonne idée de continuer à faire défiler la sortie de Lynis et de voir quels types de contrôles de sécurité ont été effectués avec les résultats de chaque vérification, ce qui pourrait vous indiquer d’autres moyens d’améliorer la sécurité de votre système.
Pour rendre l’audit de sécurité plus approfondi, vous pouvez exécuter le script Lynis avec les autorisations root. Avant de le faire, les développeurs recommandent de changer la propriété des fichiers de script pour l’utilisateur
root
, ce qui empêchera les avertissements d’apparaître.sudo chown -R 0:0 lynis
Cette commande est exécutée sur le répertoire
lynis
qui a été créé lors de la commandegit clone
dans les étapes ci-dessus.-
Essayons maintenant d’exécuter l’audit de sécurité Lynis avec des autorisations root, ce qui permettra au script d’effectuer des vérifications de sécurité supplémentaires qui ne sont pas possibles avec des autorisations de compte d’utilisateur normales :
cd lynis && sudo ./lynis audit system
Vérifiez le résultat qui s’ensuit pour voir s’il y a de nouveaux avertissements ou suggestions qui ne sont pas présents lors de l’audit de sécurité Lynis précédent. La capture d’écran ci-dessous montre que nous avons reçu un avertissement
iptables
de Lynis, qu’il n’a pas pu vérifier auparavant, car la commandeiptables
n’est disponible que pour l’utilisateur root.
NOTE
Il existe de nombreuses façons d’installer Lynis sous Linux, y compris via le dépôt de logiciels officiel à l’aide du gestionnaire de paquets système. Cependant, le projet Lynis reçoit des mises à jour fréquentes, donc afin de toujours s’assurer que votre version de Lynis détecte les exploits et les vecteurs d’attaque les plus récemment découverts, il est recommandé de cloner le dernier contenu de GitHub.
Automatisation de Lynis
Lynis propose une version commerciale appelée Lynis Enterprise qui fournit non seulement les outils pour auditer le système, mais aussi les outils nécessaires pour mettre en œuvre les recommandations de sécurité et le renforcer. Lynis Enterprise inclut également la possibilité d’automatiser les audits de sécurité. Cependant, si vous ne souhaitez pas payer pour le logiciel commercial, nous pouvons utiliser des outils Linux pour automatiser nos audits de sécurité Lynis.
Lynis propose deux options utiles pour ceux qui souhaitent effectuer régulièrement des audits de sécurité et ne recevoir que des avertissements. Ces deux options sont --cronjob
et --quiet
:
sudo ./lynis audit system --cronjob --quiet
L’option --cronjob
effectuera un test plus convivial pour cron, en désactivant les couleurs, les sauts de ligne et d’autres aspects esthétiques qui peuvent interférer avec l’exécution avec cron. De plus, l’option --quiet
n’affichera aucune sortie à l’écran.
Configurons cela dans cron. Nous allons exécuter Lynis en tant qu’utilisateur root, nous devons donc nous assurer que nous modifions le crontab de l’utilisateur root et non celui d’un utilisateur normal :
sudo crontab -e
Ensuite, configurez Lynis pour qu’il s’exécute selon un calendrier. Dans cet exemple, nous allons configurer cron pour exécuter Lynis tous les jours à minuit. Les résultats seront enregistrés dans le fichier /root/lynis-audit.log
. Bien sûr, assurez-vous de le configurer en fonction de vos besoins :
0 0 * * * /root/lynis/lynis audit system --cronjob --quiet > /root/lynis-audit.log
Réflexions finales
Dans ce tutoriel, nous avons vu comment automatiser les audits de sécurité avec Lynis sur un système Linux. Nous avons commencé par télécharger la dernière version de Lynis, puis nous avons effectué des audits de sécurité avec les autorisations normales et root, tout en prêtant attention aux avertissements et suggestions émis par Lynis. Ensuite, nous avons appris à automatiser les audits de sécurité à l’aide de cron ainsi que des options de commande nécessaires dans Lynis.