Скажем, у меня был скрипт, который проверял местоположения Honeypot с использованием 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
И выход выглядел так:
http://pastebin.com/b4au4s6k
Где бы вы начали пытаться распознать вывод и, возможно, запустить какой -то ответ системой, если есть «неудачный»?
Я немного работал с Perl, пытаясь проанализировать файлы журналов, но мои попытки обычно не с треском провалились по той или иной причине.
Это может быть не подходящим способом сделать это, но я бы хотел поместить этот сценарий в Cronjob, который будет работать каждую минуту. У меня были некоторые парни, которые говорили мне, что инатифицируя работу или сценарий (я не знаком с этим) было бы лучше, чем делать это таким образом.
Какие-либо предложения?
--- редактировать
Я сделал еще один скрипт, чтобы вызвать сценарий выше и отправить вывод в файл. Затем новый скрипт запускает grep -q на «неудаче», и если он что -то поднимает, это звучит тревога (TBD, какая будет тревога).
#!/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"