ssh-agent 有一个协议,可以将数据发送给它以由特定的私钥签名:
http://api.libssh.org/rfc/PROTOCOL.agent
在 Linux 中,使用 ssh-agent,您可以打开一个 Unix 域套接字到 SSH_AUTH_SOCK 并将数据包发送到该套接字。但是,Windows 没有 Unix 域套接字。
有任何想法吗?
谢谢!
ssh-agent 有一个协议,可以将数据发送给它以由特定的私钥签名:
http://api.libssh.org/rfc/PROTOCOL.agent
在 Linux 中,使用 ssh-agent,您可以打开一个 Unix 域套接字到 SSH_AUTH_SOCK 并将数据包发送到该套接字。但是,Windows 没有 Unix 域套接字。
有任何想法吗?
谢谢!
putty 和 pageant 之间的通信是使用 WIN32 API 在共享内存上完成的。我已经使用 JNA 在 Java 中实现了该协议。如果你对它的协议感兴趣并想了解它是如何在 Windows 上运行的,下面的文件可能会有用,
如果您在 C 中实现协议,您可能会参考规范的 PuTTY 实现。如果您在 Python 中实现它,paramiko 项目实现了 Putty Pageant 协议。
就我所知,协议是相同的,但传输方式不同,使用共享内存而不是套接字。