Arxius

Automatitzar les actualitzacions de seguretat en Debian stable

Escrit al 2004-11-01 00:00:00 per whats_up

Avui (a causa d'un comentari ;P) m'he posat a escriure aquest mini article per explicar com es pot fer per automatitzar força les actualitzacions de seguretat sense despreocupar-nos-en del tot.

És molt senzill, però també força útil. Espero que us faci servei!

PD: (Aviam si m'animo a fer més articles...)

Una cosa molt important en qualsevol servidor, és mantenir-lo al dia pel que fa a les actualitzacions de seguretat. La Debian estable ens prové d'un servidor destinat íntegrament a aquest ús.

Per afegir a les nostres fonts aquest servidor, hem d'afegir la següent línia a l'arxiu /etc/apt/sources.list

deb http://security.debian.org/ stable/updates main contrib non-free

Un cop fet això, haurem d'actualitzar la base de dades del apt.

apt-get update

I llavors, un cop ha acabat, només ens quedarà fer un upgrade per tal d'actualitzar tots els paquets als que s'ha detectat i solucionat un problema de seguretat.

apt-get upgrade

Fins aquí tenim una manera de tenir els nostres paquets actualitzats al 100%, ara només ens falta fer-ho cada dia. Ho hem d'automatitzar!

Tenim dues opcions: instal·lar el paquet cron-apt que el què fa és descarregar-se les noves actualitzacions (es pot fer que les instal·li però no és recomanable) i ens envia un correu en cas d'error, o fer-nos una seqüència que faci tota la feina per nosaltres.

Jo he optat per fer una seqüència i ,ja de pas, he afegit que tant si hi ha error com si no, enviï un correu per informar que hi ha actualitzacions i així anar a actualitzar els paquets. Aquesta seqüència té en compte de no enviar cap correu en cas que tots els paquets amb possibles actualitzacions tinguin marcat l'estat hold.

Aquí el teniu:

***************************************************************************
#!/bin/bash
# seqüència que mira si hi ha actualitzacions i si n'hi ha, envia un correu al root

HOSTNAME=$(hostname)
MAIL_FROM="root"

#mirem si hi ha actualitzacions
if [ "$1" = "-v" ]
then
echo "Busquem actualitzacions al sistema..."
/usr/bin/apt-get update
echo "Mirem si tenim alguna cosa per actualitzar..."
else
/usr/bin/apt-get update 1> /dev/null
fi

tmp=$( apt-get upgrade -s | grep '0 packages upgraded')


#si n'hi ha enviem un correu amb els paquets a actualitzar
if [ ! -n "$tmp" ]
then

if [ "$1" = "-v" ]
then
echo "Enviant correu..."
fi

echo "$(apt-get upgrade -s)" | /usr/bin/mail -s "[$HOSTNAME]: Hi ha actualitzacions disponibles" $MAIL_FROM
else
if [ "$1" = "-v" ]
then
echo "Res a actualitzar!"
fi
fi

***************************************************************************


Si afegim aquesta seqüència a /etc/cron.daily/ aconseguirem que cada dia comprovi si hi ha actualitzacions i, en cas d'haver-n'hi, enviarà un correu avisant de quins són els paquets que tenen actualització. Un cop fet això només caldrà esperar a rebre un correu avisant-nos que existeixen actualitzacions, i llavors anar al servidor a instal·lar-les.

Espero que us sigui útil!

Categories: Articles, Servidor


Comentaris

  • Sense comentaris
Arxius