如何使用ssh add向ssh代理添加多个yubiky PIV身份验证密钥



我必须通过跳转主机ssh到远程服务器,jumpbox和远程服务器都有自己的ssh密钥存储在yubikeys上。

当我尝试将ssh代理与ssh add一起使用来添加密钥时,它只提示我输入一个yubiky pin(即使两者都已插入(,此外,我无法知道它正在加载哪个密钥或使用哪个pin——尽管ssh add似乎会根据我输入的pin来确定要添加哪张卡:

$  ssh-add -s /usr/lib/x86_64-linux-gnu/opensc-pkcs11.so
Enter passphrase for PKCS#11: <PIN #1>
Card added: /usr/lib/x86_64-linux-gnu/opensc-pkcs11.so

当尝试添加另一个密钥时,它失败了:

$ ssh-add -s /usr/lib/x86_64-linux-gnu/opensc-pkcs11.so
Enter passphrase for PKCS#11: <PIN #2>
Could not add card "/usr/lib/x86_64-linux-gnu/opensc-pkcs11.so": agent refused operation

尝试使用libykcs11也会在尝试添加第二张卡时失败(在成功加载第一张卡之后(:

$ ssh-add -s /usr/lib/x86_64-linux-gnu/libykcs11.so
Enter passphrase for PKCS#11: <PIN #2>
Could not add card "/usr/lib/x86_64-linux-gnu/libykcs11.so": agent refused operation

使用ubuntu 16.04。

根据详细报告:

https://www.spinics.net/lists/openssh-unix-dev/msg06440.html

似乎每个";提供者";或pkcs11库,只能添加一次。

最新更新