|  |      1commoccoom      2023-04-18 22:10:28 +08:00 | 
|      2yinmin      2023-04-18 22:14:39 +08:00 | 
|  |      3sky96111      2023-04-18 22:19:54 +08:00  1 三种方式,模拟 OpenGPG 使用 gpg-agent ,PIV pkcs11 ,或者 FIDO2 sk-ssh-ed25519 | 
|  |      4SeaSaltPepper      2023-04-19 00:17:57 +08:00 最简单直接的: 使用 sk-ed25519 (对 openssh 版本有要求) | 
|  |      5dadapipi OP @commoccoom 老板 还有另外俩种方法的教程吗 | 
|  |      6dadapipi OP @SeaSaltPepper  是的 升级版本很麻烦 还要装 telnet 巴拉拉的 | 
|  |      8baobao1270      2023-04-19 17:54:49 +08:00 如果你用的 Linux/macOS ,推荐使用 GPG Agent 方法。 Windows 也可以用,但是需要第三方软件(好像是 https://github.com/NZSmartie/npiperelay 这个,记不太清了)才能同时兼容 Git Bash + WSL + cmd 首先创建一个为 authentication 的 GPG 密钥并把私钥写入 YubiKey ,然后重启 GPG Agent ,配置 SSH_AUTH_SOCK 环境变量为 ~/.gnupg/S.gpg-agent.ssh | 
|  |      9sky96111      2023-04-20 08:02:58 +08:00 @dadapipi  https://developers.yubico.com/PIV/Guides/SSH_with_PIV_and_PKCS11.html 用 Yubikey Manager 生成 PIV 证书,安装 yubico-piv-too 这个软件包,这个包会提供 libykcs11.so (如果是 Windows ,找安装目录下的另一个 dll)。 ssh-add -s /usr/lib/libykcs11.so 并输入密码即可添加私钥到 ssh-agent | 
|  |      10dadapipi OP @baobao1270 感谢 感谢 昨天已经把 FIDO2 搞明白了  唯一不足的就是 ssh -V 版本要大于 8.0  升级版本还有风险! | 
|  |      12baobao1270      2023-04-20 11:48:18 +08:00  1 | 
|  |      13dadapipi OP @baobao1270 我也是摸索的在写教程  昨天就写了个 FDIO2 然后 SSH 版本必须要大于 8.0 https://www.uquq.cn/1897 然后你说的这个 你简单说说 我脑子也转不过来 我也不知道怎么玩 | 
|  |      14baobao1270      2023-04-20 20:07:23 +08:00  1 @dadapipi #3 其实说的比较全了,我总结一下: 要实现「使用 YubiKey 登陆 SSH 」,有三种方案,任选一种即可 A:PIV 模式,又叫智能卡模式,这个我不熟悉。 B:SSH 模式,需要 OpenSSH 8.1 以上,而且需要服务端支持。这个也就是你 #13 链接里发的教程里写的方式。我当时有一个服务器不支持,所以没有使用这个方式。 C:GPG 模式,就是我在 #8 说的方法。 | 
|  |      15dadapipi OP @baobao1270 A C 我都看得头大 我又研究了个 OTP 已经写在博客了  哈哈哈  那就是有四种方式了    AC 感觉。。。好复杂 都找不到例子 |