Poichè devo gestire un elevato numero di VM *nix, mi è indispensabile riuscire ad automatizzare quanti più task possibili, tenendo sempre a mente tale regola:
a good sysadmin is a lazy oneUno di questi task riguarda le notifiche per gli aggiornamenti critici di sistema, soprattutto per ciò che concerne l’aspetto della cyber security.
A tal proposito, ho realizzato uno scrip bash in grado di verificare la presenza di eventuali aggiornamenti e di inviarmi successiva notifica via email. Starà a me, in un secondo momento, decidere quando e se installare gli aggiornamenti proposti.
I tool necessari al suo funzionamento sono 2, ovvero yum-security e mutt. Procediamo dunque con la loro installazione mediante yum:
[root@linuxbox ~]# yum install yum-plugin-security mutt -y
#!/bin/bash logfile=/var/log/checksecurity.log data=`date +%d-%m-%Y` destinatario=vostro.indirizzo@email.it echo "$data: Checking for security updates..." >> $logfile yum clean all yum list-security >> /root/checksec/tmp security=`cat /root/chcksec/tmp | grep security | grep -v Loaded` bugfix=`cat /root/checksec/tmp | grep bugfix` cve=`cat /root/checksec/tmp | grep cve` if [ -n "$security" ];then echo "$data: security updates available" > /root/checksec/out fi if [ -n "$bugfix" ];then echo "$data: bugfix updates available" >> /root/checksec/out fi if [ -n "$cve" ];then echo "$data: cve updates available" >> /root/checksec/out fi if [ -s /root/checksec/out ];then cat /root/checksec/tmp >> /root/checksec/out cat /root/checksec/out >> $logfile cat /root/checksec/out | mutt -s "GESTORE01: security, bugfix and cve system report" $destinatario rm /root/checksec/out else echo "$data: Nothing to do, exiting..." | tee -a $logfile fi rm /root/checksec/tmp exit 0;
Ci rimane solo rendere lo scrip eseguibile (chmod +x /root/checksec/checksecurity.sh) ed aggiungerlo a crontab.
Alla prossima.