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 :
# Installation de la dernière version de Lynissudo -icd /tmpexport VERSION=3.1.6wget 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/binPour vérifier que Lynis est correctement installé, lancez la commande :
sudo -ilynis[ Lynis 3.1.6 ]
################################################################################ 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-2025, CISOfy - https://cisofy.com/lynis/ Enterprise support available (compliance, plugins, interface and tools)################################################################################
[+] Initializing program------------------------------------
Usage: lynis command [options]
Command:
audit audit system : Perform local security scan audit system remote <host> : Remote security scan audit dockerfile <file> : Analyze Dockerfile
show show : Show all commands show version : Show Lynis version show help : Show help
update update info : Show update details
Options:
Alternative system audit modes --forensics : Perform forensics on a running or mounted system --pentest : Non-privileged, show points of interest for pentesting
Layout options --no-colors : Don't use colors in output --quiet (-q) : No output --reverse-colors : Optimize color display for light backgrounds --reverse-colours : Optimize colour display for light backgrounds
Misc options --debug : Debug logging to screen --no-log : Don't create a log file --profile <profile> : Scan the system with the given profile file --view-manpage (--man) : View man page --verbose : Show more details on screen --version (-V) : Display version number and quit --wait : Wait between a set of tests --slow-warning <seconds> : Threshold for slow test warning in seconds (default 10)
Enterprise options --plugindir <path> : Define path of available plugins --upload : Upload data to central node
More options available. Run '/usr/local/bin/lynis show options', or use the man page.
No command provided. Exiting..Si Lynis affiche cette aide, l’installation est réussie !
Options utiles de la ligne de commande
Avant de lancer votre premier audit, familiarisez-vous avec les options principales de Lynis :
# Audit rapide (moins verbeux, idéal pour CI/CD)lynis audit system --quick
# Spécifier un auditeur pour les rapportslynis audit system --auditor "Mon Entreprise"
# Exécuter uniquement certains testslynis audit system --tests "SSH-7408,AUTH-9229"
# Mode pentest (plus agressif, détecte plus de failles)lynis audit system --pentest
# Sortie sans couleurs (pour les logs)lynis audit system --no-colors
# Mode silencieux (affiche uniquement les warnings)lynis audit system --quietPremiers 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.1.6 ]
################################################################################ 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-2025, CISOfy - https://cisofy.com/lynis/ Enterprise support available (compliance, plugins, interface and tools)################################################################################
[+] Initializing program------------------------------------ - Detecting OS... [ DONE ] - Checking profiles... [ DONE ]
--------------------------------------------------- Program version: 3.1.6 Operating system: Linux Operating system name: Ubuntu Operating system version: 22.04 End-of-life: NO Kernel version: 5.15.0 Hardware platform: x86_64 Hostname: dev --------------------------------------------------- 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: en Test category: all Test group: all --------------------------------------------------- - Program update status... [ NO UPDATE ]
...
-[ Lynis 3.1.6 Results ]-
Warnings (5): ---------------------------- ! Reboot of system is most likely needed [KRNL-5830] - Solution : reboot https://cisofy.com/lynis/controls/KRNL-5830/
! Found one or more vulnerable packages. [PKGS-7392] https://cisofy.com/lynis/controls/PKGS-7392/
! PostgreSQL configuration file /etc/postgresql/14/main/postgresql.conf is world readable and might leak sensitive details [DBS-1828] - Details : /etc/postgresql/14/main/postgresql.conf - Solution : Use chmod 600 to change file permissions https://cisofy.com/lynis/controls/DBS-1828/
! PostgreSQL configuration file /etc/postgresql/14/main/start.conf is world readable and might leak sensitive details [DBS-1828] - Details : /etc/postgresql/14/main/start.conf - Solution : Use chmod 600 to change file permissions https://cisofy.com/lynis/controls/DBS-1828/
! PostgreSQL configuration file /etc/postgresql/14/main/pg_ctl.conf is world readable and might leak sensitive details [DBS-1828] - Details : /etc/postgresql/14/main/pg_ctl.conf - Solution : Use chmod 600 to change file permissions https://cisofy.com/lynis/controls/DBS-1828/
Suggestions (41):
...
Follow-up: ---------------------------- - Show details of a test (lynis show details TEST-ID) - Check the logfile for all details (less /var/log/lynis.log) - Read security controls texts (https://cisofy.com) - Use --upload to upload data to central system (Lynis Enterprise users)
================================================================================
Lynis security scan details:
Scan mode: Normal [ ] Forensics [ ] Integration [ ] Pentest [▆] (running privileged)
Lynis modules: - Compliance status [?] - Security audit [V] - Vulnerability scan [V]
Details: Hardening index : 64 [############ ] Tests performed : 260 Plugins enabled : 0
Software components: - Firewall [V] - Intrusion software [X] - Malware scanner [X]
Files: - Test and debug information : /var/log/lynis.log - Report data : /var/log/lynis-report.dat
================================================================================
Lynis 3.1.6
Auditing, system hardening, and compliance for UNIX-based systems (Linux, macOS, BSD, and others)
2007-2025, 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 :
Details: Hardening index : 64 [############ ] Tests performed : 260 Plugins enabled : 0Un 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.
Extraction des données du rapport
Le fichier /var/log/lynis-report.dat contient toutes les informations
structurées de l’audit. Voici comment extraire les données essentielles :
# Récupérer le score de durcissementgrep hardening_index /var/log/lynis-report.dathardening_index=64
# Lister toutes les suggestionsgrep "^suggestion" /var/log/lynis-report.datsuggestion[]=HRDN-7222|Harden compilers like restricting access to root user only|-|-|
# Lister tous les warningsgrep "^warning" /var/log/lynis-report.datwarning[]=DBS-1828|PostgreSQL configuration file /etc/postgresql/14/main/pg_ctl.conf is world readable and might leak sensitive details|/etc/postgresql/14/main/pg_ctl.conf|Use chmod 600 to change file permissions|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 :
lynis show details SSH-74082025-12-04 13:24:38 Performing test ID SSH-7408 (Check SSH specific defined options)2025-12-04 13:24:38 Test: Checking specific defined options in /tmp/lynis.MMdaGGEU4d2025-12-04 13:24:38 Test: Checking AllowTcpForwarding in /tmp/lynis.MMdaGGEU4d2025-12-04 13:24:38 Result: Option AllowTcpForwarding found2025-12-04 13:24:38 Result: Option AllowTcpForwarding value is YES2025-12-04 13:24:38 Result: OpenSSH option AllowTcpForwarding is in a weak configuration state and should be fixed2025-12-04 13:24:38 Suggestion: Consider hardening SSH configuration [test:SSH-7408] [details:AllowTcpForwarding (set YES to NO)] [solution:-]2025-12-04 13:24:38 Hardening: assigned partial number of hardening points (0 of 3). Currently having 122 points (out of 195)2025-12-04 13:24:38 Test: Checking ClientAliveCountMax in /tmp/lynis.MMdaGGEU4d2025-12-04 13:24:38 Result: Option ClientAliveCountMax found2025-12-04 13:24:38 Result: Option ClientAliveCountMax value is 32025-12-04 13:24:38 Result: OpenSSH option ClientAliveCountMax is configured reasonably2025-12-04 13:24:38 Suggestion: Consider hardening SSH configuration [test:SSH-7408] [details:ClientAliveCountMax (set 3 to 2)] [solution:-]2025-12-04 13:24:38 Hardening: assigned partial number of hardening points (1 of 3). Currently having 123 points (out of 198)2025-12-04 13:24:38 Test: Checking ClientAliveInterval in /tmp/lynis.MMdaGGEU4d2025-12-04 13:24:38 Result: Option ClientAliveInterval found2025-12-04 13:24:38 Result: Option ClientAliveInterval value is 3002025-12-04 13:24:38 Result: OpenSSH option ClientAliveInterval is configured very well2025-12-04 13:24:38 Hardening: assigned maximum number of hardening points for this item (3). Currently having 126 points (out of 201)2025-12-04 13:24:38 Test: Checking FingerprintHash in /tmp/lynis.MMdaGGEU4d2025-12-04 13:24:38 Result: Option FingerprintHash found2025-12-04 13:24:38 Result: Option FingerprintHash value is SHA2562025-12-04 13:24:38 Result: OpenSSH option FingerprintHash is configured very well2025-12-04 13:24:38 Hardening: assigned maximum number of hardening points for this item (3). Currently having 129 points (out of 204)2025-12-04 13:24:38 Test: Checking GatewayPorts in /tmp/lynis.MMdaGGEU4d2025-12-04 13:24:38 Result: Option GatewayPorts found2025-12-04 13:24:38 Result: Option GatewayPorts value is NO2025-12-04 13:24:38 Result: OpenSSH option GatewayPorts is configured very well2025-12-04 13:24:38 Hardening: assigned maximum number of hardening points for this item (3). Currently having 132 points (out of 207)2025-12-04 13:24:38 Test: Checking IgnoreRhosts in /tmp/lynis.MMdaGGEU4d2025-12-04 13:24:38 Result: Option IgnoreRhosts found2025-12-04 13:24:38 Result: Option IgnoreRhosts value is YES2025-12-04 13:24:38 Result: OpenSSH option IgnoreRhosts is configured very well2025-12-04 13:24:38 Hardening: assigned maximum number of hardening points for this item (3). Currently having 135 points (out of 210)2025-12-04 13:24:38 Test: Checking LoginGraceTime in /tmp/lynis.MMdaGGEU4d2025-12-04 13:24:38 Result: Option LoginGraceTime found2025-12-04 13:24:38 Result: Option LoginGraceTime value is 602025-12-04 13:24:38 Result: OpenSSH option LoginGraceTime is configured very well2025-12-04 13:24:38 Hardening: assigned maximum number of hardening points for this item (3). Currently having 138 points (out of 213)2025-12-04 13:24:38 Test: Checking LogLevel in /tmp/lynis.MMdaGGEU4d2025-12-04 13:24:38 Result: Option LogLevel found2025-12-04 13:24:38 Result: Option LogLevel value is INFO2025-12-04 13:24:38 Result: OpenSSH option LogLevel is configured reasonably2025-12-04 13:24:38 Suggestion: Consider hardening SSH configuration [test:SSH-7408] [details:LogLevel (set INFO to VERBOSE)] [solution:-]2025-12-04 13:24:38 Hardening: assigned partial number of hardening points (1 of 3). Currently having 139 points (out of 216)2025-12-04 13:24:38 Test: Checking MaxAuthTries in /tmp/lynis.MMdaGGEU4d2025-12-04 13:24:38 Result: Option MaxAuthTries found2025-12-04 13:24:38 Result: Option MaxAuthTries value is 32025-12-04 13:24:38 Result: OpenSSH option MaxAuthTries is configured very well2025-12-04 13:24:38 Hardening: assigned maximum number of hardening points for this item (3). Currently having 142 points (out of 219)2025-12-04 13:24:38 Test: Checking MaxSessions in /tmp/lynis.MMdaGGEU4d2025-12-04 13:24:38 Result: Option MaxSessions found2025-12-04 13:24:38 Result: Option MaxSessions value is 22025-12-04 13:24:38 Result: OpenSSH option MaxSessions is configured very well2025-12-04 13:24:38 Hardening: assigned maximum number of hardening points for this item (3). Currently having 145 points (out of 222)2025-12-04 13:24:38 Test: Checking PermitRootLogin in /tmp/lynis.MMdaGGEU4d2025-12-04 13:24:38 Result: Option PermitRootLogin found2025-12-04 13:24:38 Result: Option PermitRootLogin value is NO2025-12-04 13:24:38 Expected value has multiple values, testing if active value is in list ((FORCED-COMMANDS-ONLY|NO|PROHIBIT-PASSWORD|WITHOUT-PASSWORD))2025-12-04 13:24:38 Result: found2025-12-04 13:24:38 Result: OpenSSH option PermitRootLogin is configured very well2025-12-04 13:24:38 Hardening: assigned maximum number of hardening points for this item (3). Currently having 148 points (out of 225)2025-12-04 13:24:38 Test: Checking PermitUserEnvironment in /tmp/lynis.MMdaGGEU4d2025-12-04 13:24:38 Result: Option PermitUserEnvironment found2025-12-04 13:24:38 Result: Option PermitUserEnvironment value is NO2025-12-04 13:24:38 Result: OpenSSH option PermitUserEnvironment is configured very well2025-12-04 13:24:38 Hardening: assigned maximum number of hardening points for this item (3). Currently having 151 points (out of 228)2025-12-04 13:24:38 Test: Checking PermitTunnel in /tmp/lynis.MMdaGGEU4d2025-12-04 13:24:38 Result: Option PermitTunnel found2025-12-04 13:24:38 Result: Option PermitTunnel value is NO2025-12-04 13:24:38 Result: OpenSSH option PermitTunnel is configured very well2025-12-04 13:24:38 Hardening: assigned maximum number of hardening points for this item (3). Currently having 154 points (out of 231)2025-12-04 13:24:38 Test: Checking Port in /tmp/lynis.MMdaGGEU4d2025-12-04 13:24:38 Result: Option Port found2025-12-04 13:24:38 Result: Option Port value is 222025-12-04 13:24:38 Result: OpenSSH option Port is in a weak configuration state and should be fixed2025-12-04 13:24:38 Suggestion: Consider hardening SSH configuration [test:SSH-7408] [details:Port (set 22 to )] [solution:-]2025-12-04 13:24:38 Hardening: assigned partial number of hardening points (0 of 3). Currently having 154 points (out of 234)2025-12-04 13:24:38 Test: Checking PrintLastLog in /tmp/lynis.MMdaGGEU4d2025-12-04 13:24:38 Result: Option PrintLastLog found2025-12-04 13:24:38 Result: Option PrintLastLog value is YES2025-12-04 13:24:38 Result: OpenSSH option PrintLastLog is configured very well2025-12-04 13:24:38 Hardening: assigned maximum number of hardening points for this item (3). Currently having 157 points (out of 237)2025-12-04 13:24:38 Test: Checking StrictModes in /tmp/lynis.MMdaGGEU4d2025-12-04 13:24:38 Result: Option StrictModes found2025-12-04 13:24:38 Result: Option StrictModes value is YES2025-12-04 13:24:38 Result: OpenSSH option StrictModes is configured very well2025-12-04 13:24:38 Hardening: assigned maximum number of hardening points for this item (3). Currently having 160 points (out of 240)2025-12-04 13:24:38 Test: Checking TCPKeepAlive in /tmp/lynis.MMdaGGEU4d2025-12-04 13:24:38 Result: Option TCPKeepAlive found2025-12-04 13:24:38 Result: Option TCPKeepAlive value is NO2025-12-04 13:24:38 Result: OpenSSH option TCPKeepAlive is configured very well2025-12-04 13:24:38 Hardening: assigned maximum number of hardening points for this item (3). Currently having 163 points (out of 243)2025-12-04 13:24:38 Test: Checking UseDNS in /tmp/lynis.MMdaGGEU4d2025-12-04 13:24:38 Result: Option UseDNS found2025-12-04 13:24:38 Result: Option UseDNS value is NO2025-12-04 13:24:38 Result: OpenSSH option UseDNS is configured very well2025-12-04 13:24:38 Hardening: assigned maximum number of hardening points for this item (3). Currently having 166 points (out of 246)2025-12-04 13:24:38 Test: Checking X11Forwarding in /tmp/lynis.MMdaGGEU4d2025-12-04 13:24:38 Result: Option X11Forwarding found2025-12-04 13:24:38 Result: Option X11Forwarding value is NO2025-12-04 13:24:38 Result: OpenSSH option X11Forwarding is configured very well2025-12-04 13:24:38 Hardening: assigned maximum number of hardening points for this item (3). Currently having 169 points (out of 249)2025-12-04 13:24:38 Test: Checking AllowAgentForwarding in /tmp/lynis.MMdaGGEU4d2025-12-04 13:24:38 Result: Option AllowAgentForwarding found2025-12-04 13:24:38 Result: Option AllowAgentForwarding value is YES2025-12-04 13:24:38 Result: OpenSSH option AllowAgentForwarding is in a weak configuration state and should be fixed2025-12-04 13:24:38 Suggestion: Consider hardening SSH configuration [test:SSH-7408] [details:AllowAgentForwarding (set YES to NO)] [solution:-]2025-12-04 13:24:38 Hardening: assigned partial number of hardening points (0 of 3). Currently having 169 points (out of 252)2025-12-04 13:24:38 ====Recherchez le mot clé “Suggestion”. Ici, il nous indique par exemple de passer la valeur de
ClientAliveCountMax de 3 à 2 dans la configuration SSH pour améliorer la sécurité.
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_configSi vous ne maitrisez l’éditeur vi, je vous recommande de lire mon guide sur vi.
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.
systemctl restart sshd
lynis audit system
lynis show details SSH-7408 |grep ClientAliveCountMax2025-12-04 13:30:58 Test: Checking ClientAliveCountMax in /tmp/lynis.mXpzzjnf2G2025-12-04 13:30:58 Result: Option ClientAliveCountMax found2025-12-04 13:30:58 Result: Option ClientAliveCountMax value is 22025-12-04 13:30:58 Result: OpenSSH option ClientAliveCountMax is configured very wellAprès avoir apporté des modifications, relancez Lynis pour vérifier que les problèmes ont été résolus.
Profils personnalisés
Lynis supporte les profils personnalisés pour adapter les audits à votre environnement. Cela permet d’ignorer certains tests non pertinents ou d’ajuster les seuils de détection.
# Création d'un profil personnalisé pour environnement cloudcat > /etc/lynis/custom.prf << 'EOF'# Profil personnalisé - Environnement Cloud# Ignorer les tests non pertinents pour les VMs cloud
# Pas de BIOS/UEFI en VMskip-test=BOOT-5104
# Pas de partition physique en cloudskip-test=FILE-6310
# Logs gérés par le cloud providerskip-test=LOGG-2154
# Définir l'auditeurauditor=MonEntreprise
# Ajuster les seuilsmin-hardening-index=70EOF
# Lancer l'audit avec le profil personnalisélynis audit system --profile /etc/lynis/custom.prfAutomatisation 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 -eAjoutez cette ligne :
0 2 * * 0 /usr/local/lynis/lynis audit systemCette commande planifie Lynis pour s’exécuter à 2 heures du matin chaque dimanche, avec les résultats enregistrés dans un fichier log.
Intégration CI/CD avec Packer
L’utilisation de Lynis dans une pipeline CI/CD permet de valider la sécurité des images avant leur déploiement. Voici un exemple d’intégration avec Packer :
# Dans votre fichier Packer (.pkr.hcl)provisioner "shell" { inline = [ "# Installation de Lynis", "cd /tmp && wget -q https://cisofy.com/files/lynis-3.1.6.tar.gz", "tar -xzf lynis-3.1.6.tar.gz -C /usr/local",
"# Audit de sécurité", "/usr/local/lynis/lynis audit system --no-colors --quiet",
"# Vérification du score minimum", "SCORE=$(grep hardening_index /var/log/lynis-report.dat | cut -d= -f2)", "echo \"Score de durcissement: $SCORE\"", "if [ \"$SCORE\" -lt 70 ]; then", " echo \"ERREUR: Score insuffisant ($SCORE < 80)\"", " grep '^warning' /var/log/lynis-report.dat", " exit 1", "fi", "echo \"Validation sécurité OK\"" ]}Pour une intégration GitLab CI :
security-audit: stage: test script: - wget -q https://cisofy.com/files/lynis-3.1.6.tar.gz - tar -xzf lynis-3.1.6.tar.gz - ./lynis/lynis audit system --no-colors --quick - SCORE=$(grep hardening_index /var/log/lynis-report.dat | cut -d= -f2) - 'echo "Hardening score: $SCORE"' - test $SCORE -ge 80 artifacts: paths: - /var/log/lynis-report.dat when: alwaysComparaison avec OpenSCAP
Si vous hésitez entre Lynis et OpenSCAP, voici un tableau comparatif :
| Critère | Lynis | OpenSCAP |
|---|---|---|
| Facilité d’utilisation | Simple, une commande | Plus complexe, nécessite des profils |
| Référentiel | Propre à Lynis | CIS, DISA STIG, ANSSI |
| Format de rapport | Texte, Log | HTML, XML, ARF, JSON |
| Remédiation | Suggestions textuelles | Playbooks Ansible générés |
| Conformité réglementaire | Indicative | Certifiée (PCI-DSS, HIPAA) |
| Installation | Archive tar.gz | Paquets système |
| Personnalisation | Profils .prf | Fichiers XCCDF/OVAL |
Recommandation : Utilisez Lynis pour des audits rapides et l’apprentissage du durcissement. Préférez OpenSCAP pour la conformité réglementaire et les environnements d’entreprise nécessitant des rapports certifiés.
Pour aller plus loin
Après avoir maîtrisé Lynis, je vous invite à explorer ces guides complémentaires pour renforcer la sécurité de vos systèmes :
- Référentiels de sécurité : Appliquez les recommandations ANSSI-BP-028 ou les CIS Benchmarks pour un durcissement conforme aux normes.
- Contrôle d’accès obligatoire : Implémentez SELinux ou AppArmor pour confiner vos applications.
- Services critiques : Consultez mes guides sur le durcissement SSH et la configuration PAM.
- Automatisation : Déployez vos configurations avec Ansible ou gérez-les avec Rudder.
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. - Changelog : Consultez les notes de version ↗ pour suivre les évolutions de l’outil.
- Contrôles Lynis : La base de données des contrôles est disponible sur cisofy.com/lynis/controls ↗.