ssh-keygen - 如何使用特定用户名设置 rsa 密钥

问题描述 投票:0回答:3

我刚刚安装了 ubuntu,想使用 bitbucket/github 设置它的 rsa 密钥。当我 ssh-keygen 时,密钥会按应有的方式生成

ssh-rsa AA...yBEz3pLL georgemauer@ubuntu

除了用户名部分之外,它完全可用。在我之前生成的每个 rsa 密钥中,用户名部分读取我的电子邮件地址:

ssh-rsa AA...yBEz3pLL [email protected]

不,这不是一个主要障碍,但如果我做不好,它会让我发疯。如何使用 rsa 密钥和我选择的电子邮件用户名生成?

linux ubuntu ssh rsa ssh-keys
3个回答
62
投票

使用

-C
选项通过您的密钥提供新评论。这是一个示例:

ssh-keygen -t rsa -b 4096 -C "[email protected]" -f ./my-ssh.key

23
投票

说明: 一般来说,ssh 公钥中的最后一个字符串将是一条注释,默认配置为您的

user@host
。您可以通过添加
-C
参数来覆盖此注释并编辑此字符串。

例如在默认行为中,假设 - 如果您的Linux主机名是

Ubuntu 
并且您的用户名是
john.doe
,当您观看公钥执行
cat ~/.ssh/id_rsa.pub
时,您会看到类似这样的内容:

ssh-rsa <someReallyBigToken>== john.doe@ubuntu

文档:

ssh-keygen 默认情况下将以 OpenSSH 特定格式写入密钥。 这种格式是首选,因为它可以更好地保护密钥 休息并允许存储密钥 私钥文件本身中的注释。 关键注释可能有助于识别关键评论初始化为 ``user@host'' 创建密钥时,但是 可以使用 -c 选项进行更改。

解决方案:覆盖此注释并使用

-C
参数进行注释。

ssh-keygen -t rsa -b 4096 -C message-in-a-bottle
cat ~/.ssh/id_rsa.pub

// output:
ssh-rsa <someReallyBigToken>== message-in-a-bottle

22
投票
ssh-keygen -t rsa -f ~/.ssh/[KEY_FILENAME] -C [USERNAME]

我使用此命令生成 SSH 密钥,以生成 GitHub、GitLab 和 GCP。 这里是使用用户名创建 SSH 密钥的文档。

© www.soinside.com 2019 - 2024. All rights reserved.