Controllo dell'integrità di sistema con Integrit
Il pacchetto Integrit salva lo stato di sistema corrente e poi quotidianamente lo confronta con la nuova situazione, informando di eventuali cambiamenti.
Installazione
sudo apt-get install integrit
Configurazione
- Editare il file /etc/integrit/integrit.conf.
Solitamente è sufficiente inserire solo i percorsi/file da ignorare, ad esempio:
cat | sudo tee /etc/integrit/integrit.conf > /dev/null <<EOFile root=/ known=/var/lib/integrit/known.cdb current=/var/lib/integrit/current.cdb !/dev/ptmx !/dev/pts !/etc/network/run !/etc/hotplug/.run !/files !/lost+found !/mnt !/proc !/sys !/tmp !/usr/local/uvscan/datfiles !/var/backups !/var/cache/apt !/var/cache/locate $/var/cache/man/local SIpLugZAMC $/var/cache/man/oldlocal SIpLugZAMC $/var/cache/man SIpLugZAMC !/var/lib/amavis !/var/lib/apt/lists !/var/lib/clamav $/var/lib/dpkg/lock SIpLugZAMC !/var/lib/integrit $/var/lib/logrotate/status SIpLugZAMC !/var/lib/urandom !/var/lib/ntp !/var/lib/postgrey !/var/lib/cron-apt !/var/log SIpLugZAMC !/var/run !/var/spool/postfix/active !/var/spool/postfix/bounce !/var/spool/postfix/defer !/var/spool/postfix/deferred !/var/spool/postfix/flush !/var/spool/postfix/incoming !/var/spool/postfix/maildrop !/var/spool/postfix/public/pickup !/var/spool/postfix/public/qmgr !/var/spool/squid !/var/home/mnt.vvngrl !/home/mnt.vvngrl !/var/lib/apt !/var/lib/dpkg !/var/lib/php4 !/var/lib/mysql !/var/lib/backuppc !/var/lib/integrit/current.cdb !/var/spool/mcafee-virusscan/datfiles !/dev !/var/www/munin !/var/cache/samba !/var/lib/munin EOFile
Per il significato dei simboli ! $ o le stringhe poste dopo il percorso, si veda /usr/share/doc/integrit/README o il sito http://integrit.sf.net.
- Editare il file /etc/integrit/integrit.debian.conf inserendo i valori necessari per gli alert email.
- Eseguire come root lo script quotidiano manualmente. Questo crea il database iniziale:
sudo /etc/cron.daily/integrit
Validazione di uno stato
A seguito di un messaggio di cambiamenti, qualora vengano accettati, cioè se sono frutto di una modifica volontaria (configurazione, aggiornamento, o installazione di nuovi pacchetti..), è necessario ricreare uno stato valido:
cat | sudo tee /usr/local/sbin/integrit-stamp > /dev/null <<EOFile #!/bin/bash echo "Updating Integrit Database" sudo rm -vf /var/lib/integrit/*.cdb sudo /etc/cron.daily/integrit EOFile
Automatizzazione dell'aggiornamento del database ad ogni apt-get
Se si vuole eseguire un update del database ad ogni upgrade o installazione di pacchetto, creare il seguente files:
cat | sudo tee /etc/apt/ apt.conf.d 99-integrit > /dev/null <<EOFile
// Update integrit database
DPkg
{
Post-Invoke {"if [ -x /usr/local/sbin/integrit-stamp ] && [ $(ps w -p "$PPID" | grep -c 'upgrade\|install\|dist-upgrade') != 1 ]; then /usr/local/sbin/integrit-stamp; else exit 0; fi";};
};
EOFile