【ModelArts】ECS部署后远程登陆失败:无法连接到远程主机,请检查主机网络与端口是否正确
遇到ssh: connect to host ... Connection timed out这种报错,基本可以确定是网络链路被“拦截”了,数据包没能到达你的ECS。这在ModelArts部署场景里很常见,通常是三个地方的问题:目标服务器的IP白名单、中间网络的安全组策略,或者是你的本地网络环境。
我把排查步骤整理成了一个清单,照着操作一圈,大概率能定位到问题。
🎯 核心排查清单
1. 🔍 排查IP白名单(ModelArts侧最常见原因)
如果目标服务器是ModelArts的Notebook实例,那么第一步要检查的就是它自身的IP白名单。它会直接拒绝白名单以外的所有连接请求。
操作步骤:
登录华为云控制台,进入ModelArts > 开发环境 > Notebook页面。
找到你的实例,先停止它(白名单修改需要实例停止才能生效)。
在实例的“SSH远程连接”配置中,找到IP白名单设置。
关键点:这里需要填写你本地电脑的公网IP。这个IP不是你在电脑上运行
ipconfig看到的内网IP,而是你访问外网时所用的IP。可以打开浏览器搜索“IP地址查询”来获取。将你的公网IP加入白名单,或者为了测试,可以临时禁用白名单功能。
重新启动实例,再次尝试连接。
2. 🔍 排查ECS安全组(网络防火墙)
如果你的服务是部署在ECS上,或者ModelArts实例被ECS的安全组保护着,那么安全组的“入方向规则”就是下一个要检查的重点。它相当于一个虚拟防火墙,如果没放行你使用的端口(比如SSH默认的22端口),连接也会超时。
操作步骤:
进入弹性云服务器 ECS控制台,找到你的ECS实例。
查看实例详情,找到它关联的安全组。
修改安全组规则,在入方向规则中添加一条。允许你的本地公网IP地址,访问你需要的端口(例如TCP 22)。
如果你修改了SSH默认端口,也要确保新端口在安全组中是放行状态。
3. 🔍 检查本地网络环境
有时候问题可能出在我们自己这边。比如公司网络、校园网可能会对SSH(22端口)等常见端口做外发限制。
快速验证方法:尝试更换一个不同的网络环境,比如用你的手机开个热点,连接电脑后再试一次。如果换了网络就能连上,那问题大概率就在你的本地网络上,需要联系网络管理员处理。
4. 💡 备用方案:使用华为云控制台“远程登录”
如果以上所有排查都无效,或者你急需要访问服务器,华为云控制台提供了一个“绕开”网络的备用方案。
操作方法:在ECS实例详情页,找到并点击“远程登录”按钮。这个方式是通过Web页面直接连接到服务器,不依赖于SSH端口和网络策略,可以作为一个临时的救急手段。
另外,如果在排查过程中遇到其他具体报错,比如Permissions for 'xxx.pem' are too open或Host key verification failed,这通常是密钥文件权限或known_hosts文件的问题,需要单独处理。
