ssh/known_hosts: 没有那个文件或目录。

7

你正在运行什么命令?.ssh/known_hosts是一个要编辑的文件,而不是要运行的命令。 - chepner
1
似乎我一开始就没有那个文件。有办法创建它吗? - Askar
1
使用任何文本编辑器。如果找到了,ssh 将使用它。如果文件未找到,或者您要连接的主机未在文件中找到,ssh 将在确认您要连接后添加该文件。 - chepner
好的,VonC已经帮助建立了这个文件,但是我该如何编辑它呢? - Askar
@Askar 你为什么想要编辑它呢?它的内容将由 ssh 自动生成。但如果你想编辑,任何文本编辑器都可以。 - VonC
显示剩余2条评论
1个回答

7

显然我一开始根本就没有那个文件。有办法创建它吗?

首次使用ssh时,它将会为您创建该文件。

ssh -T git@gitlab.com

那将触发一条消息,例如:
The authenticity of host '111.222.333.444 (111.222.333.444)' can't be established.
RSA key fingerprint is f1:cf:58:ae:71:0b:c8:04:6f:34:a6:b2:e4:1e:0c:8b.
Are you sure you want to continue connecting (yes/no)? 

回答“是”将创建~/.ssh/known_hosts文件。


正如chepner评论中所说,在回答“是”之前,您应该提前获取服务器的实际指纹,并将该指纹与添加到~/.ssh/known_hosts中的指纹进行比较。

例如,请参见“安全地将主机(例如GitHub)添加到SSH已知主机文件中”。

例如:github.com确实提供其服务器指纹:将其与ssh-keyscan -t rsa github.com | ssh-keygen -lf -进行比较。

C:\Users\vonc\git>ssh-keyscan -t rsa github.com | ssh-keygen -lf -
# github.com:22 SSH-2.0-babeld-4cec2db4
2048 SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8 github.com (RSA)

如果匹配成功,则将其添加到您的~/.ssh/known_hosts文件中。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接