macOS High Sierra 中缺少 ~/.ssh 文件夹

macOS High Sierra 中缺少 ~/.ssh 文件夹

我试图找到我的~/.ssh文件夹,但找不到。我熟悉终端,所以我检查了我的文件系统,但找不到它。它是否在文件树中重新定位了,还是我的电脑出了问题?我需要找到我的私钥。

答案1

在 macOS 中,您需要从终端生成公钥和私钥。如果您尚未执行此操作,则该.ssh目录将不存在。要创建它们:

打开终端App,输入以下命令:

ssh-keygen

您将收到选择钥匙位置的提示。它会说“输入保存密钥的文件 (/Users/your-username/.ssh/id_rsa)”。如果您对默认位置(~/.ssh/)满意,只需点击 Return。在您的 shell 中,该~字符相当于/Users/your-username/。它代表您的主目录。

现在它会说“输入密码(空表示无密码):”。输入密码并按回车键。系统会要求您重新输入密码以确认您输入的密码正确。此密码用于加密私钥,建议您设置一个。

提示现在会说“您的身份已保存在 /Users/your-username/.ssh/id_rsa”“您的公钥已保存在/Users/your-username/.ssh/id_rsa.pub。”然后它会显示密钥的指纹和 Randomart。指纹与公钥匹配,在某些情况下可用于身份验证,而 Randomart 文件旨在与指纹匹配,但更容易从视觉上识别它是正确的密钥。大多数情况下,您不需要复制这些。

现在您可以查看新创建的 .ssh 目录并在其中找到您的密钥。

你可以找到一个关于这个主题的相当易读的指南这里

编辑:如果您想复制之前保存的公钥和私钥:

  • 在终端中输入cd ~
  • 然后mkdir .ssh; chmod 700 ~/.ssh

这将创建目录并赋予其足够的权限。在此目录中,您现在可以粘贴包含匹配的公钥和私钥对的两个文件。它们分别是您的 id_rsa.pub 和 id_rsa 文件。完成后,通过运行以下命令仔细检查它们的权限是否正确:

ls -l ~/.ssh/id_rsa*

输出应如下所示(数字 1766 和 388 除外):

-rw------- 1 user root 1766 Oct 04  2017 .ssh/id_rsa
-rw-r--r-- 1 user root  388 Oct 04  2017 .ssh/id_rsa.pub

如果您得到的内容与此不同,请使用以下命令设置这些文件的权限:

$ chown user:user ~/.ssh/id_rsa*
$ chmod 600 ~/.ssh/id_rsa
$ chmod 644 ~/.ssh/id_rsa.pub

请注意chown 用户:用户 ~/.ssh/id_rsa* 上面的用户是您登录的用户帐户,而不是字面上的“用户”。

答案2

在查找文件窗口中,按Command- Shift- G

它会询问您要导航到哪个文件夹。输入~/. ssh并按return

相关内容