无法SSH连接GCP VM,内置排查无异常如何进一步排查?
问题描述
- 无法通过SSH连接某台GCP虚拟机(VM),使用GCP官方SSH-in-browser排查工具检测时,所有步骤均显示正常(绿色状态)
- 可正常SSH连接其他GCP VM,仅该目标VM存在连接问题
- 目标VM上安装有GitHub实例,已尝试在GCP防火墙配置中放行HTTP和HTTPS流量,但问题仍未解决
SSH-in-browser检测状态截图:
防火墙配置截图:
进一步排查步骤
- 检查目标VM的SSH服务运行状态:通过GCP控制台的「串行控制台」接入VM,执行
systemctl status sshd(systemd系统)或service ssh status,确认SSH服务是否正常启动,查看是否有启动失败的日志信息。 - 验证VM内部防火墙规则:在串行控制台中执行
iptables -L,检查是否存在阻止22端口入站流量的规则;若为Ubuntu/Debian系统,可执行ufw status确认是否已放行SSH端口。 - 核对SSH配置文件参数:查看
/etc/ssh/sshd_config,重点确认:Port是否设置为22(或自定义端口需同步在GCP防火墙放行)PasswordAuthentication或PermitRootLogin是否被错误设为no(若使用密码登录)AllowUsers是否限制了登录用户范围,导致当前账户无法接入
- 确认GCP防火墙规则与VM标签匹配:检查防火墙规则的「目标标签」,确认目标VM已添加对应标签;同时验证规则的「来源IP范围」是否包含你本地设备的公网IP(本地SSH客户端连接时)。
- 排查GitHub实例的影响:
- 执行
top或htop查看VM的CPU、内存占用,确认是否因资源耗尽导致SSH服务无法响应 - 查看系统日志
/var/log/syslog或/var/log/messages,排查是否有GitHub相关进程干扰SSH服务的报错记录
- 执行
- 重置SSH配置:通过GCP控制台VM详情页的「远程访问」→「重置SSH」功能,自动修复SSH服务及配置文件。
- 检查VM公网IP可用性:确认目标VM的公网IP已正常分配,尝试ping该IP(若ICMP流量被允许),排除IP地址不可达的问题。
内容的提问来源于stack exchange,提问作者Sabit Faisal
相关产品推荐
相关产品推荐

