Guides et Recommandations ANSSI
Synthèse des principales recommandations de l'ANSSI (Agence Nationale de la Sécurité des Systèmes d'Information) pour le durcissement des systèmes.
Présentation ANSSI
ANSSI - AGENCE NATIONALE DE LA SÉCURITÉ DES SYSTÈMES D'INFORMATION
══════════════════════════════════════════════════════════════════════
Missions:
├── Défense des systèmes d'information de l'État
├── Conseil et soutien aux administrations et OIV
├── Veille, détection et réponse aux attaques
├── Développement de produits de sécurité
└── Formation et sensibilisation
Publications clés:
├── Guides techniques (recommandations)
├── Référentiels (SecNumCloud, PSSIE, RGS)
├── Alertes et avis de sécurité (CERT-FR)
├── Rapports de menaces
└── Bonnes pratiques sectorielles
Niveaux de recommandation:
┌─────────────────────────────────────────────────────────────────────┐
│ R │ Recommandation │ Doit être appliquée │
├──────┼───────────────────┼─────────────────────────────────────────┤
│ R+ │ Recommandation+ │ Renforce la sécurité, non obligatoire │
├──────┼───────────────────┼─────────────────────────────────────────┤
│ R- │ Alternative │ Si R impossible, mesure compensatoire │
└─────────────────────────────────────────────────────────────────────┘
Site officiel: https://www.ssi.gouv.fr
CERT-FR: https://www.cert.ssi.gouv.fr
Guide d'Hygiène Informatique (42 Mesures)
Les 42 Mesures Essentielles
SENSIBILISER ET FORMER:
1: Former les équipes aux risques et bonnes pratiques
2: Sensibiliser régulièrement les utilisateurs
3: Rédiger une charte informatique
CONNAITRE LE SYSTÈME D'INFORMATION:
4: Identifier les informations et serveurs sensibles
5: Disposer d'un inventaire exhaustif des comptes privilégiés
6: Organiser les procédures d'arrivée/départ des utilisateurs
7: Autoriser la connexion au réseau uniquement depuis des postes maîtrisés
8: Identifier les actifs les plus critiques
AUTHENTIFIER ET CONTROLER LES ACCES:
9: Définir une politique de mots de passe robuste
10: Protéger les mots de passe stockés sur les systèmes
11: Mettre en place une authentification forte (MFA)
12: Distinguer les comptes à privilèges des comptes utilisateurs
13: Utiliser des comptes nominatifs pour l'administration
SECURISER LES POSTES:
14: Mettre à jour les systèmes d'exploitation
15: Mettre à jour les applications
16: Activer et configurer le pare-feu local
17: Installer un antivirus et le maintenir à jour
18: Chiffrer les postes nomades (laptops)
19: Désactiver les services inutiles
SECURISER LE RESEAU:
20: Segmenter le réseau et les systèmes sensibles
21: Protéger le réseau interne vis-à-vis d'Internet
22: Définir des zones de sécurité (DMZ)
23: Filtrer les accès Internet (proxy, DNS)
24: Cloisonner les services visibles depuis Internet
25: Protéger les interconnexions réseau dédiées
SECURISER L'ADMINISTRATION:
26: Utiliser un réseau dédié et cloisonné pour l'administration
27: Limiter l'accès aux interfaces d'administration
28: Utiliser des protocoles sécurisés (SSH, HTTPS)
29: Mettre en place un bastion d'administration
GERER LE NOMADISME:
30: Encadrer le BYOD
31: Chiffrer les échanges sensibles (VPN)
32: Renforcer la sécurité des accès distants
SUPERVISER ET AUDITER:
33: Activer et configurer les journaux des équipements
34: Centraliser et analyser les journaux
35: Mettre en place une surveillance des événements de sécurité
36: Protéger les journaux (intégrité, rétention)
REAGIR ET SE PREPARER:
37: Définir une procédure de gestion des incidents
38: Maintenir un plan de continuité informatique
39: Prévoir des sauvegardes régulières
40: Tester les sauvegardes et les procédures de restauration
41: Vérifier la conformité régulièrement
42: Effectuer des audits de sécurité
Recommandations Linux
Durcissement GNU/Linux (ANSSI-BP-028)
# Source: https://www.ssi.gouv.fr/guide/recommandations-de-securite-relatives-a-un-systeme-gnulinux/
# === R1-R5: INSTALLATION ===
# R1: Utiliser une distribution maintenue avec mises à jour de sécurité
# → RHEL, Rocky, Debian, Ubuntu LTS
# R2: Minimiser les paquets installés
dnf install @minimal-environment
# R3: Partitionnement avec options de sécurité
# /etc/fstab
/dev/sda2 /tmp ext4 defaults,noexec,nosuid,nodev 0 2
/dev/sda3 /var ext4 defaults,nosuid 0 2
/dev/sda4 /var/log ext4 defaults,noexec,nosuid,nodev 0 2
/dev/sda5 /home ext4 defaults,noexec,nosuid,nodev 0 2
# R4: Restreindre les droits d'accès au bootloader
chmod 600 /boot/grub2/grub.cfg
grub2-setpassword # Mot de passe GRUB
# R5: Désactiver les modules kernel inutiles
cat > /etc/modprobe.d/anssi-hardening.conf << 'EOF'
# Désactiver les protocoles réseau inutiles
install dccp /bin/true
install sctp /bin/true
install rds /bin/true
install tipc /bin/true
# Désactiver les systèmes de fichiers inutiles
install cramfs /bin/true
install freevxfs /bin/true
install jffs2 /bin/true
install hfs /bin/true
install hfsplus /bin/true
install squashfs /bin/true
install udf /bin/true
install vfat /bin/true
# Désactiver USB storage (si non nécessaire)
# install usb-storage /bin/true
EOF
# === R6-R15: CONFIGURATION SYSTÈME ===
# R6: Paramètres sysctl sécurisés
cat > /etc/sysctl.d/99-anssi-hardening.conf << 'EOF'
# Protection mémoire
kernel.randomize_va_space = 2
kernel.kptr_restrict = 2
kernel.dmesg_restrict = 1
kernel.perf_event_paranoid = 3
kernel.yama.ptrace_scope = 1
# Protection réseau
net.ipv4.conf.all.accept_redirects = 0
net.ipv4.conf.default.accept_redirects = 0
net.ipv6.conf.all.accept_redirects = 0
net.ipv6.conf.default.accept_redirects = 0
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0
net.ipv4.conf.all.accept_source_route = 0
net.ipv4.conf.default.accept_source_route = 0
net.ipv6.conf.all.accept_source_route = 0
net.ipv6.conf.default.accept_source_route = 0
net.ipv4.conf.all.log_martians = 1
net.ipv4.conf.default.log_martians = 1
net.ipv4.icmp_echo_ignore_broadcasts = 1
net.ipv4.icmp_ignore_bogus_error_responses = 1
net.ipv4.conf.all.rp_filter = 1
net.ipv4.conf.default.rp_filter = 1
net.ipv4.tcp_syncookies = 1
# Désactiver IPv6 si non utilisé
# net.ipv6.conf.all.disable_ipv6 = 1
EOF
sysctl --system
# R7: Permissions par défaut restrictives
echo "umask 027" >> /etc/profile.d/umask.sh
# R8: Supprimer les comptes inutiles
for user in games ftp news; do
userdel -r $user 2>/dev/null
done
# R9: Verrouiller les comptes système
for user in $(awk -F: '($3 < 1000) && ($1 != "root") {print $1}' /etc/passwd); do
usermod -L $user
usermod -s /usr/sbin/nologin $user
done
# R10: Configurer PAM pour les mots de passe
# /etc/security/pwquality.conf
cat > /etc/security/pwquality.conf << 'EOF'
minlen = 14
dcredit = -1
ucredit = -1
ocredit = -1
lcredit = -1
minclass = 4
maxrepeat = 3
gecoscheck = 1
dictcheck = 1
EOF
# R11: Limiter su à un groupe
groupadd wheel 2>/dev/null
echo "auth required pam_wheel.so use_uid" >> /etc/pam.d/su
# R12: Configurer sudo
cat > /etc/sudoers.d/anssi-hardening << 'EOF'
Defaults use_pty
Defaults logfile="/var/log/sudo.log"
Defaults log_input, log_output
Defaults passwd_timeout=1
Defaults timestamp_timeout=5
Defaults !visiblepw
EOF
# R13-R15: Configurer les limites
cat > /etc/security/limits.d/99-anssi.conf << 'EOF'
* hard core 0
* hard nproc 1024
* hard nofile 65535
EOF
Configuration SSH (ANSSI-BP-028)
# /etc/ssh/sshd_config - Recommandations ANSSI
# R20: Protocole et algorithmes
Protocol 2
KexAlgorithms curve25519-sha256@libssh.org,ecdh-sha2-nistp384,ecdh-sha2-nistp521
Ciphers aes256-gcm@openssh.com,aes128-gcm@openssh.com,aes256-ctr,aes192-ctr,aes128-ctr
MACs hmac-sha2-512-etm@openssh.com,hmac-sha2-256-etm@openssh.com
HostKeyAlgorithms ssh-ed25519,rsa-sha2-512,rsa-sha2-256
# R21: Authentification
PermitRootLogin no
PasswordAuthentication no
PubkeyAuthentication yes
AuthenticationMethods publickey
PermitEmptyPasswords no
MaxAuthTries 3
# R22: Restrictions d'accès
AllowGroups ssh-users
DenyGroups no-ssh
# R23: Configuration session
LoginGraceTime 60
ClientAliveInterval 300
ClientAliveCountMax 2
MaxSessions 2
MaxStartups 10:30:60
# R24: Restrictions diverses
X11Forwarding no
AllowTcpForwarding no
AllowAgentForwarding no
PermitTunnel no
Banner /etc/issue.net
# R25: Journalisation
SyslogFacility AUTH
LogLevel VERBOSE
# Redémarrer SSH
systemctl restart sshd
Recommandations Windows
Durcissement Windows (ANSSI-BP-065)
# Source: https://www.ssi.gouv.fr/guide/recommandations-de-securite-relatives-a-windows/
# === AUTHENTIFICATION ===
# R1: Politique de mots de passe
# Via GPO ou secpol.msc
# Minimum 14 caractères, complexité, historique 24, expiration 90j
# R2: Verrouillage de compte
net accounts /lockoutthreshold:5 /lockoutwindow:15 /lockoutduration:30
# R3: Désactiver les comptes par défaut
Disable-LocalUser -Name "Guest"
Rename-LocalUser -Name "Administrator" -NewName "LocalAdminRenamed"
# R4: Restreindre les comptes locaux
# GPO: Deny access to this computer from the network → Local accounts
# === CONFIGURATION SYSTÈME ===
# R5: Désactiver les services inutiles
$servicesToDisable = @(
"RemoteRegistry",
"XblAuthManager",
"XblGameSave",
"WMPNetworkSvc",
"WerSvc" # Rapport d'erreurs (sauf si nécessaire)
)
foreach ($svc in $servicesToDisable) {
Set-Service -Name $svc -StartupType Disabled -ErrorAction SilentlyContinue
}
# R6: Désactiver SMBv1
Disable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol -NoRestart
Set-SmbServerConfiguration -EnableSMB1Protocol $false -Force
# R7: Sécuriser SMBv2/v3
Set-SmbServerConfiguration -EnableSMB2Protocol $true -Force
Set-SmbServerConfiguration -RequireSecuritySignature $true -Force
Set-SmbServerConfiguration -EncryptData $true -Force
# R8: Configurer Windows Defender
Set-MpPreference -DisableRealtimeMonitoring $false
Set-MpPreference -DisableBehaviorMonitoring $false
Set-MpPreference -DisableIOAVProtection $false
Set-MpPreference -DisableScriptScanning $false
Set-MpPreference -SubmitSamplesConsent 2 # Never send
# R9: Activer et configurer le firewall
Set-NetFirewallProfile -Profile Domain,Public,Private -Enabled True
Set-NetFirewallProfile -Profile Domain,Public,Private -DefaultInboundAction Block
# R10: Désactiver protocoles obsolètes
$protocols = @("SSL 2.0", "SSL 3.0", "TLS 1.0", "TLS 1.1")
foreach ($protocol in $protocols) {
$serverPath = "HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\$protocol\Server"
$clientPath = "HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\$protocol\Client"
New-Item -Path $serverPath -Force | Out-Null
New-Item -Path $clientPath -Force | Out-Null
Set-ItemProperty -Path $serverPath -Name "Enabled" -Value 0 -Type DWord
Set-ItemProperty -Path $serverPath -Name "DisabledByDefault" -Value 1 -Type DWord
Set-ItemProperty -Path $clientPath -Name "Enabled" -Value 0 -Type DWord
Set-ItemProperty -Path $clientPath -Name "DisabledByDefault" -Value 1 -Type DWord
}
# R11: Désactiver NetBIOS over TCP/IP
$adapters = Get-WmiObject Win32_NetworkAdapterConfiguration | Where-Object { $_.IPEnabled -eq $true }
foreach ($adapter in $adapters) {
$adapter.SetTcpipNetbios(2) # Disable
}
# R12: Désactiver LLMNR
New-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\DNSClient" -Force | Out-Null
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\DNSClient" -Name "EnableMulticast" -Value 0 -Type DWord
# R13: Désactiver WPAD
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\WinHttpAutoProxySvc" -Name "Start" -Value 4 -Type DWord
# === AUDIT ET JOURNALISATION ===
# R14: Configurer la politique d'audit
auditpol /set /subcategory:"Logon" /success:enable /failure:enable
auditpol /set /subcategory:"Logoff" /success:enable
auditpol /set /subcategory:"Account Lockout" /success:enable /failure:enable
auditpol /set /subcategory:"Special Logon" /success:enable
auditpol /set /subcategory:"User Account Management" /success:enable /failure:enable
auditpol /set /subcategory:"Security Group Management" /success:enable /failure:enable
auditpol /set /subcategory:"Process Creation" /success:enable
auditpol /set /subcategory:"Audit Policy Change" /success:enable /failure:enable
auditpol /set /subcategory:"Sensitive Privilege Use" /success:enable /failure:enable
# R15: Command line dans les events 4688
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\Audit" `
-Name "ProcessCreationIncludeCmdLine_Enabled" -Value 1 -Type DWord
# R16: PowerShell Script Block Logging
New-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\PowerShell\ScriptBlockLogging" -Force | Out-Null
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\PowerShell\ScriptBlockLogging" `
-Name "EnableScriptBlockLogging" -Value 1 -Type DWord
# R17: Taille des journaux (100 MB minimum)
wevtutil sl Security /ms:104857600
wevtutil sl System /ms:104857600
wevtutil sl Application /ms:104857600
wevtutil sl "Microsoft-Windows-PowerShell/Operational" /ms:104857600
Active Directory (ANSSI-BP-065-AD)
# Recommandations spécifiques Active Directory
# R1: Niveaux fonctionnels récents
# Forêt et domaine en niveau Windows Server 2016+
# R2: Comptes protégés (Protected Users)
Add-ADGroupMember -Identity "Protected Users" -Members "HighPrivAdmin1","HighPrivAdmin2"
# R3: Délégation Kerberos contrainte
# Éviter la délégation non contrainte
# R4: LAPS (Local Administrator Password Solution)
# Déployer LAPS pour les mots de passe locaux
# R5: Désactiver NTLM progressivement
# GPO: Network security: Restrict NTLM
# R6: Tiering Model (3 niveaux)
# Tier 0: Contrôleurs de domaine, PKI
# Tier 1: Serveurs d'application
# Tier 2: Postes de travail
# R7: Admin bastion / PAW (Privileged Access Workstations)
# Postes dédiés pour l'administration
# R8: Surveiller les groupes privilégiés
$privilegedGroups = @(
"Domain Admins",
"Enterprise Admins",
"Schema Admins",
"Administrators",
"Account Operators",
"Backup Operators"
)
foreach ($group in $privilegedGroups) {
Get-ADGroupMember -Identity $group | Select-Object Name, SamAccountName
}
# R9: Auditer les modifications AD
# Activer l'audit sur les OUs et objets critiques
# R10: Durée de vie des tickets Kerberos
# GPO: Maximum lifetime for user ticket = 4 hours
# GPO: Maximum lifetime for service ticket = 4 hours
Recommandations Réseau
Architecture Sécurisée
Principes ANSSI:
Segmentation:
- Zones de confiance définies
- Filtrage inter-zones systématique
- DMZ pour les services exposés
- Zone d'administration dédiée
Cloisonnement:
- VLAN par type de flux
- Micro-segmentation si possible
- Pas de flux direct Internet → LAN
- Proxy pour les accès Web
Filtrage:
- Politique par défaut: DENY
- Règles explicites et documentées
- Inspection applicative (WAF, IDS)
- Logs de tous les flux bloqués
Architecture type:
┌─────────────────────────────────────────────────────────────┐
│ INTERNET │
└───────────────────────────┬─────────────────────────────────┘
│
┌─────────▼─────────┐
│ Firewall Edge │
│ (Filtrage N3/4) │
└─────────┬─────────┘
│
┌──────────────┼──────────────┐
│ │ │
┌──────▼──────┐ ┌─────▼─────┐ ┌──────▼──────┐
│ DMZ │ │ LAN │ │ Admin │
│ (Serveurs │ │(Utilisat.)│ │ (Bastion) │
│ publics) │ │ │ │ │
└─────────────┘ └───────────┘ └─────────────┘
VPN et Accès Distants
Recommandations VPN ANSSI:
Protocoles acceptés:
- IPsec IKEv2 (recommandé)
- OpenVPN (TLS 1.2+)
- WireGuard (évaluation en cours)
Interdit:
- PPTP
- L2TP sans IPsec
- SSLv3, TLS 1.0/1.1
Authentification:
- Certificats (PKI)
- MFA obligatoire
- Pas de PSK en production
Configuration:
- Perfect Forward Secrecy (PFS)
- Algorithmes approuvés (AES-256, SHA-256+)
- Renouvellement régulier des clés
- Logs des connexions
Recommandations Cloud
Sécurité Cloud (ANSSI)
Principes généraux:
Localisation:
- Données sensibles en France/UE
- Vérifier les clauses contractuelles
- Attention aux transferts hors UE (support, backup)
Responsabilité partagée:
- Comprendre le modèle (IaaS/PaaS/SaaS)
- Sécuriser sa partie (applications, données)
- Ne pas faire confiance aveugle au provider
Chiffrement:
- Données au repos chiffrées
- BYOK (Bring Your Own Key) si possible
- TLS pour tous les flux
Identité:
- MFA obligatoire pour les admins
- Fédération avec IdP interne si possible
- Principe du moindre privilège
Journalisation:
- Activer tous les logs cloud
- Centraliser vers SIEM interne
- Rétention selon exigences
Guides spécifiques ANSSI:
- Recommandations de sécurité pour AWS
- Recommandations de sécurité pour Azure
- Recommandations de sécurité pour GCP
- Guide SecNumCloud (qualification)
Veille et Alertes CERT-FR
S'abonner aux Alertes
CERT-FR (cert.ssi.gouv.fr):
Types de publications:
ALERTE: Vulnérabilité critique, action immédiate
AVIS: Vulnérabilité importante, action recommandée
BULLETIN: Information générale
IOC: Indicateurs de compromission
Abonnement:
- RSS: https://www.cert.ssi.gouv.fr/feed/
- Twitter: @ABORAT1ON
- Mailing list: inscription sur le site
Traitement:
Alerte:
- Évaluer l'impact immédiatement
- Appliquer les mesures dans les 24-72h
- Communiquer en interne
Avis:
- Planifier dans le cycle de patch
- Prioriser selon criticité (CVSS)
- Documenter les exceptions
Script de Veille Automatisée
#!/usr/bin/env python3
# veille_certfr.py - Surveillance des alertes CERT-FR
import feedparser
import smtplib
from email.mime.text import MIMEText
from datetime import datetime, timedelta
import json
import os
FEED_URL = "https://www.cert.ssi.gouv.fr/feed/"
STATE_FILE = "/var/lib/certfr/last_check.json"
SMTP_SERVER = "relay.corp.local"
RECIPIENTS = ["security@corp.com"]
def get_last_check():
if os.path.exists(STATE_FILE):
with open(STATE_FILE) as f:
return datetime.fromisoformat(json.load(f)["last_check"])
return datetime.now() - timedelta(days=1)
def save_last_check():
os.makedirs(os.path.dirname(STATE_FILE), exist_ok=True)
with open(STATE_FILE, "w") as f:
json.dump({"last_check": datetime.now().isoformat()}, f)
def check_feed():
feed = feedparser.parse(FEED_URL)
last_check = get_last_check()
new_alerts = []
for entry in feed.entries:
published = datetime(*entry.published_parsed[:6])
if published > last_check:
# Filtrer les ALERTES (critiques)
if "CERTFR-" in entry.title and "ALE" in entry.title:
new_alerts.append({
"title": entry.title,
"link": entry.link,
"summary": entry.summary[:500],
"published": published.isoformat()
})
return new_alerts
def send_notification(alerts):
if not alerts:
return
body = "Nouvelles alertes CERT-FR:\n\n"
for alert in alerts:
body += f"📢 {alert['title']}\n"
body += f" {alert['link']}\n"
body += f" {alert['summary']}\n\n"
msg = MIMEText(body)
msg["Subject"] = f"[CERT-FR] {len(alerts)} nouvelle(s) alerte(s)"
msg["From"] = "certfr-monitor@corp.local"
msg["To"] = ", ".join(RECIPIENTS)
with smtplib.SMTP(SMTP_SERVER) as server:
server.send_message(msg)
if __name__ == "__main__":
alerts = check_feed()
send_notification(alerts)
save_last_check()
Ressources et Liens
Guides Principaux
Systèmes:
Linux:
- BP-028: Recommandations GNU/Linux
- https://www.ssi.gouv.fr/guide/recommandations-de-securite-relatives-a-un-systeme-gnulinux/
Windows:
- BP-065: Recommandations Windows
- https://www.ssi.gouv.fr/guide/recommandations-de-securite-relatives-aux-environnements-windows/
Active Directory:
- Points de contrôle AD
- https://www.ssi.gouv.fr/guide/recommandations-de-securite-relatives-a-active-directory/
Réseau:
- Architecture sécurisée
- Cloisonnement réseau
- Filtrage et proxy
Cloud:
- SecNumCloud (qualification)
- Guides AWS/Azure/GCP
- Conteneurs et Kubernetes
Développement:
- Développement sécurisé
- Tests d'intrusion
- Audit de code
Cryptographie:
- RGS (Référentiel Général de Sécurité)
- Mécanismes cryptographiques
- PKI et certificats
Outils ANSSI
Outils disponibles:
CLIP OS:
- Système durci basé sur Linux
- https://clip-os.org/
OpenCTI:
- Plateforme de Threat Intelligence
- https://www.opencti.io/
DFIR ORC:
- Collecte forensique Windows
- https://dfir-orc.github.io/
Wookey:
- Token USB sécurisé
- https://wookey-project.github.io/
Bonnes Pratiques
Checklist ANSSI:
Fondamentaux:
- [ ] Guide d'hygiène appliqué
- [ ] Inventaire des actifs à jour
- [ ] Politique de mots de passe conforme
- [ ] MFA déployé (admins minimum)
Systèmes:
- [ ] OS et applications à jour
- [ ] Durcissement appliqué (Linux/Windows)
- [ ] Services inutiles désactivés
- [ ] Antivirus/EDR actif
Réseau:
- [ ] Segmentation en place
- [ ] Firewall configuré (deny par défaut)
- [ ] Protocoles obsolètes désactivés
- [ ] VPN sécurisé pour accès distants
Journalisation:
- [ ] Logs centralisés
- [ ] Events critiques capturés
- [ ] Rétention conforme
- [ ] Surveillance active
Continuité:
- [ ] Sauvegardes régulières
- [ ] Tests de restauration
- [ ] PCA/PRA documenté
- [ ] Procédure incidents
Veille:
- [ ] Abonnement CERT-FR
- [ ] Processus de patch management
- [ ] Audits réguliers
Voir aussi :
- SecNumCloud - Référentiel cloud
- SSH Hardening - Durcissement SSH
- Windows Defender - Protection Windows
- NXLog - Centralisation logs