linux监控文件操作行为
使用 auditd 系统
auditd 是Linux系统的一个安全和审计系统,它能够跟踪系统上发生的安全相关事件。要使用 auditd 来监控文件,你需要首先确保 auditd 已经安装并且运行在你的系统上。
然后,你可以使用 auditctl 命令来添加监控规则:
sudo auditctl -w /path/to/your/file -p warx -k your-key
#-w 指定要监控的文件路径。
#-p 设置权限过滤,warx 分别代表写入(w)、属性更改(a)、读取(r)和执行(x)。
#-k 设置一个关键词,以便于后续通过这个关键词来搜索和过滤审计日志。
之后,你可以通过 ausearch 或 aureport 命令来查询和报告这个文件的审计日志:
sudo ausearch -k your-key
操作步骤
安装启动
确保 auditd 已安装并运行。
首先,确保你的系统上已经安装了 auditd。可以通过运行以下命令来检查 auditd 服务的状态:
sudo systemctl status auditd
如果服务未运行,使用以下命令启动并设置为开机启动:
sudo systemctl start auditd
sudo systemctl enable auditd
配置监控规则
需要添加监控规则来跟踪对 /etc/pam.d/common-A 和 /etc/lightdm/lightdm-B 文件的更改。由于系统重启后之前使用 auditctl 命令添加的规则不会保留,因此你需要将这些规则添加到配置文件中。
编辑 /etc/audit/rules.d/audit.rules 文件(或者如果这个文件不存在,可能需要编辑 /etc/audit/audit.rules),然后添加以下行:
-w /etc/pam.d/common-A -p wa -k auth-change
-w /etc/lightdm/lightdm-B -p wa -k autologin-change
-w 指定要监控的文件路径,-p wa 指定监控写入(w)和属性(a)更改,-k 后面跟随的是一个自定义的关键字,用于之后过滤和搜索审计日志。
应用并重启 auditd
修改配置文件后,重启 auditd 服务以应用新的监控规则:
sudo systemctl restart auditd
不想重启服务,可以使用 auditctl 工具加载新规则
sudo auditctl -R /etc/audit/rules.d/audit.rules
编辑的是 /etc/audit/audit.rules 文件
sudo auditctl -R /etc/audit/audit.rules
检查审计日志
在系统重启并且文件可能发生变化后,使用以下命令来检查相关的审计日志:
<