我尝试获取服务器的公钥。这是我尝试过的方法:
val serverKey = sshClient.connect("dyn mem", "localhost", "2222")
.verify()
.getSession()
.getKex()
.getServerKey()
问题是获取
getServerKey()
的结果为 null...如何使用 Apache SSHD 客户端获取 SSH 服务器的公钥。
我尝试获取服务器的公钥。这是我尝试过的方法:
val serverKey = sshClient.connect("dyn mem", "localhost", "2222")
.verify()
.getSession()
.getKex()
.getServerKey()
getServerKey()
的结果为 null...connect()
和随后的密钥交换都是异步操作,因此需要等待一段时间。例如:
ConnectFuture connectFuture = client.connect(username, host, 22);
connectFuture.await(5000);
ClientSession session = connectFuture.getSession();
session.waitFor(Arrays.asList(ClientSessionEvent.WAIT_AUTH), 5000);
session.getKex().getServerKey();