Debian 12 : Mises à Jour Automatiques (unattended-upgrades)
Introduction
Garder un serveur à jour est crucial pour la sécurité. Le paquet unattended-upgrades
sous Debian permet d'automatiser l'installation des mises à jour, en particulier celles de sécurité, sans intervention manuelle.
Ce tutoriel vous guide pour installer, configurer et vérifier son bon fonctionnement sur Debian 12.
Source originale des commandes : Linuxtricks.fr (adapté)
1. Installation du Paquet
Commencez par mettre à jour la liste des paquets et installez unattended-upgrades
:
sudo apt update
sudo apt install unattended-upgrades -y
2. Visualisation de la Configuration par Défaut
Le paquet est livré avec une configuration par défaut généralement bien adaptée. Vous pouvez la consulter :
cat /etc/apt/apt.conf.d/50unattended-upgrades
Analysez les différentes sections (Unattended-Upgrade::Allowed-Origins
, etc.) pour comprendre ce qui sera mis à jour automatiquement (par défaut, principalement les mises à jour de sécurité).
Pour ce guide de base, nous n'allons pas modifier ce fichier.
3. Activation des Mises à Jour Automatiques
Pour activer le processus, nous allons copier un fichier de configuration d'exemple et l'ajuster si nécessaire (bien que l'exemple soit souvent suffisant).
# Copie du fichier de configuration d'activation
sudo cp /usr/share/unattended-upgrades/20auto-upgrades /etc/apt/apt.conf.d/
# Vérification/Édition du fichier (normalement pas nécessaire pour une config de base)
sudo nano /etc/apt/apt.conf.d/20auto-upgrades
Assurez-vous que le contenu ressemble à ceci (les valeurs "1" activent les options) :
APT::Periodic::Update-Package-Lists "1"; // Met à jour la liste des paquets quotidiennement
APT::Periodic::Unattended-Upgrade "1"; // Lance l'installation des mises à jour automatiques quotidiennement
APT::Periodic::Download-Upgradeable-Packages "1"; // Télécharge les paquets en avance (optionnel)
APT::Periodic::AutocleanInterval "30"; // Nettoie le cache des paquets téléchargés tous les 30 jours
4. Tester la Configuration
Vous pouvez simuler une exécution pour voir quels paquets seraient mis à jour sans réellement les installer :
sudo unattended-upgrades --debug --dry-run
Analysez la sortie pour vérifier que le processus fonctionne comme attendu.
5. Consulter les Logs
Les actions effectuées par unattended-upgrades
sont enregistrées dans des fichiers journaux. C'est utile pour vérifier ce qui a été mis à jour :
# Log détaillé des actions dpkg (installation/suppression)
sudo cat /var/log/unattended-upgrades/unattended-upgrades-dpkg.log
# Log général du processus unattended-upgrades
sudo cat /var/log/unattended-upgrades/unattended-upgrades.log
Consultez ces logs régulièrement, surtout au début, pour vous assurer que tout se passe bien.
6. Vérification et Ajustement de la Planification (Optionnel)
Le paquet configure des timers `systemd` pour exécuter les tâches périodiquement. Par défaut, la mise à jour (`apt-daily-upgrade.timer`) se lance tôt le matin (vers 6h) avec un délai aléatoire. La vérification/téléchargement (`apt-daily.timer`) se fait deux fois par jour.
Vous pouvez visualiser la configuration actuelle :
systemctl cat apt-daily-upgrade.timer
systemctl cat apt-daily.timer
Si vous souhaitez modifier l'heure d'exécution (par exemple, pour que les mises à jour se fassent la nuit), vous pouvez créer un fichier d'override. **Attention :** Ne modifiez la planification que si vous avez une bonne raison.
Exemple pour forcer l'upgrade vers 2h du matin (avec 30min de délai aléatoire) :
# Ouvre l'éditeur pour créer un fichier d'override
sudo systemctl edit apt-daily-upgrade.timer
Collez ceci dans l'éditeur, puis sauvegardez :
[Timer]
# Efface les anciennes configurations OnCalendar avant d'appliquer la nouvelle
OnCalendar=
# Nouvelle planification : tous les jours à 2h00
OnCalendar=*-*-* 2:00
RandomizedDelaySec=30m
Persistent=true
Appliquez les changements :
sudo systemctl daemon-reload # Recharge la configuration systemd
sudo systemctl restart apt-daily-upgrade.timer # Redémarre le timer
systemctl list-timers apt-daily-upgrade.timer # Vérifie la prochaine exécution
Vous pouvez faire de même pour `apt-daily.timer` si nécessaire.
Conclusion
Votre serveur Debian 12 est maintenant configuré pour appliquer automatiquement les mises à jour importantes, améliorant ainsi sa sécurité et sa stabilité sans effort constant de votre part. N'oubliez pas de consulter les logs de temps en temps.