“Connection refused”表示目标服务明确拒绝连接,主因是服务未监听该端口或仅绑定127.0.0.1。需用ss/netstat/lsof查监听地址,修改配置将bind地址改为0.0.0.0,重启服务,并检查防火墙与云安全组是否放行端口。

“Connection refused”不是网络不通,而是目标地址确实在响应——但明确拒绝了你的连接请求。核心原因通常只有两个:服务根本没在监听该端口,或监听了却只绑定了本地地址(如 127.0.0.1),不接受远程访问。
先登录服务器,用以下命令检查端口实际监听状态:
重点看输出中的 Local Address 列。如果显示的是 127.0.0.1:端口 或 ::1:端口,说明服务只接受本机访问;若显示 0.0.0.0:端口 或 [::]:端口,才表示对所有地址开放。
很多服务(如 Java 应用、Nginx、Hadoop、自定义后台程序)默认监听 127.0.0.1。需手动修改其配置文件:
localhost 或 127.0.0.1 改为 0.0.0.0 或具体内网 IP(如 192.168.8.119)core-site.xml 中 fs.defaultFS 的 host 部分,并确保 /etc/hosts 中该主机名映射到真实 IPlisten 指令,例如改为 listen 80;(等价于 0.0.0.0:80)而非 listen 127.0.0.1:80;
改完务必重启服务,再用 ss 命令验证监听地址是否已更新。
即使服务监听了 0.0.0.0,外部仍可能被拦截:
firewall-cmd --list-ports(firewalld)或 ufw status(Ubuntu),确认目标端口已开放0.0.0.0/0)systemctl stop firewalld(CentOS)或 ufw disable(Ubuntu),验证后再恢复策略从客户端机器执行,不要在服务器本机测:
Connected to IP. 表示通;Connection refused 表示服务未监听或绑错地址;Connection timed out 才是防火墙/网络拦截succeeded! 即通,更简洁可靠注意:telnet 在部分系统需手动安装(如 yum install telnet 或 apt install telnet);nc(netcat)基本预装。
以上就是Linux连接被拒绝怎么解决_端口监听问题排查【指导】的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号