服务器执行rm命令时自动记录到审计日志中

目的

当在服务器上执行类似于 rm 命令时,自动记录该命令执行的时间,在哪里执行的,删除的什么文件,记录到审计日志中,能够查找到某些文件丢失原因

配置

bash 复制代码
# 需要root权限,sudo不行,这里假设执行 rm
auditctl -w /usr/bin/rm -p x -k rm-logs
auditctl -w /usr/local/bin/rm -p x -k rm-logs
auditctl -w /usr/bin/touch -p x -k touch-log

# 查看配置的审计规则
auditctl -l

# -w:表示要监视的文件或目录路径。在这种情况下,/bin/rm 是要监视的可执行文件的路径。
# /usr/bin/rm:指定要监视的文件或目录的路径。在这里,它是rm命令的完整路径。
# -p x:表示要监视的操作权限。在这种情况下,x 表示执行权限,即当 rm 命令被执行时触发审计规则。
# -k rm-logs:指定生成的审计事件的键名(key name)。这个键名用于在审计日志中标识与此规则相关的事件。在这里,rm-logs 是键名。

测试

测试root账号执行删除命令

bash 复制代码
# 用root账号,先创建一个文件
touch test.txt
# 再删除一个文件
rm -f test.txt
# 查看审计日志
vim /var/log/audit/audit.log

测试普通账号执行删除命令

bash 复制代码
# 切换普通用户
su - test
# 创建一个文件夹
mkdir aaaaaa
# 删除一个文件夹
rm -rf aaaaaaa
# 查看审计日志
sudo /var/log/audit/audit.log
相关推荐
自由鬼4 分钟前
正向代理服务器Squid:功能、架构、部署与应用深度解析
java·运维·服务器·程序人生·安全·架构·代理
许白掰10 分钟前
Linux入门篇学习——Linux 编写第一个自己的命令
linux·运维·数据库·嵌入式硬件·学习
qinyia13 分钟前
Wisdom SSH:探索AI助手在复杂运维任务中的卓越表现
运维·人工智能·ssh
打不了嗝 ᥬ᭄16 分钟前
文件系统----底层架构
linux·运维·数据库
cui_win30 分钟前
【网络】Linux 内核优化实战 - net.ipv4.tcp_keepalive_time
linux·网络·tcp/ip
kfepiza1 小时前
Linux创建网桥Bridge的方法有哪些? 笔记250710
linux·tcp/ip
12点一刻1 小时前
搭建自动化工作流:探寻解放双手的有效方案(1)
运维·人工智能·自动化·deepseek
Hi202402171 小时前
自动化Trae Apollo参数解释的批量获取
运维·自动化·trae
sky丶Mamba2 小时前
CMD,PowerShell、Linux/MAC设置环境变量
linux·运维·macos
运维开发王义杰2 小时前
打破技术债困境:从“保持现状”到成为变革的推动者
运维·职场和发展