Les mises à jour de sécurité corrigent des vulnérabilités connues (CVE) dans le noyau, les bibliothèques et les services installés. Sur un serveur en production, appliquer ces correctifs rapidement est la première ligne de défense. Chaque distribution fournit des outils pour cibler uniquement les mises à jour de sécurité, sans toucher aux montées de version fonctionnelles.
Ce que vous allez apprendre
Section intitulée « Ce que vous allez apprendre »- Distinguer les mises à jour de sécurité des mises à jour classiques
- Lister les correctifs de sécurité disponibles sur Debian/Ubuntu et RHEL/Fedora
- Appliquer uniquement les correctifs de sécurité
- Configurer les mises à jour automatiques (unattended-upgrades, dnf-automatic)
- Vérifier qu’un correctif a bien été installé
- Définir une politique de mise à jour adaptée à la production
Dans quel contexte ?
Section intitulée « Dans quel contexte ? »Les mises à jour de sécurité sont critiques dans toute infrastructure :
- Un CVE critique est publié pour OpenSSL ou le noyau — il faut appliquer le correctif dans les heures qui suivent
- Votre serveur web est exposé sur Internet — les paquets doivent être à jour pour réduire la surface d’attaque
- La conformité impose un délai maximal de patching (30 jours pour CIS, ANSSI…)
- Vous gérez une flotte de serveurs — il faut automatiser les correctifs de sécurité sans risquer des régressions
- Avant un audit, vous devez prouver que le système est à jour sur les CVE critiques
Mises à jour classiques vs sécurité
Section intitulée « Mises à jour classiques vs sécurité »| Type | Contenu | Risque de régression | Urgence |
|---|---|---|---|
| Sécurité | Correctifs CVE, patches ciblés | Faible (changements minimaux) | Haute |
| Bugfix | Corrections de bugs fonctionnels | Moyen | Moyenne |
| Feature | Nouvelles fonctionnalités, montées de version | Élevé | Basse |
En production, la stratégie recommandée est d’appliquer les mises à jour de sécurité automatiquement et de planifier les autres dans des fenêtres de maintenance.
Sur Debian / Ubuntu
Section intitulée « Sur Debian / Ubuntu »Mettre à jour le cache
Section intitulée « Mettre à jour le cache »sudo apt updateCette commande rafraîchit la liste des paquets disponibles. Elle ne modifie rien sur le système.
Lister les mises à jour de sécurité
Section intitulée « Lister les mises à jour de sécurité »sudo apt list --upgradable 2>/dev/null | grep -i securityPour un aperçu plus détaillé, utilisez apt-get avec le flag de simulation :
sudo apt-get -s dist-upgrade | grep "^Inst" | grep -i securiInst libssl3t64 [3.0.13-0ubuntu3.3] (3.0.13-0ubuntu3.4 Ubuntu:24.04/noble-security [amd64])Inst openssl [3.0.13-0ubuntu3.3] (3.0.13-0ubuntu3.4 Ubuntu:24.04/noble-security [amd64])Appliquer uniquement les mises à jour de sécurité
Section intitulée « Appliquer uniquement les mises à jour de sécurité »sudo apt-get upgrade -y -o Dir::Etc::SourceList=/etc/apt/sources.list \ -o Dir::Etc::SourceParts=/dev/null \ -o APT::Get::List-Cleanup=0Une méthode plus simple avec unattended-upgrades :
sudo unattended-upgrades --dry-run -d # simulationsudo unattended-upgrades # applicationConfigurer les mises à jour automatiques
Section intitulée « Configurer les mises à jour automatiques »-
Installer unattended-upgrades
Fenêtre de terminal sudo apt install unattended-upgrades apt-listchanges -
Activer la configuration automatique
Fenêtre de terminal sudo dpkg-reconfigure -plow unattended-upgradesRépondre Oui pour activer les mises à jour automatiques.
-
Vérifier la configuration
Fenêtre de terminal cat /etc/apt/apt.conf.d/50unattended-upgradesLes lignes clés :
Unattended-Upgrade::Allowed-Origins {"${distro_id}:${distro_codename}-security";};Unattended-Upgrade::Automatic-Reboot "false";Unattended-Upgrade::Mail "admin@example.com";Option Recommandation Allowed-OriginsGarder uniquement -securitypour la productionAutomatic-Rebootfalseen production (reboot planifié manuellement)MailConfigurer pour recevoir les rapports Remove-Unused-Dependenciestruepour nettoyer les paquets orphelins -
Vérifier que le timer est actif
Fenêtre de terminal systemctl status apt-daily-upgrade.timer
Vérifier l’historique des mises à jour
Section intitulée « Vérifier l’historique des mises à jour »# Dernières mises à jour appliquéesgrep "upgrade" /var/log/apt/history.log | tail -20
# Logs d'unattended-upgradescat /var/log/unattended-upgrades/unattended-upgrades.logSur RHEL / Fedora
Section intitulée « Sur RHEL / Fedora »Lister les mises à jour de sécurité
Section intitulée « Lister les mises à jour de sécurité »sudo dnf check-update --securityLast metadata expiration check: 0:45:12 ago on Wed Apr 16 08:00:00 2026.
openssl-libs.x86_64 1:3.0.7-27.el9_4 baseos-securitykernel.x86_64 5.14.0-427.20.1.el9 baseos-securityPour plus de détails sur les CVE corrigés :
sudo dnf updateinfo list securityRHSA-2026:1234 Important/Sec. openssl-libs-1:3.0.7-27.el9_4.x86_64RHSA-2026:1235 Critical/Sec. kernel-5.14.0-427.20.1.el9.x86_64Appliquer uniquement les mises à jour de sécurité
Section intitulée « Appliquer uniquement les mises à jour de sécurité »sudo dnf update --security -yPour appliquer uniquement les correctifs critiques :
sudo dnf update --security --sec-severity=Critical -y| Sévérité | Quand appliquer |
|---|---|
Critical | Immédiatement |
Important | Sous 48h |
Moderate | Fenêtre de maintenance planifiée |
Low | Prochaine maintenance |
Configurer les mises à jour automatiques
Section intitulée « Configurer les mises à jour automatiques »-
Installer dnf-automatic
Fenêtre de terminal sudo dnf install dnf-automatic -
Configurer pour appliquer uniquement la sécurité
Fenêtre de terminal sudo nano /etc/dnf/automatic.conf[commands]upgrade_type = securityapply_updates = yes[emitters]emit_via = email,stdio[email]email_from = root@localhostemail_to = admin@example.com -
Activer le timer
Fenêtre de terminal sudo systemctl enable --now dnf-automatic-install.timer -
Vérifier
Fenêtre de terminal systemctl status dnf-automatic-install.timer
Vérifier l’historique
Section intitulée « Vérifier l’historique »# Historique des mises à joursudo dnf history list
# Détail d'une transactionsudo dnf history info lastVérifier l’état de patch d’un système
Section intitulée « Vérifier l’état de patch d’un système »Un paquet spécifique est-il à jour ?
Section intitulée « Un paquet spécifique est-il à jour ? »apt-cache policy opensslopenssl: Installed: 3.0.13-0ubuntu3.4 Candidate: 3.0.13-0ubuntu3.4Si Installed = Candidate, le paquet est à jour.
dnf info opensslComparer la version installée avec dnf check-update openssl.
Le système nécessite-t-il un reboot ?
Section intitulée « Le système nécessite-t-il un reboot ? »Certaines mises à jour (noyau, glibc, systemd) nécessitent un redémarrage :
# Vérifier si un reboot est nécessaire[ -f /var/run/reboot-required ] && echo "Reboot nécessaire" || echo "OK"
# Voir quels paquets l'exigentcat /var/run/reboot-required.pkgs 2>/dev/null# Avec needs-restarting (paquet yum-utils ou dnf-utils)sudo needs-restarting -rPolitique de mise à jour en production
Section intitulée « Politique de mise à jour en production »| Environnement | Sécurité | Bugfix | Feature | Reboot |
|---|---|---|---|---|
| Dev/Test | Auto, immédiat | Auto | Auto | Auto |
| Staging | Auto, immédiat | Hebdomadaire | Mensuel | Planifié |
| Production | Auto (unattended) | Fenêtre maintenance | Après validation staging | Fenêtre maintenance |
Workflow recommandé pour la production
Section intitulée « Workflow recommandé pour la production »-
Mises à jour de sécurité automatiques — unattended-upgrades ou dnf-automatic en mode security uniquement
-
Vérification quotidienne — recevoir les rapports par email, vérifier les logs
-
Mises à jour complètes planifiées — fenêtre de maintenance hebdomadaire ou bimensuelle
-
Test en staging avant production — appliquer les mises à jour fonctionnelles en staging, valider, puis déployer en production
-
Reboot planifié — vérifier si un reboot est nécessaire, le planifier dans une fenêtre de maintenance
Dépannage
Section intitulée « Dépannage »| Symptôme | Cause probable | Solution |
|---|---|---|
apt update échoue | Dépôt inaccessible ou clé expirée | Vérifier /etc/apt/sources.list et apt-key list |
dnf check-update ne montre rien | Cache périmé | dnf clean all && dnf makecache |
| unattended-upgrades ne s’exécute pas | Timer désactivé | systemctl enable --now apt-daily-upgrade.timer |
| Mise à jour bloquée par un conflit | Paquet retenu ou dépendance cassée | apt --fix-broken install ou dnf distro-sync |
| Reboot nécessaire non détecté | Fichier indicateur absent | Vérifier /var/run/reboot-required ou needs-restarting -r |
| Mises à jour partiellement appliquées | Interruption pendant l’opération | dpkg --configure -a ou dnf distro-sync |
# Diagnostic rapide Debian/Ubuntuapt update 2>&1 | grep -i err # Erreurs de dépôtapt list --upgradable 2>/dev/null | wc -l # Mises à jour en attentecat /var/log/unattended-upgrades/*.log | tail # Dernière exécution auto[ -f /var/run/reboot-required ] && echo "REBOOT"
# Diagnostic rapide RHEL/Fedoradnf check-update --security 2>/dev/null | wc -l # Correctifs en attentesystemctl status dnf-automatic-install.timer # Timer actif ?sudo needs-restarting -r # Reboot nécessaire ?Bonnes pratiques
Section intitulée « Bonnes pratiques »- Activer les mises à jour automatiques de sécurité — c’est la première mesure de protection sur tout serveur
- Ne jamais retarder les correctifs Critical — les exploits sont souvent disponibles quelques jours après la publication du CVE
- Séparer sécurité et fonctionnel — appliquer la sécurité automatiquement, les mises à jour fonctionnelles en fenêtre planifiée
- Surveiller les rapports — configurer les emails et vérifier les logs régulièrement
- Planifier les reboots — les mises à jour noyau nécessitent un redémarrage, ne pas les repousser indéfiniment
- Tester en staging — les mises à jour fonctionnelles passent d’abord en staging avant la production
- Documenter la politique — délai de patching, responsable, procédure de rollback
À retenir
Section intitulée « À retenir »- Les mises à jour de sécurité corrigent des CVE — elles sont prioritaires et à faible risque de régression
- Sur Debian/Ubuntu :
unattended-upgradesapplique automatiquement les correctifs de sécurité - Sur RHEL/Fedora :
dnf update --securitycible uniquement les correctifs,dnf-automaticles automatise - Vérifier si un reboot est nécessaire après les mises à jour noyau (
/var/run/reboot-requiredouneeds-restarting -r) - En production : sécurité automatique + fonctionnel planifié + reboot en fenêtre de maintenance
dnf updateinfo list securityetapt-get -s dist-upgrade | grep securilistent les correctifs disponibles