使用生物识别技术的SSH身份验证


7

我正在使用PuTTY通过SSH访问我的服务器。但是,由于我的私钥密码很复杂,因此我决定考虑使用其他身份验证方法,例如生物识别,更具体地讲是指纹。

我已经看过如何做这样的事情,但是似乎以前没有人知道如何做。由于我使用的是Windows 7,因此指纹扫描仪的驱动程序和Windows本身之间存在一些集成(Windows接受指纹作为一种正式的身份验证方法)。

我想做的是通过提供指纹来解锁笔记本电脑的SSH私钥,然后可以通过SSH将解锁的私钥传递到服务器上以登录(通常)。

我正在使用的指纹程序可让我保存站点密码,但这是AuthenTec放弃的程序。这也是我的指纹驱动程序(同样来自AuthenTec)支持的唯一程序。

我该如何完成这项任务?还是不值得付出努力?


为此,您必须修改SSH服务器和SSH客户端。如果您的指纹设备仅支持一个程序,则考虑不再支持该设备,请花点时间购买新设备
。– Ramhound

@Ramhound它已集成到笔记本电脑中。没有办法简单地替换它。
oldmud0

我认为笔记本电脑具有USB端口。如果需要,可以替换它。您首先必须找到一种SSH实现,它甚至支持您要执行的操作。
Ramhound

1
我没有外部阅读器,也没有计划购买。它们非常昂贵,我没有钱扔。它们的集成并没有改善,并且有可能在五年内过时。另外,我也不想将指纹数据集成到SSH协议本身中。我只想用指纹解锁RSA / DSA私钥,以便可以将其用于SSH。
oldmud0

2
这篇有关指纹的身份验证文章是相关的,值得阅读/考虑。
Castaglia '16

Answers:


1

这听起来像是一个非常有趣的实验。所有零件都可用,尽管我不知道有人将它们缝合在一起。首先,我将使用x.509生物识别联盟的方法

实际上,您要做的就是创建一个私钥,该私钥使用从指纹生成的密钥进行加密;然后将该密钥(一旦解密)用作标准的x.509私钥。这意味着您无需修改​​OpenSSH,只需提供一种向其提供私钥的自定义方法即可。

不幸的是,开箱即用,OpenSSH不支持x.509身份验证。但是,鲁门·彼得罗夫(Roumen Petrov)在这里已解决此问题

我分别完成了这两项工作,并且它们发挥了作用-尽管我没有尝试将它们粘合在一起。如您所言,我怀疑这样做可能不值得。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.