用 journalctl 审查 sudo 使用记录

通过过滤 systemd 日志里的 sudo 条目,查看谁用过 sudo 执行了什么命令、谁在尝试输错密码。

Linux日志sudo 提权安全中风险
运行 journalctl _COMM=sudo --since today,即可列出今天的 sudo 使用记录,包括认证失败的尝试。

01命令

命令
$ journalctl _COMM=sudo --since today

02作用说明

每次 sudo 调用都会写入 systemd 日志,journalctl 可以按任意字段过滤:_COMM=sudo 限定 sudo 这个程序,--since today(或 -S "2026-09-01")限定时间范围。每条记录会显示发起用户、终端和执行的命令;出现 "incorrect password attempts" 或 "user NOT in sudoers" 的行就是失败或未授权的尝试。在 Debian/Ubuntu 上,journalctl -q -g 'sudo|authentication failure' 还能顺带看到其他登录失败。

03风险

风险中风险
使用条件systemd journal (default on Ubuntu, Debian, Fedora, Arch)
!注意: 部分发行版默认日志重启后不保留——需要长期留痕请在 /etc/systemd/journald.conf 里设置 Storage=persistent;另外攻击者若拿到 root 是可以篡改日志的。

04撤销

✓无需撤销——该命令不会改变持久状态。

05来源

最后验证: 2026-09-18 · 分类: 安全与隐私

06相关方案