安装Windows 10后,我很难启动并运行我的SSH密钥。通常的方法是创建它并把它放在.ssh下的用户帐户中。该文件夹在Windows 10中似乎不可用。
还有其他人遇到吗?我需要为不同的存储库提供3个SSH密钥,这确实使我感到困惑。
安装Windows 10后,我很难启动并运行我的SSH密钥。通常的方法是创建它并把它放在.ssh下的用户帐户中。该文件夹在Windows 10中似乎不可用。
还有其他人遇到吗?我需要为不同的存储库提供3个SSH密钥,这确实使我感到困惑。
Answers:
cd
使用其他文件夹。ssh-keygen
/c/Users/YourUserName/.ssh/id_rsa.pub
ps:如果您通过bash集成安装了git(像我一样),请在第一步中打开“ Git Bash”而不是“ cmd”
ssh-keygen
ssh-keygen
在git-bash shell而不是cmd-shell中运行命令。
2019-04-07更新:我今天使用新版本的Windows 10(内部版本1809,“ 2018年10月的更新”)进行了测试,不仅开放的SSH客户端不再处于beta中,因为它已经安装。因此,您所需要做的就是创建密钥并将客户端设置为使用开放的SSH而不是putty(pagent):
ssh-keygen
并按Enter我在Git Extensions和Source Tree上进行了测试,它与我在GitHub中的个人仓库一起使用。如果您使用的是Windows早期版本,或者更喜欢使用SSH的图形客户端,请阅读以下内容。
2018-06-04 UDPATE:
在Windows 10上,从版本1709(win + R,然后键入winver
以查找内部版本号)开始,Microsoft发布了OpenSSH客户端和服务器的beta版。为了能够创建密钥,您需要安装OpenSSH服务器。为此,请按照下列步骤操作:
现在,您可以打开提示,ssh-keygen
并且客户端将被Windows识别。我还没有测试。如果您没有Windows 10或不想使用Beta,请按照以下说明使用腻子。
ssh-keygen
不随Windows一起安装。以下是使用Putty创建ssh密钥的方法:
对于openssh键,还需要执行几个步骤:
现在,密钥已保存。pagent
在此处启动并添加私钥(Putty格式的ppk文件)
请记住,pagent
必须运行身份验证才能正常工作
我发现一个明显的例外,在Windows 10中,如果文件名未在ssh-keygen生成器中指定,则使用所述路由仅将文件写入文件夹。
提供自定义密钥名称会导致包含RSA公钥和私钥的文件无法写入该文件夹。
ssh-keygen
c:/Users/YourUserName/.ssh/
(使用Admin Command Line和Windows 10 Pro)
:-/
创建私钥/公钥:
git bash
,PowerShell
,cmd.exe
等)ssh-keygen
~/.ssh/id_rsa
)RSA
is 3072
或以上您现在已经创建了一个私钥/公钥对。
对于GIT,密钥必须具有的强度2048
,必须位于用户.ssh
目录中,并且称为id_rsa
和id_rsa.pub
。将密钥粘贴到任何地方时,请确保使用不添加新行(如VIM)的程序。
如果您具有带有OpenSSH客户端的Windows 10,则可以生成密钥,但是由于ssh-copy-id命令不是客户端工具集的一部分,因此将密钥复制到目标Linux盒时会遇到麻烦。
遇到此问题后,我编写了一个小的PowerShell函数来解决此问题,然后将其添加到配置文件中。
function ssh-copy-id([string]$userAtMachine, [string]$port = 22) {
# Get the generated public key
$key = "$ENV:USERPROFILE" + "/.ssh/id_rsa.pub"
# Verify that it exists
if (!(Test-Path "$key")) {
# Alert user
Write-Error "ERROR: '$key' does not exist!"
}
else {
# Copy the public key across
& cat "$key" | ssh $userAtMachine -p $port "umask 077; test -d .ssh || mkdir .ssh ; cat >> .ssh/authorized_keys || exit 1"
}
}
你可以在这里找到要点
我在这里有简短的评论