我刚刚生成了RSA密钥对,我想将该密钥添加到GitHub。

我尝试了cd id_rsa.pub和id_rsa.php,但没有成功。如何访问SSH公钥?


当前回答

ssh-add用于显示公钥。

man ssh添加

-L  Lists public key parameters of all identities currently repre‐
    sented by the agent.

在我的Linux系统上,我使用xclip复制它

ssh-add -L | xclip

其他回答

将密钥复制到剪贴板。

$ pbcopy < ~/.ssh/id_rsa.pub
# Copies the contents of the id_rsa.pub file to your clipboard

警告:在不添加换行或空白。谢天谢地,pbcopy命令使完美地执行此设置。

并将其粘贴到需要的位置。

有关该过程的更多详细信息,请参阅:生成SSH密钥。

cat~/.ssh/id_rsa.pub或cat~//ssh/id_dsa.pub

您可以通过以下操作列出所有公钥:

$ls~/.ssh/*.pub

它可以在以下路径(默认路径)上找到:

/Users/john/.ssh

john是您的Mac用户名。

如果您使用的是Windows PowerShell,最简单的方法是:

cat ~/.ssh/id_<key-type-here>.pub | clip

这会将密钥复制到剪贴板以便于粘贴。

因此,在我的例子中,我使用了ed25519,因为RSA现在相当容易被破解:

cat ~/.ssh/id_ed25519.pub | clip

因为我发现自己经常这样做,所以我创建了一个函数并设置了一个可以在PowerShell配置文件中记住的简单别名(在此处了解有关PowerShell配置文件的更多信息。只需将此添加到Microsoft.PowerShell_profile.ps1:

function Copy-SSHKey {
    Get-Content ~/.ssh/id_ed25519.pub | clip
}

Set_Alias -Name sshkey -Value Copy-SSHKey

然后,在PowerShell控制台中运行$配置文件以加载函数。从现在起,您需要做的就是运行sshkey,然后通过剪贴板将密钥粘贴到需要的位置。

以下命令将SSH密钥保存在剪贴板上。您只需在所需位置粘贴即可。

cat ~/.ssh/id_rsa.pub | pbcopy