谷歌计算引擎 - 在debian升级后无法使用它

问题描述 投票:-2回答:2

我将Debian实例从wheezy升级到jessie。一切顺利。我重新启动了系统,无法再从计算引擎实例页面ssh到它。我注意到系统重新启动,使用不同的外部IP地址。我能够访问我在虚拟机上运行的Web服务器,因此我知道所有内容都已升级并正确重新启动。 Google为其分配了一个新的外部IP,我无法登录。

google-cloud-platform google-compute-engine ssh-keys
2个回答
0
投票

sshd不再运行的事实是不太可能的,所以当我无法访问Google Cloud上的实例时,这是我的个人调试步骤:

  1. 检查两次你的ssh参数(ssh密钥,登录用户,ip地址)
  2. 尝试连接时激活ssh调试日志(-v
  3. 尝试使用Cloud Shell
  4. 检查GCP和本地网络中的防火墙规则
  5. 检查实例串行端口上的引导日志
  6. 在GCP>计算>元数据中重新发送SSH密钥(计算机上的google用户代理有时会出现错误)

之后,您通常知道如何连接到您的实例,或者您知道sshd服务器有什么问题。


0
投票

您可以查看受影响实例的串行端口日志,以获取有关该问题的可能线索。如果您有实例磁盘的快照,则可以创建新VM。根据问题,最近的更改可能会影响实例引导顺序和sshd_config文件。

要对此进行故障排除,您可以enable interactive access,通过串行控制台连接到实例并输入串口访问信息以访问磁盘,查看ssh config files$ sudo vi /etc/ssh/sshd_config$ sudo vi /etc/ssh/ssh_config

如果您没有串行控制台的root密码,可以使用startup script将其添加到您的实例,如下所示:

  1. 转到Google Cloud Platform控制台中的VM实例页面。
  2. 单击要添加启动脚本的实例。
  3. 单击页面顶部的“编辑”按钮。
  4. 单击“启用连接到串行端口”
  5. 在自定义元数据下,单击添加项。
  6. 将'Key'设置为'startup-script'并将'Value'设置为此脚本:

#! /bin/bash useradd -G sudo USERNAME echo 'USERNAME:PASSWORD' | chpasswd

例:

#! /bin/bash useradd -G sudo test1 echo 'test1:pass@100' | chpasswd

  1. 单击“保存”,然后单击页面顶部的“重置”。您可能需要等待一段时间才能重新启动实例。
  2. 单击页面上的“连接到串行端口”。
  3. 在新窗口中,您可能需要稍等一会然后按Enter键一次;然后,您应该看到登录提示。 10 ..使用您提供的USERNAME和PASSWORD登录。

示例:Username: test1 AND Password: pass@100

您还可以共享已清理的串行端口日志版本,以获取有关实例上可能发生的情况的更多信息。这不是由于IP地址的变化,但串口日志应该给我们更多的洞察力。

© www.soinside.com 2019 - 2024. All rights reserved.