如何在两步验证中使用 YubiKeys 和 SSH 密钥?

如何在两步验证中使用 YubiKeys 和 SSH 密钥?

我可以按照描述设置 SSH 密钥对,无需 Fido U2FSSH 代理无需重新输入即可在多个服务器上工作?一些旗帜?在线程中。两步验证会非常好:私钥密码和 Fido U2F 验证。我不确定我们是否也需要这里的 Fido/YubiKey 服务器,按照线程中的说明Yubico Linux 登录。我的动机是我经常忘记密码,如果在一步验证中使用的话,密码会很长。尽管密码有多长和有多困难,但一步验证本身也很弱。因此,我想在我的 Debian 中使用密钥进行两步验证,因为我认为密钥可以提高很多安全性。

票证已发送至 YubiKey团队2017 年 2 月 22 日

Dear Sir/Madam, 

We are thinking how to get 2-step verification with your key and keys in the following thread. Improvements are needed in FIDO U2F and OpenSSH parts. I am thinking how we can push the thing forward with You. Please, say what we can do because the feature request is rather blocked at the moment. 

Ticket in OpenSSH part: https://bugzilla.mindrot.org/show_bug.cgi?id=2319
Thread about the feature request: http://unix.stackexchange.com/q/346771/16920

Best regards, 
Leo

操作系统:Debian 8.7
硬件:Asus Zenbook UX303UB
门票:第2319章(Jakuje)
Fido U2F 密钥:YubiKey 4

答案1

您不能将 U2F 与 SSH 一起使用。两年前,当 U2F 还很新鲜、很奇特的时候,有人试图实现这一点,但从那以后我就再也没有听说过这件事,也没有任何进展。

如果你真的想要它,你可以使用附加的补丁来修补你的 OpenSSH上游错误,但请注意,即使它经过了不同的人的审查,它也可能存在一些问题。

答案2

事实证明,这现在已经成为可能。这是最近才出现的,有一些限制。

它依赖于libfido2,允许使用“新”密钥类型ecdsa-sk(sk 表示安全密钥),并要求服务器也支持此密钥类型。

截至今天早上(2019 年 11 月 1 日),OpenSSH 现已提供实验性 U2F/FIDO 支持,其中 U2F 被添加为新的密钥类型“[电子邮件受保护]”或简称“ecdsa-sk”(“sk”代表“安全密钥”)。 https://marc.info/?l=openssh-unix-dev&m=157259802529972&w=2

此代码已在 OpenSSH 8.2 上发布https://www.openssh.com/txt/release-8.2

答案3

类似开发项目案例支持YubiKey DB解锁用于带有 YubiKeys 的 KeePassX。我认为应该先完成该项目,然后再考虑支持 SSH,因为对于独立应用程序和那里的大量劳动力来说,它应该更容易。

答案4

使用 pam_ssh + pam_yubico 的方法: http://www.ultrabug.fr/hardening-ssh-authentication-using-yubikey-12/


或者:我不确定这是否是您所需要的,但是传送支持U2F

这是开源

相关内容