我刚刚生成了我的RSA密钥对,我想将该密钥添加到GitHub。
我尝试了cd id_rsa.pub
和id_rsa.pub
,但没有运气。如何访问SSH公钥?
答案 0 :(得分:743)
cat ~/.ssh/id_rsa.pub
或cat ~/.ssh/id_dsa.pub
您可以列出以下所有公钥:
$ ls ~/.ssh/*.pub
答案 1 :(得分:156)
将密钥复制到剪贴板。
$ pbcopy < ~/.ssh/id_rsa.pub
# Copies the contents of the id_rsa.pub file to your clipboard
警告:在不添加的情况下完全复制密钥非常重要 换行符或空格。值得庆幸的是,pbcopy命令使其变得容易 完美地执行此设置。
您可以将它粘贴到您需要的任何地方。
要更好地了解整个过程,请查看:Generating SSH Keys。
答案 2 :(得分:35)
您可以尝试运行以下命令来显示RSA指纹:
ssh-agent sh -c 'ssh-add; ssh-add -l'
或公钥:
ssh-agent sh -c 'ssh-add; ssh-add -L'
如果你有消息:'代理没有身份',那么你首先要ssh-keygen
生成你的RSA密钥。
答案 3 :(得分:28)
如果您使用的是Windows,请选择全部,然后从记事本窗口中复制:
notepad ~/.ssh/id_rsa.pub
如果您使用的是OS X,请使用:
pbcopy < ~/.ssh/id_rsa.pub
答案 4 :(得分:17)
如果您的.ssh文件夹没有任何id_rsa.pub
文件,则可以使用 ssh-keygen 命令创建该文件。
答案 5 :(得分:14)
以下是我在OS X上找到的方法:
cd .ssh
(隐藏目录)如果这不起作用,请执行ls
并查看其中包含.pub
扩展名的文件。
答案 6 :(得分:9)
生成SSH密钥后,您可以执行以下操作:
cat .ssh/id_rsa.pub |pbcopy
将ssh密钥复制到剪贴板中。
答案 7 :(得分:8)
如果您使用的是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
,然后通过剪贴板将密钥粘贴到您需要的任何位置。
答案 8 :(得分:7)
使用gedit打开id_dsa.pub或some_name.pub文件并复制粘贴内容!
只需使用:
~/.ssh$ gedit some_name.pub
答案 9 :(得分:6)
在cat ~/.ssh/id_rsa.pub
终端上
说明
答案 10 :(得分:6)
使用:
# sudo su
# cd /home/user/.ssh
.ssh# gedit id_rsa.pub
然后复制整个文件,没有任何空格。单击GitHub页面右上角的图标,转到设置,然后添加ssh。
将副本粘贴到空间中。它可能会提示您输入GitHub密码。输入它。保存。
答案 11 :(得分:5)
可在此路径(默认路径)上找到:
/Users/john/.ssh
john
是您的Mac用户名。
答案 12 :(得分:5)
以下命令将SSH密钥保存在剪贴板上。您只需要粘贴到所需的位置。
cat ~/.ssh/id_rsa.pub | pbcopy
答案 13 :(得分:3)
如果您正在使用Windows,则命令为:
type %userprofile%\.ssh\id_rsa.pub
&#13;
它应该打印密钥(如果有的话)。您应该复制整个结果。 如果不存在,则执行:
ssh-keygen -t rsa -C "your.email@example.com" -b 4096
&#13;
答案 14 :(得分:2)
在Mac上,您可以将其复制到剪贴板(例如cmd + c
快捷方式)
cat ~/Desktop/ded.html | pbcopy
pbcopy < ~/.ssh/id_rsa.pub
并粘贴
pbpaste > ~Documents/id_rsa.txt
或者,使用cmd + v
shorcut
将它粘贴到其他地方。
~/.ssh
与/Users/macbook-username/.ssh
的路径相同
您可以在终端上使用打印工作目录:pwd
命令来获取当前目录的路径。
答案 15 :(得分:2)
打开终端 nano~ / .ssh / id_rsa.pub
答案 16 :(得分:2)
在UBUNTU中+18.04
<GridViewColumn Header="{x:Static p:Resources.Name}" Width="100">
<GridViewColumn.CellTemplate>
<DataTemplate>
<Grid>
<TextBlock Text="{Binding Path=Name}" Tag="{Binding Name}"/>
<Rectangle Fill="Transparent" ToolTipService.ToolTip="{Binding Path=ToolTipModifications}" MouseEnter="UIElement_OnMouseEnter"/>
</Grid>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
然后复制并粘贴
private void UIElement_OnMouseEnter(object sender, MouseEventArgs e)
{
if (sender is Rectangle rectangle)
{
if (string.IsNullOrEmpty(rectangle.ToolTip.ToString()))
{
rectangle.Visibility = Visibility.Collapsed;
}
}
}
或
ssh-keygen -o -t rsa -b 4096 -C "email@example.com"
答案 17 :(得分:1)
在Mac / unix和Windows上:
ssh-keygen
,然后按照提示进行操作。它将询问您文件的名称(例如,您称它为pubkey)。
立即,您应该可以看到密钥指纹和密钥的randomart图像。
然后只需使用您喜欢的文本编辑器并输入命令vim pubkey.pub
,它(您的ssh-rsa密钥)就应该在其中。
用emacs或您拥有的/喜欢的任何其他编辑器替换vim。
答案 18 :(得分:1)
如果只有私有密钥可用,则可以从中生成公共密钥:
ssh-keygen -y
或
ssh-keygen -y -f path/to/private_key
答案 19 :(得分:0)
我在Windows上使用Git Bash。
$ eval $(ssh-agent -s)//激活连接
$ ssh-add〜/ .ssh / id_rsa //添加身份
$ clip <〜/ .ssh / id_rsa.pub //这是重要的一个。这会将您的密钥添加到剪贴板。返回GitHub并将其粘贴,然后贴吧!你应该很好。
答案 20 :(得分:0)
Mac、Ubuntu、Linux兼容机器,用这个命令打印公钥,然后复制:
$ cat ~/.ssh/id_rsa.pub
答案 21 :(得分:0)
为了给这个问题提供一个新的视角,如果您使用 github,您可以在以下位置找到您的公钥:https://github.com/${USERNAME}.keys