在我的 Linux 机器上(Arch Linux,截至本文最新)我在使用 OpenSC PKCS11 模块和 GnuPG 时遇到了问题。
似乎在启动使用 PKCS11 模块的应用程序(在我的情况下是 Firefox)时,它对智能卡进行了独占控制,其他应用程序无法使用它。如果我尝试通过 GnuPG 访问卡,我会收到一个神秘错误:
rjevski@workstation ~ % gpg2 --card-status
gpg: selecting openpgp failed: No such device
gpg: OpenPGP card not available: No such device
Run Code Online (Sandbox Code Playgroud)
通过scdaemon更详细,我可以获得有关该问题的更多信息:
scdaemon[8725] pcsc_connect failed: sharing violation (0x8010000b)
Run Code Online (Sandbox Code Playgroud)
显然,这不仅破坏了命令行 GPG,而且破坏了任何依赖它的应用程序 - 例如,我无法在浏览器运行时在 Evolution 中签名/加密电子邮件。
一种解决方法是从 Firefox 卸载 PKCS11 模块,但鉴于我积极使用它,这是一个不太理想的解决方案。有人知道更好的吗?
我想知道是否有办法要求本地用户(通过 GUI 登录)确认/拒绝任何其他身份验证尝试,例如有人尝试通过 SSH 登录?
场景是这样的,我可能希望将我的 SSH 密钥留在用户的机器上,以便在出现问题时能够调试或帮助他们,但同时我希望他们保持控制,所以我和其他人都没有被盗我的 SSH 密钥至少可以在没有用户确认的情况下登录(用户希望我事先告诉他们我会登录,所以如果没有发生,他们会拒绝连接)。
这可能吗?有问题的机器运行 Ubuntu 16.10,具有默认的 Unity 桌面环境。