如何访问我的SSH公钥?

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

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

1575433 次浏览

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

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

$ ls ~/.ssh/*.pub

将密钥复制到剪贴板。

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

警告:完全复制密钥而不添加密钥是很重要的值得庆幸的是,pbpedia命令可以轻松地完美地执行此设置。

粘贴到任何你需要的地方。

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

使用gedit打开id_dsa.pub或some_name.pub文件并复制粘贴内容!

只需使用:

~/.ssh$ gedit some_name.pub

这是我在OS X上找到的:

  1. 打开终端
  2. (您在主目录中)cd .ssh(隐藏目录)
  3. pbCopy

如果这不起作用,请执行ls并查看具有.pub扩展名的文件。

打开终端id_rsa.pub

生成SSH密钥后,您可以执行以下操作:

cat .ssh/id_rsa.pub |pbcopy

它会将您的ssh密钥复制到剪贴板中。

如果您使用的是Windows,请使用以下命令,选择全部,然后从记事本窗口复制:

notepad ~/.ssh/id_rsa.pub

如果您使用的是OS X,请使用:

pbcopy < ~/.ssh/id_rsa.pub

您可以尝试运行以下命令来显示您的RSA指纹:

ssh-agent sh -c 'ssh-add; ssh-add -l'

或公钥:

ssh-agent sh -c 'ssh-add; ssh-add -L'

如果您收到消息:“代理没有身份”,那么您必须首先通过ssh-keygen生成RSA密钥。

用途:

# sudo su# cd /home/user/.ssh.ssh# gedit id_rsa.pub

然后复制整个文件,不带任何空格。单击GitHub页面右上角的图标,转到设置,然后添加ssh。

将副本粘贴到空间中。它可能会提示输入您的GitHub密码。输入它。保存。

如果您使用的是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控制台中,运行. $profile以加载函数。然后从现在开始,您需要做的就是运行sshkey,然后通过剪贴板将密钥粘贴到您需要的任何位置。

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

/Users/john/.ssh

john是您的Mac用户名。

在Mac上,您可以这样做将其复制到剪贴板(如cmd + c快捷方式)
cat ~/Desktop/ded.html | pbcopy
pbcopy < ~/.ssh/id_rsa.pub

并粘贴pbpaste > ~Documents/id_rsa.txt

或者,使用cmd + v快捷方式#36825;到别的地方去

~/.ssh/Users/macbook-username/.ssh的路径相同
您可以使用终端上的打印工作目录:pwd命令获取当前目录的路径。

如果您使用的是Windows,则命令为:

type %userprofile%\.ssh\id_rsa.pub

it should print the key (if you have one). You should copy the entire result.If none is present, then do:

ssh-keygen -t rsa -C "your.email@example.com" -b 4096

以下命令将保存剪贴板上的SSH键。您只需粘贴到所需位置即可。

cat ~/.ssh/id_rsa.pub | pbcopy

在终端cat ~/.ssh/id_rsa.pub

解释

  1. 是一个标准的Unix实用程序,用于读取文件和打印输出
  2. ~是您的主用户路径
  3. /.ssh-您的隐藏目录包含所有ssh证书
  4. id_rsa.pubid_dsa.pub是RSA公钥(位于客户端机器上的私钥)。例如,主键可用于启用从远程存储库安全地克隆项目到您的客户端终端。

在UBUNTU+18.04

         ssh-keygen -o -t rsa -b 4096 -C "email@example.com"

然后只是复制和粘贴

         cat ~/.ssh/id_rsa.pub

         cat ~/.ssh/id_dsa.pub

我在我的Windows上使用Git Bash。

$ava$(ssh-agent-s)//激活连接

  • 一些输出

$ssh-add~/. ssh/id_rsa//添加标识

  • 一些其他输出

$剪辑<~/. ssh/id_rsa.pub//这是最重要的一个。这会将您的密钥添加到剪贴板。回到GitHub并将其粘贴进去,瞧!你应该可以走了。

在Mac/unix和Windows上:

ssh-keygen然后按照提示进行操作。它会询问您文件的名称(例如,您将其称为pubkey)。马上,你应该有你的钥匙指纹和你的钥匙的随机图像可见。

然后只需使用您最喜欢的文本编辑器并输入命令vim pubkey.pub,它(您的ssh-rsa密钥)应该就在那里。

用emacs或您拥有/喜欢的任何其他编辑器替换vim。

如果您只有私人密钥可用,您可以从中生成公钥:

ssh-keygen -y

ssh-keygen -y -f path/to/private_key

Mac,Ubuntu,Linux兼容的机器,使用此命令打印公钥,然后复制它:

$ cat ~/.ssh/id_rsa.pub

只是为了给这个问题一个新的视角,如果你使用github,你可以在以下位置找到你的公钥:https://github.com/${USERNAME}. key

ssh-add用于显示公钥。

man ssh-add

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

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

ssh-add -L | xclip

id_rsa.pub不是目录,因此您无法使用cd打开它。

相反,您可以使用命令cd ~/.ssh访问包含密钥的文件夹,然后使用cat id_rsa.pubnano id_rsa.pubgedit id_rsa.pub访问密钥文件。