Connection refused 错误通常意味着SSH服务在目标主机上未运行、端口被防火墙阻止,或者目标IP/端口配置有误。以下是可能的原因和解决方案:
1. 确认SSH服务在目标主机上运行
-
Linux/Mac:在目标主机上执行以下命令检查SSH服务状态:
systemctl status sshd # Ubuntu/Debian/CentOS如果未运行,使用以下命令启动:
sudo systemctl start sshd sudo systemctl enable sshd # 设置开机自启未开启

-
Windows:需确认是否启用了OpenSSH服务(默认不启用):
Get-Service sshd # 检查状态 Start-Service sshd # 启动服务
2. 检查防火墙设置
-
目标主机防火墙:确保SSH端口(默认22)未被阻止:
# Ubuntu/Debian (ufw) sudo ufw allow 22/tcp sudo ufw reload# CentOS (firewalld) sudo firewall-cmd --add-service=ssh --permanent sudo firewall-cmd --reload -
本地防火墙:检查本地机器是否阻止了出站连接。
3. 验证IP地址和端口
- 确认目标IP地址(
172.19.232.187)正确,可通过ping测试连通性:ping 172.19.232.187 - 确认SSH服务监听的是22端口。在目标主机上执行:
ss -tulpn | grep :22 # Linux netstat -ano | findstr :22 # Windows
4. 尝试其他端口或连接方式
- 如果SSH服务监听在非22端口(如2222),使用
-p参数指定端口:ssh user@172.19.232.187 -p 2222 - 尝试通过其他网络连接(如VPN),排除网络隔离问题。
5. 联系系统管理员
- 如果是远程服务器,可能需要联系管理员确认:
- SSH服务是否正常运行。
- 防火墙规则是否允许外部访问。
- 服务器是否被限制访问(如IP黑名单)。