问题描述
使用xshell连接出现如下图所示的问题,但是通过阿里云控制台的VNC远程连接可以正常连接。
问题解决
1. 使用ping命令查看服务器是否能够ping通
ping 101.132.155.100
,结果如下,可以ping的通。
如果ping不同,那自然是网络问题,检查本地网络以及所用服务器ip是否为公网ip,然后再次连接。
2. 检查安全组是否开放了22端口
远程连接使用的ssh服务,该服务默认端口为22。
- 登录阿里云------>找到云服务器ECS----->实例----------->实例详情----->配置安全组规则(如下图)
- 点击配置规则,如下图
- 然后添加一条规则
- 配置完成后测试连接,如果连接不成功则继续往下看。
3. 检查服务器是否开启了ssh服务
- 通过VNC远程连接登录目标服务器之后,执行以下命令,检查22端口是否被监听。
netstat -ntpl|grep 22
- 若显示如下,则说明服务器开启了服务,若输出为空,则证明未开启需要开启ssh服务。
- 开启ssh服务
- 确保服务器已经安装了ssh,若没有安装请自行安装
- 执行命令
//开启ssh
systemctl start sshd.service
//验证
netstat -ntpl|grep 22
- 开启ssh服务后,再次测试连接,若失败继续往下看
4.关闭防火墙
有可能是防火墙在作祟,因此直接关掉(生产环境中万万不能这么做!)
- 查看防火墙的状态
systemctl status firewalld.service
- 关闭防火墙
systemctl stop firewalld.service
- 关闭防火墙开机自动启动
systemctl disable firewalld.service
- 再次测试连接,若仍连接失败继续往下看
5.切换网络
按说到第四步就应该可以连接成功了,但如果还是不行,则有可能是链路中的相关节点拦截了端口所致,因此切换一个网络在试试。
参考:
1. xshell不能远程连接到阿里云服务器
2. 能够ping通服务器的同时端口不通的排查方法