Script d’actualització per a Debian
En el món dels servidors, la seguretat és un petit cuc que sempre ens va mossegant però que no es pot pas obviar.
En el cas d’un servidor Debian és interessant tenir sempre instal·lada la darrera revisió del paquet que tinguem al nostre sistema. Però per fer tal de tenir el nostre sistema actualitzat fins el darrer moment, ho podem fer de dues maneres:
- Entrant a cada instant via SSH i fent un
apt-get upgrade. - O bé mecanitzant aquest procés de forma que ho fagi un script per nosaltres.
En aquest petit article us exposaré l’script que faig servir jo per tal de que m’informi en quan hi hagi una actualització per al meu sistema. Aquesta meravella és cortesia de n’Albert, un membre de Catux i ex-company de feina el qual em va introduir en el meravellós món dels servidors linux.
Doncs l’script en sí és el següent:
#!/bin/bash
# script que mira si hi han actualitzacions i si n'hi ha
# envia un correu
HOSTNAME="Informe del servidor"
MAIL_FROM="elmeucorreu@domini.com"
#mirem si hi ha actualitzacions
if [ "$1" = "-v" ]
then
echo "Busquem actualitzacions al sistema..."
/usr/bin/apt-get update
echo "Mirem si actualitzariem algo..."
else
/usr/bin/apt-get update 1> /dev/null
fi
tmp=$( apt-get upgrade -s | grep '0 upgraded')
#si n'hi han enviem un mail amb els paquets a actualitzar
if [ ! -n "$tmp" ]
then
if [ "$1" = "-v" ]
then
echo "Enviant mail..."
fi
echo "$(apt-get upgrade -s)" | /usr/bin/mail -s "[$HOSTNAME]" $MAIL_FROM
else
if [ "$1" = "-v" ]
then
echo "Res a actualitzar!"
fi
fi
Tot seguit comentarem mínimament el que fa aquest script:
- Primer de tot actualitza els repositoris.
- Tot seguit mira si hi ha alguna actualització per al nostre sistema.
- En cas que n’hi hagi, ens envia un correu al destinatari que li hem dit a la constant
MAIL_FROMamb l’assumpte deHOSTNAME.
Val a dir en aquest punt que per tal de que funcioni aquest script, cal que la nostra màquina sigui capaç de poder enviar correus (instal·lem el paquet mailx).
Igualment, per tal d’automatitzar el sistema, aprofitarem les tasques automàtiques de Debian anomenades crons. Depenent de la freqüència amb que vulguem que es llanci l’script, el posarem en una carpeta o una altra: /etc/cron.hourly/, /etc/cron.daily/, /etc/cron.weekly/ o /etc/cron.monthly/.
Jo, personalment, crec que amb que es llanci un cop al dia, n’hi ha prou per a un servidor domèstic no crític.
Una vegada que hem creat l’script al directori que vulguem, li haurem de canviar els permisos per tal que tingui permisos d’execució.
Doncs si tot això s’ha fet de forma correcte, ja tindrem les nostres actualitzacions automatitzades i en cas que n’hi hagi, rebrem un correu a la nostra conta per tal d’informar-nos.
S’agrairan qualsevol tipus de suggeriment i/o correcció en aquest article per tal de millorar el coneixement dels usuaris que consultin aquesta bitàcola i del propi creador d’aquesta.