如何将授权密钥添加到 Google 计算实例

如果您使用 Google Compute Engine 来运行您的应用程序,您可能希望允许特定用户通过 SSH 访问您的实例。为此,您必须向您的 Google 计算实例添加授权密钥。

本文将指导您完成将授权密钥添加到您的 Google 计算实例所需的步骤。

Google Compute Engine 是一个强大的云计算平台,允许您在虚拟机 (VM) 上运行您的应用程序。

VM 实例是预配置的模板,可让您快速创建和运行实例。

您可以使用 Google Cloud 控制台或命令行界面配置和管理您的实例。

如何将授权密钥添加到 Google 计算实例

设置您的授权密钥:

现在您已经生成了 SSH 密钥对,您必须将公钥添加到 Google Compute Engine 实例。

这样做可以让你 连接到实例 使用您的私钥。

有几种方法可以完成此操作,但我们将使用 Google Cloud Platform Console。如果您还没有这样做,请前往 谷歌云控制台 并创建一个项目。

创建项目后,从左侧菜单中选择 Compute Engine,然后单击元数据。在页面顶部,从下拉菜单中选择 SSH Keys,然后单击 Add Item。

在弹出框中,输入您的密钥名称并将您的公钥粘贴到值字段中。在您的电子邮件地址中包含 ssh-rsa 前缀和结尾注释。完成后,单击添加。

您现在应该会在 SSH 密钥下看到新的 SSH 密钥。您可以通过重复这些步骤来添加密钥,或者通过单击每个条目旁边的相应按钮来编辑/删除现有密钥。

使用元数据 API 管理 SSH 密钥

您可以使用元数据 API 来管理 Google Compute Engine 的 SSH 密钥。元数据 API 使您能够添加、删除和列出项目实例的 SSH 密钥。

您还可以使用元数据 API 来指定应将哪些 SSH 密钥用于特定实例。

添加授权密钥:
要添加授权密钥,您需要在请求中指定以下值:

  • 要添加 SSH 密钥的实例的名称。
  • 您要添加的公钥。这应该是标准的 ssh-rsa 格式。
  • 公钥的指纹。这可以使用 ssh-keygen 命令生成。

删除授权密钥:
要删除授权密钥,您需要在请求中指定以下值:

  • 要从中删除 SSH 密钥的实例的名称。
  • 您要删除的公钥。这应该是标准的 ssh-rsa 格式。
  • 公钥的指纹。这可以使用 ssh-keygen 命令行工具生成。

创建密钥对

Google Compute Engine 使用公钥密码术来加密和解密登录信息。

您的私钥存储在本地计算机上,应妥善保管。您的公钥会上传到 Google Compute Engine 并用于验证您的登录。

您将需要使用诸如 ssh-keygen 之类的工具来生成密钥对。这将创建一个私钥和公钥对以上传到 Google Compute Engine。

创建密钥对时,必须使用强密码。强密码很难猜测或暴力破解。

组合大小写字母、数字和符号是创建强密码短语的绝佳方式。

生成密钥对后,您必须将公共关键部分上传到 Google Compute Engine。

您可以登录 Google Cloud Platform Console 并访问 VM Instances 页面。

从那里,选择您要为其添加授权密钥的实例,然后单击“编辑”按钮。在授权密钥部分,粘贴您的公钥并单击保存。

设置 Keystone 和 SSH 密钥环

在将授权密钥添加到您的 Google Compute Engine 实例之前,您必须设置 keystone 和 SSH 密钥环。就是这样:

  1. 创建一个名为“基石” 在您的主目录中。 $ touch ~/梯形校正
  2. 将以下行添加到文件中,将“和”替换为适合您帐户的值:[auth]
    用户名 =
    项目名称=
  3. 保存并关闭文件。
  4. 使用 ssh-keygen 创建新的 SSH 密钥对: $ ssh-keygen -t rsa -f ~/.ssh/ -C @
  5. 出现提示时输入密码。这将用于加密您的私钥;确保选择一个您不会忘记的强密码! $ 输入密码:*
    确认密码:*
  6. 接下来,我们会将新生成的公钥添加到 Google Compute Engine 实例。登录 GCE 控制台,选择包含您的实例的项目,然后单击“计算“ 标签。然后,单击“网络”,然后单击“SSH 密钥”点击“添加 SSH 密钥“ 按钮。
  7. 在里面 ”姓名”字段,为密钥输入一个好记的名称。在里面 ”公钥”字段,输入您的公钥内容(位于 ~/.ssh/id_rsa.pub)并单击“添加.”
  8. 最后,使用 ssh-add 保存您的 SSH 密钥环: $ ssh-add ~/.ssh/

验证公钥

假设您已经生成了公钥/私钥对,下一步就是验证公钥。有两种主要方法可以做到这一点:

  • 手动检查 SSH 指纹: 当你第一次连接到服务器时,你会看到一个 SSH 指纹。将此指纹与服务器网站或其文档中列出的指纹进行比较。如果它们匹配,您可以确信您正在连接到正确的服务器。
  • 使用 known_hosts 文件: known_hosts 文件包含您之前连接到的所有服务器的列表。当您连接到新服务器时,它的指纹将与您的 known_hosts 文件中的指纹进行比较。如果匹配,您可以在没有任何警告的情况下连接。如果没有匹配项,您将收到警告,并可以选择继续或取消连接。

如何将授权密钥添加到 Google 计算实例

要将授权密钥添加到您的 Google 计算实例,您需要执行以下步骤:

  1. 登录到您的 Google Cloud 控制台并浏览 VM 实例页面。
  2. 选择要添加授权密钥的实例,然后单击“编辑”按钮。
  3. 滚动到“SSH 密钥”部分,然后单击“添加项目”按钮。
  4. 在文本框中,粘贴要添加的公钥。
  5. 单击“保存”按钮以保存更改。

就是这样!现在您已将授权密钥添加到您的 Google 计算实例,您可以使用它通过 SSH 登录。

值得注意的是,SSH 密钥由公钥和私钥组成。公钥被添加到您的谷歌计算实例,而私钥保存在您的本地机器上。

当您通过 SSH 登录时,您的本地计算机使用私钥通过实例上的公钥进行身份验证。

要创建 SSH 密钥,您可以在本地计算机上使用 ssh-keygen 命令。这将生成一个公钥/私钥对,您可以使用该密钥对您的 Google 计算实例进行身份验证。

除了向您的实例添加授权密钥外,您还可以从 Google Cloud 控制台查看和管理您的实例元数据。

实例元数据是实例上运行的应用程序可用的有关实例的信息集合。

要查看您的实例元数据,您可以在 Cloud 控制台中使用以下命令:

curl "http://metadata.google.internal/computeMetadata/v1/instance/?recursive=true" -H "Metadata-Flavor: Google"

这将显示与您的实例关联的所有元数据的列表。

如果你想在项目范围内创建 SSH 密钥,请将其添加到项目的“元数据”部分。这将允许您在项目中的所有实例中使用相同的 SSH 密钥。

结论:

总之,向您的 Google 计算实例添加授权密钥非常简单。

按照本文中概述的步骤,您可以快速将 SSH 密钥添加到您的实例并允许特定用户访问它。

请记住确保您的私钥安全可靠,并根据需要配置您的实例元数据。考虑到这些最佳实践,您可以自信地享受 Google Compute Engine 的优势。

简体中文