Как-то один раз, когда я только написал первую версию своего биллинга и установил его одному провайдеру, произошел прикольный случай с подменой правил в фаерволе.
В общем история была такого рода, один из сотрудников, имевший доступ к серверу в качестве обслуживающего персонала, сделал себе халявный интернет, за что был очень быстро наказан.
И помогли найти злоумышленника логи и вот такой простой скрипт, который своевременно сообщает о изменении конфигурационного файла.
# cat /usr/local/etc/scripts/ipfw_diff.sh #!/bin/sh #### DIR=/usr/local/etc/conf/ipfw CURR_RULES=${DIR}/ipfw.list PREV_RULES=${DIR}/ipfw.list.old IPFW=/sbin/ipfw if [ ! -f ${CURR_RULES} ]; then ${IPFW} list > ${CURR_RULES} exit fi cd ${DIR}/ mv ${CURR_RULES} ${PREV_RULES} ${IPFW} list | sed -e 's/^0-9]* //' > ${CURR_RULES} diff ${PREV_RULES} ${CURR_RULES} | mail -E -s "[diff ipfw rules]" support@provider.com |
Принцип работы, очень прост.
Создаем директорию в которой будут хранится конфиги для проверки
# mkdir -p /usr/local/etc/conf/ipfw |
Выставляем права на исполнение
# chmod +x /usr/local/etc/scripts/ipfw_diff.sh |
Ставим данный скрипт на отработку в cron
# cat /etc/crontab | grep ipfw_diff.sh */2 * * * * root /usr/local/etc/scripts/ipfw_diff.sh |
после чего скрипт сверяет правила фаервола и конфигурационный файл, при различии правил — шлет на указанный ящик изменившиеся правила.
Через пару минут меняем что то в правилах фаервола и проверяем почту ещё через пару минут..
Напоминаю всем копирующим мой контент о существовании закона "Об авторском праве".
В связи с этим, прошу во избежании конфликтов при копировании данного материала, ставить на него ссылку:
Также, вы можете отблагодарить меня переслав любую сумму на любой кошелек WebMoney, для поддержания данного ресурса. Или просто админу на пиво ;)
Кошельки для получения благодарности:
R386985788805
U234140473141
Z147712360455
Надто велосипедисто..
Не пробували etckeeper? він вміє робити репозиторій (нарп. git) і зберігати версії файлів.
Admin:
Колись використовували навіть Tripwire, але це було дуже давно.