让 .ssh/id_rsa 从 yubikey 读取密钥

让 .ssh/id_rsa 从 yubikey 读取密钥

我有我的yubikey 中的 ssh 密钥,我使用gpg-agent.conf类似这样的方法:

pinentry-program /usr/local/bin/pinentry-mac
enable-ssh-support
default-cache-ttl 60
max-cache-ttl 120

这可以帮助我ssh进入任何主机,而无需将私钥存储在类似文件中~/.ssh/id_rsa

但在某些情况下,比如使用以下工具ssh-vaultansible-vault等,他们需要读取文件中的密钥,~/.ssh/id_rsa因此想知道是否有办法gpg-agent在尝试从读取时调用来检索密钥~/.ss/id_rsa,或者其他方法来检索私钥。

答案1

不,没有办法从 Yubikey 中获取私钥。这是出于安全原因而设计的。

解决此问题的方法是改用 ssh-agents。如果他们能够使用 ssh-agent,那么很容易将您的 yubikey 添加到其中。对于 OpenSSH,只需:

ssh-add -s <your-pkcs11.so>

然后您只需将您的软件指向 SSH 代理即可。

相关内容