Linux ssh突然连接不了的案例浅析
2019-07-24 12:06 潇湘隐者 阅读(8726) 评论(0) 编辑 收藏 举报公司的Linux服务器都是通过一台JumpServer跳转的。个人使用Jumpserver(开源跳板机系统)时,有时候由于需要上传、下载文件很不方便。而由于配置关系,一般情况无法使用SecureCRT直接通过ssh连接到服务器。所以个人设置了/etc/ssh/sshd_config。允许我的电脑(电脑名+域名)直接使用ssh访问Linux主机。
但是今天使用SecureCRT连接时提示密码验证错误,使用JumpServer跳板机当然可以连接。连接上去后检查分析原因,具体过程如下所示:
先看看是否有修改过密码,如下所示,上一次修改密码已经很久了。最近没有修改过密码,而且我使用使用SecureCRT保存密码的,不是手工输入的。所以虽然提示“密码验证失败”,但是实际情况应该是其它原因引起(不是因为密码不正确的原因)
#chage -l oracle
Last password change : Feb 24, 2019
Password expires : never
Password inactive : never
Account expires : never
Minimum number of days between password change : 0
Maximum number of days between password change : 99999
Number of days of warning before password expires : 7
检查/var/log/secure日志,发现原来我的电脑(IP地址等信息做了脱敏处理)不允许通过ssh连接这台服务器
Jul 24 11:41:25 xxxxx sshd[30836]: User oracle from 192.168.xxx.xxx not allowed because not listed in AllowUsers
Jul 24 11:41:25 xxxxx sshd[30839]: input_userauth_request: invalid user oracle
Jul 24 11:41:25 xxxxx sshd[30836]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=192.168.xxx.xxx user=oracle
Jul 24 11:41:27 xxxxx sshd[30836]: Failed password for invalid user oracle from 192.168.xxx.xxx port 63278 ssh2
Jul 24 11:41:30 xxxxx sshd[30839]: Received disconnect from 192.168.xxx.xxx: 13: The user canceled authentication.
但是我在/etc/ssh/sshd_config配置文件里面,我已经设置了允许我的个人电脑(此笔记本有加入公司的域)访问这台Linux服务器。
AllowUsers *@xxxx.xxx.xxxx.com
使用ping xxx.xxx.xxx.com测试时,发现电脑名无法被解析,终于确定是因为DNS服务器异常,导致无法解析我的机器名,从而引起ssh连接主机时出现这个错误。其实最开始的时候,/etc/ssh/sshd_config是使用IP地址配置的。但是由于笔记本有时候获取的IP地址是变化的。从而在/etc/ssh/sshd_config里面设置使用机器名。结果DNS异常的时候,就出了这么一档子事情。