服务器执行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
相关推荐
csdn_aspnet1 天前
TCP/IP协议栈深度解析:从基石到前沿
服务器·网络·tcp/ip
lcreek1 天前
Linux信号机制详解:阻塞信号集与未决信号集
linux·操作系统·系统编程
shandianchengzi1 天前
【记录】Tailscale|部署 Tailscale 到 linux 主机或 Docker 上
linux·运维·docker·tailscale
John Song1 天前
Linux机器怎么查看进程内存占用情况
linux·运维·chrome
sichuanwuyi1 天前
Wydevops工具的价值分析
linux·微服务·架构·kubernetes·jenkins
持戒波罗蜜1 天前
ubuntu20解决intel wifi 驱动问题
linux·驱动开发·嵌入式硬件·ubuntu
不做无法实现的梦~1 天前
使用ros2来跑通mid360的驱动包
linux·嵌入式硬件·机器人·自动驾驶
梁辰兴1 天前
计算机网络基础:虚拟专用网
服务器·网络·计算机网络·vpn·虚拟专用网·计算机网络基础·梁辰兴
点云SLAM1 天前
C++内存泄漏检测之Windows 专用工具(CRT Debug、Dr.Memory)和Linux 专业工具(ASan 、heaptrack)
linux·c++·windows·asan·dr.memory·c++内存泄漏检测·c++内存管理
肉肉心很软1 天前
使用onlyoffice实现文件预览编辑 + Docker一键部署流程
运维·docker·容器