当前位置:首页 > 文章列表 > 文章 > 常见问题 > SSH连接报错“Connectionrefused”通常意味着目标服务器的SSH服务(sshd)没有运行,或者端口被防火墙阻止。以下是一些可能的原因和解决方法:1.sshd未运行检查sshd状态:在服务器上运行systemctlstatussshd或servicesshdstatus来确认SSH服务是否正在运行。启动sshd:如果服务未运行,可以使用systemctlstartsshd或servi
SSH连接报错“Connectionrefused”通常意味着目标服务器的SSH服务(sshd)没有运行,或者端口被防火墙阻止。以下是一些可能的原因和解决方法:1.sshd未运行检查sshd状态:在服务器上运行systemctlstatussshd或servicesshdstatus来确认SSH服务是否正在运行。启动sshd:如果服务未运行,可以使用systemctlstartsshd或servi
当SSH连接报出“Connection refused”错误时,并不单纯意味着sshd没运行,而是表明目标主机在TCP连接建立初期(SYN阶段)主动拒绝了请求,背后可能涉及sshd服务未启动、配置错误导致端口未监听、防火墙策略拦截、SELinux/AppArmor安全模块限制,甚至端口绑定失败等多种深层原因;本文系统梳理了从服务状态验证、端口监听确认、防火墙规则检查、配置语法诊断到强制访问控制排查的完整排错路径,帮你精准定位并快速修复这一看似简单却常被误判的连接故障。

如果您执行 ssh user@host 后收到 ssh: connect to host xxx port 22: Connection refused 错误,该信号表明 TCP 连接在 SYN 阶段即被目标主机内核主动拒绝,而非网络不可达或认证失败。这通常指向 SSH 守护进程未运行、端口未监听或被本地策略拦截。以下是排查与修复该问题的多种路径:
一、验证 sshd/sshd 服务是否处于活动状态
SSH 连接被拒的最常见原因是守护进程根本未启动,systemd 无法拉起 sshd 实例将导致 22 端口完全不响应任何连接请求。
1、执行 sudo systemctl status ssh(Ubuntu/Debian)或 sudo systemctl status sshd(RHEL/CentOS/Fedora)检查服务当前状态。
2、若输出中显示 inactive (dead) 或 failed,说明服务未运行。
3、运行 sudo systemctl start ssh(或 sudo systemctl start sshd)尝试手动启动。
4、启动成功后,立即执行 sudo systemctl enable ssh(或 sudo systemctl enable sshd)确保开机自启。
二、确认 22 端口是否真实监听
即使服务显示 active (running),sshd 也可能因配置错误(如 BindAddress 冲突、HostKey 缺失、ListenAddress 设置为非通配地址)而无法绑定端口,此时 netstat/ss 输出中将查不到 :22 的监听项。
1、运行 sudo ss -tlnp | grep ':22' 查看是否有进程监听 22 端口及对应 PID。
2、若无输出,再执行 sudo systemctl restart ssh(或 sudo systemctl restart sshd),并观察重启日志是否报错。
3、若重启失败,立即查看详细错误:运行 sudo journalctl -u ssh --since "1 hour ago" -n 50 -e(Ubuntu)或 sudo journalctl -u sshd --since "1 hour ago" -n 50 -e(RHEL),重点关注配置文件语法错误、密钥加载失败或 bind 失败提示。
三、检查防火墙是否显式拒绝 22 端口入站流量
系统级防火墙(如 ufw、firewalld)可能配置了默认 deny 策略,且未放行 22/tcp,导致内核在连接建立前直接返回 RST 包,现象与服务未运行完全一致。
1、Ubuntu/Debian 用户运行 sudo ufw status verbose,确认状态为 active 且 22/tcp 在 Incoming 规则中显示为 ALLOW。
2、若未允许,执行 sudo ufw allow 22 并再次检查状态。
3、RHEL/CentOS 用户运行 sudo firewall-cmd --list-all,确认 public zone 中包含 ports: 22/tcp;若缺失,执行 sudo firewall-cmd --permanent --add-port=22/tcp 后 sudo firewall-cmd --reload。
四、排查 SSH 配置文件中的致命错误
sshd_config 中存在语法错误、非法指令或路径错误(如指定不存在的 HostKey 文件、无效的 ListenAddress 值)会导致 sshd 启动时静默失败或启动后立即退出,造成“服务看似运行实则未监听”。
1、运行 sudo sshd -t 对配置文件进行语法校验;若返回非零退出码,说明存在错误。
2、若校验失败,执行 sudo sshd -T 查看实际生效的完整配置(含 include 展开),定位异常项。
3、重点检查第 86 行附近(常见出错位置)、Port、ListenAddress、HostKey、PermitRootLogin 等关键指令是否拼写正确、路径可读、值合法。
4、临时注释可疑行后保存,再执行 sudo systemctl restart ssh 测试是否恢复监听。
五、验证是否因 SELinux 或 AppArmor 强制拦截
在启用强制访问控制的系统中,SELinux(RHEL/CentOS)或 AppArmor(Ubuntu/Debian)策略可能阻止 sshd 绑定网络端口或访问密钥文件,导致服务启动但无法提供服务。
1、RHEL/CentOS 用户运行 sudo sestatus,若 State 为 enabled 且 Current mode 为 enforcing,则需进一步检查。
2、执行 sudo ausearch -m avc -ts recent | grep sshd,若输出 AVC denied 日志,说明 SELinux 拦截。
3、Ubuntu 用户运行 sudo aa-status | grep ssh,若显示 sshd 处于 enforce 模式且有拒绝记录,则需调整 profile 或临时设为 complain 模式测试。
4、临时禁用以验证:RHEL 执行 sudo setenforce 0;Ubuntu 执行 sudo systemctl stop apparmor;随后重启 ssh 服务并测试连接。
以上就是本文的全部内容了,是否有顺利帮助你解决问题?若是能给你带来学习上的帮助,请大家多多支持golang学习网!更多关于文章的相关知识,也可关注golang学习网公众号。
Midjourney动漫眼眸特写生成技巧
- 上一篇
- Midjourney动漫眼眸特写生成技巧
- 下一篇
- HermesAgent集成Notion:API配置与任务同步
-
- 文章 · 常见问题 | 2天前 |
- 栗子漫画为什么只支持App使用?网页入口、下载跳转与风险辨别
- 309浏览 收藏
-
- 文章 · 常见问题 | 2天前 |
- kazumi推荐、搜索和时间表怎么用?主页功能模块说明
- 466浏览 收藏
-
- 文章 · 常见问题 | 2天前 |
- LT画质助手产品站怎么核对?备案信息、下载页与帮助文档入口说明
- 193浏览 收藏
-
- 文章 · 常见问题 | 2天前 |
- 诗歌本有内购吗?Google Play商业化标识与使用边界说明
- 194浏览 收藏
-
- 文章 · 常见问题 | 2天前 |
- 繁花动漫打不开怎么办?公开资料页入口、来源与页面状态核对
- 480浏览 收藏
-
- 文章 · 常见问题 | 2天前 |
- qooapp OpenSDK怎么接入?包名、审核与Android版本边界说明
- 166浏览 收藏
-
- 文章 · 常见问题 | 2天前 |
- 78动漫官网入口在哪里?网站、APP与资料库分工说明
- 461浏览 收藏
-
- 文章 · 常见问题 | 2天前 |
- bangumi API文档怎么看?公开接口、认证与调用边界说明
- 229浏览 收藏
-
- 文章 · 常见问题 | 2天前 |
- 蛙蛙漫画能离线阅读吗?公开资料页已知功能与未声明能力说明
- 131浏览 收藏
-
- 文章 · 常见问题 | 2天前 |
- Lanerc动漫网页版GPU占用高怎么办?硬件加速与浏览器排查说明
- 300浏览 收藏
-
- 文章 · 常见问题 | 2天前 |
- 人类基准反应测试的首页项目怎么分?反应测试与配对游戏入口说明
- 393浏览 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 485次学习
-
- PubMedQA
- 深入了解PubMedQA生物医学问答数据集,涵盖其核心功能、使用方法及在临床决策、药物研发等场景的应用,助力提升NLP模型性能。
- 287次使用
-
- H2O EvalGPT
- H2O EvalGPT是H2O.ai推出的开源LLM评估平台,提供详细的大模型性能排行榜、行业特定基准测试及A/B测试功能,助您快速选择最适合项目的高性能大语言模型。
- 340次使用
-
- LMArena
- LMArena是加州大学伯克利分校推出的AI模型匿名评测平台。通过盲测投票机制,用户可对比不同大模型回答并生成实时排行榜,助力开发者优化模型及用户选择最佳AI工具。
- 342次使用
-
- HELM
- 深入了解斯坦福推出的HELM(Holistic Evaluation of Language Models)大模型评测体系。本文解析其核心功能、安装配置步骤及应用场景,涵盖准确性、公平性、鲁棒性等多维度指标,助力开发者全面优化语言模型性能。
- 306次使用
-
- MMBench
- MMBench是由上海人工智能实验室等机构联合推出的多模态基准测试平台,提供细粒度能力评估、大规模数据集及VLMEvalKit工具。本文详细介绍其核心功能、安装使用方法及应用场景,助力开发者全面评估多模态模型性能。
- 129次使用
-
- 新能源汽车充电站日常巡检如何记录枪口、计费和告警状态
- 2026-09-16 501浏览
-
- age动漫APP怎么下载?安卓与iOS入口、下载页和安全核对说明
- 2026-09-05 501浏览
-
- 攀岩馆举办公开攀岩赛,哪些情形需要申请高危险性体育赛事活动许可
- 2026-08-30 501浏览
-
- 2026年秋季开学时间怎么查:全国统一吗、家长看哪份通知
- 2026-08-26 501浏览
-
- 单射满射图像特征及水平线测试法解析
- 2026-05-29 501浏览

