Aller au contenu

Catalogue des règles de sécurité

Cette page récapitule quelles règles ANSSI s’activent, selon le niveau et la catégorie d’un hôte. C’est la référence à consulter avant de monter le durcissement d’une machine.

darkone.system.security = {
enable = true;
level = "intermediary"; # minimal | intermediary | reinforced | high
category = "server"; # base | client | server
};

Les niveaux sont cumulatifs : intermediary ajoute ses règles à celles de minimal, et ainsi de suite. La catégorie ajoute les règles propres au poste (client) ou au serveur (server).

ProfilCatégorie conseilléePourquoi
minimal, portablebaseSocle universel
desktop, laptopclientÉcran, USB, session interactive
server, gateway, hcs, vmserverServices exposés, réseau

Chaque colonne indique l’état de la règle à ce niveau (les niveaux étant cumulatifs). Légende :

IcôneSignification
Active à ce niveau
⚠️Partielle (voir la note)
Pas encore active à ce niveau
CodeRègleMinInterRenfÉlevé
R3Secure Boot UEFI (si supporté)⚠️⚠️⚠️
R5Mot de passe du chargeur d’amorçage⚠️⚠️⚠️
C6Chiffrement disque LUKS2⚠️⚠️⚠️
R7IOMMU activé
R29/boot restreint
R6Protection cmdline et initramfs
CodeRègleMinInterRenfÉlevé
R8Options mémoire sur la ligne de commande
R9sysctls de durcissement
R11Yama : ptrace restreint
R10Chargement de modules désactivé
R60Noyau linux_hardened
C1Patchs linux-hardened
C2LSM Lockdown
R15R27Durcissement à la compilation
CodeRègleMinInterRenfÉlevé
R30Comptes inutilisés désactivés
R31Mots de passe robustes
R68Stockage des mots de passe en yescrypt
R32Verrouillage sur inactivité
R33Traçabilité des actions admin
R34Comptes de service sans shell
R35Comptes de service uniques
R67PAM distant sécurisé⚠️⚠️⚠️
R69Bases d’utilisateurs en TLS⚠️⚠️⚠️
R70Comptes système ≠ annuaire⚠️⚠️⚠️
C10Anti force brute, limites de session
CodeRègleMinInterRenfÉlevé
R39Directives sudo durcies
R40Cibles sudo non-root
R42Interdiction des négations
R44sudoedit pour l’édition
R38Groupe sudo dédié
R41Limitation des overrides NOEXEC
CodeRègleMinInterRenfÉlevé
R53Détection des fichiers sans propriétaire
R54Sticky bit sur /tmp et /var/tmp
R56Détection des setuid hors liste blanche
R14sysctls système de fichiers
R28Partitionnement et options de montage
R50Restriction des fichiers sensibles
R52Permissions des sockets et tubes nommés⚠️⚠️⚠️
R55Répertoires temporaires par utilisateur⚠️⚠️⚠️
R36UMASK 0077
R57setuid root minimal (capabilities)
CodeRègleMinInterRenfÉlevé
R62Services obsolètes coupés
R63Capacités des services réduites⚠️⚠️⚠️
R37Contrôle d’accès obligatoire (MAC)
R45Profils AppArmor
R64Privilèges de service restreints
R65Isolation des services (namespaces)
R66Durcissement des conteneurs
CodeRègleMinInterRenfÉlevé
R80Surveillance des ports en écoute
C4Pare-feu en refus par défaut⚠️⚠️
R12sysctls réseau IPv4
R13Désactivation d’IPv6 (sauf no-ipv6)
C5Durcissement OpenSSH
C7Synchronisation horaire NTS
C8Résolveur DNS sécurisé (DNSSEC, DoT)
R79Services exposés durcis (serveur)
R78Isolation des services réseau (serveur)
CodeRègleMinInterRenfÉlevé
R71Journalisation persistante scellée
R72Journaux dédiés par service
R73auditd avec règles ANSSI
C9Désactivation des core dumps
R76Scellement et vérification d’intégrité
R77Protection de la base scellée
CodeRègleMinInterRenfÉlevé
C11Bannières légales d’accès
C12cron / at restreints
R61Mises à jour régulières⚠️⚠️⚠️⚠️
R74Courrier local durci
R75Alias de messagerie (root → admin)
R51Rotation des secrets d’installation
C3USBGuard (poste)

Deux soupapes permettent d’écarter une protection précise sans descendre le niveau global.

  • Tags (excludes) : couper un groupe de règles incompatibles (ex. needs-jit, no-ipv6).
  • Exceptions (exceptions) : contourner une règle, justification obligatoire.

Le détail de ces soupapes est dans Notions de sécurité.