在 Linux 中,排查登录日志通常用于分析谁登录过系统、是否有人暴力破解、是否有异常登录等。下面按常见场景 + 实操命令来说明。
/var/log/secure
/var/log/messages
登录日志由 systemd 管理,主要看:
/var/log/auth.log # Ubuntu / Debian
/var/log/secure # CentOS / RHEL
journalctl _COMM=sshd
journalctl _COMM=sshd | grep "Accepted"
journalctl _COMM=sshd | grep "Failed"
journalctl --since "2024-01-01 00:00:00" --until "2024-01-02 23:59:59"
last
显示:
lastb
⚠️ 需要 root 权限
who
w
last username
last | grep 192.168.1.100
grep "Failed password" /var/log/secure | awk '{print $(NF-3)}' | sort | uniq -c | sort -nr
grep "Accepted password" /var/log/secure
✅ 是否有不明 IP 登录
✅ 是否有大量 Failed password
✅ 是否有从未见过的用户名
✅ 是否凌晨或非工作时间登录
✅ 是否 root 被远程登录(应禁止)
# 禁止 root 登录
vi /etc/ssh/sshd_config
PermitRootLogin no
# 使用密钥登录
PasswordAuthentication no
如果你愿意,可以告诉我:
我可以给你更精确的命令。