我们有一个在 US-central-1 区域运行的实例,它开始出现以下错误:
通过云身份识别代理连接失败代码:4003 原因:无法连接到后端您可能无需使用云身份识别代理即可进行连接。
如果不使用 Cloud Identity-Aware Proxy,我也无法连接,并显示以下消息:
我们无法连接到端口 22 上的虚拟机。
此实例上运行的网站是实时电子商务平台,没有其他正在运行的备份实例。请尽快解决此问题。
附言:在发现虚拟机正常运行后,我们没有对其进行任何更改。并且我们不会触及任何配额限制。
答案1
如果允许 tcp:22 的入口,包括你的源 IP,那么 GCP 防火墙就没有问题,我的建议是执行以下步骤并建立与你的 VM 的串行连接,然后就可以检查 SSH 服务是否启动并处于监听模式,甚至可以检查你的 VM 内部是否有任何防火墙阻塞。
- 转到 Google Cloud Platform 控制台中的 VM 实例页面。
- 单击要添加启动脚本的实例。
- 单击页面顶部的“编辑”按钮。
- 点击“启用连接到串行端口”
- 在自定义元数据下,单击添加项目。
- 将“Key”设置为“startup-script”,并将“Value”设置为此脚本:
#!/bin/bash
useradd -G sudo USERNAME
echo 'USERNAME:PASSWORD' | chpasswd
注意:将用户名和密码的值更改为您选择的用户名和密码。
- 单击保存,然后单击页面顶部的重置。您可能需要等待一段时间才能重新启动实例。
- 点击页面中的‘连接到串行端口’。
- 在新窗口中,您可能需要等待一会儿,然后按一次键盘上的 Enter 键;然后,您应该会看到登录提示。
- 使用您提供的用户名和密码登录。
答案2
确保虚拟机带有与防火墙规则中指定的目标标签相同的标签。例如,标签名称可能类似于allow-ssh
。