切断我自己的 Google Cloud Engine SSH 鼻子

切断我自己的 Google Cloud Engine SSH 鼻子

有点愚蠢。在我的 Google Compute Engine (GCE) 实例上,我进入并更改了 sshd_config 以监听另一个端口(我经常这样做)...但我在注销之前没有测试。而且有一个拼写错误。所以现在我无法通过 ssh 登录,因为配置搞砸了,sshd 甚至无法启动。(我可以用不同的配置文件以非 root 用户身份启动 sshd,但它给了我一个“无法加载主机密钥”,正如预期的那样,可能是没有权限。)

您说的是使用 GCE 串行控制台吗?啊……但我可以登录的用户中没有一个是 sudo 用户。(我还有另外两个 sudo 用户,但密码不起作用,不知道为什么。我记错了?)

因此,我有带密码的用户(非root)访问权限,并且有root(sudo'er)用户的密钥,我只是没有办法通过串行控制台使用这些密钥登录?(有没有办法让控制台识别我的密钥而不是密码?)

我无法凭借自己有限的知识在 5 分钟内修复此问题,这对安全性来说是个好消息,但我可以利用我所拥有的知识以 root 身份重新登录吗?我有权访问 Google Compute Engine 控制台中的项目和用户等,我只是在此实例上切断了与命令行的联系。

如果它是一台物理机器,我会坚持使用可启动的 USB 发行版并简单地编辑配置文件并重新启动。

有什么建议么?

谢谢。

答案1

要编辑或检查您无权访问的虚拟机根磁盘中的配置文件,请按照“在不关闭实例的情况下检查实例”部分中的步骤进行操作这个文件

步骤摘要:

1)创造您可以通过 SSH 进入的临时虚拟机。

2)创建副本发生故障的根磁盘(这必须来自快照)。实际上您可以删除原始虚拟机并保留磁盘(-keep-disks=all),但我宁愿使用副本。

3)将磁盘复制到临时虚拟机并安装您想要检查的磁盘。

4)修改配置文件。分离修改后的磁盘和旋转使用此磁盘的新虚拟机。

相关内容