java - 尝试使用 JSch java 连接到 sftp 服务器时禁用对known_hosts的检查是否安全

标签 java security ssh sftp

我尝试连接到本地计算机中的 sftp 服务器,我使用命令 ssh 生成 knownHosts 文件 我像 jsch.setKnownHosts(knownHosts); 一样使用它 但我想在其他机器上运行我的工作,希望我无法访问他的 knownHosts 文件

所以我决定禁用此 rsa key 的检查,我不知道该操作是否安全 我将使用这一行来禁用它

session.setConfig("StrictHostKeyChecking", "no");

最佳答案

问题本身有关于其安全性的评论,但我想补充一点,如果您不想将 StrictHostKeyChecking 设置为“否”,并且不想依赖 knownHosts 文件,我建议您:

1)以兼容Jsch的方式生成主机指纹,请引用this question 。您可以根据需要将生成的指纹输出到另一个文件或其他位置。

2) 然后,您可以获取生成的值并将其存储为变量(环境变量、配置文件、属性等),以便您的应用程序可以使用它。您可以使用 setKnownHosts 方法将此指纹(不是文件路径)传递给 Jsch。

关于java - 尝试使用 JSch java 连接到 sftp 服务器时禁用对known_hosts的检查是否安全,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60297655/

相关文章:

python - 安全地从 python 中的字符串中删除所有 html 代码

java - 我应该如何维护从文件读取的值的缓存?

java - 在 Spring MVC 中将请求写入文件

Java:安全异常 - 非法 url 重定向

javascript - 为什么登录页面不使用javaScript?

regex - ssh2->exec 中的 Perl Grep 找不到任何东西

vim - 使用vim时如何停止SSH X11转发?

go - 获取 ssh : short read error when trying to parse a public key in golang

JavaFX Spinner - 更多微调器的相同关键事件

java - 有人可以检查我的异或神经网络代码有什么问题吗