Auditez la sécurité de vos serveurs avec Lynis
Mise à jour :
Lynis est un outil puissant et polyvalent, conçu pour auditer et renforcer la sécurité des systèmes d’exploitation basés sur Unix et Linux. Sa capacité à fournir des analyses détaillées et des recommandations personnalisées fait de lui un allié précieux pour vous aider à progresser dans le domaine du renforcement de la sécurité de vos serveurs Linux.
Pourquoi Utiliser Lynis ?
Lynis effectue des audits approfondis, examinant chaque aspect du système pour y déceler des faiblesses. Il vérifie les configurations, les permissions de fichiers, les paramètres de sécurité du réseau et bien d’autres éléments importants. Cette analyse complète permet de déceler les failles qui pourraient être exploitées par des attaquants.
Contrairement à d’autres outils d’audit, Lynis ne se contente pas de signaler les problèmes : il fournit également des recommandations concrètes pour les résoudre. Chaque avertissement est accompagné de conseils pratiques et de directives pour améliorer la sécurité du système. Cette approche pédagogique est particulièrement bénéfique pour les utilisateurs moins expérimentés.
Lynis est régulièrement mis à jour pour intégrer les dernières menaces et techniques de sécurisation. Sa capacité à s’adapter aux évolutions du paysage des menaces informatiques le rend particulièrement précieux. Que vous gériez un serveur d’entreprise ou un ordinateur personnel, Lynis est un outil flexible qui s’adapte à divers environnements et besoins.
L’utilisation de Lynis dans un contexte DevOps, notamment pour la construction d’images de machines virtuelles (VM) durcies, est importante, car elle permet d’intégrer la sécurité dès le début du cycle de développement, garantissant ainsi que chaque VM déployée respecte les normes élevées de sécurité et de conformité dès sa création.
Installation de Lynis
Ouvrez une fenêtre de terminal et entrez les commandes suivantes :
sudo -icd /tmpexport VERSION=3.0.9wget https://cisofy.com/files/lynis-${VERSION}.tar.gztar -xzf lynis-${VERSION}.tar.gz -C /usr/localchmod +x /usr/local/lynis/lynisln -s /usr/local/lynis/lynis /usr/local/bin
Pour vérifier que Lynis est correctement installé, lancez la commande :
lynis help
Si Lynis affiche l’aide alors l’installation a réussi.
Premiers Pas avec Lynis
Après avoir installé Lynis, il est temps de se familiariser avec ses fonctionnalités de base. Ce chapitre vous guidera à travers les premières étapes pour lancer et comprendre un audit de sécurité avec Lynis.
Lancement de l’audit Lynis
Depuis votre de fenêtre de Terminal, tapez la commande suivante :
sudo lynis audit system
[ Lynis 3.0.9 ]
################################################################################ Lynis comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to redistribute it under the terms of the GNU General Public License. See the LICENSE file for details about using this software.
2007-2021, CISOfy - https://cisofy.com/lynis/ Enterprise support available (compliance, plugins, interface and tools)################################################################################
[+] Initializing program------------------------------------ - Detecting OS... [ DONE ] - Checking profiles... [ DONE ] - Detecting language and localization [ fr ]
--------------------------------------------------- Program version: 3.0.9 Operating system: Linux Operating system name: Ubuntu Operating system version: 22.04 Kernel version: 5.15.0 Hardware platform: x86_64 Hostname: internal --------------------------------------------------- Profiles: /etc/lynis/default.prf Log file: /var/log/lynis.log Report file: /var/log/lynis-report.dat Report version: 1.0 Plugin directory: /usr/local/lynis/plugins --------------------------------------------------- Auditor: [Not Specified] Language: fr Test category: all Test group: all --------------------------------------------------- - Program update status... [ PAS DE MISE A JOUR ]
...
* Consider hardening SSH configuration [SSH-7408] - Details : AllowTcpForwarding (set YES to NO) https://cisofy.com/lynis/controls/SSH-7408/
* Consider hardening SSH configuration [SSH-7408] - Details : ClientAliveCountMax (set 3 to 2) https://cisofy.com/lynis/controls/SSH-7408/...
Hardening index : 66 [############# ] Tests performed : 274 Plugins enabled : 2
Components: - Firewall [V] - Malware scanner [X]
Scan mode: Normal [V] Forensics [ ] Integration [ ] Pentest [ ]
Lynis modules: - Compliance status [?] - Security audit [V] - Vulnerability scan [V]
Files: - Test and debug information : /var/log/lynis.log - Report data : /var/log/lynis-report.dat
================================================================================
Exceptions trouvées Des événements ou informations exceptionnels ont été trouvés!
Que faire: Vous pouvez aider en envoyant votre fichier journal (/var/log/lynis.log). Go to https://cisofy.com/contact/ and send your file to the e-mail address listed
================================================================================
Lynis 3.0.9
Auditing, system hardening, and compliance for UNIX-based systems (Linux, macOS, BSD, and others)
2007-2021, CISOfy - https://cisofy.com/lynis/ Enterprise support available (compliance, plugins, interface and tools)
================================================================================
[TIP]: Enhance Lynis audits by adding your settings to custom.prf (see /etc/lynis/default.prf for all settings)
Cette commande lance un audit de sécurité sur l’ensemble de votre système.
L’utilisation de sudo
est nécessaire pour permettre à Lynis d’accéder à toutes
les informations nécessaires.
Lynis affiche des informations en temps réel pendant l’audit. Vous verrez des sections telles que “Boot and services”, “Software: antivirus”, “Kernel”, etc.
Lynis utilise des codes de couleur pour souligner l’importance des résultats. Par exemple, le rouge indique un problème critique, tandis que le jaune signale des avertissements.
Analyse du score de l’audit
Le score de l’audit Lynis est une mesure quantitative qui reflète l’état de sécurité de votre système. À la fin de chaque audit, Lynis attribue un score, exprimé en pourcentage, qui évalue la robustesse de votre configuration de sécurité. Ce score est calculé en fonction de divers facteurs, tels que les vulnérabilités détectées, les configurations de sécurité non optimales et les bonnes pratiques en matière de sécurité qui sont déjà en place.
Exemple de score d’audit :
Hardening index : 66 [############# ] Tests performed : 274 Plugins enabled : 2
Un score élevé indique que votre système est bien configuré et qu’il respecte de nombreuses bonnes pratiques de sécurité. Cela signifie que Lynis a trouvé moins de problèmes et de vulnérabilités et que les mesures de sécurité importantes sont déjà en place. Inversement, un score bas suggère que des améliorations significatives sont nécessaires pour renforcer la sécurité de votre système. Il indique généralement la présence de nombreuses vulnérabilités ou de configurations de sécurité inadéquates.
Il est important d’utiliser le score de l’audit comme un indicateur de progression dans vos efforts de sécurisation. Après avoir apporté des changements recommandés par Lynis, vous devriez ré-exécuter l’outil pour voir si vos actions ont conduit à une amélioration du score. L’augmentation du score d’un audit à l’autre est un signe positif que vous avez réussi à améliorer la sécurité de votre système.
Analyse Détaillée des Résultats
À la fin de l’audit, Lynis fournit un résumé des résultats, y compris les avertissements et suggestions. Pour chaque point soulevé, Lynis fournit des détails spécifiques sur la nature du problème ou de la suggestion. Lynis liste également les tests effectués et leurs résultats, ce qui vous aide à comprendre quels aspects de votre système ont été audités.
Lynis enregistre les résultats dans des fichiers de log, généralement situés
dans /var/log/lynis.log
.
Chaque avertissement ou suggestion est accompagné d’un code unique (par exemple,
SSH-7408
) et d’un message descriptif. Ce code peut être utilisé pour
rechercher des informations supplémentaires dans la documentation de Lynis ou
sur internet.
Pour obtenir des informations détaillées sur une suggestion :
2023-12-06 14:08:50 Performing test ID SSH-7408 (Check SSH specific defined options)2023-12-06 14:08:50 Test: Checking specific defined options in /tmp/lynis.PpJ9G5auvQ2023-12-06 14:08:50 Test: Checking AllowTcpForwarding in /tmp/lynis.PpJ9G5auvQ2023-12-06 14:08:50 Result: Option AllowTcpForwarding found2023-12-06 14:08:50 Result: Option AllowTcpForwarding value is YES2023-12-06 14:08:50 Result: OpenSSH option AllowTcpForwarding is in a weak configuration state and should be fixed2023-12-06 14:08:50 Suggestion: Consider hardening SSH configuration [test:SSH-7408] [details:AllowTcpForwarding (set YES to NO)] [solution:-]2023-12-06 14:08:50 Hardening: assigned partial number of hardening points (0 of 3). Currently having 126 points (out of 170)2023-12-06 14:08:50 Test: Checking ClientAliveCountMax in /tmp/lynis.PpJ9G5auvQ2023-12-06 14:08:50 Result: Option ClientAliveCountMax found2023-12-06 14:08:50 Result: Option ClientAliveCountMax value is 32023-12-06 14:08:50 Result: OpenSSH option ClientAliveCountMax is configured reasonably2023-12-06 14:08:50 Suggestion: Consider hardening SSH configuration [test:SSH-7408] [details:ClientAliveCountMax (set 3 to 2)] [solution:-]2023-12-06 14:08:50 Hardening: assigned partial number of hardening points (1 of 3). Currently having 127 points (out of 173)2023-12-06 14:08:50 Test: Checking ClientAliveInterval in /tmp/lynis.PpJ9G5auvQ
Recherchez le mot clé “Suggestion”. Ici, il nous indique de passer la valeur de
ClientAliveCountMax
de 3 à 2.
Application des recommandations
Commencez par résoudre les problèmes signalés comme critiques. Ces vulnérabilités peuvent exposer votre système à des risques importants. Pour les suggestions, envisagez de les mettre en œuvre progressivement, en fonction de leur pertinence et de l’impact sur votre système.
Si nous reprenons la suggestion indiquée ci-dessus. Nous allons modifier la valeur comme indiqué :
sudo vi /etc/ssh/sshd_config
Décommentez la ligne contenant #ClientAliveCountMax 3
comme suit et modifiez
la valeur 3 à 2 ClientAliveCountMax 2
.
Après avoir apporté des modifications, relancez Lynis pour vérifier que les problèmes ont été résolus.
Lynis security scan details:
Hardening index : 68 [############# ] Tests performed : 274 Plugins enabled : 2
Après avoir apporté des modifications, relancez Lynis pour vérifier que les problèmes ont été résolus.
Automatisation des Audits avec Lynis
Une fois que vous êtes à l’aise avec l’utilisation de Lynis et l’application de ses recommandations, l’étape suivante consiste à automatiser le processus d’audit pour une surveillance de sécurité continue. Ce chapitre explique comment configurer des audits réguliers et automatisés avec Lynis. L’automatisation des audits avec Lynis vous permet de maintenir une surveillance proactive de la sécurité de votre système. Cela aide à détecter rapidement les nouvelles vulnérabilités ou les changements de configuration non autorisés.
Notifications et Rapports
Configurez Lynis pour envoyer des notifications par e-mail en cas de détection
de problèmes critiques. Cela peut se faire en modifiant le fichier de
configuration de Lynis (lynis.cfg
) pour inclure votre adresse e-mail.
Les rapports générés par Lynis doivent être analysés régulièrement pour identifier et traiter rapidement les vulnérabilités. Assurez-vous de consulter les fichiers log et les e-mails de notification pour rester informé.
Utilisation de Cron
cron
est un planificateur de tâches sous Unix qui peut être utilisé pour
automatiser l’exécution de Lynis. Pour planifier un audit régulier, créez une
tâche cron qui lance Lynis à une fréquence spécifique (quotidienne,
hebdomadaire, mensuelle, etc.).
Commande d’Exemple :
sudo crontab -e
Ajoutez cette ligne :
0 2 * * 0 /usr/local/lynis/lynis audit system
Cette commande planifie Lynis pour s’exécuter à 2 heures du matin chaque dimanche, avec les résultats enregistrés dans un fichier log.
Conclusion
En explorant les fonctionnalités et applications de Lynis, vous avez acquis une compréhension approfondie de cet outil indispensable pour l’audit de sécurité des systèmes Unix et Linux. Cette conclusion révisée intègre l’importance de Lynis dans la construction d’images de VM dans un contexte DevOps, en utilisant des outils comme Packer.
Plus d’infos
- Site Web de Lynis : Le site officiel de Lynis (cisofy.com/lynis ↗) est la première ressource à consulter. Vous y trouverez la documentation la plus à jour, des guides d’utilisation et des informations sur les dernières versions.
- Manuel de l’Utilisateur : Le manuel de l’utilisateur intégré, accessible
via la commande
man lynis
, fournit des détails complets sur les options de commande et les configurations.