一、Connection failed 解决方案
Ubuntu 默认没有安装 ssh 服务,若通过 ssh 远程连接 Ubuntu,则会报如下错误:
此时,需要自己手动安装 openssh-server,且 ssh 分为:客户端openssh-client 、服务端openssh-server。
通过命令ssh localhost
可以查看虚拟机中是否安装了 ssh 服务。
结果如下所示:
很明显,虚拟机中没有 ssh 服务。接下来通过 apt-get 源安装 ssh。若提示找不到可安装选项,可先更新下 apt-get,即sudo apt-get update
,然后再执行如下命令进行安装。
命令:sudo apt-get install -y openssh-server
检查是否安装成功。此时,已经安装成功,且正常启动了。
二、ssh 服务器拒接了密码
当我们在虚拟机上成功安装了 ssh 服务后,此时Xshell 远程连接时,不会出现 connection failed,但出现了 ssh 服务器拒绝了密码,如下所示。
解决方案:
1)第一种方法,也是最常规的一种。sshd的设置不允许root用户用密码远程登录。将PermitRootLogin 参数改为 PermitRootLogin yes
即可。
2)第二种方法,直接暴力重启电脑。
3)第三种,若前面两种都不行,则改用此方法。在 /etc/ssh/sshd_config文件中找到该内容,并将 UsePAM
改为 no
。
在执行上述三种方法中的一种之后,重启下服务即可。
命令:sudo service ssh restart