2011-07-04 89 views
1

如何使用公钥和密码短语连接到服务器(我有公钥并知道密码 我正在使用com.sshtools.j2ssh库,但我可以“T看到一个选项来设置密码。 的问题是,即使我有公共密钥,服务器继续要求密码。Java - 使用公钥和密码进行身份验证 - j2ssh

感谢。 罗恩。

+0

快速谷歌没有为这个库做主页 - 这是否仍然存在? –

回答

3

W如果您实例化SshPrivateKeyFile,则可以在该对象上调用PrivateKey以创建SshPrivateKey对象。那toPrivateKey方法需要一个字符串,它是你的密码。如果您没有密码,请传递一个空字符串(或者我相信这也是一个空字符串)。这是一个示例。

PublicKeyAuthenticationClient sshClient = new PublicKeyAuthenticationClient(); 

SshPrivateKeyFile sshPrivKeyFile = SshPrivateKeyFile.parse(new File(keyFile)); 
SshPrivateKey sshPrivKey = sshPrivKeyFile.toPrivateKey("passphrase"); 
sshClient.setKey(sshPrivKey); 
0

检查J2SSH的API进行解密/加密方法通常用于发送认证

0

您确定该服务器配置正确吗?如果它被设置为密钥认证,除密钥库密码之外不需要密码。尝试使用腻子或类似的东西连接。 我也推荐你试试Ganymed SSH我已经在几个项目中使用过它,即使使用相当先进的功能,例如隧道,scp等,也没有问题。

相关问题