inotify 是 Linux 内核自 2.6.13 起提供的文件系统事件机制,可高效、细粒度地监听文件的创建、修改、删除、移动、属性变更等事件,避免轮询带来的高开销。常见 Web 场景包括:代码发布后的多机实时同步、日志文件的实时采集与联动(如安全处置)、以及 Web 目录的Webshell 与篡改监控与自动处置。
inotifywait -mrq -e create,delete,modify,close_write,attrib /data/www |
while read D E F; do
for ip in 192.168.1.3 192.168.1.4; do
rsync -ahqzt --exclude “*.swp” --exclude “runtime/” --delete /data/www/ www@$ip:/data/www/
done
done
建议将脚本 nohup … & 后台运行并纳入开机自启;目录规模巨大时优先 sersync。
安全监控与自动处置
方案:持续监听 /var/www/html 等 Web 目录,对新增或修改的脚本进行恶意特征检测(如 Webshell 特征、可疑函数),一旦命中即自动隔离/下线(如移入 quarantine、设置不可执行、告警通知)。