ubuntu16.04 ssh连接出现connect to host localhost port 22: Connection refused 解决办法

出现上述问题,需要一步一步排除查看

查看是否安装sshd

命令:

ps -e|grep ssh

若下面有内容出现,说明ssh服务启动
在这里插入图片描述

若什么也没出现说明未安装,则先安装ssh-server

安装openssh-server

sudo apt-get install openssh-server

结果出现了这样的错误
openssh-server : Depends: openssh-client (=1:7.2p2-4)

E: Unable to correct problems, you have held broken packages.

说明要安装的openssh-server依赖于openssh-client的,但ubuntu自带的openssh-client版本与所要安装的openssh-server所依赖的版本不同,因此重新安装openssh-client

sudo apt-get install openssh-client=1:7.2p2-4

中间询问Y/N,输入Y就好。
安装好openssh-client后,再接着安装openssh-server

sudo apt-get install openssh-server

安装好后,查看ssh服务,有内容出现,说明服务已启动

查看防火墙状态,若为active,关闭防火墙
我的防火墙是关闭的

sudo ufw status #查看防火墙状态
sudo ufw disable #关闭防火墙

ssh连接成功

ssh username@IPaddress

你可能感兴趣的:(ubuntu16.04 ssh连接出现connect to host localhost port 22: Connection refused 解决办法)