我刚刚生成了我的 RSA 密钥对,我想将该密钥添加到 GitHub。
我尝试了 cd id_rsa.pub
和 id_rsa.pub
,但没有运气。如何访问我的 SSH 公钥?
pbcopy < ~/.ssh/id_rsa.pub
为我工作!检查此GitHub article
cat ~/.ssh/id_rsa.pub
或 cat ~/.ssh/id_dsa.pub
您可以通过以下方式列出您拥有的所有公钥:
$ ls ~/.ssh/*.pub
将密钥复制到剪贴板。
$ pbcopy < ~/.ssh/id_rsa.pub
# Copies the contents of the id_rsa.pub file to your clipboard
警告:在不添加换行符或空格的情况下准确复制密钥很重要。值得庆幸的是 pbcopy 命令可以轻松完美地执行此设置。
并将其粘贴到您需要的任何地方。
有关该过程的更多详细信息,请查看:Generating SSH Keys。
sudo apt-get install xclip -y
适用于没有 pbcopy
工作的用户。
sudo apt-get install -y xclip
后跟 alias pbcopy="xclip -sel clip"
然后 pbcopy < ~/.ssh/id_rsa.pub
或简单地 xclip -selection clipboard < ~/.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 密钥。
~/.ssh/
中。
ssh-add -L
是更好的选择,因为并非每个 SSH 密钥都是位于 ~/.ssh
文件夹中的 RSA 密钥。我更喜欢使用我的 PGP 密钥进行身份验证,因此我根本没有 ~/.ssh/id_rsa.pub
文件。
如果您使用的是 Windows,请使用以下内容,全选,然后从记事本窗口复制:
notepad ~/.ssh/id_rsa.pub
如果您使用的是 OS X,请使用:
pbcopy < ~/.ssh/id_rsa.pub
Mac、Ubuntu、Linux 兼容机器,使用此命令打印公钥,然后复制:
$ cat ~/.ssh/id_rsa.pub
以下是我在 OS X 上找到我的方法:
打开一个终端(您在主目录中) cd .ssh (一个隐藏目录) pbcopy < id_rsa.pub (这会将其复制到剪贴板)
如果这不起作用,请执行 ls
并查看其中带有 .pub
扩展名的文件。
在终端 cat ~/.ssh/id_rsa.pub
解释
cat 是一个标准的 Unix 实用程序,可以读取文件并打印输出 ~ 是您的主用户路径 /.ssh - 您的隐藏目录包含您的所有 ssh 证书 id_rsa.pub 或 id_dsa.pub 是 RSA 公钥,(位于客户端的私钥机器)。例如,主键可用于将项目从远程存储库安全地克隆到您的客户端。
生成 SSH 密钥后,您可以执行以下操作:
cat .ssh/id_rsa.pub |pbcopy
这会将您的 ssh 密钥复制到剪贴板中。
如果您使用的是 windows,则命令是:
键入 %userprofile%\.ssh\id_rsa.pub
它应该打印密钥(如果有的话)。您应该复制整个结果。如果不存在,则执行以下操作:
ssh-keygen -t rsa -C "your.email@example.com" -b 4096
如果您使用的是 Windows PowerShell,最简单的方法是:
cat ~/.ssh/id_<key-type-here>.pub | clip
这会将密钥复制到剪贴板以便于粘贴。
所以,在我的例子中,我使用 ed25519 因为 RSA 现在相当容易破解:
cat ~/.ssh/id_ed25519.pub | clip
因为我发现自己经常这样做,所以我创建了一个函数并设置了一个简单的别名,我可以在我的 PowerShell 配置文件中记住(了解有关 PowerShell 配置文件的更多信息 here。只需将其添加到您的 Microsoft.PowerShell_profile.ps1
中:
function Copy-SSHKey {
Get-Content ~/.ssh/id_ed25519.pub | clip
}
Set_Alias -Name sshkey -Value Copy-SSHKey
然后,在 PowerShell 控制台中,运行 . $profile
以加载函数。然后从现在开始,您只需运行 sshkey
,然后通过剪贴板将密钥粘贴到您需要的任何位置。
使用 gedit 打开您的 id_dsa.pub 或 some_name.pub 文件并复制粘贴内容!
只需使用:
~/.ssh$ gedit some_name.pub
利用:
# sudo su
# cd /home/user/.ssh
.ssh# gedit id_rsa.pub
然后复制整个文件,不带任何空格。单击 GitHub 页面右上角的图标,转到设置,然后添加 ssh。
将副本粘贴到空间中。它可能会提示您输入 GitHub 密码。输入它。节省。
以下命令会将 SSH 密钥保存在剪贴板上。您只需要粘贴到所需的位置。
cat ~/.ssh/id_rsa.pub | pbcopy
如果您只有私钥可用,则可以从中生成公钥:
ssh-keygen -y
或者
ssh-keygen -y -f path/to/private_key
可以在此路径(默认路径)上找到它:
/Users/john/.ssh
john
是您的 Mac 用户名。
在 UBUNTU +18.04
ssh-keygen -o -t rsa -b 4096 -C "email@example.com"
之后只需复制和粘贴
cat ~/.ssh/id_rsa.pub
或者
cat ~/.ssh/id_dsa.pub
打开终端 nano ~/.ssh/id_rsa.pub
在 Mac 上,您可以执行此操作将其复制到剪贴板(例如 cmd + c
快捷方式)
cat ~/Desktop/ded.html | pbcopy
pbcopy < ~/.ssh/id_rsa.pub
并粘贴 pbpaste > ~Documents/id_rsa.txt
或者,使用 cmd + v
快捷方式将其粘贴到其他位置。
~/.ssh
与 /Users/macbook-username/.ssh
的路径相同
您可以在终端上使用 Print work directory: pwd
命令获取当前目录的路径。
我在 Windows 上使用 Git Bash。
$ eval $(ssh-agent -s) //激活连接
一些输出
ssh-add ~/.ssh/id_rsa //添加身份
其他一些输出
clip < ~/.ssh/id_rsa.pub //这是最重要的。这会将您的密钥添加到剪贴板。回到 GitHub 并将其粘贴进去,瞧!你应该很高兴。
在 Mac/unix 和 Windows 上:
ssh-keygen
然后按照提示进行操作。它会询问您文件的名称(例如,您将其称为 pubkey)。马上,您应该可以看到您的钥匙指纹和钥匙的 randomart 图像。
然后只需使用您喜欢的文本编辑器并输入命令 vim pubkey.pub
,它(您的 ssh-rsa 密钥)就应该在那里。
用 emacs 或您拥有/喜欢的任何其他编辑器替换 vim。
id_rsa.pub
不是目录,因此您不能使用 cd
打开它。
相反,您可以使用命令 cd ~/.ssh
访问包含您的密钥的文件夹,然后使用 cat id_rsa.pub
、nano id_rsa.pub
或 gedit id_rsa.pub
访问密钥文件。
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
ssh-add
用法的答案,您能否提供更多细节以使您的答案更加独特?否则它可能会被标记为重复的答案(这不是一件坏事,只是 stackoverflow 中的一个整理过程)。话虽如此,我建议您检查所有现有答案,以了解您将来的想法是否有任何重叠。 StackOverflowing 快乐!
不定期副业成功案例分享
type
命令。或者只是在记事本中打开 .pub 文件并将其粘贴到 github。cat ~/.ssh/id_rsa.pub