Table of Contents

samhain

Configurazione con un server centrale su cui sono conservati tutti i db di checksum. Sui client non viene conservato nulla.

Note addizionali alla documentazione ufficiale

Installazione sul server centrale

Installazione sui client remoti

Esecuzione

Soluzione ufficiale

Esiste un programma, beltane, disponibile in versione free e a pagamento, che automatizza il compito dell’esecuzione remota di samhmain. La versione a pagamento non l’ho guardata, quella free mi sembra troppo complicata per le mie necessità. Ovviamente, penso, i discorsi sarebbero diversi nel caso di qualche migliaio di client da tenere sotto controllo...

Soluzione casalinga

Sul server centrale vengono lanciate da cron le esecuzioni sui client remoti via ssh. Per motivi di sicurezza ogni volta viene copiato anche l’eseguibile, compilato staticamente.

Ovviamente deve essere in funzione il meccanismo di login senza password, necessario peraltro anche per l’installazione.

Check

Questo è un esempio di script che lancia i controlli sulle macchine host1, host2 e host3

#!/bin/sh
#
DIR=/var/lib/yule/profiles/hosts
for n in host1 host2 host3
do
   scp $DIR/$n/samhain root@$n:prova
   ssh root@$n "/root/prova -t check"
   ssh root@$n "rm /root/prova"
done

Update

Per l’aggiornamento dei db delle firme ci sarebbe il comando update, che però, da una certa versione in poi, non sono più riuscito a far funzionare. La soluzione alternativa quindi è lanciare, sempre dal server ovviamente, uno script che ricrea il db ex-novo. Questo è un esempio:

#!/bin/sh
#
scp /var/lib/yule/profiles/hosts/host1.fi.infn.it/samhain root@host1.fi.infn.it:prova
ssh root@host1.fi.infn.it "/root/prova -t init"
ssh root@host1.fi.infn.it "rm /root/prova"
scp root@host1.fi.infn.it:/var/lib/samhain/data.samhain /var/lib/yule/file.host1.fi.infn.it
ssh root@host1.fi.infn.it "rm /var/lib/samhain/data.samhain"