【问题标题】:Transferring SSH keys to the VM. ( SSH Not working for the instance )将 SSH 密钥传输到 VM。 ( SSH 不适用于实例)
【发布时间】:2020-12-21 00:28:09
【问题描述】:

我遇到了 GC 实例 SSH 的具体问题。 每当我尝试打开它时,它只会显示如下消息: “将 SSH 密钥传输到 VM。” 要么 “通过迁移到 OS Login,您可以显着缩短密钥传输时间。”

但该域似乎很好并且运行良好。较早的域无法正常工作,然后我重新启动了实例。然后域开始工作。但是 SSH 还是不行。

尝试了各种可能的调试方式。找不到有用的东西。

不确定是否需要生成密钥!但是我在 GCP 上还有几个项目,并且没有遇到任何关于 SSH 的问题。

我已附上一次屏幕截图,以便您查看。 域名地址:http://zetile.com/

请深入研究这一点,并为我提供一些有用的东西,而不是任何随意或参考链接。

期待你!!

谢谢 最好的。enter image description here

【问题讨论】:

  • 你创建了这个虚拟机吗?是否可能在防火墙规则禁止端口 22 访问的 VPC 中?
  • 是的,我已经设置了实例的配置。似乎不是由于任何防火墙。因为我在这个项目中设置了更多的 4-5 个不同的实例。都具有几乎相同的配置。但现在只面临一个具体实例的问题。不明白为什么!
  • 好的,在这里验证一下,您可以通过 SSH 连接到其他实例吗?

标签: google-cloud-platform instance bitnami


【解决方案1】:

没有 ssh 访问权限可能有很多原因。 由于与防火墙、网络连接、用户帐户相关的连接问题,或者 ssh 服务未运行,您可能无法通过 SSH 连接到 VM 实例。

您可以检查您的防火墙规则,如果没有创建,您可以为您的端口 22 创建规则:

gcloud compute firewall-rules create default-allow-ssh --allow tcp:22

通过在 SSH 请求中指定 another-username,尝试使用 gcloud 工具以其他用户身份登录。 gcloud 工具更新项目的元数据以添加新用户并允许 SSH 访问。

gcloud compute ssh another-username@$PROB_INSTANCE

我还建议您从串行控制台查看日志以了解连接错误,您可以查看以下link 以了解更多信息以了解如何访问日志。

我建议您查看documentation 中所述的 SSH 故障排除步骤

此外,您可以查看以下documentation,其中解释了如何通过手动创建 SSH 密钥和编辑公共 SSH 密钥元数据来控制对 Linux 实例的访问。

希望这些信息对你有用

【讨论】:

  • 请检查我上面的 cmets 一次。 !我试图在评论中澄清更多。
  • 您是否尝试通过元数据连接到您的实例?您可以使用 Putty 或 Linux ssh 连接到您的实例,您只需创建一个 new SSH keyadd project-wide public SSH keys 即可为用户提供对 Linux 实例的一般访问权限。
  • 另外,您可以检查您的serial console port 1 以调试启动和网络问题,排除故障实例,如果您的安全外壳服务出现问题,您可以在此处查看。此外,您可以使用audit logs 来检查日志中是否有错误。
【解决方案2】:

这是一个我已经解决了一段时间的问题,至少对我来说似乎没有任何有效的解决方案。所以我希望这会有所帮助。

其实我并没有解决这个问题,而是找到了一个解决方法。这不会让您在 Web 浏览器上通过 SSH 访问,但至少您可以在本地计算机上通过 CLI 访问。解决方法是这样的:

  1. 您必须转到您的用户目录并检查您是否有这两个文件夹:.config.ssh
  2. .config 中,您必须检查gcloud 目录,并在其中查找2 个文件和1 个目录:分别为active_configgceconfigurations
  3. active_config 中应该写成default,在gce 中写True 并且在目录中,你需要一个名为config_default 的文件,里面必须什么都没写。
  4. 然后,在.ssh 中,你需要添加一个名为authorized_keys 的文件,并且应该有一个ssh 公钥文件,它是在你尝试access your VM by console 时创建的

如果您完成了这些步骤,您应该可以毫无问题地访问。如果您想从另一台计算机通过控制台访问您的虚拟机,您必须在您的虚拟机中添加一个与另一台计算机名称相同的用户,然后重复上述过程。

请记住,您第一次执行此过程应该是在您通过 GCP 上的 SSH 创建实例时,因为这样您第一次可以毫无问题地访问您的虚拟机

希望它可以帮助:)

【讨论】:

    猜你喜欢
    • 2020-12-04
    • 2021-05-21
    • 2011-09-01
    • 1970-01-01
    • 2016-04-17
    • 2019-04-26
    • 2015-02-16
    • 2017-07-26
    • 2017-09-11
    相关资源
    最近更新 更多