SSHJ 从文件验证公钥的示例

2022-09-04 21:30:02

有人可以给我一个使用SSHJ进行公钥身份验证的示例吗?我意识到这个问题基本上与私钥/公钥身份验证的ssh示例相同,但是作者 https://stackoverflow.com/users/126346/shikhar 的答案指的是不再存在的Google用户组,并且我无法使其正常工作。

谢谢!菲尔


答案 1

我们在SSHJ之上构建了overthere框架。其中也可以连接使用密钥文件进行连接。以下代码段应该可以正常工作,但请确保将弹跳城堡库添加到类路径中。

SSHClient client = new SSHClient();
String username = "johndoe";
File privateKey = new File("~/.ssh/id_rsa");
KeyProvider keys = client.loadKeys(privateKey.getPath());
client.authPublickey(username, keys);

希望有所帮助。


答案 2

我也遇到了这个问题。我最终改变了

client.authPublickey(user, "id_rsa.pub")

client.authPublickey(user, client.loadKeys("id_rsa"))