应查阅ssh认证日志定位连接来源与登录时间:一、用sudo journalctl -u sshd查实时日志;二、用sudo grep "accepted"/"failed password" /var/log/auth.log查历史记录;三、检查/var/log/secure是否存在;四、用sudo ss -tnp | grep ':22'查当前活跃连接;五、修改/etc/ssh/sshd_config中loglevel为verbose并重启sshd以增强日志详情。

如果您尝试排查统信UOS系统中SSH远程访问行为,但无法定位具体连接来源或登录时间,则可能是由于未查阅SSH服务产生的认证日志。以下是查看SSH连接记录的具体操作步骤:
一、使用journalctl查看SSH服务实时日志
systemd日志系统会持续记录sshd守护进程的运行事件,包括连接建立、认证成功或失败、用户登出等完整会话轨迹,适用于排查最近发生的连接行为。
1、打开终端(按 Ctrl + Alt + T)。
2、执行命令:sudo journalctl -u sshd,显示全部SSH服务日志。
3、如需仅查看最近50条记录,执行:sudo journalctl -u sshd -n 50。
4、如需实时跟踪新日志,添加 -f 参数:sudo journalctl -u sshd -f,按 Ctrl+C 退出监听。
二、读取/var/log/auth.log认证日志文件
auth.log是统信UOS默认启用的系统认证日志文件,由rsyslog服务写入,长期保留登录尝试、密码验证、公钥匹配等详细信息,适合做历史回溯分析。
1、在终端中执行:sudo cat /var/log/auth.log | grep sshd,筛选含sshd关键词的日志行。
2、若日志内容较多,使用分页查看:sudo less /var/log/auth.log | grep sshd,支持上下键滚动与搜索(输入 / 后跟关键词,如 /Accepted)。
3、快速定位成功登录记录:sudo grep "Accepted" /var/log/auth.log。
4、快速定位失败登录记录:sudo grep "Failed password" /var/log/auth.log。
三、检查/var/log/secure(部分部署环境适用)
部分统信UOS服务器版或定制化部署中可能启用secure日志替代auth.log,其格式与功能一致,但路径不同,需根据实际日志配置确认是否启用。
1、确认该文件是否存在:sudo ls -l /var/log/secure。
2、若存在且非空,执行:sudo grep sshd /var/log/secure。
3、若提示“No such file or directory”,说明当前系统未启用该路径日志,无需继续操作。
四、通过ss命令查看当前活跃SSH连接
ss命令可即时列出所有处于ESTABLISHED状态的网络连接,用于识别正在运行的SSH会话及其源IP、端口和进程ID,不依赖日志文件,响应迅速。
1、执行命令:sudo ss -tnp | grep ':22'。
2、输出中重点关注 Recv-Q、Send-Q 列右侧的 “users:(\”sshd\”,pid=XXXX,…)” 部分。
3、提取PID后,可进一步查看对应进程详情:sudo ps -fp PID号(将PID号替换为实际数值)。
4、结合 netstat 替代方案(如已安装):sudo netstat -tnp | grep ':22'。
五、启用详细SSH日志级别(临时增强记录)
默认日志级别可能不记录密钥指纹、协议版本等细节;修改sshd_config可提升日志详尽度,便于深度审计,修改后需重启服务生效。
1、编辑配置文件:sudo vim /etc/ssh/sshd_config。
2、查找 LogLevel 行,将其修改为:LogLevel VERBOSE(若该行被注释则取消注释)。
3、保存退出后执行:sudo systemctl restart ssh。
4、随后新发起的SSH连接将在auth.log中记录客户端密钥哈希、协商算法及认证方式等扩展信息。










