
À qui s’adresse ce guide
Section intitulée « À qui s’adresse ce guide »Ce guide est conçu pour toute personne souhaitant sécuriser un serveur Linux, quel que soit son niveau technique :
- Débutants : vous découvrirez ce qu’est le durcissement et pourquoi c’est important
- Administrateurs : vous trouverez des commandes concrètes à appliquer
- RSSI et auditeurs : vous disposerez d’un cadre de conformité documenté
Qu’est-ce que le durcissement
Section intitulée « Qu’est-ce que le durcissement »Voir aussi : Introduction au durcissement des serveurs Linux
Le problème : Linux n’est pas sécurisé par défaut
Section intitulée « Le problème : Linux n’est pas sécurisé par défaut »Quand vous installez un serveur Linux (Debian, Ubuntu, RHEL…), le système est configuré pour fonctionner facilement, pas pour être sécurisé. Par défaut :
- Des services inutiles sont activés
- Des ports réseau sont ouverts
- Les mots de passe peuvent être faibles
- Les journaux de connexion sont basiques
- N’importe quel utilisateur peut lire certaines informations sensibles
C’est comme emménager dans une maison avec les fenêtres ouvertes et les clés sous le paillasson.
La solution : le durcissement
Section intitulée « La solution : le durcissement »Durcir un système, c’est le configurer pour :
- Fermer ce qui n’est pas nécessaire (ports, services, comptes)
- Restreindre les accès (permissions, droits)
- Surveiller l’activité (journaux, alertes)
- Protéger le démarrage et le noyau
Le guide ANSSI-BP-028
Section intitulée « Le guide ANSSI-BP-028 »L’ANSSI (Agence Nationale de la Sécurité des Systèmes d’Information) est l’autorité française en cybersécurité. Elle publie des guides de bonnes pratiques dont le BP-028 : “Recommandations de configuration d’un système GNU/Linux”.
Ce guide est :
- Gratuit et téléchargeable sur cyber.gouv.fr
- En français (une version anglaise existe)
- Régulièrement mis à jour (version 2.0 depuis octobre 2022)
- Reconnu par les professionnels de la sécurité
Les 4 niveaux de durcissement
Section intitulée « Les 4 niveaux de durcissement »Le guide ANSSI propose 4 niveaux progressifs. Vous n’êtes pas obligé de tout appliquer : choisissez le niveau adapté à votre situation.
Comprendre les niveaux
Section intitulée « Comprendre les niveaux »| Niveau | Nom | Pour qui | Effort |
|---|---|---|---|
| M | Minimal | Tous les serveurs, même internes | Faible |
| I | Intermédiaire | Serveurs en production | Moyen |
| R | Renforcé | Serveurs exposés sur Internet | Important |
| E | Élevé | Infrastructures critiques, données sensibles | Expert |
Quel niveau choisir
Section intitulée « Quel niveau choisir »Appliquez ce niveau si :
- C’est votre premier durcissement
- Serveur de test ou développement
- Serveur interne isolé
Temps estimé : 1-2 heures
Appliquez ce niveau si :
- Serveur de production
- Serveur accessible depuis le réseau d’entreprise
- Hébergement d’applications métier
Temps estimé : 2-4 heures (après niveau M)
Appliquez ce niveau si :
- Serveur exposé sur Internet
- Serveur web, mail, VPN
- Données client ou utilisateur
Temps estimé : 4-8 heures (après niveau I)
Appliquez ce niveau si :
- Infrastructure critique
- Données confidentielles ou réglementées
- Exigences contractuelles de sécurité
Temps estimé : 1-2 jours (après niveau R)
Nécessite une équipe expérimentée
Comment lire une recommandation ANSSI
Section intitulée « Comment lire une recommandation ANSSI »Chaque recommandation du guide officiel suit le même format. Voici comment la décrypter :
Anatomie d’une recommandation
Section intitulée « Anatomie d’une recommandation »R8 M I R E Mises à jour régulières
Il est recommandé d'avoir une procédure de mise à jour de sécuritérégulière et réactive.Décomposons :
| Élément | Signification |
|---|---|
| R8 | Numéro de la recommandation (R1 à R80+) |
| M I R E | Niveaux concernés (ici : tous les niveaux) |
| Titre | ”Mises à jour régulières” |
| Description | Le texte explicatif qui suit |
Les lettres de niveau expliquées
Section intitulée « Les lettres de niveau expliquées »R3 . . R E Principe de moindre privilègeIci, les points . signifient que la recommandation ne s’applique pas aux
niveaux M et I. Elle ne concerne que les niveaux R (Renforcé) et E
(Élevé).
| Notation | Signification |
|---|---|
M I R E | S’applique à tous les niveaux |
. I R E | S’applique à partir du niveau Intermédiaire |
. . R E | S’applique à partir du niveau Renforcé |
. . . E | S’applique uniquement au niveau Élevé |
Exemple pratique
Section intitulée « Exemple pratique »Imaginons que vous souhaitez durcir un serveur web en production. Vous visez le niveau I (Intermédiaire).
Vous devez appliquer :
- Toutes les recommandations marquées M (Minimal)
- Toutes les recommandations marquées I (Intermédiaire)
Vous pouvez ignorer (pour l’instant) :
- Les recommandations marquées uniquement R ou E
Les 3 principes fondamentaux
Section intitulée « Les 3 principes fondamentaux »Avant de plonger dans les recommandations techniques, comprenez ces 3 principes qui guident tout le durcissement. Voir aussi : Principes de sécurité.
1. Minimisation
Section intitulée « 1. Minimisation »“N’installez que ce dont vous avez besoin”
Chaque programme installé est une porte d’entrée potentielle. Moins il y a de composants, moins il y a de risques. Consultez notre guide dédié : Minimisation de la surface d’attaque.
Exemples concrets :
- Pas besoin d’interface graphique sur un serveur
- Désinstallez les compilateurs si vous ne compilez pas
- Supprimez les services comme Telnet, FTP si vous ne les utilisez pas
2. Moindre privilège
Section intitulée « 2. Moindre privilège »“Donnez le minimum de droits nécessaires”
Un utilisateur ou un programme ne doit avoir accès qu’à ce dont il a strictement besoin. Ce principe est détaillé dans notre guide Moindre privilège.
Exemples concrets :
- L’application web n’a pas besoin d’être root
- Le développeur n’a pas besoin d’accès sudo sur tous les serveurs
- Le script de backup ne doit pas pouvoir modifier les fichiers système
3. Défense en profondeur
Section intitulée « 3. Défense en profondeur »“Multipliez les barrières de sécurité”
Si une protection échoue, une autre doit prendre le relais.
Exemples concrets :
- Pare-feu + configuration SSH restrictive + clés SSH
- Mots de passe forts + limitation des tentatives + journalisation
- Chiffrement réseau + chiffrement disque + permissions fichiers
Mettre en œuvre le durcissement
Section intitulée « Mettre en œuvre le durcissement »Étape 1 : auditer l’état actuel
Section intitulée « Étape 1 : auditer l’état actuel »Avant de modifier quoi que ce soit, mesurez l’état de sécurité actuel de votre système avec Lynis.
-
Installer Lynis (outil d’audit gratuit)
Fenêtre de terminal # Debian/Ubuntusudo apt update && sudo apt install lynis# RHEL/CentOS/Rockysudo dnf install lynis -
Lancer un audit complet
Fenêtre de terminal sudo lynis audit system -
Noter votre score initial
À la fin de l’audit, Lynis affiche un score sur 100. Notez-le, c’est votre point de départ.
-
Consulter le rapport
Fenêtre de terminal cat /var/log/lynis-report.dat
Étape 2 : appliquer les recommandations niveau M
Section intitulée « Étape 2 : appliquer les recommandations niveau M »Commencez par les recommandations Minimal (obligatoires pour tous).
2.1 Mises à jour de sécurité (R8)
Section intitulée « 2.1 Mises à jour de sécurité (R8) »# Debian/Ubuntusudo apt update && sudo apt upgrade -y
# RHEL/CentOSsudo dnf update -yAutomatisez les mises à jour de sécurité :
# Debian/Ubuntu - activer les mises à jour automatiquessudo apt install unattended-upgradessudo dpkg-reconfigure unattended-upgrades2.2 Protection mémoire ASLR (R46)
Section intitulée « 2.2 Protection mémoire ASLR (R46) »Vérifiez que l’ASLR est activé :
cat /proc/sys/kernel/randomize_va_spaceLe résultat doit être 2. Si ce n’est pas le cas :
# Application immédiatesudo sysctl -w kernel.randomize_va_space=2
# Persistance après redémarrageecho "kernel.randomize_va_space = 2" | sudo tee -a /etc/sysctl.conf2.3 Désactiver les core dumps (R48)
Section intitulée « 2.3 Désactiver les core dumps (R48) »Les core dumps peuvent révéler des informations sensibles :
# Vérificationcat /proc/sys/fs/suid_dumpable
# Correction si nécessaire (doit être 0)sudo sysctl -w fs.suid_dumpable=0echo "fs.suid_dumpable = 0" | sudo tee -a /etc/sysctl.conf2.4 Mot de passe root robuste (R18)
Section intitulée « 2.4 Mot de passe root robuste (R18) »Changez le mot de passe root avec un mot de passe fort :
sudo passwd rootCritères d’un mot de passe robuste :
- Minimum 15 caractères
- Majuscules, minuscules, chiffres, caractères spéciaux
- Unique (jamais utilisé ailleurs)
- maximum de 4 caractères de la meme catégorie consécutifs
2.5 Dépôts officiels uniquement (R15)
Section intitulée « 2.5 Dépôts officiels uniquement (R15) »Vérifiez que vous n’utilisez que des dépôts officiels :
# Debian/Ubuntucat /etc/apt/sources.listls /etc/apt/sources.list.d/Supprimez tout dépôt tiers non indispensable.
2.6 Supprimer les services inutiles (R1, R35)
Section intitulée « 2.6 Supprimer les services inutiles (R1, R35) »Listez les services actifs :
systemctl list-units --type=service --state=runningDésactivez ceux dont vous n’avez pas besoin :
# Exemple : désactiver le serveur Avahi (mDNS)sudo systemctl stop avahi-daemonsudo systemctl disable avahi-daemon
# Exemple : désactiver CUPS (impression) si pas nécessairesudo systemctl stop cupssudo systemctl disable cupsÉtape 3 : appliquer les recommandations niveau I
Section intitulée « Étape 3 : appliquer les recommandations niveau I »Une fois le niveau M appliqué, passez au niveau Intermédiaire.
3.1 Paramètres sysctl réseau (R22)
Section intitulée « 3.1 Paramètres sysctl réseau (R22) »Créez un fichier de configuration sécurisée :
sudo tee /etc/sysctl.d/99-hardening.conf << 'EOF'# Désactiver le routage IPnet.ipv4.ip_forward = 0
# Filtrage par chemin inverse (anti-spoofing)net.ipv4.conf.all.rp_filter = 1net.ipv4.conf.default.rp_filter = 1
# Ignorer les redirections ICMPnet.ipv4.conf.all.accept_redirects = 0net.ipv4.conf.default.accept_redirects = 0net.ipv4.conf.all.secure_redirects = 0net.ipv4.conf.default.secure_redirects = 0
# Ne pas envoyer de redirections ICMPnet.ipv4.conf.all.send_redirects = 0net.ipv4.conf.default.send_redirects = 0
# Refuser le source routingnet.ipv4.conf.all.accept_source_route = 0net.ipv4.conf.default.accept_source_route = 0
# Activer les SYN cookies (protection DDoS)net.ipv4.tcp_syncookies = 1
# Journaliser les paquets suspectsnet.ipv4.conf.all.log_martians = 1EOFAppliquez les changements :
sudo sysctl --system3.2 Paramètres sysctl système (R23)
Section intitulée « 3.2 Paramètres sysctl système (R23) »Ajoutez ces paramètres au fichier précédent :
sudo tee -a /etc/sysctl.d/99-hardening.conf << 'EOF'
# Masquer les adresses kernelkernel.kptr_restrict = 2
# Restreindre l'accès à dmesgkernel.dmesg_restrict = 1
# Protéger les liens symboliquesfs.protected_symlinks = 1fs.protected_hardlinks = 1
# Désactiver les SysReq magiqueskernel.sysrq = 0EOF
sudo sysctl --system3.3 Désactiver IPv6 si non utilisé (R52)
Section intitulée « 3.3 Désactiver IPv6 si non utilisé (R52) »Si vous n’utilisez pas IPv6 :
sudo tee -a /etc/sysctl.d/99-hardening.conf << 'EOF'
# Désactiver IPv6net.ipv6.conf.all.disable_ipv6 = 1net.ipv6.conf.default.disable_ipv6 = 1EOF
sudo sysctl --system3.4 Permissions des fichiers sensibles (R31)
Section intitulée « 3.4 Permissions des fichiers sensibles (R31) »# /etc/shadow ne doit être lisible que par rootsudo chmod 600 /etc/shadowsudo chown root:root /etc/shadow
# Pareil pour les clés SSHsudo chmod 600 /etc/ssh/sshd_configsudo chmod 700 /etc/ssh3.5 Configurer sudo correctement (R19, R41)
Section intitulée « 3.5 Configurer sudo correctement (R19, R41) »La configuration de sudo s’appuie sur PAM pour l’authentification. Éditez la configuration sudo :
sudo visudoBonnes pratiques :
- Évitez
NOPASSWDsauf nécessité absolue - Utilisez des groupes plutôt que des utilisateurs individuels
- Limitez les commandes autorisées
Exemple de configuration restrictive :
# Groupe admin peut utiliser sudo avec mot de passe%admin ALL=(ALL) ALL
# Logs détaillésDefaults logfile=/var/log/sudo.logDefaults log_input, log_output3.6 Configurer un pare-feu (R44)
Section intitulée « 3.6 Configurer un pare-feu (R44) »# Installer et activer UFWsudo apt install ufw
# Règle par défaut : bloquer toutsudo ufw default deny incomingsudo ufw default allow outgoing
# Autoriser SSH (ajustez le port si nécessaire)sudo ufw allow 22/tcp
# Activer le pare-feusudo ufw enable
# Vérifier le statutsudo ufw status verbose# Vérifier que firewalld est actifsudo systemctl enable firewalldsudo systemctl start firewalld
# Voir la zone par défautsudo firewall-cmd --get-default-zone
# Lister les services autoriséssudo firewall-cmd --list-all
# Autoriser uniquement SSHsudo firewall-cmd --permanent --add-service=sshsudo firewall-cmd --reloadÉtape 4 : vérifier le durcissement
Section intitulée « Étape 4 : vérifier le durcissement »Après avoir appliqué les recommandations, relancez un audit :
sudo lynis audit systemComparez le nouveau score avec le score initial. Vous devriez constater une amélioration significative.
Tableau récapitulatif des recommandations
Section intitulée « Tableau récapitulatif des recommandations »Ce tableau présente les principales recommandations avec leur niveau et la commande de vérification.
Niveau M (Minimal) - Obligatoire
Section intitulée « Niveau M (Minimal) - Obligatoire »| Code | Recommandation | Vérification |
|---|---|---|
| R1 | Services minimaux | systemctl list-units --type=service |
| R8 | Mises à jour | apt list --upgradable ou dnf check-update |
| R15 | Dépôts officiels | cat /etc/apt/sources.list |
| R18 | Mot de passe root | Politique interne |
| R26 | Comptes inutilisés | cat /etc/passwd |
| R30 | Umask restrictif | umask (doit afficher 027 ou 077) |
| R35 | Services réseau | ss -tlnp |
| R46 | ASLR activé | cat /proc/sys/kernel/randomize_va_space |
| R48 | Core dumps désactivés | cat /proc/sys/fs/suid_dumpable |
Niveau I (Intermédiaire) - Recommandé en production
Section intitulée « Niveau I (Intermédiaire) - Recommandé en production »| Code | Recommandation | Vérification |
|---|---|---|
| R2 | Config minimale | Audit manuel des services |
| R9 | Config BIOS/UEFI | Vérification physique |
| R10 | Architecture 64 bits | uname -m (doit afficher x86_64) |
| R12 | Partitionnement | cat /etc/fstab |
| R14 | Paquets minimaux | dpkg -l ou rpm -qa |
| R19 | Imputabilité (sudo) | cat /etc/sudoers |
| R21 | Services exposés durcis (SSH) | Configuration par service |
| R22 | sysctl réseau | sysctl -a | grep -E "rp_filter|redirect" |
| R23 | sysctl système | sysctl -a | grep -E "kptr_restrict|dmesg" |
| R27 | Expiration sessions | cat /etc/profile (TMOUT) |
| R28 | Configuration PAM | cat /etc/pam.d/common-* |
| R31 | Fichiers sensibles | ls -la /etc/shadow /etc/passwd |
| R32 | setuid/setgid | find / -perm /6000 -type f 2>/dev/null |
| R34 | Sticky bit | find / -perm -1000 -type d 2>/dev/null |
| R36 | Configuration syslog | cat /etc/rsyslog.conf |
| R41 | Configuration sudo | sudo -l |
| R44 | Pare-feu entrant | ufw status ou firewall-cmd --list-all |
| R47 | Masquage kernel | cat /proc/sys/kernel/kptr_restrict |
| R49 | BPF restreint | cat /proc/sys/kernel/unprivileged_bpf_disabled |
| R50 | ptrace restreint | cat /proc/sys/kernel/yama/ptrace_scope |
| R51 | Liens protégés | cat /proc/sys/fs/protected_* |
| R52 | IPv6 désactivé | cat /proc/sys/net/ipv6/conf/all/disable_ipv6 |
Niveau R (Renforcé) - Serveurs exposés
Section intitulée « Niveau R (Renforcé) - Serveurs exposés »| Code | Recommandation | Vérification |
|---|---|---|
| R3 | Moindre privilège | Audit des droits |
| R6 | Cloisonnement | Architecture système |
| R7 | Journalisation externe | Config syslog |
| R13 | /boot restreint | ls -la /boot |
| R16 | Paquets durcis | Vérification source |
| R17 | Mot de passe GRUB | Config GRUB |
| R20 | Secrets à l’install | Procédure d’install |
| R24 | Modules kernel | cat /proc/sys/kernel/modules_disabled |
| R25 | Yama ptrace | cat /proc/sys/kernel/yama/ptrace_scope |
| R33 | Fichiers orphelins | find / -nouser -o -nogroup 2>/dev/null |
| R37 | Déport journaux | Config syslog distant |
| R38 | auditd | systemctl status auditd |
| R39 | AIDE/surveillance FS | aide --check |
| R40 | chroot services | Configuration service |
| R45 | Filtrage sortant | Règles pare-feu |
| R53 | Options GRUB | cat /etc/default/grub |
Niveau E (Élevé) - Environnements critiques
Section intitulée « Niveau E (Élevé) - Environnements critiques »| Code | Recommandation | Vérification |
|---|---|---|
| R4 | MAC (SELinux/AppArmor) | getenforce ou aa-status |
| R11 | IOMMU | dmesg | grep -i iommu |
| R42 | AppArmor | aa-status |
| R43 | SELinux | getenforce |
| R54 | Compilation kernel | Config noyau |
| R55 | UEFI Secure Boot | mokutil --sb-state |
Outils pour vous aider
Section intitulée « Outils pour vous aider »Rudder — Audit et application automatique
Section intitulée « Rudder — Audit et application automatique »
Rudder est une solution de gestion de configuration qui va au-delà de l’audit en proposant l’application automatique des règles de durcissement. Contrairement aux outils d’audit qui détectent les écarts sans les corriger, Rudder détecte et remédie automatiquement toutes les 5 minutes.
Pourquoi Rudder se distingue
Section intitulée « Pourquoi Rudder se distingue »La plupart des outils auditent : ils détectent les problèmes, génèrent des rapports, mais c’est à vous de corriger manuellement. Rudder propose deux modes :
| Mode | Comportement | Cas d’usage |
|---|---|---|
| Audit | Détecte les écarts sans modifier | Évaluation initiale, préparation d’audit |
| Enforce | Détecte et corrige automatiquement | Production, maintien continu de la conformité |
Exemple concret : vous avez configuré kernel.randomize_va_space = 2 dans
/etc/sysctl.conf (recommandation R9). Un script ou une mise à jour remet cette
valeur à 0.
- Avec Lynis ou OpenSCAP : le prochain audit détecte l’écart, vous recevez un rapport, vous devez corriger manuellement.
- Avec Rudder en mode Enforce : l’agent détecte l’écart dans les 5 minutes
et rétablit automatiquement
kernel.randomize_va_space = 2.
CIS Benchmarks et transposition ANSSI
Section intitulée « CIS Benchmarks et transposition ANSSI »Rudder intègre nativement les CIS Benchmarks (500+ contrôles pour RHEL, Ubuntu, Debian). Les CIS Benchmarks et l’ANSSI-BP-028 partagent de nombreux objectifs communs :
| Recommandation ANSSI | Équivalent CIS | Description |
|---|---|---|
| R9 : ASLR activé | CIS 1.5.3 | kernel.randomize_va_space = 2 |
| R12 : SSH durci | CIS 5.2.x | MaxAuthTries, PermitRootLogin, Protocol 2 |
| R15 : Services inutiles désactivés | CIS 2.x | Désactiver telnet, xinetd, avahi, cups |
| R18 : Journalisation centralisée | CIS 4.2.x | Configuration rsyslog/syslog-ng |
| R24 : Permissions /etc restrictives | CIS 6.1.x | chmod 644 /etc/passwd, 640 /etc/shadow |
De nombreux contrôles CIS peuvent être transposés aux exigences ANSSI. Par exemple, les règles SSH (R12) correspondent directement aux contrôles CIS 5.2 (SSH Server Configuration).
Rapports ANSSI en cours de développement
Section intitulée « Rapports ANSSI en cours de développement »L’équipe Rudder travaille actuellement sur une fonctionnalité de rapports ANSSI-BP-028. À terme, Rudder pourra afficher :
- Le niveau de conformité ANSSI (M, I, R, E)
- Un score par catégorie de recommandations
- Le mapping entre les contrôles CIS appliqués et les recommandations ANSSI équivalentes
Cette fonctionnalité permettra aux organisations françaises de démontrer leur conformité aux recommandations de l’ANSSI tout en bénéficiant de la remédiation automatique.
Fonctionnalités clés
Section intitulée « Fonctionnalités clés »- Dashboard temps réel : score de conformité par section du benchmark
- Remédiation automatique : maintien continu de l’état conforme
- Granularité d’application : modes Audit/Enforce par groupe, système ou section
- Documentation intégrée : chaque contrôle affiche sa justification
Distributions supportées
Section intitulée « Distributions supportées »| Distribution | Versions | Benchmark CIS |
|---|---|---|
| Red Hat Enterprise Linux | 8, 9 | CIS RHEL 8/9 Benchmark |
| Ubuntu | 20.04 LTS, 22.04 LTS | CIS Ubuntu Benchmark |
| Debian | 11 (Bullseye), 12 (Bookworm) | CIS Debian Benchmark |
Tarification
Section intitulée « Tarification »Le plugin Policy and Benchmark Compliance fait partie de l’offre Rudder Enterprise (non disponible dans la version open source). Pour obtenir un devis, contactez l’équipe commerciale Rudder.
Guide complet : Benchmarks CIS avec Rudder
Lynis : audit rapide
Section intitulée « Lynis : audit rapide »Lynis analyse votre système et liste les points à améliorer.
# Installationsudo apt install lynis # Debian/Ubuntusudo dnf install lynis # RHEL/CentOS
# Audit completsudo lynis audit system
# Audit avec profil personnalisésudo lynis audit system --profile /etc/lynis/custom.prfOpenSCAP : conformité ANSSI
Section intitulée « OpenSCAP : conformité ANSSI »OpenSCAP vérifie la conformité par rapport au profil ANSSI-BP-028.
# Installationsudo apt install openscap-utils scap-security-guide
# Audit avec profil ANSSIsudo oscap xccdf eval \ --profile xccdf_org.ssgproject.content_profile_anssi_bp28_enhanced \ --results results.xml \ --report rapport.html \ /usr/share/xml/scap/ssg/content/ssg-debian12-ds.xmlLe rapport HTML généré liste chaque contrôle avec son statut (PASS/FAIL).
Ansible : automatisation
Section intitulée « Ansible : automatisation »Pour appliquer le durcissement à grande échelle, utilisez Ansible :
- name: Durcissement niveau I hosts: all become: yes tasks: - name: Configurer sysctl sysctl: name: "{{ item.key }}" value: "{{ item.value }}" state: present reload: yes loop: - { key: 'kernel.randomize_va_space', value: '2' } - { key: 'kernel.kptr_restrict', value: '2' } - { key: 'fs.suid_dumpable', value: '0' } - { key: 'net.ipv4.conf.all.rp_filter', value: '1' }Maintenir le durcissement
Section intitulée « Maintenir le durcissement »Le durcissement n’est pas une action ponctuelle. Pour rester sécurisé :
Audits réguliers
Section intitulée « Audits réguliers »Planifiez un audit automatique chaque semaine :
# Ajouter au crontabsudo crontab -e# Audit Lynis hebdomadaire@weekly /usr/sbin/lynis audit system --cronjob > /var/log/lynis-weekly.logSurveillance des dérives
Section intitulée « Surveillance des dérives »Comparez les scores au fil du temps :
| Date | Score Lynis | Remarque |
|---|---|---|
| 01/12/2025 | 82 | Après durcissement initial |
| 08/12/2025 | 82 | Stable |
| 15/12/2025 | 78 | Baisse → investiguer |
Mises à jour du guide
Section intitulée « Mises à jour du guide »L’ANSSI met à jour son guide régulièrement. Consultez cyber.gouv.fr pour les nouvelles versions.
Conclusion
Section intitulée « Conclusion »Le durcissement d’un système Linux n’est pas une option, c’est une nécessité. Avec le guide ANSSI-BP-028, vous disposez d’un référentiel clair, structuré et adapté au contexte français.
Ce qu’il faut retenir :
- Commencez par le niveau M : c’est accessible à tous et apporte déjà une protection significative
- Utilisez Lynis pour mesurer vos progrès et identifier les points à améliorer
- Le durcissement est un processus continu : planifiez des audits réguliers
- Automatisez avec Ansible ou Rudder pour garantir la cohérence sur l’ensemble de votre parc
- Les CIS Benchmarks peuvent compléter les recommandations ANSSI : de nombreux contrôles se recoupent
Ne cherchez pas la perfection du premier coup. Chaque recommandation appliquée réduit votre surface d’attaque. Progressez à votre rythme, documentez vos choix, et n’hésitez pas à revenir sur ce guide au fil de votre montée en compétences.
Votre prochain pas : lancez un audit Lynis sur votre serveur et notez votre score. C’est le point de départ de votre parcours vers un système durci.
Pour aller plus loin
Section intitulée « Pour aller plus loin »Rudder
Audit et application automatique des règles, transposition CIS vers ANSSI.
Lynis
Audit de sécurité automatisé, profils personnalisés, intégration CI/CD.
OpenSCAP
Conformité SCAP, profils ANSSI, rapports détaillés.
Durcissement SSH
Configuration sécurisée, algorithmes, clés, CVE récentes.
CIS Benchmarks
Référentiel complémentaire ANSSI, niveaux Level 1/2, automatisation.
Contrôle d’accès avancé
Section intitulée « Contrôle d’accès avancé »- SELinux : pour RHEL, CentOS, Fedora
- AppArmor : pour Debian, Ubuntu
- PAM : authentification et politiques
Ressources officielles
Section intitulée « Ressources officielles »- Guide ANSSI-BP-028 : document source complet (PDF)
- Guides ANSSI : tous les guides de bonnes pratiques
- Documentation Lynis : référence officielle
- Site OpenSCAP : framework de conformité