我有使用 Kleopatra(来自 Gpg4win 3.0 套件)生成的密钥对。我已将公钥转换为 RSA ssh 密钥,并将其添加到 Linux 机器中的 authorized_keys 文件中。
在 Windows 机器上,我将该gpg-agent.conf
文件配置为:
enable-putty-support
debug-level guru
log-file C:/Users/myusername/log.txt
disable-scdaemon
但是,当我打开 PuTTY 并尝试连接到服务器时,出现错误:
"Disconnected: No supported authentication methods available (server sent: publickey)"
问题是:如何使用 Windows 计算机上的 Putty 通过 SSH 使用 gpg 密钥对连接到 Linux 计算机?我了解到 gpg-agent 模拟代理,Pageant
因此它应该使用内存中的 gpg 私钥向 PuTTY 提供加密字符串。是这样吗?还是我误解了这里的一切?
答案1
如果有人有问题:请完成工作程序https://gist.github.com/matusnovak/302c7b003043849337f94518a71df777
正如@user1686 所说,看来 OP 尚未完成的唯一必要步骤是在文件中添加 keygrip sshcontrol
。
答案2
对我来说,将 gpg 与 Putty 集成的程序是这里
看 OP,似乎是缺少代理重新启动后创建/修改文件gpg-agent.conf
:
gpg-connect-agent KILLAGENT /bye