远程 VPN - 使用 Cisco ASA + OpenLDAP 进行双因素身份验证

远程 VPN - 使用 Cisco ASA + OpenLDAP 进行双因素身份验证

有人可以为我提供一条途径(或链接到文档/如何操作)在 Cisco ASA 上为 RemoteVPN(使用 Anyconnect 客户端)实施双因素身份验证(LDAP 密码 + 证书)吗?

目前,我们的 Cisco ASA (5505, 8.4.3) 配置为使用 OpenLDAP 服务器进行密码身份验证。我们使用 RemoteVPN 和 AnyConnect 客户端 (SSL VPN)。我想将证书添加到身份验证/授权过程中。我不想使用任何外部证书颁发机构。我甚至可能不需要每个用户都有个人证书。

我需要的只是在使用密码进行 LDAP 身份验证/授权之前/之后/期间检查用户是否具有有效证书。

说实话,现在我不太清楚它应该如何工作。

1)首先,我不明白,在Cisco ASA上应该在哪里配置它。

我是否应该通过 OpenLDAP 服务器为隧道组启用证书和 aaa 身份验证“(config-tunnel-webvpn)# 身份验证 aaa 证书”?那么它将如何工作?OpenLDAP 是否支持证书验证?

或者我需要使用二次身份验证来添加证书?然后我需要配置一些服务器来进行二次身份验证吗?

或者我需要进行其他配置,例如 CA 授权?那么 CA 授权如何从 OpenLDAP 获取用户名?或者我是否可以为所有用户制作一个证书(这样的安全级别对我的公司来说已经足够了)?

2) 证书验证过程应如何进行?Cisco ASA 将如何验证证书?它是否类似于 openssl 私钥/公钥?我可以在 ASA 上设置本地 CA 颁发机构,但仍从 OpenLDAP 获取所有用户吗?它是否仅从证书中提取用户名,还是会以某种方式使用证书本身进行身份验证?

提前非常感谢您。

答案1

基于电话的身份验证不是一个选项吗?我更喜欢它,因为它比证书的维护负担要小得多。例如,要允许新用户使用 VPN,您只需在 LDAP 中填写他/她的电话号码,然后将他/她添加到启用 VPN 的用户组中(如果您进行这种过滤),就这样。而使用证书,您必须生成证书,然后将其提供给用户,然后用户需要处理它。另一方面,每个人都拥有一部手机几乎是自然而然的事情。

所以我采用了基于电话的双因素身份验证,也许它也会在某种程度上帮助你。

具有 Active Directory 和 Azure 多重身份验证的 Cisco AnyConnect

这很容易做到,您可以从 GUI 完成所有操作。但它基于 AD。虽然 MSAF 据说也支持 LDAP,所以对您来说也应该可行。唯一需要注意的是 Azure 电话呼叫需要付费,要么是 1.4 美元/用户/月,要么是 1.4 美元/10 次呼叫。我认为这可以忽略不计。

相关内容