Mac OS X - High Sierra;缺少〜/ .ssh文件夹


7

我想找到我的 ~/.ssh 文件夹,但不能。我熟悉终端,所以我一直在浏览我的文件系统,无法在任何地方找到它。它是在文件树中重新定位还是我的电脑只是时髦?我需要找到我的私钥。


2
~/.ssh 在您的主目录中。你打开了一个打字的终端吗? ls -la 刚看了看?
JakeGould

Answers:


9

在macOS中,您需要从终端生成公钥和私钥。如果您还没有这样做,.ssh目录将不存在。要创建它们:

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

ssh-keygen

您将收到提示,选择密钥的位置。它 会说 “输入要保存密钥的文件 (/Users/your-username/.ssh/id_rsa)” 。如果您对默认位置(〜/ .ssh /)感到满意,只需点击返回。在你的shell里面 ~ 性格相当于 /Users/your-username/。它代表您的主目录。

它现在会说 “输入密码(空 没有密码):“ 。输入您的密码并按Return键。你是 要求重新输入密码以确认您输入的密码正确。此密码短语用于加密私钥,建议您设置密码。

提示现在会说 “你的身份证已被保存 /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用户:user~ / .ssh / id_rsa * 就在上面,用户是您登录的用户帐户,而不是字面上的“用户”。


我的钥匙串中已经有一个私钥和公钥,从我以前的Mac Mini导入。有没有办法将它们加载到ssh文件夹中?
Alex Schneider

1
@AlexSchneider添加了上面关于粘贴旧密钥的部分。
baelx
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.