linux-使用硬件令牌登录

我是密码学的新手,正在研究PKI和PKCS等.我了解PKI的基本概念以及如何将其用于加密/解密.但是我对如何使用诸如USB令牌或智能卡之类的硬件令牌来安全登录计算机感到困惑.以下是我理解的步骤以及我困惑的部分(对于问题的长度,我们深表歉意):

方案:网络上的计算机xyz包含仅属于SECRET组的用户可以访问的数据.用户Bob和Joe属于该组,并且已获得USB令牌,可以使用它们来提供凭据,使他们能够访问这些资源. USB令牌采用两因素认证,并且需要输入引脚.该令牌符合PKCS11.

> Bob将USB令牌插入Linux机器
> PAM-PKCS11模块会识别此事件,并提示Bob输入他的密码.
>一旦鲍勃正确输入了他的4位数PIN码,该模块就会通过以下方式检查鲍勃令牌上证书的有效性:(这有所不同,但是最小值是多少?):

>找到根证书以检查受信任的CA
>检查证书有效日期和吊销列表
>将令牌上的ID与用户文件(哪里?,缺少步骤)或目录(LDAP等)相匹配

>如果一切看起来不错,则模块将成功的结果通知PAM.
>该行标记为足够,因此PAM接受身份验证,并且Bob已登录,并且可以查看SECRET组中仅限于用户的信息.

我缺少的部分是存储有关Bob是否可以访问此计算机以及他与网络(甚至台式机)用户Bob有多紧密联系的信息.我了解其他有关Bob的识别数据将存储在USB上,包括ID(例如电子邮件地址).但是,这种强大的安全性又如何呢?如果有的话,在登录过程中将在哪里使用加密货币(或者这不是这些令牌的真正目的)?如果有人握住USB并知道4位数的引脚,那么似乎就足够了,对吧?而且,从本质上讲,对CA的信任是否允许它信任另一个用户无法获得新的USB令牌并使用受信任的CA获得新证书,但将所有标识数据指定为与Bob相同?我知道我缺少一些关键的部分..但是,在阅读了数十篇文章之后,对这一领域的解释似乎被掩盖了.使用硬件令牌作为身份验证足以登录到包含敏感数据的计算机的好方法吗?或者这些令牌的目的主要是为了安全地存储在其他应用程序中使用的密钥对?谢谢您的帮助!

解决方法:

PAM(顾名思义)仅处理身份验证.身份验证是关于证明用户的身份,即“向我证明您说的是谁”.这与“授权”是分开的,即“您是否有权访问该资源?”.

身份验证涉及三个方面:
1.我知道
2.我有
3.我是

典型的用户名/密码组合适合1.令牌或其他PKCS设备适合2,而虹膜识别或指纹读取等生物识别技术适合第三.

您在安全性中拥有的这些方面越多,安全性越好/越严格.在这种情况下,登录名适合1和2,因此比用户名和密码更安全.如果有人要从他身上拿走针并偷走他的设备,那么是的,它不会证明它正在使用它.但是,如果鲍勃也将他的用户名和密码提供给某人,那也不会.

令牌的目的是引入“拥有”某物的第二个因素,您还需要PIN的事实意味着还需要“知道”某物.这样,系统就可以更加自信地证明这个人就是他们所声称的那个人.

您所指的缺失部分是授权,如前所述,这是身份验证的独立过程,仅在用户进行身份验证后才会发生.在这种情况下,PAM已对Bob进行了身份验证,并向OS确认了Bob确实在使用该系统.但是,操作系统随后必须在步骤5中执行其他一些检查,以确认Bob可以访问该资源.

上一篇:linux – 如何创建pam模块?


下一篇:Java中的Linux PAM模块