如何在C/CPP中从ssh服务器获取特定类型的密钥



我想做一些类似于ssh-keyscan的事情。我已经研究了libsshlibssh2,但它们提供的函数只返回客户端和主机同意的密钥。我还检查了ssh-keyscan源代码,但它似乎非常复杂,因为所有的全局标志都是左右设置的。

所以我的问题是,有没有什么简单的方法可以通过某种库来实现这种功能,或者我必须采取类似ssh-keyscan的方法,手动设置几乎所有的东西?

Imo,ssh-keyscan为其支持的每个密钥类型连接一次,试图就该密钥达成一致。如果成功,它将打印密钥,如果不成功,则继续另一个密钥。


使代码变得复杂的是,它在单个线程中并行完成所有连接。如果按顺序实现它,它会简单得多。

最新更新