Linux 系统管理和监控命令---- auditctl命令

文章目录

auditctl 是 Linux 审计系统(Audit System)的命令行工具,用于配置和管理审计规则。审计系统用于记录系统事件和用户活动,以便进行安全审计和合规性检查。 auditctl 命令可以动态地添加、删除和查看审计规则。

基本语法

sh 复制代码
auditctl [OPTIONS] [COMMAND]

常用参数和选项

添加规则
  • -a:添加规则。
    • -a always,exit:添加一个始终记录的规则。
    • -a never,exit:添加一个从不记录的规则。
删除规则
  • -d:删除规则。
    • -d always,exit:删除一个始终记录的规则。
    • -d never,exit:删除一个从不记录的规则。
查看规则
  • -l:列出当前的审计规则。
控制审计系统
  • -e:启用或禁用审计系统。
    • -e 0:禁用审计系统。
    • -e 1:启用审计系统。
    • -e 2:启用审计系统,并且在内核中锁定配置,防止进一步的更改。
其他选项
  • -w:监视文件或目录。
    • -w /path/to/file:监视指定的文件或目录。
  • -k:为规则添加一个键(key),用于标识和过滤审计记录。
    • -k keyname:为规则添加一个键名。

使用示例

启用审计系统
sh 复制代码
auditctl -e 1
禁用审计系统
sh 复制代码
auditctl -e 0
添加文件监视规则

监视 /etc/passwd 文件的所有访问和修改操作:

sh 复制代码
auditctl -w /etc/passwd -p rwxa -k passwd_changes
  • -w /etc/passwd:监视 /etc/passwd 文件。
  • -p rwxa:监视读(r)、写(w)、执行(x)和属性更改(a)操作。
  • -k passwd_changes:为规则添加键名 passwd_changes
删除文件监视规则

删除对 /etc/passwd 文件的监视规则:

sh 复制代码
auditctl -W /etc/passwd
添加系统调用规则

监视所有对 /etc/shadow 文件的打开操作:

sh 复制代码
auditctl -a always,exit -F path=/etc/shadow -F perm=wa -k shadow_changes
  • -a always,exit:添加一个始终记录的规则。
  • -F path=/etc/shadow:指定监视的文件路径。
  • -F perm=wa:监视写(w)和属性更改(a)操作。
  • -k shadow_changes:为规则添加键名 shadow_changes
删除系统调用规则

删除对 /etc/shadow 文件的监视规则:

sh 复制代码
auditctl -d always,exit -F path=/etc/shadow -F perm=wa -k shadow_changes
列出当前的审计规则
sh 复制代码
auditctl -l

结合 ausearchaureport

auditctl 配置的审计规则会生成审计日志,这些日志可以使用 ausearchaureport 命令进行查询和报告。

查询审计日志

使用 ausearch 查询特定键名的审计记录:

sh 复制代码
ausearch -k passwd_changes
生成审计报告

使用 aureport 生成审计报告:

sh 复制代码
aureport -k

总结

auditctl 是一个强大的工具,用于配置和管理 Linux 审计系统的规则。通过使用 auditctl,可以监视文件和目录的访问、系统调用以及其他重要的系统事件。结合 ausearchaureport,可以有效地查询和报告审计日志,帮助管理员进行安全审计和合规性检查。

相关推荐
换个昵称都难1 小时前
webrtc 音频模块FEC模块
网络·音视频·webrtc
Jason_chen1 小时前
Linux 6.2 音频机制深度解析:AI驱动的低延迟音频与零信任音频安全架构
linux
下午写HelloWorld1 小时前
Linux系统及Ubuntu常用指令
linux·ubuntu·操作系统
youngerwang2 小时前
【从搬运工到协处理器:网卡芯片架构、算法、验证与边缘演进深度剖析】
网络·算法·架构·芯片
lizhihai_992 小时前
股市学习心得-AI 产业链核心标的梳理清单
大数据·服务器·人工智能·科技·学习
weixin_523185323 小时前
Collections.unmodifiableMap详解:真的不可修改吗?
java·linux·前端
黄同学real3 小时前
解决 Visual Studio Web Deploy 远程发布报 401 未授权 (ERROR\_USER\_UNAUTHORIZED)
服务器
天天进步20153 小时前
Tunnelto 源码解析 #9:控制服务器设计:Warp、WebSocket、Ping/Pong 与连接保活
运维·服务器·websocket
凡人叶枫4 小时前
Effective C++ 条款04:确定对象被使用前已先被初始化
java·linux·开发语言·c++·嵌入式开发
云栖梦泽4 小时前
玩转RK3506SDK
linux·嵌入式硬件