用 journalctl 审查 sudo 使用记录
通过过滤 systemd 日志里的 sudo 条目,查看谁用过 sudo 执行了什么命令、谁在尝试输错密码。
运行 journalctl _COMM=sudo --since today,即可列出今天的 sudo 使用记录,包括认证失败的尝试。
01命令
命令
$ journalctl _COMM=sudo --since today02作用说明
每次 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风险
!注意: 部分发行版默认日志重启后不保留——需要长期留痕请在 /etc/systemd/journald.conf 里设置 Storage=persistent;另外攻击者若拿到 root 是可以篡改日志的。
04撤销
✓无需撤销——该命令不会改变持久状态。
05来源
- journalctl(1) — Linux manual page依据: Documents filtering journal output by fields such as _COMM and by time with --since.
- journalctl(1) — Debian manual page依据: Reference for journalctl field matching such as _COMM= and time filtering with --since.
最后验证: 2026-09-18 · 分类: 安全与隐私