Guide des technologies

Configurer les mises à jour de sécurité automatiques sur Ubuntu 16.04

8 min read Sécurité Mis à jour 08 Oct 2025
Mises à jour automatiques de sécurité Ubuntu 16.04
Mises à jour automatiques de sécurité Ubuntu 16.04

Important: appliquez les mises à jour de sécurité dans les 30 jours suivant leur publication et testez toute modification dans un environnement staging avant production.

Objectif principal et variantes de recherche

  • Objectif principal : automatiser les mises à jour de sécurité sur Ubuntu 16.04
  • Variantes pertinentes : mises à jour automatiques Ubuntu, unattended-upgrades Ubuntu, configuration apt auto-updates, notifications par e‑mail pour mises à jour, reboot automatique après mise à jour

Ce que nous allons faire

  1. Installer unattended-upgrades sur Ubuntu 16.04
  2. Configurer unattended-upgrades (origines, blacklist, options avancées)
  3. Activer les mises à jour automatiques périodiques
  4. Vérifier les paquets mis à jour et les notifications

Prérequis

  • Ubuntu 16.04 Server (ou environnement compatible)
  • Accès root ou sudo
  • Connexion SSH pour effectuer les opérations

Étape 1 — Installer unattended-upgrades sur Ubuntu 16.04

Connectez-vous au serveur en SSH :

ssh root@hakase-labs

Mettez à jour les informations de paquet et installez le paquet unattended-upgrades :

sudo apt update
sudo apt install unattended-upgrades

Après installation, la configuration se trouve dans le répertoire /etc/apt/apt.conf.d. Nous allons modifier le fichier principal 50unattended-upgrades.

Étape 2 — Configurer unattended-upgrades

Le dossier /etc/apt/apt.conf.d contient la plupart des fichiers de configuration relatifs à apt. Éditez le fichier 50unattended-upgrades :

cd /etc/apt/apt.conf.d/
vim 50unattended-upgrades

Définir le type de mise à jour

unattended-upgrades permet de restreindre les mises à jour aux origines souhaitées. Pour n’installer que les correctifs de sécurité sur Ubuntu 16.04, laissez uniquement la ligne sécurité dans le bloc Allowed-Origins. Exemple :

Unattended-Upgrade::Allowed-Origins {
 //      "${distro_id}:${distro_codename}";
         "${distro_id}:${distro_codename}-security";
         // Extended Security Maintenance; doesn't necessarily exist for
         // every release and this system may not have it installed, but if
         // available, the policy for updates is such that unattended-upgrades
         // should also install from here by default.
 //      "${distro_id}ESM:${distro_codename}";
 //      "${distro_id}:${distro_codename}-updates";
 //      "${distro_id}:${distro_codename}-proposed";
 //      "${distro_id}:${distro_codename}-backports";
};

Écran de configuration unattended-upgrades

Blacklist de paquets

Si certains paquets ne doivent jamais être mis à jour automatiquement (par exemple pour des contraintes applicatives), ajoutez-les à la blacklist :

Unattended-Upgrade::Package-Blacklist {
        "vim";
        "mysql-server";
        "mysql-client";
 //      "libc6";
 //      "libc6-dev";
 //      "libc6-i686";
};

Notez : la blacklist empêche uniquement unattended-upgrades de mettre à jour ces paquets. Si vous appliquez manuellement apt upgrade, les paquets blacklistés peuvent être mis à jour.

Options additionnelles utiles

Activez les fonctionnalités suivantes selon vos besoins : notification e‑mail, suppression automatique des dépendances inutiles, redémarrage automatique si nécessaire, et planification de l’heure du redémarrage.

Pour envoyer un e‑mail après chaque exécution, décommentez et ajustez :

Unattended-Upgrade::Mail "root";

Assurez-vous qu’un agent d’envoi de mail est installé (ex. sendmail, mailx). Exemple d’installation :

sudo apt install -y sendmail

Pour supprimer automatiquement les dépendances inutiles :

Unattended-Upgrade::Remove-Unused-Dependencies "true";

Pour redémarrer automatiquement si un redémarrage est nécessaire après mise à jour :

Unattended-Upgrade::Automatic-Reboot "true";

Vous pouvez choisir l’heure du redémarrage :

Unattended-Upgrade::Automatic-Reboot-Time "00:00";

Changez l’heure au format 24h selon vos fenêtres de maintenance.

Après avoir ajusté ces options, enregistrez et quittez l’éditeur.

Étape 3 — Activer les mises à jour automatiques périodiques

Éditez le fichier 20auto-upgrades pour définir la périodicité des actions apt :

cd /etc/apt/apt.conf.d/
vim 20auto-upgrades

Exemple de configuration minimale pour activer les mises à jour automatiques :

APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Download-Upgradeable-Packages "1";
APT::Periodic::AutocleanInterval "3";
APT::Periodic::Unattended-Upgrade "1";

Explications rapides :

  • Update-Package-Lists: 1 active la mise à jour de la liste des paquets (0 désactive).
  • Download-Upgradeable-Packages: 1 active le téléchargement des paquets téléchargeables.
  • AutocleanInterval: nombre de jours entre nettoyages automatiques (ici 3 jours).
  • Unattended-Upgrade: 1 active l’exécution d’unattended-upgrades.

En pratique, avec ces valeurs, le système vérifiera quotidiennement les mises à jour, téléchargera les paquets applicables et appliquera les mises à jour de sécurité automatiquement.

Étape 4 — Vérifier les paquets mis à jour

Journaux unattended-upgrades

Les logs sont situés dans /var/log/unattended-upgrades. Pour lister les fichiers :

cd /var/log/unattended-upgrades
ls -lah

Liste des fichiers journaux unattended-upgrades

Fichiers typiques :

  1. unattended-upgrades-dpkg.log — actions dpkg (installation, suppression)
  2. unattended-upgrades.log — rapport d’exécution, paquets mis à jour et erreurs éventuelles
  3. unattended-upgrades-shutdown.log — journal lié aux opérations de redémarrage

Notification sur la connexion SSH

Lorsque des mises à jour sont en attente ou viennent d’être appliquées, Ubuntu peut afficher une notification lors de la connexion SSH (motd). Exemple avant application :

Notification avant mise à jour

Et après l’application des mises à jour :

Notification après mise à jour des paquets de sécurité

Notification par e‑mail

Si vous avez activé Unattended-Upgrade::Mail, le rapport est envoyé à l’utilisateur indiqué (souvent root). Vérifiez la boîte locale :

cd /var/mail/
cat root

Le message contient la liste des paquets mis à jour, les paquets blacklistés et les éventuelles erreurs.

Vérifier le redémarrage

Pour lister les redémarrages récents :

last reboot

Résultat après mise à jour et reboot

Bonnes pratiques et recommandations

  • Testez la configuration sur un environnement de staging avant production.
  • Conservez des sauvegardes régulières (snapshots LVM/VM, backups applicatifs et de configuration).
  • Ne blacklistez pas des dépendances critiques sans analyse d’impact.
  • Configurez des fenêtres de maintenance si vous activez le redémarrage automatique.
  • Prévoyez des alertes (monitoring) qui détectent services morts après mise à jour.

Alternatives et approches complémentaires

  • apticron : notif par e‑mail des paquets disponibles (ne les applique pas automatiquement).
  • cron-apt : ancien outil pour automatiser apt via cron.
  • Landscape (Canonical) : solution commerciale pour gestion centralisée des mises à jour.
  • Canonical Livepatch Service : corrige les vulnérabilités du noyau sans redémarrage sur certaines versions prises en charge.

Choisissez l’outil selon votre taille d’infrastructure et exigences de conformité.

Playbook d’incident : rollback ou résolution en cas de mise à jour problématique

  1. Détecter l’incident : alertes monitoring, rapport d’erreur, mails de unattended-upgrades.
  2. Isolation rapide : restreindre accès réseau si nécessaire.
  3. Récupérer logs : /var/log/unattended-upgrades/unattended-upgrades-dpkg.log et syslog.
  4. Si un paquet spécifique casse le service : restaurez la version précédente (si disponible dans le cache) :
# Trouver dans le cache apt
ls -lah /var/cache/apt/archives | grep 
# Réinstaller une version spécifique
sudo dpkg -i /var/cache/apt/archives/.deb
  1. Si rollback impossible, restaurer snapshot VM ou backup applicatif.
  2. Bloquer le paquet fautif dans la blacklist et corriger la cause.
  3. Documenter l’incident et améliorer les tests automatisés.

Arbre de décision (Mermaid)

flowchart TD
  A[Démarrer: Notification de mise à jour] --> B{La mise à jour est-elle de sécurité ?}
  B -- Oui --> C[Appliquer via unattended-upgrades]
  B -- Non --> D[Reporter ou appliquer manuellement]
  C --> E{Service affecté après install ?}
  E -- Non --> F[Fin: tout OK]
  E -- Oui --> G[Tracer logs et alerter]
  G --> H{Rollback possible via cache/snapshot ?}
  H -- Oui --> I[Restaurer et bloquer le paquet]
  H -- Non --> J[Restaurer snapshot / restaurer backup]
  I --> K[Documenter et fermer l'incident]
  J --> K

Checklists par rôle

Administrateur système (avant activation) :

  • Sauvegarde complète (snapshot/backup) disponible
  • Environnement de staging prêt pour tests
  • Plan de maintenance et fenêtres convenues
  • Procédure de rollback documentée

Opérateur / Support 1st line :

  • Surveiller les e‑mails root pour rapports d’exécution
  • Consulter /var/log/unattended-upgrades en cas d’alerte
  • Vérifier l’état des services critiques après mise à jour

Responsable sécurité :

  • Définir politique de mise à jour (sécurité uniquement ou plus)
  • Valider blacklist ou exceptions
  • S’assurer de la rétention des logs pour audits

Critères d’acceptation

  • unattended-upgrades est installé et actif
  • Les logs dans /var/log/unattended-upgrades montrent des exécutions régulières
  • Les e‑mails de notification (si activés) sont reçus et lisibles
  • Les services critiques redémarrent correctement après mise à jour ou sont planifiés pour redémarrage

Matrice de risques et mesures d’atténuation

  • Risque : mise à jour casse un service critique
    • Atténuation : snapshots, tests staging, blacklist sélective
  • Risque : reboot automatique en dehors fenêtre de maintenance
    • Atténuation : définir Automatic-Reboot-Time et notifications préalables
  • Risque : perte de notifications par e‑mail
    • Atténuation : vérifier l’agent mail local, redirection vers une boîte supervisée

Tests et scénarios d’acceptation

  • Simuler une mise à jour de sécurité sur staging et vérifier que le service restaure son état.
  • Forcer l’installation d’un paquet blacklisté et vérifier qu’unattended-upgrades ne l’applique pas.
  • Vérifier que les logs contiennent des entrées d’exécution quotidiennes.
  • Tester l’envoi d’email en exécutant manuellement unattended-upgrades –debug.

Compatibilité et migration

  • Ubuntu 16.04 est une version plus ancienne ; si vous migrez vers 18.04 ou 20.04, vérifiez les changements de comportement d’unattended-upgrades et la disponibilité d’ESM (Extended Security Maintenance).
  • Pour des environnements critiques, privilégiez versions LTS plus récentes ou services supportés commercialement.

Sécurité et confidentialité

  • Unattended-upgrades télécharge et installe des paquets signés par les dépôts configurés. Ne configurez pas d’origines non sûres.
  • Les notifications e‑mail locales peuvent contenir des noms de paquets et chemins ; protégez l’accès à /var/mail et aux logs.

Mini-méthodologie pour déployer en production

  1. Préparer staging identique à la prod
  2. Appliquer configuration unattended-upgrades sur staging
  3. Exécuter plusieurs cycles, vérifier logs, tests d’application
  4. Valider la procédure de rollback
  5. Déployer en production hors fenêtre critique
  6. Surveiller pendant 72 heures et itérer

Glossaire (1 ligne)

  • unattended-upgrades : paquet Debian/Ubuntu automatisant l’installation de mises à jour.

Résumé

  • unattended-upgrades permet d’appliquer automatiquement les mises à jour de sécurité sur Ubuntu 16.04.
  • Configurez Allowed-Origins pour restreindre aux correctifs de sécurité, utilisez la blacklist pour exclure certains paquets, activez les notifications et le reboot automatique si nécessaire.
  • Testez en staging, conservez des snapshots et documentez la procédure de rollback.

Références

Auteur
Édition

Matériaux similaires

Accélérer le démarrage macOS avec DelayedLauncher
macOS

Accélérer le démarrage macOS avec DelayedLauncher

Compte invité sur Mac — guide pratique
macOS

Compte invité sur Mac — guide pratique

Télécharger images depuis Google Docs — 6 méthodes
Guides Techniques

Télécharger images depuis Google Docs — 6 méthodes

Chrome ne s'ouvre pas sous Windows — solutions
Dépannage

Chrome ne s'ouvre pas sous Windows — solutions

Récupérer l'icône Paramètres du menu Démarrer
Dépannage Windows

Récupérer l'icône Paramètres du menu Démarrer

Barres de défilement Windows : agrandir et personnaliser
Windows

Barres de défilement Windows : agrandir et personnaliser