我正在尝试使用 JSCH 连接到 SFTP 服务器,服务器配置为两因素身份验证。但我无法在 JSCH 中找到任何同时使用密码和密钥连接到服务器的选项。 如果有人知道如何使用 JSCH 或任何其他 Java 包使用两因素身份验证以编程方式连接到 SFTP 服务器,请帮助我。
JSch
类中有一堆
addIdentity
方法,可以用来提供公钥认证的密钥对,Session类中有一个setPassword
方法。
我会简单地使用两者并尝试连接到服务器。SSH 协议的设计使得服务器在每个步骤中提供一组身份验证选项,然后客户端选择它支持的选项,如果我没记错代码,JSch 就会简单地执行此操作。
请报告这是否真的有效,我没有尝试过。
addIdentity
添加您的私钥,同时声明您的密码。但是这不适用于最新版本的 jsch (0.1.55)。
我发现 jsch 的