我目前正在使用奧塞克監視我的伺服器的文件變更。
我看到Monit也有文件更改警報,但我不知道如何配置它。我嘗試搜索,但找不到範例配置。
您能否給出一個範例配置,供 monit 監控是否有更改
- /ETC
- /var/www
- /垃圾桶
- /sbin
還有一種方法可以讓 monit 忽略更改.php和.js文件?
謝謝
答案1
若要檢查檔案(例如 sshd_config)的校驗和,您可以使用:
check file sshd_bin with path /usr/sbin/sshd
include /etc/monit/templates/rootbin
在 /etc/monit/templates/rootbin 中定義:
if changed checksum then alert
我還沒有對整個目錄進行測試,但你可以嘗試一下。
答案2
使用 cron 運行的小腳本
#!/bin/bash
ulimit -t 20
checkdir="/bin /sbin"
filedb="/var/tmp/permsecdb"
email="[email protected]"
out=$(
exec 2>&1
umask 266
find $checkdir -type f -printf "%m\t" -exec md5sum {} \; >$filedb.tmp
diff $filedb $filedb.tmp
mv -f $filedb.tmp $filedb
)
if [ "$out" ];then
(date; echo; echo "$out") | mail -s "Change permsec `hostname`" $email fi
腳本建立 md5 基礎,並在下次呼叫中進行比較
作者: https://kmsvsr.ru/2014/04/09/monitoring-izmenenij-fajlov-v-linux/