我正在尝试自动化订购Linux实例的过程,并在实例级别处理ssh密钥。
是否可以使用gcloud命令行为其他用户生成ssh密钥文件(不对其进行ssh,即自动生成密钥)。
对于Windows实例,它看起来像这样: 我自动化实例创建 我自动生成Windows实例的Windows密码 我将新生成的密码通过电子邮件发送给请求用户
对于Linux: 我已经自动创建了linux实例 但是我接下来要做什么为另一个特定用户名生成一个ssh密钥,以便我可以在电子邮件中附加给请求用户。用户无权访问GCE仪表板。
使用AWS非常简单,因为我在实例之前创建了密钥并且可以附加这些密钥,但是不知道如何用GCE解决这个自动化问题。
帮助?!
由于
答案 0 :(得分:0)
请查看"Adding and Removing SSH Keys"的说明,在此汇总:
$ # Creating a new SSH key-pair with the correct format (`USERNAME` is your Google username
$ ssh-keygen -t rsa -f ~/.ssh/[KEY_FILE_NAME] -C [USERNAME]
$ # Edit the file. It should look like the following line:
$ # [USERNAME]:ssh-rsa [KEY_VALUE] [USERNAME]
$ vim ~/.ssh/[KEY_FILE_NAME]
$ # Get the existing metadata for the instance:
$ gcloud compute instances describe [INSTANCE]
$ # Look for the "metadata" -> "ssh-keys" entry and merge your new SSH key in.
$ vim all_keys.txt # This is where the merged key list goes
$ gcloud compute instances add-metadata [INSTANCE_NAME] \
- 元文件来自文件ssh-keys = all_keys.txt
该链接包含用于添加到期时间,将密钥添加到整个项目,阻止项目范围的密钥处理实例,使用云控制台而不是gcloud,在Windows上执行此操作等的高级说明。
尽管如此,我建议您在通过电子邮件发送SSH私钥时谨慎使用。