有一种使用ssh

问题描述 投票:0回答:1
这可能吗? 我们需要什么工具?

我们将Ubuntu用作客户端和服务器。

如果将fido2兼容的安全密钥与

ecdsa-sk

键相结合,则当SSHing进入服务器时,您可以实现类似FIDO2的多因素身份验证。诀窍是用

ecdsa-sk

(“ SK”用于“安全密钥”)以及需要您也输入安全密钥PIN的标志:
ubuntu ssh webauthn fido
1个回答
3
投票
$> ssh-keygen -t ecdsa-sk -C <email address> -O verify-required

提示时输入安全密钥的PIN,然后跳过提示,以密码保护Keypair(安全密钥及其PIN将保护其使用)。最后,指定将按键保存到的绝对文件路径。 您将按照您的期望,最终获得私钥和公共密钥。将

.pub
文件添加到
https://github.com/settings/keys
作为

authentication
密钥,然后更新
〜/.ssh/configist,以告诉它使用相应的私钥:

Host github.com IgnoreUnknown UseKeychain AddKeysToAgent yes UseKeychain yes IdentityFile ~/.ssh/name-you-gave-keypair-here 要测试一切正常,您可以尝试进入github: $> ssh -T [email protected] 您应该看到这样的东西: -hi用户名!您已经成功验证了,但是GitHub不提供外壳访问。

在那里,您可以使用SSH连接的安全键支持的多因素身份验证。

最后一件事,您需要至少在服务器和客户端上使用OpenSSH 8.2,因为它是支持

ecdsa-sk
KEYPAIRS的最早版本。
    

您还可以利用WebAuthn从浏览器中进行SSH身份验证。 如果您有兴趣,我可以推荐我在github

https://github.com/hullarb/ssheasy
上推荐我的Ssheasy项目。这是一个基于WebAssembly的SSH客户端,可以在浏览器中运行,这样它可以利用Web Autheration Api。 在服务器端,您只需要近期的OpenSSH Server v8.4或更高版本,并且如上所述启用了其配置中的公共密钥算法。

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.