问题描述:
我将自己的一台Ubuntu系统笔记本作为服务器,然后使用另一台win10系统的Xshell去远程连接该服务器,始终不成功。
【备注】这个远程连接解决的是同一局域网中的远程,算不上真正的远程,在判断两者之间可否远程时可以先试试能不能ping通。
可能存在的问题:
1、 Linu服务器端:
1.1 是否安装 openssh-server
参考文章:
我将自己的ubuntu电脑设置为了一台可远程访问的服务器
使用到了如下命令:
查看是否存在ssh的相关版本信息
ssh -V
安装openssh-server
- 在ubuntu的shell终端输入命令:sudo apt-get install update
- 在ubuntu的shell终端输入命令:sudo apt-get install openssh-server
不报错的情况下,就说明已经安装成功!
开启ssh服务
安装完后,检查系统中ssh服务是否已经开启?
如上所示,说明服务已开启。如果没有开启服务,则需参考以下步骤开启服务
【启动ssh服务】
方法一:sudo /etc/init.d/ssh start
方法二:sudo service ssh start
【停止ssh服务】
方法一:sudo /etc/init.d/ssh stop
方法二:sudo service ssh stop
【重启ssh服务】
方法一:sudo /etc/init.d/ssh reload
方法二:sudo service ssh reload
1.2 22端口是否允许访问
1.2.1 查看防火墙
ssh服务的默认端口是22,如果在开启ubuntu的ssh服务的前提下,依然无法远程访问Linux服务器,则可能是被服务器上的防火墙给屏蔽掉了。这个时候需要查看防火墙状态,打开对应的22号端口
查看防火墙状态:
sudo ufw status
如果显示 “状态:不活动” 则说明防火墙未打开,那么使用命令打开防火墙
sudo ufw enable
此时再查看状态显示激活且有相关端口的详细信息则说明防火墙已打开
1.2.2 看22号端口的动作是 ALLOW 还是 DENY
如果使用sudo ufw status看到22号端口是DENY,则需要使用如下命令开启端口号。
sudo ufw allow 端口号
常用防火墙操作:https://blog.csdn.net/weixin_44937328/article/details/113700930
2、Xshell客户端:
2.1主机Ip
主机那里要填 Ip 地址,是在Linux服务器端通过
ifconfig
命令获得的 inet 地址
2.2 使用默认端口号22
确保服务器端防火墙已激活,且22号端口为ALLOW状态后再进行尝试,此时可以连接成功