Domanda

Supponiamo che avessi uno script che controllava le posizioni degli honeypot utilizzando md5sum.

#!/bin/bash
#cryptocheck.sh
#Designed to check md5 CRC's of honeypot files located throughout the filesystem.
#Must develop file with specific hashes and create crypto.chk using following command:
#/opt/bin/md5sum * > crypto.chk
#After creating file, copy honeypot folder out to specific folders

locations=("/share/ConfData" "/share/ConfData/Archive" "/share/ConfData/Application"
"/share/ConfData/Graphics")

for i in "${locations[@]}"
do
        cd "$i/aaaCryptoAudit"
        /opt/bin/md5sum -c /share/homes/admin/crypto.chk
done

E l'output era simile a questo:

http://pastebin.com/b4AU4s6k

Da dove inizieresti per provare a riconoscere l'output e magari innescare una sorta di risposta da parte del sistema in caso di "FAILED"?

Ho già lavorato un po' con PERL cercando di analizzare i file di registro, ma i miei tentativi in ​​genere fallivano miseramente per un motivo o per l'altro.

Questo potrebbe non essere il modo corretto di procedere, ma vorrei inserire questo script in un cronjob che venga eseguito ogni minuto.Alcuni ragazzi mi hanno detto che un lavoro o uno script inotify (non ne ho familiarità) sarebbe stato meglio che farlo in questo modo.

Eventuali suggerimenti?

--- modificare

Ho creato un altro script per chiamare lo script sopra e inviare l'output a un file.Il nuovo script esegue quindi un grep -q su 'FAILED' e se rileva qualcosa, suona l'allarme (da sapere quale sarà l'allarme).

#!/bin/bash
#cryptocheckinit.sh
#

#rm /share/homes/admin/cryptoalert.warn
/share/homes/admin/cryptocheck.sh > /share/homes/admin/cryptoalert.warn
grep -q "FAILED" /share/homes/admin/cryptoalert.warn && echo "LIGHT THE SIGNAL FIRES"
È stato utile?

Soluzione

Utilizzo:

if ! /opt/bin/md5sum -c /share/homes/admin/crypto.chk
then 
    # Do something
fi

Oppure convoglia l'output del ciclo:

for i in "${locations[@]}"
do
        cd "$i/aaaCryptoAudit"
        /opt/bin/md5sum -c /share/homes/admin/crypto.chk
done | grep -q FAILED && echo "LIGHT THE SIGNAL FIRES"
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top