如何使用任何 SFTP/SSH 客户端查找服务器的公钥

如何使用任何 SFTP/SSH 客户端查找服务器的公钥

有没有办法从任何 Sftp 客户端或使用任何工具获取 SFTP 服务器的公钥?我有权(用户名/密码)连接到生产 SFTP 远程服务器,我想从任何 SFTP 客户端或使用任何其他工具找到公钥。我的目的是在 Java JSCh 库中使用该公钥并连接到 SFTP 服务器。

答案1

唯一正确的方法是要求服务器管理员向您提供主机密钥。

如果你自己远程检索主机密钥,那么你实际上不能信任该密钥,因为你可能处于中间人攻击已经。


无论如何,最简单的方法是使用ssh-keyscan工具:

> ssh-keyscan example.com
# example.com:22 SSH-2.0-OpenSSH_5.3
example.com ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA0hVqZOvZ7yWgie9OHdTORJVI5fJJoH1yEGamAd5G3werH0z7e9ybtq1mGUeRkJtea7bzru0ISR0EZ9HIONoGYrDmI7S+BiwpDBUKjva4mAsvzzvsy6Ogy/apkxm6Kbcml8u4wjxaOw3NKzKqeBvR3pc+nQVA+SJUZq8D2XBRd4EDUFXeLzwqwen9G7gSLGB1hJkSuRtGRfOHbLUuCKNR8RV82i3JvlSnAwb3MwN0m3WGdlJA8J+5YAg4e6JgSKrsCObZK7W1R6iuyuH1zA+dtAHyDyYVHB4FnYZPL0hgz2PSb9c+iDEiFcT/lT4/dQ+kRW6DYn66lS8peS8zCJ9CSQ==

如果你使用的是 Windows,请注意,Windows 10 和 Windows 11 的最新版本中内置了 OpenSSH ssh-keyscan。对于较旧的 Windows 版本,你可以从Win32-OpenSSH 项目或适用于 Windows 的 Git。


有关更多选项和背景信息,请参阅我的文章在哪里可以获取 SSH 主机密钥指纹来授权服务器?

相关内容