温馨提示×

centos怎么开启ssh日志

小樊
44
2026-09-29 21:30:02
栏目: 智能运维

在 CentOS 中开启 SSH 登录日志,一般涉及 SSH 服务自身日志级别 和 系统日志服务(rsyslog / journald) 两部分。下面分情况说明。


一、确认 SSH 日志是否已记录(先排查)

CentOS 默认 SSH 日志是开启的,通常记录在:

  • CentOS 6 / 早期:/var/log/secure
  • CentOS 7/8/Stream:/var/log/secure(rsyslog)
  • 或使用 journalctl

查看 SSH 日志示例:

# 查看 secure 日志
tail -f /var/log/secure

# 或用 journalctl
journalctl -u sshd -f

如果没有日志,再按下面步骤开启。


二、开启 SSH 详细日志(sshd 配置)

1. 修改 sshd 配置文件

vi /etc/ssh/sshd_config

确保以下参数存在并合理:

LogLevel INFO

推荐调试级别(按需):

  • INFO:默认,记录登录/登出
  • VERBOSE:记录更多认证信息(推荐)
  • DEBUG:仅排障使用(不要长期开)

示例:

LogLevel VERBOSE

2. 重启 sshd

# CentOS 7/8
systemctl restart sshd

# CentOS 6
service sshd restart

三、确保系统日志服务正常

1. rsyslog(CentOS 默认)

确认 rsyslog 在运行:

systemctl status rsyslog

若未启动:

systemctl enable --now rsyslog

2. 确认 auth 日志配置

查看:

grep auth /etc/rsyslog.conf

一般应有:

authpriv.*    /var/log/secure

四、使用 journalctl 查看 SSH 日志(CentOS 7+)

# 实时查看
journalctl -u sshd -f

# 查看某天
journalctl -u sshd --since "2026-01-21"

五、常见补充

1. 记录失败登录(防暴力破解)

LogLevel VERBOSE

可看到:

  • 失败用户名
  • 来源 IP
  • 认证方式

2. 配合 fail2ban(可选)

yum install fail2ban
systemctl enable --now fail2ban

六、排错小结

问题 解决
无 /var/log/secure 启动 rsyslog
无 SSH 日志 检查 LogLevel
日志不更新 systemctl restart sshd
用 Docker 需映射或看 journalctl

如果你用的是 CentOS 几(6/7/8/Stream)、物理机还是容器,我可以给你更精确的命令。

0 踩