Un “apt-history” fatto in casa
23 gennaio 2011 Lascia un commento
Ho un piccolo serverino dove gira ovviamente rkhunter e spesso accade che vengano segnalati alcuni warning su applicazioni aggiornate tramite apt.
Quindi vado a controllare tutti questi messaggi (perché fidarsi è bene ma non fidarsi è meglio) come ad esempio questo:
[06:51:08] /usr/bin/ldd [ Warning ]
[06:51:08] Warning: The file properties have changed:
ma come esser sicuri che effettivamente il warning si riferisce ad un pacchetto aggiornato di recente?
Per rispondere a questa domanda, mi sono costruito un piccolo script in BASH per poter consultare agevolmente la storia di tutti i pacchetti installati sulla macchina
#! /bin/bash
if [[ $# != 1 ]]
then
echo "usage: $(basename $0) package-name"
exit 1
fi
PKG="$1"
for LOG in $(ls -1t /var/log/dpkg.log*)
do
CAT="cat"
if echo $LOG | grep ".gz$" > /dev/null 2>&1
then
CAT="zcat"
fi
$CAT $LOG | grep -E "(install|remove|upgrade|rollback) ${PKG}"
done
in pratica, in base al node del pacchetto specificato come parametro di avvio, lo script va ad estrarre dai log di dpkg tutte le attività eseguite, filtrando solo quelle che mi interessano (installazione, upgrade, …)
Ovviamente rkhunter non visualizza il nome del pacchetto, ma il nomde del file, per trovare il pacchetto relativo, occorrerà utilizzare il comando dpkg -S (come già avevamo visto molto tempo fa), ad esempio:
dpkg -S /usr/bin/ldd
libc6: /usr/bin/ldd
Una volta controllati tutti i messaggi, posso lanciare in tutta tranquillità l’aggiornamento delle proprietà dei file su rkhunter:
sudo rkhunter --propupd
Spero possa tornare utile anche a voi










