每 6 小时扫描一次某些目录中的文件更改

每 6 小时扫描一次某些目录中的文件更改

我最近遇到了一些安全问题,并且由于我无法完全确定我的代码是否安全,因此我一直在考虑扫描一些文件夹,并在文件更改或新文件出现时收到通知。

有没有一个工具可以做到这一点?

答案1

你有 linux 审计系统,我不知道它是否默认安装在 debian 上,但你可以通过以下方式安装它:

$ sudo apt-get install auditd audispd-plugins

从那里您需要配置它,配置文件是/etc/audit/audit.rules,适合您目的的规则如下:

# Delete all previous rules
-D

# Set buffer size
-b 8192

# Make the configuration immutable -- reboot is required to change audit rules
-e 2

# Panic when a failure occurs
-f 2

# Generate at most 100 audit messages per second
-r 100

# -w: Watch a file or directory
# -p: Parameters to watch in this case are [w]rite and [a]ttributes,
#     you can also add [r]ead and e[x]ecute but I think those
#     are not needed in your case
# -k: An optional friendly name to facilitate searching the logs
-w /path/to/your/repo -p wa -k name_for_easy_searching

审计设置已准备就绪,重新启动 auditd 守护进程以加载新规则并确认它们确实已加载auditctl -l

现在您的存储库正在内核级别受到监视,因此任何更改都将被记录。

用于ausearch -k name_for_easy_searching获取对您的存储库所做的所有更改的列表。

从这里开始,您将学会如何解析日志、忽略用户所做的更改、发送电子邮件、设置 cron 作业来定期检查......

祝你好运。

答案2

另一个选择是AIDE(高级入侵检测环境)。它是免费的,您可以使用示例配置文件之一轻松开始。

相关内容