【问题标题】:How to add ssh key to project in GCP如何将 ssh 密钥添加到 GCP 中的项目
【发布时间】:2020-05-11 02:33:09
【问题描述】:

我正在尝试将我的公共 ssh 密钥添加到我的项目中,但似乎无法使其工作。 根据文档:https://cloud.google.com/compute/docs/instances/adding-removing-ssh-keys?hl=fr#project-wide;创建我的 ssh txt 文件后,我需要使用命令:

gcloud compute project-info add-metadata --metadata-from-file ssh-keys=[LIST_PATH]

我将我的 ssh txt 文件命名为“ssh.txt”,而我的完整路径是:C:\Users\33768\Desktop\ssh.txt。

我尝试了以下命令:

gcloud compute project-info add-metadata --metadata-from-file ssh-keys=C:\Users\33768\Desktop\ssh.txt
gcloud compute project-info add-metadata --metadata-from-file ssh-keys="C:\Users\33768\Desktop\ssh.txt"
gcloud compute project-info add-metadata --metadata-from-file ssh-keys=C:/Users/33768/Desktop/ssh.txt
gcloud compute project-info add-metadata --metadata-from-file ssh-keys="C:/Users/33768/Desktop/ssh.txt"

然而,他们都没有工作,错误是:

ERROR: (gcloud.compute.project-info.add-metadata) Unable to read file [LIST_PATH]: [Errno 2] No such file or directory: [LIST_PATH]

我用 [LIST_PATH] 替换了命令行工具显示的实际列表路径。 请有人帮忙,我快疯了。 谢谢。

【问题讨论】:

  • 元数据文件需要特定格式。 ssh.txt 的内容是什么?隐藏实际键的掩码。

标签: ssh google-cloud-platform


【解决方案1】:

谢谢大家。 我实际上找到了为什么它不起作用。我在 Windows 上使用了 ubuntu,这弄乱了我的文件夹的路径。在 ubuntu 终端内,我无法访问本地计算机中不在我的 ubuntu 文件夹中的文件夹。 刚刚在 ubuntu 终端之外运行我的命令,它就起作用了!

【讨论】:

    【解决方案2】:

    从您的帖子中,我看到您使用 Windows。我不知道您是如何生成密钥的,所以我将从这个过程开始写下所有内容。

    下载 Putty(它还包括 PuttyGen)。运行 PuttyGen,将“comment”字段更改为您的 username@somemachine,然后单击“Generate”按钮。经过一些“鼠标移动”后,您将获得您的个人 SSH 密钥,如下所示:

    ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAtJqgJA1MLB7ZqIL+xF0cnZaXyGW9LYxlyj/JrK/eOkgvRN36zI7xJc1ML5uO2Hn+EPiTwKO5+0xmwomZKnu2nrCsuZzQZakGWHiyKBYSQ1x+l+PqISOniiHOGTHc0p//lwbCLKO7bUUYuS2+7Uw3lNhKytnNA7WbcfMmm+NTH2C8ZdWptWaGmX/Yt1kdUKFCyTLAlXqdoNyr4QssdaMo4BY07JUrYHGN8Uzt7/Knd6zqqsK4Hzf0lTzxYdiuP3Y6qYBcAMtLs7iaEibu8r/i1Js7DpSHQTUYbQ6lWBk7p1yI8XJ809FTXLy20doF3ElQjBrqk/dkDk1p3AV2RlplYQ== username@somemachine
    

    单击“保存公钥”并将其保存在某个目录中。之后“保存私钥” - 最好保存到同一目录。

    您的密钥已生成并保存。

    现在 - 将它们添加到您的 GCP 项目中。最简单的方法是:

    • 控制台 - 转到 Compute Engine > 元数据 > SSH Keys - 点击“编辑”按钮,然后点击“添加项目”。将整个 SSH 密钥字符串复制到此框中,然后点击“保存”。
    • gcloud SDK - gcloud compute project-info add-metadata --metadata-from-file ssh-keys=your_file_name/name/and/path - 添加时您可能会收到警告 The following key(s) are missing the <username> at the front - 不用担心 - 它们仍然可以工作。

    如有疑问,请阅读文档how to add private SSH-keys to your GCP project。有点长,但都解释得很详细。

    此外 - 我在 Linux 上生成了密钥,以相同的方式将它们添加到我的项目中,它也可以工作。

    【讨论】:

      【解决方案3】:

      @John Hanley:[LIST_PATH] 或在本例中为 ssh.txt,是单个文件中所有公钥 (.pub) 的串联,以作为元数据上传。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-10-11
        • 1970-01-01
        • 2018-03-15
        • 2016-12-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多