使用ssh-keygen创建SSH密钥不会创建.ssh文件夹

Cha*_*let 21 git ssh version-control mingw unfuddle

我正在尝试使用msysgit创建我的公共/私有rsa密钥对

我运行这个命令:

ssh-keygen -C "email@email.com" -t rsa
Run Code Online (Sandbox Code Playgroud)

一切都很好,我有消息

Enter file in which to save the key (/c/Users/user/.ssh/id_rsa)
Run Code Online (Sandbox Code Playgroud)

然后我得到确认:

Your public key has been saved in project.pub
Run Code Online (Sandbox Code Playgroud)

但我无法访问该文件夹!它不存在,甚至不是隐藏文件夹.我不明白为什么它不生成.我正在使用Windows 7旗舰版.

Von*_*onC 29

刚创建我的密钥没有任何问题(Seven Ultimate 64bits,msysgit 1.6.5.1.1367.gcd48)

$ ssh-keygen -C "vonc@xxxx" -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/VonC/.ssh/id_rsa):# just press enter
                                                                # to accept the
                                                                # default location
Enter passphrase (empty for no passphrase):                     
Enter same passphrase again:
Your identification has been saved in /c/Users/VonC/.ssh/id_rsa.
Your public key has been saved in /c/Users/VonC/.ssh/id_rsa.pub.
The key fingerprint is:
xx:yy:zz:aa:bb:cc:... vonc@xxxx
Run Code Online (Sandbox Code Playgroud)

结果如下:

VonC@P ~/.ssh
$ ls -alrt
total 10
-rw-r--r--    1 VonC Administ      642 May 23 21:47 known_hosts
drwxr-xr-x   43 VonC Administ    16384 Jun 15 17:01 ..
-rw-r--r--    1 VonC Administ      398 Jun 19 16:14 id_rsa.pub
-rw-r--r--    1 VonC Administ     1675 Jun 19 16:14 id_rsa
drwxr-xr-x    2 VonC Administ        0 Jun 19 16:14 .
Run Code Online (Sandbox Code Playgroud)

你能检查你的bash会话你的$HOME环境变量设置了什么值?

VonC@P ~/.ssh
$ env|grep HOME
HOMEPATH=\Users\VonC
HOME=/c/Users/VonC     # <=== this must be correctly set
HOMEDRIVE=C:
Run Code Online (Sandbox Code Playgroud)

  • 感谢VonC,你让我意识到我的错误是当我被要求输入保存密钥的文件时我输入了一个名字.我刚刚进入Enter,它生成了id_rsa和id_rsa.pub文件.现在它完美无缺 (5认同)

小智 12

我遇到了同样的问题,当我要求输入以下"输入要保存密钥的文件(c/users/user.name/.ssh/id_rsa)"时,我意识到我正在尝试输入文件名.

而只是输入任何内容并按Enter键以使用默认值,您将继续前进.

  • 我意识到它需要完整路径,而不仅仅是名称,否则将在cmd当前工作目录中创建文件.此外,如果您只键入名称,您将在摘要中看到默认路径"bla bla保存在/c/Users/{UserName}/.ssh/id_rsa_name" (4认同)

Ish*_*era 9

我在创建 SSH 密钥时遇到了类似的问题,我通过这种方式解决了它。

当您使用ssh-keygen -t rsa生成 SSH 密钥时,它会提示您

Enter file in which to save the key (/Users/iamarasekera/.ssh/id_rsa):

不要给出任何文件名。相反,只需按“Enter”键即可继续。

然后它将创建.ssh文件夹,并在该文件夹内生成 2 个文件id_rsaid_rsa.pub.

您还将Created directory '/<path to your current folder>/.ssh'.在命令提示符上看到该消息。

接下来,它会提示你Enter passphrase,你最好不要跳过它。

看看这个供您参考。

在此输入图像描述

Note:如果在提示您输入文件名来保存密钥时输入文件名,它会在您当前所在的目录中创建 2 个文件,而不创建 .ssh 文件夹<filename><filename>.pub

希望这可以帮助。


Gal*_*van 9

如果您已经有一个名为“id_rsa”的密钥,并且想要以不同的名称保存新密钥,则需要提供整个路径(如果我理解的话)。所以当它询问时:

Enter file in which to save the key (/c/Users/myname/.ssh/id_rsa):
Run Code Online (Sandbox Code Playgroud)

您可以输入/c/Users/myname/.ssh/new_key ,它将被创建(我刚刚测试过)。


小智 6

我遇到了类似的情况,下面描述了对我有用的解决方案。

创建密钥时出现以下消息时 -

Enter file in which to save the key (C:\Users\aditya/.ssh/id_rsa):

只需按 Enter Here ,不要提供任何文件名,否则密钥将在您当前的工作目录中创建。