====== Mises à jour de sécurité ======
Gestion des mises à jour de sécurité (via apt, apt-get), manuellement ou automatiquement. Sous Debian, Mint, Ubuntu...
Avant propos, il existe un paquet qui gère les mises à jour de sécurité : [[https://www.unix.com/man-page/linux/8/unattended-upgrade/|unattended-upgrade]], mais ici il sera présenté comment le faire avec **apt** ou **apt-get** puisque ces outils permettent de le faire.
Comme on parle de Debian et de Mint, faire attention au prompt
**#** = Commande admin sous Mint et Ubuntu à préfixer d'un **sudo**
Sera d’abord présenté le processus manuel, puis son automatisation via cron-apt.
===== Installer manuellement les mises à jour de sécurité sur un système DEBIAN, Mint, Ubuntu avec apt-get ou apt... =====
Si en retour, vous avez un message “**No packages found that can be upgraded unattended and no pending auto-removals**”, c'est que le système est à jour, aucune mise à jour de sécurité n'a été trouvée.
==== Via apt-get, tout simplement ====
Pas de paquet tierce à installer. On travaille directement avec **apt-get** et **grep** pour filtrer les retours
Recherche des mises à jour de sécurité
# apt-get -s dist-upgrade | grep "^Inst" | grep -i securi
Pour installer ces mises à jour, on utilisera en plus l'utilitaire **xargs**
# apt-get -s dist-upgrade | grep "^Inst" | grep -i securi | awk -F " " {'print $2'} | xargs apt-get install
==== Via apt ====
La recherche
# apt list --upgradable | grep -e "-security"
# L'installation
# apt list --upgradable | grep -e "-security" | awk -F "/" '{print $1}' | xargs apt install
===== Automatisation des mises à jour de sécurité =====
Dans un premier temps, installer **cron-apt**
# apt-get install cron-apt
Récupérer dans les repo d’apt les entrées des mises à jour de sécurité uniquement
$ find /etc/apt -type f -name '*.list' | xargs cat | grep -v \"^#\" | grep security
A partir de cela, on va créer un fichier spécifique pour **apt** ne contenant que les mises à jour de sécurité.
# find /etc/apt -type f -name '*.list' | xargs cat | grep -v \"^#\" | grep security > /etc/apt/sources.list.d/security-updates-only.list
On va positionner un **cron** d’apt dessus.
Créer dans : **__/etc/cron-apt/action.d/__** un fichier se nommant : **__5-security-update-only__**
Avec le contenu suivant :
upgrade -y -o APT::Get::Show-Upgraded=true
OPTIONS="-o quiet=1 -o APT::Get::List-Cleanup=false
-o Dir::Etc::SourceList=/etc/apt/sources.list.d/security-updates-only.list
-o Dir::Etc::SourceParts=\"/dev/null\"
MAILTO=\"vote-mail@ici.ext\"
MAILON=\"always\""
Et hop, c’est joué !
Pour modifier l’horaire des mises à jour, ça se passe dans /etc/cron.d/cron-apt :
# Every night at 4 o'clock.
0 4 * * * root test -x /usr/sbin/cron-apt && /usr/sbin/cron-apt
A modifier si vous souhaitez un horaire ou une fréquence différents