macos - 无法使用 ssh-add 加载私钥

标签 macos ssh ssh-keygen

我尝试通过执行以下命令来创建 ssh key :

ssh-keygen -t dsa

然后它提示我输入商店路径:
Enter file in which to save the key (/Users/KesongXie/.ssh/id_dsa): id_dsa

输入密码后,我得到以下结果
Your identification has been saved in id_dsa.
Your public key has been saved in id_dsa.pub.

然后我尝试使用 followibg 命令加载我的私有(private) ssh key
ssh-add /Users/KesongXie/.ssh/id_dsa

它显示了结果:
-bash: ssh-add/Users/KesongXie/.ssh/id_dsa: No such file or directory

当我导航到本地目录 Users/KesongXie 时,我找不到 .ssh 文件(如预期的那样,doc 文件被隐藏),但是当我尝试在终端中查看它时,我输入
cd ~
pwd

我得到了Users/KesongXie 我厌倦了ls并希望看到我的 .ssh,但它仍然是不可见的。然后我试着
cd .ssh

我发现我然后进入 .ssh 目录,使用 ls ,我可以看到以下结果:
github_rsa  github_rsa.pub  id_dsa      id_dsa.pub  known_hosts

key 确实存储在 .ssh 文件夹中,但我想知道为什么我不能使用加载私钥
ssh-add /Users/KesongXie/.ssh/id_dsa

最佳答案

如果我没看错,你做到了:

Enter file in which to save the key (/Users/KesongXie/.ssh/id_dsa): id_dsa

这告诉 ssh-keygen 命令在当前目录中创建一个 id_dsa 文件。要在 .ssh 目录中创建一个,您只需按 Enter 键。

所以现在你的主目录中有关键文件,而你没有 .ssh 目录(至少这是我怀疑正在发生的事情)

“cd .ssh”命令不会执行任何操作,因为您没有 .ssh 目录。这就是为什么其他程序提示文件没有退出的原因。

顺便说一句,ls 命令不会显示任何以点开头的文件,例如“.ssh”,因为这些文件是隐藏的。使用“ls -a”查看隐藏文件。

关于macos - 无法使用 ssh-add 加载私钥,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24714076/

相关文章:

python os 模块无法将 ~ 识别为用户主目录的快捷方式

linux - Windows 上为 "sshpass is not recognized"

vb.net - 如何在vb.net中从SFTP下载文件

c# - 将 ssh-keys 转换为 c# 格式以在 Windows (c#) 中加密并在 Linux (python/shell) 中解密

c - 如何通过 c 中的命令行在 Xcode 中执行和编译程序,可执行文件在哪里?

macos - "config"脚本存在于系统或 Homebrew 目录之外

macos - 如何让 iTerm2 出现在当前屏幕上?

java - 如何在ssh上测试客户端和服务器程序?

linux - 如何删除用户的 ssh keygen?

git - 如何删除 SSH key ?