gpt4 book ai didi

ssh - 如何访问 Google Cloud Platform Compute Engine VM 实例的 SSH key ?

转载 作者:行者123 更新时间:2023-12-03 07:02:20 28 4
gpt4 key购买 nike

我通过 Google Cloud Web 控制台从 CentOS 6.x 镜像创建了一个新实例。我在创建表单上看到一个空白,我可以在其中粘贴现有的 SSH key ;因为这是我的第一个实例,所以我还没有。我以为它会像 Amazon EC2 一样引导我完成 key 创建过程。但事实并非如此。

该实例似乎已创建,但我不知道如何获取它的 SSH key 。实例网页有一个显示“SSH”的按钮,它让我可以通过模拟 SSH session 的弹出式 Web 浏览器窗口短暂登录。但是,它只让我进入用户级帐户,而不是root。弹出窗口有一个菜单项可以更改用户,将其更改为 root 只会生成连接错误。现在我根本无法登录我的实例!

我进行了搜索,但找不到任何直接的文档来解释 Google 计算实例的这一方面。

我是否必须手动创建自己的 SSH key 并在实例创建期间将其粘贴到表单中?我是否遗漏了一个明显的步骤?

最佳答案

默认情况下,新的 Google 计算引擎 (GCE) 虚拟机实例没有预先分配 SSH key ,因此您无法“检索”它们,因为它们不存在 - 由您来创建它们,或者使用类似 gcloud 的工具(见下文)如果您还没有 SSH key ,它将提示您创建它们。

您有多种连接到新创建的 GCE VM 的选项。

一种选择是使用开发者控制台 GUI 中实例列表中实例旁边的“SSH”按钮进行连接,这将打开浏览器窗口和到该实例的终端 session 。

如果您想在命令行上通过 SSH 客户端连接,可以使用 gcloud工具( Google Cloud SDK 的一部分):

gcloud compute ssh example-instance

您可以在 gcloud compute ssh 上看到完整的标志和选项集。帮助页面,以及几个示例。

如果您还没有 SSH key ,它将提示您创建它们,然后连接到实例。如果您已有 key ,则可以使用现有的 SSH key ,它将传输到实例。

默认情况下,gcloud期望 key 位于以下路径:

  • $HOME/.ssh/google_compute_engine – 私钥
  • $HOME/.ssh/google_compute_engine.pub – 公钥

如果您想使用 gcloud 重复使用不同位置的 key ,考虑创建符号链接(symbolic link)或指向 gcloud在那里使用 --ssh-key-file 标志。

注意:如果您不使用 gcloud无论如何,您必须手动将 SSH key 添加到实例的元数据中,如 Setting up ssh keys at the instance level 中所述。您可以通过 gcloud 执行此操作或通过Google Cloud console手动.

您还可以使用 ssh-keygen 创建自己的 key 这是什么gcloud也将在被子下使用。您可以连接到实例using ssh directly而不是gcloud但您需要指定额外的参数才能执行此操作:

ssh -i KEY_FILE -o UserKnownHostsFile=/dev/null \
-o CheckHostIP=no -o StrictHostKeyChecking=no \
USER@IP_ADDRESS

这将需要以下参数:

  • KEY_FILE – [必填] 计算机上存储 key 的文件,例如~/.ssh/google_compute_engine .

  • USER – [必需] 登录该实例的用户名。通常,这是运行 gcloud compute 的本地用户的用户名.

  • IP_ADDRESS – [必填] 实例的外部IP地址。

有关更多详细信息,请参阅 SSH docs .

关于ssh - 如何访问 Google Cloud Platform Compute Engine VM 实例的 SSH key ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27535945/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com