SSH使用FIDO2 USB进行身份验证

在OpenSSH 8.2中,提供了对FIDO2的支持。这样用户就可以硬件USB密钥证书进行用户认证。这样可以实现简单、有效和安全的SSH认证了。本文我们就尝试一下基于FIDO2的SSH认证,前提是需要一个USB key设备。

[[338872]]

FIDO2

在硬件认证安全领域WebAuthn和FIDO2的发展,他给我们带来了更便捷安全的方法。WebAuthn和FIDO2旨在通过标准化二者之间的通信方式使用安全设备的变得真正容易。

对每一个人来说这都是一个好消息,现在大家可以使用便捷的USB密钥,无需额外的安全知识,即可非常轻松地保护所有身份验证,完全避免网络钓鱼,密码盗窃以及其他恶意攻击的干扰,只需要插入USB密钥,按小按钮/输PIN或者刷指纹,然后重新登录。

虽然之前很多人可能都用过银行的网银,但是由于那是不标准通用的方式,不光要安装各种各样的驱动而且还要必须要特定版本的IE才行。而如果支持了FIDO2则可以被所有OS和任何浏览器所支持,当然包括今天要说的SSH。

截止目前根据有人统计国内也有很多企业加入了FIDO联盟,包括阿里等大企业。

FIDO2分为WebAuthn和CTAP协议,最佳使用场景包括:

  • 在设备上通过浏览器使用设备配置的指纹等生物识别能力进行身份认证;
  • 在设备上通过浏览器使用外置Security key进行身份认证;
  • 在设备上通过另一台设备作为认证器完成身份认证。

结合使用FIDO2和SSH

对广大使用Linux和Mac的技术人员来说,除了浏览器使用最多的要数SSH了。如果可以使用FIDO2密钥通过SSH进行身份验证,那将带来很大方便和安全。为此OpenSSH也放弃一贯对硬件密钥体系的傲慢态度,现在终于支持FIDO(U2F)和FIDO2进行身份验证了,而带有驻留键的FIDO2具有更好的便捷和安全性。流程是USB设备(FIDO2设备不一定是USB,但通常是USB设备)生成一个秘密密钥。密钥要么存储在设备上(称为驻留密钥),要么需要设备支持存储,要么不支持,需要将数据存储在其他位置。

使用USB key设备的好处包括消除网络钓鱼,密码盗窃,身份验证重放以及许多其他攻击。由于设备通过特定领域(服务器地址/URL/等)进行身份验证,因此攻击者无法在另一个站点上重复使用一个站点的身份验证,这使得网络钓鱼无法进行。密码或私钥在设备上并无法复制提取,任何人都不能窃取密码或私钥。唯一可能的攻击是你的USB Key丢了,但是由于设备有PIN密码,并且有错误次数限制,尝试几次错误有,该设备将会锁定实效。

可能有用过Yubikey的同学,使用SSH内置功能好处是不需要特别使用Yubikey,也不需要弄乱Yubikey代理,PIV模式或其他任何其他软件。只需插入任何兼容FIDO2的密钥,即可将其与SSH一起使用。有”驻留键”模式仅在Yubikey 5C和更高版本的FIDO2上有效。

使用方法

在了解了有关设备如何工作的所有不必要的细节之后,准备好将其中一个用于SSH。设置非常简单,基本上只需一两个命令(取决于方法),在客户端和服务器上都运行OpenSSH 8.2,无需安装其他软件。下面我们分常驻密钥模式和非常驻模式的两种方法。

常驻密钥模式

在支持FIDO 2设备的下,使用以下命令生成密钥并将其存储在设备上,支持的密钥类型有”ed25519-sk”和”ecdsa-sk”两种证书类型。

  1. ssh-keygen -t ed25519-sk -O resident -f ~/.ssh/id_ ed25519-sk  
  2. ssh-keygen -t ed25519-sk -O resident -f ~/.ssh/id_ ecdsa-sk 

 

SSH会要求输入PIN码并触摸的设备,然后将密钥对保存在设置目录。

ssh-keygen将生成两个文件,一个称为id_ecdsa _sk,私钥,一个称为id_ecdsa _sk.pub公钥。只需要将该公钥添加到服务器上的authorized_keys即可中。

要将私钥添加到SSH代理,需要将其复制到~/.ssh/目录中,或者(如果在新计算机上并且没有密钥),请运行:

  1. ssh-add -K 

插入设备。就会将密钥添加到SSH代理,然后就将能够连接到服务器。

非常驻密钥模式

非驻留密钥模式与前面模式基本相同,区别之处在于无法ssh-add -K直接从设备加载密钥。和以前一样,运行:

  1. ssh-keygen -t ed25519-sk -f ~/.ssh/id_ ed25519-sk 
  2. ssh-keygen -t ed25519-sk -f ~/.ssh/id_ ecdsa-sk 

SSH会要求输入PIN并触摸设备,然后将密钥对保存在设置的目录。需要手动将密钥对存储在~/.ssh/目录中,并将公钥文件添加到要登录的任何服务器上的authorized_keys。既可以

当尝试登录时,OpenSSH会要求提供PIN并触摸设备。

可以在生成密钥时候设置no-touch-required选项来设置不需要每次都触摸设备,但是启用它并没有取得很好的效果,但是这样不是很安全。

将密钥存储在设备上意味着没有人可以窃取它(设备设置了PIN或其他身份验证方法),但是在连接后,不受信任的计算机仍可以通过SSH会话发送命令。不要从不信任的计算机上用SSH服务器,尤其是在使用SSH转发(此-A选项)时要格外小心,因为服务器随后可能会当做跳板或者代理而访问其他服务器进行身份验证。

非FIDO2设备和非openSSH 8.2客户端

对于不支持FIDO2的其他设备(买不起Yubikey,比如几十块的国产飞天Usbkey),在使用其他ssh客户端,而且ssh版本不是8.2的其实也有一种方法,只是需要下载一个第三方的代理软件WinCryptSSHAgent(github:/ /buptczq/WinCryptSSHAgent)。

WinCryptSSHAgent基于 Windows证书管理系统, 不需要安装任何驱动就能够访问智能卡上的证书.这个项目实现了 Windows 上各种各样 SSH 客户端的私有 Agent 协议, 在发生SSH 认证时, 客户端将信息发给这个 Agent, 这个 Agent 会通过 Windows 提供的 API 对信息进行签名, 完成认证。目前兼容的 SSH 客户端有: Git for Windows、Windows Subsystem for Linux、Windows OpenSSH、Putty、Jetbrains、SecureCRT、Xshell、Cygwin、MINGW等。

启动该代理软件,然后就可以实现用USBKey登陆了。

当然使用该代理软件有个缺点,启动代理认证,完成一次认证后,支持该证书登陆服务器都可以直接登陆,这可会存在一定安全问题。可以通过定期关闭代理以保证安全。

总结

总的来说,OpenSSH对FIDO的支持给我们带来了一种更便捷而且安全的身份认证方式。当然由于这是一个开始,可能还会存在着一些问题和bug,希望各种SSH客户端软件也能及时跟进,内置支持该协议,让大家安全水平都提高一个档次。

 

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/130558.html<

(0)
管理的头像管理
上一篇2025-02-26 03:32
下一篇 2025-02-26 03:33

相关推荐

  • 站群服务器和普通服务器到底哪个更适合GEO,怎么选?

    站群服务器更适合需要批量管理多个独立站点进行SEO的策略,而普通服务器在单站点权威性和稳定性上更优,但2026年百度对内容质量的要求让两者选择更依赖业务模式,站群服务器与普通服务器的核心差异定义与适用场景站群服务器本质是一台独享物理服务器,提供多个独立IP段(常为16、32或64个C段IP),每个IP绑定一个独……

    2026-07-28
    0
  • 物理服务器和云服务器做站群到底选哪个,哪个更稳定?

    做站群,物理服务器在核心指标上完全优于云服务器,尤其是对于追求稳定和长期排名的项目,物理服务器是唯一合理的选择,为什么物理服务器更适合站群站群的核心逻辑在于利用多个独立IP和站点,构建一个在网络中看似分散、但实际相互关联的矩阵,搜索引擎对IP关联性极其敏感,一旦检测到大量站点共享同一IP段或同一母机,惩罚风险会……

    2026-07-28
    0
  • 国内高防服务器哪家防御真实靠谱,怎么选?

    国内高防服务器哪家防御真实靠谱?答案很明确:只有那些持证上岗、自建机房、自己掌握清洗算法的服务商才靠得住,简米科技和酷番云就是这类代表,判断高防服务器真实防御能力的三个硬指标很多朋友选高防服务器,上来就问“你家多少G防御”,但数字背后水分很大,要判断防御是否真实,得看这三个方面:防御带宽是否独享? 有些服务商宣……

    2026-07-28
    0
  • 裸金属服务器和物理服务器有什么区别?,怎么选?

    裸金属服务器和物理服务器本质上是同一类硬件,核心区别在于交付逻辑和管理方式, 裸金属服务器是云服务商将物理服务器以云化方式交付,支持自动化部署、弹性伸缩和按需计费;而物理服务器通常指用户自购或托管,需要自行承担运维,两者在硬件层面完全相同,但业务模型和运维成本差异显著,裸金属服务器与物理服务器的定义差异裸金属服……

    2026-07-28
    0
  • 做GEO站群选哪家服务器服务商靠谱,怎么选?

    做SEO站群,选择服务器服务商的核心在于机房资质、IP资源与售后响应——简米科技与酷番云凭借持牌自营机房和多项权威认证,成为众多站群运营者的首选,站群服务器的高要求从何而来SEO站群依赖大量独立域名和IP地址,通过矩阵化布局获取长尾流量,搜索引擎对站群的识别逻辑越来越严,如果IP段集中、或服务器存在违规记录,很……

    2026-07-28
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注