使用非Gmail高校谷歌账号SSH登录GCP Ubuntu实例报公钥权限错误如何解决
GCP实例SSH连接报错解决指南
正确SSH登录语法
你之前执行的命令存在格式错误:SSH连接GCP实例的用户名不需要填写完整的GCP登录邮箱,双@的写法不符合SSH命令规范。
正确命令格式为:
ssh <实例用户名>@<实例公网IP>
实例用户名确认规则:
- 未开启OS Login(实例默认配置):用户名为GCP登录邮箱@前缀,如你的账号为
XXXX@myUniversity.edu,对应用户名就是XXXX,最终命令为ssh XXXX@<实例公网IP> - 已开启组织级OS Login:用户名为邮箱替换特殊字符后的格式,通常为
xxxx_myuniversity_edu,你可以通过GCP控制台浏览器SSH登录实例后执行whoami命令查询准确用户名。
Permission denied (publickey) 报错解决方案
- 校验本地SSH公钥配置
打开MobaXterm的「用户设置」-「SSH」标签页,找到本地生成的公钥文件(默认名为id_rsa.pub),复制全部公钥内容。进入GCP控制台对应实例的详情页,点击「编辑」,找到「SSH密钥」板块,粘贴公钥内容后保存,确认公钥末尾标注的用户名和你登录用的用户名完全一致,等待30秒后重试连接。 - 检查网络与权限规则
确认实例所属VPC的防火墙规则已开放22端口入方向访问,源IP包含你当前设备的公网IP;如果是学校分配的组织账号,需确认管理员未设置SSH访问IP白名单限制。 - 实例侧配置排查
若上述操作无效,可通过GCP控制台自带的浏览器SSH功能登录实例,依次检查以下配置:- 执行
ls -ld ~/.ssh确认目录权限为700,执行ls -l ~/.ssh/authorized_keys确认文件权限为600 - 查看
~/.ssh/authorized_keys文件内容,确认已写入你本地的SSH公钥 - 查看
/etc/ssh/sshd_config文件,确认PubkeyAuthentication yes配置未被注释
- 执行
内容的提问来源于stack exchange,提问作者user599086
相关产品推荐
相关产品推荐

