如何将 SSH 已知主机添加到 Windows 上的已知主机文件?

如何将 SSH 已知主机添加到 Windows 上的已知主机文件?

known_hosts文件看起来并不简单。在 Windows 上,我看到它包含主机名、IP 地址和一些 RSA 密钥。

在 Linux 上,我看到它包含几个由条分隔的键。

谁在 Windows 上管理此文件?如何在 Windows 上将某些主机添加为此文件的“已知”主机?

Putty 能做到这一点吗?如果 Putty 有某些已知主机,我可以将此主机记录从 Putty 数据库复制到~/.ssh/known_hostsWindows 上吗?

答案1

PuTTY 将已知主机存储在 Windows 注册表中。在常见问题解答中,他们提供了一个 Python 脚本将现有known_hosts文件转换为 Windows .REG 文件,但添加~/.ssh/known_hosts不会添加到 PuTTY 信任的主机。

您还可以通过 PuTTY 连接并单击 PuTTY 安全警报上的“是”来单独添加主机。为此,请打开 PuTTY GUI 并填写所需的字段以进行连接,或从命令行调用它:putty.exe username@hostname port

答案2

在 Windows 10 Pro 中,您可以从“设置”->“应用”->“可选功能”添加“Open SSH Client”。这样您就可以同时获得ssh-keygenssh-keyscan

就我而言,我必须先运行ssh-keygen以获取密钥对%HOMEPATH%\.ssh。然后我根据他们的指示将公钥文件上传到我想要连接的主机。

然后在我的 .ssh 目录中的命令提示符中运行ssh-keyscan [host] > known_hosts

(然后我可以使用一个简单的 Python 脚本自动连接paramiko。)

相关内容