You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

已配置正确SSH仍无法连接GCE实例问题排查

排查GCE SSH连接密钥验证环节问题

从你给出的调试日志片段来看,SSH已经成功和目标实例的22端口建立了连接,并且开始加载本地的/Users/myusername/.ssh/google_compute_engine身份密钥,但日志截断在key_l...,大概率是密钥验证环节卡壳了。下面是几个针对性的排查和解决步骤:

  • 确认GCE实例元数据中存在你的公钥
    先检查本地的google_compute_engine.pub公钥是否已经同步到实例的SSH密钥元数据里:

    gcloud compute instances describe instancename --zone us-central1-b --project projectname --format="value(metadata.sshKeys)"
    

    如果输出里找不到你本地公钥的内容,直接重新执行ssh命令让gcloud自动同步密钥:

    gcloud compute ssh instancename --zone us-central1-b --project projectname
    

    或者手动把/Users/myusername/.ssh/google_compute_engine.pub的内容添加到实例的SSH密钥元数据中(在GCE控制台操作也可以)。

  • 修正本地密钥文件的权限
    SSH对密钥文件的权限要求非常严格,权限过松会被拒绝使用。执行下面的命令修复权限:

    chmod 700 /Users/myusername/.ssh
    chmod 600 /Users/myusername/.ssh/google_compute_engine
    chmod 644 /Users/myusername/.ssh/google_compute_engine.pub
    
  • 强制生成新的密钥对并同步
    如果怀疑现有密钥损坏,可以让gcloud生成新的密钥对并自动同步到实例:

    gcloud compute ssh instancename --zone us-central1-b --project projectname --ssh-key-file=/Users/myusername/.ssh/new_gce_key
    

    这个命令会自动创建新的密钥对,同时把公钥添加到实例的元数据中,之后就可以用这个新密钥连接了。

  • 检查实例内部的SSH服务状态
    虽然连接已经建立,但实例内部的sshd服务可能存在异常。如果开启了串行端口访问,可以通过GCE控制台的串行终端登录实例,执行以下命令检查服务状态:

    sudo systemctl status sshd
    

    如果服务没运行,就重启它:

    sudo systemctl restart sshd
    

如果以上步骤都没解决问题,建议把完整的debug日志贴出来,这样能更精准地定位卡壳的具体环节。

内容的提问来源于stack exchange,提问作者quietpoise007

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 07:31:10