Linux系统之ausearch命令详解

ausearch 是 Linux 审计系统中的一个命令行工具,用于在审计日志中搜索特定类型的事件。它允许用户根据多种条件(如时间、UID、GID、系统调用、文件路径等)来过滤和检索审计记录。这对于安全审计、故障排查以及满足合规性要求非常有用。

基本语法

ausearch [选项]
常用选项
  • -m, --message TYPE: 根据消息类型(例如 USER_LOGIN, USER_LOGOUT, CONFIG_CHANGE 等)搜索事件。
  • -ts, --start [YYYY-MM-DD] [HH:MM:SS]: 指定开始时间,只返回该时间之后的事件。
  • -te, --end [YYYY-MM-DD] [HH:MM:SS]: 指定结束时间,只返回该时间之前的事件。
  • -sc, --syscall SYSCALL: 根据系统调用名称或编号搜索事件。
  • -f, --file FILENAME: 根据文件名搜索与之相关的所有事件。
  • -p, --pid PID: 根据进程 ID 查找事件。
  • -u, --uid UID: 根据用户 ID 查找事件。
  • -i, --interpret: 将 UID/GID 转换为对应的用户名/组名,使输出更加易读。
  • -k, --key KEYWORD: 根据审计规则中设置的关键词搜索事件。
  • -c, --comm COMM: 根据可执行文件名搜索事件。
  • -sv, --success VALUE: 过滤成功(yes)或失败(no)的事件。

示例

  1. 基于文件路径查找事件:
    如果想查看有关 /etc/passwd 文件的所有访问活动:

    sudo ausearch -f /etc/passwd
    
  2. 查找特定时间段内的事件:
    查看从 2025 年 3 月 1 日早上 9 点到当前的所有审计事件:

    sudo ausearch -ts 2025-03-01 09:00:00
    

    若要限定到具体的时间段,可以添加 -te 参数:

    sudo ausearch -ts 2025-03-01 09:00:00 -te 2025-03-01 17:00:00
    
  3. 基于系统调用查找事件:
    查找所有 execve 系统调用的事件:

    sudo ausearch -sc execve
    
  4. 基于用户 ID 查找事件:
    查找用户 ID 为 1000 的所有事件:

    sudo ausearch -u 1000
    
  5. 基于关键词查找事件:
    如果知道某些审计规则使用了特定的关键词(例如 “password_change”),可以通过以下命令查找这些事件:

    sudo ausearch -k password_change
    
  6. 提高输出的可读性:
    使用 -i 选项将 UID 和 GID 转换为用户名和组名,使得报告更容易理解:

    sudo ausearch -f /etc/shadow -i
    
  7. 查找成功的登录尝试:
    查找所有成功的用户登录尝试:

    sudo ausearch -m USER_AUTH -sv yes
    
  8. 查找特定程序的执行情况:
    查找所有运行 /usr/bin/sudo 的事件:

    sudo ausearch -c sudo
    
  9. 将 UID 和 GID 转换为用户名和组名

    sudo ausearch -ui 1000 -i
    
    • 搜索用户 ID 为 1000 的事件,并将 UID 和 GID 转换为用户名和组名。
  10. 指定审计日志文件

sudo ausearch -if /var/log/audit/audit.log.1
  • /var/log/audit/audit.log.1 文件中搜索事件。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值