共计 2460 个字符,预计需要花费 7 分钟才能阅读完成。
本篇文章为大家展示了云服务器无法远程连接的排查步骤是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
在运维工程师的日常工作中,经常需要登录到服务器上对应用部署和维护,配置修改是很常规操作。但是在日常运维工作中,经常也会遭遇“滑铁卢”,当出现无法远程连接服务器的时候,我们需要沉着冷静,耐心分析报错的症结,方能更好的定位和排除问题。
检查 CPU 负载、带宽及内存使用情况
确认是否存在 CPU 负载过高的情况
如果在某个时间段 CPU 负载过高,可能导致远程连接失败,建议您查询程序或者实例资源是否不满足现有要求。
如果不存在 CPU 负载过高的情况,则继续下一步检查。
确认公网带宽是否不足
无法远程连接可能是公网带宽不足导致的,具体排查方法如下:
登录 ECS 管理控制台。
找到该实例,单击管理进入实例详情页面,查看网络监控数据。
检查服务器带宽是否为“1k”或“0k”。如果购买实例时没有购买公网带宽,后来升级了公网带宽,续费的时候没有选择续费带宽,带宽就会变成“1k”。
确认内存是否不足
远程连接输入用户密码登录后,不能正常显示桌面直接退出,也没有错误信息。这种情况可能是服务器内存不足导致的,需要查看一下服务器的内存使用情况。具体操作如下:
使用控制台远程连接功能登录到 Linux 实例。
查看内存使用情况,确认内存不足后,再进行处理。
客户端排查
客户端无法正常登录时,先使用不同的 SSH 客户端基于相同账户信息进行登录测试。如果能正常登录,则判断是客户端配置问题,需要对客户端配置或软件运行情况做排查分析。关于如何使用 SSH 客户端登录 Linux 实例,您可以参见远程连接 Linux 实例。
步骤一:使用管理终端登录实例
无论何种原因导致无法远程连接实例,请先尝试用阿里云提供的远程连接功能进行连接,确认实例还有响应,没有完全宕机,然后再按原因分类进行故障排查。
录云服务器管理控制台,单击左侧导航栏中的实例,然后在目标实例右侧单击远程连接。
在首次连接或忘记连接密码时,单击修改远程连接密码,修改远程连接的密码。
然后通过远程连接密码连接实例。
步骤二:检查客户端本地网络是否异常
确认是否存在用户本地无法连接外网的故障。
如果存在,则检查网卡驱动,如果存在异常,则重新安装。使用管理终端登录实例,查看 /etc/hosts.deny 文件,查看是否存在拦截 IP,如果存在则删除此 IP 配置即可。
如果不存在,则继续下一步检查。
步骤三:重启实例
在确保登录密码正确的情况下,确认之前是否曾重置过密码。检查重置实例密码后是否未重启实例,如果存在实例密码修改记录,但无重启实例记录,则参考以下操作步骤重启实例:
登录 ECS 管理控制台,单击左侧导航栏中的实例。
在页面顶部的选择对应的地域,目标实例右侧单击更多 实例状态 重启,再单击确定即可。
中间网络
中间网络包括网络检查和端口检查。
网络检查
无法正常远程连接 Linux 实例时,需要先检查网络是否正常。
用其他网络环境中,不同网段或不同运营商的电脑连接对比测试,判断是本地网络问题还是服务器端的问题。如果是本地网络问题或运营商问题,请联系本地 IT 人员或运营商解决。如果是网卡驱动存在异常,则重新安装。排除本地网络故障后进行下一步检查。
在客户端使用 ping 命令测试与实例的网络连通性。
1)网络异常时,请参见网络异常时如何抓取数据包进行排查。
2)当出现 ping 丢包或 ping 不通时,请参见使用 ping 命令丢包或不通时的链路测试方法进行排查。
3)如果出现间歇性丢包,ECS 实例的网络一直处于不稳定状态时,请参见使用 ping 命令测试 ECS 实例的 IP 地址间歇性丢包进行解决。
4)系统内核没有禁 ping 的情况下,使用 ping 命令测试 ECS 服务器,发现网络不通,请参见 Linux 系统的 ECS 中没有禁 PING 却 PING 不通的解决方法。
端口检查
网络检查正常后,进一步检查端口是否正常。
1. 使用管理终端登录实例,执行如下命令,编辑 SSH 配置文件。
vi /etc/ssh/sshd_config2. 找到“#port 22”所在行,检查默认端口 22 是否被修改,且前面的“#”是否删除,如果没有删除,可以把前面的“#”删除,然后将 22 改为其它的端口,再保存退出即可。
说明:服务监听能使用的端口范围为 0 到 65535,错误配置监听端口会导致远程桌面服务监听失败
3. 执行如下命令,重启 SSH 服务。
/etc/init.d/sshd restart 说明:也可执行 service sshd restart 命令,重启 SSH 服务。
4. 使用 Python 自带的 Web 服务器创建临时的监听端口进行测试。
python -m SimpleHTTPServer [$Port]
5. 如果 ECS 安全组规则中未放行修改后的端口号,需要将修改后的端口号添加到 ECS 安全组规则中。
说明:ECS 的安全组规则中默认放行 22 端口。修改了远程桌面的端口后,需要在安全组规则中放行修改后的端口号。
6. 通过上一步获取的端口,参考如下命令,进行端口测试,判断端口是否正常。
telnet [$IP] [$Port]
说明:
– [$IP] 指 Linux 实例的 IP 地址。
– [$Port] 指 Linux 实例的 SSH 端口号。
系统显示类似如下,例如执行 telnet 192.168.0.1 22 命令,正常情况下,系统会返回服务端中 SSH 的软件版本号。
安全组检查
检查安全组配置,是否允许远程连接的端口。
参见查询安全组规则,查看安全组规则。如果远程连接端口没有进行配置,则参见 Linux 实例启用 SSH 服务后设置对应的安全组策略配置。
确认是否存在无法 ping 通 ECS 实例,在排除 Iptables 和网卡 IP 配置问题且回滚系统后,仍然无法 ping 通。可能是 ECS 实例安全组默认的公网规则被删除,则需要重新配置 ECS 实例的安全组公网规则。如果不存在,则继续下一步骤检查。
上述内容就是云服务器无法远程连接的排查步骤是什么,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注丸趣 TV 行业资讯频道。