首页/安全/取证与溯源速查/Linux 认证日志速查
日志溯源53 条

Linux 认证日志速查

认证与 sudo 记录集中在 /var/log/auth.log(Debian 系)或 /var/log/secure(RHEL 系):登录成败、来源、执行命令的关键字段都在这里。

取证与溯源速查安全更新于 2026-10-13

Linux 认证日志速查是什么

Linux 的认证与提权记录集中在两个位置:Debian/Ubuntu 系在 /var/log/auth.log,RHEL/CentOS 系在 /var/log/secure。SSH 登录成败与来源、sudo 执行的具体命令、su 切换、PAM 报错都写在这里,是主机侧最直接的账号行为证据,也是判断「谁在什么时候用什么方式进来」的首选入口。

基本信息

常见路径/var/log/auth.log(Debian 系)、/var/log/secure(RHEL 系)
记录内容SSH 登录成败、sudo 与 su、PAM 报错、会话起止
时间口径本地时区,跨主机对照前先统一
轮转文件auth.log.1、auth.log.2.gz 等同目录归档

典型使用场景

  • 排查异常登录的时间、来源与账号
  • 确认爆破是否得手:失败序列与成功记录配对
  • 审计提权动作:哪个账号在什么时间执行了什么命令
  • 核实离职或外包账号是否仍在被使用
  • 判断日志是否被截断或清理(配合清理痕迹识别)
  • 核对登录来源与跳板机记录是否一致,识别绕过堡垒机的直连行为

常用检索

常用检索
grep -Ei 'failed|accepted' /var/log/auth.log | tail -50   # 登录成败记录
grep 'sudo:' /var/log/auth.log | tail -30                  # 提权执行的命令
grep -E 'session opened|session closed' /var/log/auth.log  # 会话起止
zgrep -h '203.0.113.7' /var/log/auth.log*                   # 跨轮转文件全量检索
awk '/Failed password/{print $(NF-3)}' auth.log | sort | uniq -c | sort -rn | head
# 轮转文件必须一起检索,否则时间窗会人为断裂

日志行逐段读法

字段段示例内容含义
时间戳Oct 12 03:11:04本地时区,跨年与跨时区要留意
主机名web-1多主机汇总时区分来源
进程标签sshd[1234] 或 sudo:决定这一行的语义归属
主体user=svc_backup发起认证的账号名
来源192.0.2.45 port 51234客户端 IP 与源端口
结果Accepted / Failed password成败与认证方式,二者要区分
认证方式不同,日志行也不同:公钥登录写成 Accepted publickey,口令写成 Accepted password。键盘交互认证的失败不会出现在 Failed password 里,检索条件不全会漏判。
如果某类事件在日志里完全看不到,先确认对应的 PAM 模块或 sshd 配置是否仍在记录,再下「没有发生」的结论。
认证日志同时被本地留存与集中平台收集时,做时间线应以集中平台为准,本地文件用于格式比对与补充细节。

易错点

  • 只读当前 auth.log,漏掉 .1 与 .gz 轮转文件,时间窗出现假缺口
  • 把 Failed password 计数直接当成入侵证据,缺少成功记录的配对确认
  • 忽略格式随发行版与 OpenSSH 版本变化,解析脚本写死列号后整列错位
  • 多主机汇总时用主机名替代来源 IP,同一攻击者的记录被拆成多份

数据来源与参考

  • man 8 sshd
  • 系统日志文档
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌