Cannot ssh into server except with google dev console ssh
我无法从计算机SSH到Google Cloud托管的服务器上。
我在[email protected]上尝试了普通的ssh-keygen并上传了公钥,这在上一次有效,但这次却没有。我更改了帐户密码后,问题开始了。此后,尽管直到断开连接后我才断开连接,但我再也无法通过ssh或sftp登录该帐户了。
然后我尝试了gcloud ssh user @ instance,它运行良好,并告诉我它还没有传播。
我在服务器的ssh配置文件中添加了
这是错误:
1 2 | Permission denied (publickey). ERROR: (gcloud.compute.ssh) [/usr/bin/ssh] exited with return code [255]. |
更新:
我一直在与Google技术支持部门合作,但这个问题仍然无法解决。名为
所以我将其更改为:
1 | thisUser:www-data 755 |
但是在启动时它将更改为:
1 | otherUser:otherUser 600 |
我通过删除VM设置中"自定义元数据"下的现有ssh密钥来解决此问题。然后,我可以登录ssh
为了解决此问题,有几件事。您可以利用GCE中的元数据功能并添加一个启动脚本,该脚本将自动更改权限。
在开发人员控制台中,转到"实例">"元数据",然后添加一对键/值
键:启动脚本
值:chmod 755 / home /您的用户/.ssh/authorized_keys或chmod 755?/ .ssh
重新启动后,您应该在该页面的下方检查" Serial Ouput"??选项,并查看它是否在启动时运行。它应该向您显示以下内容:
在元数据中找到的启动脚本。
startupscript:运行启动脚本/var/run/google.startup.script
更多信息可以在这里找到
希望有帮助!