Скрипт проверки целостности файла

Однажды на одном сервере понадобилось наблюдать за целостностью файла в котором были сделаны изменения и если кто либо выполнил обновление системы, то этот файл мог изменится и исправления нужно было внести повторно.
Обычно я использую Zabbix агент и Zabbix сервер для таких целей, но этот сервер был единичным и устанавливать на него Zabbix сервер нет смысла, по этому я написал простой скрипт:

if md5sum -c /scripts/md5/filename.md5; then
    echo "OK"
else
   (echo "Subject:File changed"; echo "File /dir/filename.txt changed on $HOSTNAME!";) | sendmail test@ixnfo.com
   md5sum /dir/filename.txt > /scripts/md5/filename.md5
fi

Добавим в /etc/crontab (например чтобы делалась проверка каждые 2 часа):

1 */2 * * * root /scripts/md5/script.sh >/dev/null 2>&1

В итоге если файл будет изменен, то скрипт отправит уведомление на указанный email, а также новая хэш сумма запишется в filename.md5, то есть уведомление на email придет только раз после изменения файла.

Смотрите также мои статьи:
Слежение за изменениями в файле через Zabbix
Использование и настройка CRON

Оставьте комментарий

Добавить комментарий