温馨提示×

怎样解读linux安全日志

小樊
42
2026-09-23 18:26:06
栏目: 智能运维

解读 Linux 安全日志,核心目的通常是:判断系统是否遭受攻击、是否有异常登录、权限是否被滥用、以及追踪安全事件源头。下面从「日志位置 → 常用日志类型 → 关键字段解读 → 实战分析方法」系统讲一下。


一、Linux 安全相关日志在哪?

不同发行版略有差异:

1. 传统 syslog 系统(CentOS 6 / 老版本)

  • /var/log/secure:SSH、sudo、登录、PAM 相关
  • /var/log/messages:系统级消息(含部分安全信息)
  • /var/log/audit/audit.log:auditd 审计日志(重点)

2. systemd 系统(CentOS 7+ / Ubuntu 16+)

  • 日志统一由 journald 管理
journalctl
journalctl -u sshd
journalctl _COMM=sshd

3. 常见安全日志文件

文件 作用
/var/log/secure 登录、sudo、SSH
/var/log/auth.log Ubuntu 的认证日志
/var/log/audit/audit.log 内核级审计
/var/log/wtmp 登录历史(last)
/var/log/btmp 失败登录(lastb)
/var/log/faillog 用户失败登录记录

二、最常见:SSH / 登录安全日志解读

示例 1:暴力破解尝试

Jun 12 03:21:09 server sshd[1234]: Failed password for root from 1.2.3.4 port 5678 ssh2

解读:

  • Failed password → 登录失败
  • root → 尝试用户名
  • 1.2.3.4 → 来源 IP
  • 高频出现 = 暴力破解

查看暴力 IP:

grep "Failed password" /var/log/secure | awk '{print $11}' | sort | uniq -c | sort -nr

示例 2:成功登录

Jun 12 04:10:22 server sshd[2001]: Accepted password for user1 from 5.6.7.8 port 2222 ssh2

关注点:

  • 是否来自异常 IP
  • 是否非工作时间
  • 是否 root 直接登录(不建议)

示例 3:sudo 使用

Jun 12 04:15:01 server sudo: user1 : TTY=pts/0 ; PWD=/home/user1 ; USER=root ; COMMAND=/bin/bash

解读:

  • USER=root → 提权
  • COMMAND → 执行了什么
  • 异常 sudo 行为需警惕

三、wtmp / btmp 快速分析

last          # 正常登录历史
lastb         # 失败登录
lastlog       # 每个用户最后登录时间

示例:

last | head
lastb | head

四、audit 审计日志(高级安全分析)

查看 audit 日志

ausearch -m USER_LOGIN
ausearch -m USER_AUTH

示例:文件被篡改

type=PATH msg=audit(...): name="/etc/passwd" perm=wa

表示:

  • 有写(w)或属性修改(a)
  • 可能遭到提权或后门

五、实战:如何判断系统是否被入侵?

1. 看异常登录

  • 非业务 IP
  • root 登录
  • 凌晨登录

2. 看 sudo / su

  • 非管理员使用 sudo
  • 执行 /bin/bash、/bin/sh

3. 看暴力破解频率

grep "Failed password" /var/log/secure | wc -l

4. 看新增用户

grep "new user" /var/log/secure

5. 看异常进程 / 连接(辅助)

netstat -antp
ps auxf

六、安全加固建议(日志之外)

  • 禁止 root SSH 登录
  • 使用密钥登录
  • 安装 fail2ban
  • 开启 auditd
  • 定期备份日志(防删除)

如果你愿意,可以:

  • 贴一段 具体日志内容
  • 或说明你是 CentOS / Ubuntu / 云服务器
  • 或说你是 排查入侵 / 学习安全 / 写报告

我可以直接帮你“逐行翻译 + 风险判断”。

0 踩