银河麒麟V10 SSH连接问题全解析:从Connection refused到Permission denied的实战解决方案

1. 从“Connection refused”开始:你的SSH服务真的在吗?

刚装好银河麒麟V10,兴冲冲地准备用Xshell或者FinalShell连上去大展身手,结果迎面就是一盆冷水:“ssh: connect to host xxx.xxx.xxx.xxx port 22: Connection refused”。这句话翻译过来就是“连接被拒绝”,听起来冷冰冰的,其实它透露的第一个信息很直接:目标机器的22号门(端口)根本没开,或者开门的人(SSH服务)压根不在家。

我刚开始用麒麟V10的时候也老碰到这个,尤其是用虚拟机安装的桌面版。很多人第一反应是网络问题,拼命在那儿ping,发现能ping通就更懵了。其实能ping通只说明网络链路是通的,就像你知道朋友家的地址,也能走到他家门口,但按门铃没人应,那问题就出在“家里有没有人”以及“门铃好不好使”上。这里的“人”就是openssh-server这个服务程序。

所以,遇到“Connection refused”,别急着折腾防火墙或者网络配置,第一步应该先确认服务本身的状态。你可以在银河麒麟V10的终端里(如果是桌面版,就用自带的终端程序),输入这样一条命令:

systemctl status sshd

或者用老一点的命令:

service sshd status

如果看到的是“Active: inactive (dead)”或者压根找不到这个服务,那基本可以确定,SSH服务要么没安装,要么没启动。银河麒麟V10的某些桌面版镜像,为了最小化安装,默认可能真的没有安装openssh-server,这和我们常用的Ubuntu、CentOS习惯不太一样。

那怎么办?装呗。但这里有个小坑,有时候系统里残留的旧配置可能会导致安装后依然无法启动。所以比较稳妥的做法,是先彻底清理,再重新安装。就像原始文章里提到的:

sudo apt remove --purge openssh-server -y
sudo apt install openssh-server -y

--purge参数是关键,它会把配置文件也一并删除,确保我们接下来是全新安装。安装过程通常会自动启动服务并设置开机自启。安装完,务必再执行一次systemctl status sshd看看,确认状态是“Active: active (running)”。到这一步,很多人的“Connection refused”问题就解决了。

但事情往往没这么简单。有时候你查了,服务明明是running的,可还是连不上。这时候就要想,是不是有“保安”把门给拦住了?这个“保安”很可能就是系统自带的防火墙。银河麒麟V10默认用的是firewalld还是ufw,不同版本可能不同,你可以用sudo firewall-cmd --statesudo ufw status来检查。如果防火墙开着,并且没有放行22端口,那外部连接同样会被无情拒绝。你需要手动放行SSH端口:

对于firewalld:

sudo firewall-cmd --permanent --
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值