SSLVPN(思科)的两因素身份验证?


13

今天刚刚被问到关于在公司内部为SSLVPN用户实施两因素身份验证(通过不支持/使用WebVPN的Cisco AnyConnect进行连接)。当前,我们使用LDAP进行身份验证。

我已经找到一家可以直接与anyConnect和移动客户端集成以提供基于令牌的两因素身份验证的公司,但是想知道在这种情况下实现两因素的更常见方法是什么?我想到的第一件事是Google Authenticator或RSA,但是很难找到与AnyConnect结合使用的这些类型的设置信息(实际上我什么都没找到。)


我们公司使用Duo安全性。我了解前十个用户是免费的,您可以尝试查看它是否满足您的需求。PD:我与Duo安全无关。这仅作为示例给出。

我们已经成功使用了YubiKey。非常非常经济且易于设置。可能与Cisco ASA SSL VPN,PaloAlto等兼容。(我没有以任何方式与该公司建立联系,只是一个用户)
Jakob 2014年

太棒了,谢谢您的推荐-我们最终选择了DUO-我将为每个用户支付一美元...很棒,服务简单明了,我唯一的遗憾是当他们获得新手机或设备时重新注册在管理上有点烦人(还不是自助服务)。强烈推荐他们(并且完全不隶属于他们)。
AL

FWIW,我一直不敢让auth(这很关键)取决于很多部分(活动目录+ 2因素部分)。我想要设备中的2因子片,所以它是活动目录+设备....但这很难找到。
琼斯恢复莫妮卡

Answers:


13

我能想到的两条路径如下:

  1. 您要使用内置的Cisco ASA辅助身份验证

  2. 您愿意使用Radius服务器。

#2的概念:

  1. 选择一个身份验证器。例如,Google,LDAP,AD等。

  2. 设置支持身份验证器的Radius服务器(FreeRADIUS,Windows NPM,Cisco ACS等)。

  3. 在Cisco ASA上配置身份验证以使用该Radius服务器(IP地址,端口,密钥等),然后完成操作。根据需要调整超时时间。

关于Google Authenticator
您可以将FreeRadius设置为使用Google Authenticator,然后将Cisco ASA aaa服务器设置为使用FreeRadius服务器。完成:)

关于Duo Security
我已经使用过Duo Security,它的效果很好。此配置链接显示了如何在不安装Duo Security应用程序的情况下设置2-Factor身份验证。但是,如果您安装该应用程序(充当RADIUS服务器),则安装会变得更加容易。下面是一个示例配置,应该会有所帮助。

此设置的注意事项:
增加超时时间!我对此有疑问。不要在现有的RADIUS服务器上安装Duo应用程序(侦听端口冲突)。

  • 在服务器上安装应用程序后,您需要修改authproxy.cfg文件以将Active Directory用作您的主要身份验证器authproxy.cfg

  • 将客户端设置为ad_client,服务器设置为radius_server_auto

    [main]  
    client=ad_client  
    server=radius_server_auto  
    
  • 创建一个名为的部分ad_client

    [ad_client]
    host=10.x.x.11
    host_2=10.x.x.12
    service_account_username=ldap.duo
    service_account_password=superSecretPassword
    search_dn=DC=corp,DC=businessName,DC=com
    
  • 安全组是可选的。该组允许用户进行身份验证。

    security_group_dn=CN=Administrators,CN=Builtin,DC=example,DC=com
    
  • 特定的DUO安全配置信息

    [radius_server_auto]
    ikey=xxxxxxxxxxxxx
    skey=xxxxxxxxxxxxx
    api_host=api-xxxxx.duosecurity.com
    
  • 安全或保障是这里的选项。

  • Safe=allow auth 如果Duo无法到达。
  • Secure=do not allow auth 如果Duo无法访问failmode = safe

  • 您要命中的Cisco ASA的IP地址和密钥

    radius_ip_1=10.x.x.1
    radius_secret_1=superSecretPassword
    
  • 安装了DuoSecurity App的Windows Server

    net stop DuoAuthProxy
    net start DuoAuthProxy
    
  • Cisco ASA 8.4配置

  • 将新的aaa服务器添加到相应的VPN策略

    aaa-server DUO protocol radius
    !
    aaa-server DUO (inside) host 10.x.x.101
     accounting-port 1813
     authentication-port 1812
     key superSecretPassword
     retry-interval 10
     timeout 300
    !
    

非常感谢您的广泛撰写!我在这里有很多工作。有趣的是,这些系统如何协同工作以提供两因素身份验证。
AL 2013年

2

两因素身份验证的定义具有多种方法。这些是方法:

  1. 您所知道的,例如登录帐户的用户名和密码
  2. 您所拥有的,例如生成数字或证书文件的RSA密钥卡
  3. 您是什么,例如视网膜扫描和指纹扫描仪

两要素身份验证没有来自两个不同来源的两个不同的登录帐户(如两组不同的用户名和密码),因为它们都是“您所知道的”。两个因素验证的一个示例是将智能卡插入笔记本电脑(您拥有),然后刷指纹扫描仪(您拥有)。

如果我了解您对LDAP的使用,似乎您有Microsoft服务器。为什么不在操作系统附带的最近的Microsoft Windows Server上启用Microsoft证书颁发机构服务,并启用用户证书注册?带有CA根证书的ASA可以验证称为XAUTH的帐户,然后对Windows,Linux和MacOS可以使用的用户证书进行身份验证。


0

正确,但是,只要您有一个安全的注册流程,手机就可以用作物理密钥卡。Duo还提供了应用程序推送或短信代码的UX灵活性。ASA上的内部CA也很棒,但是如果以HA对或多上下文方式运行,则不是一种选择。根据建议,使用MS / Dogtag CA或Duo。

IMO,通过如下配置vpn组,您可以获得最大的覆盖范围:

因素1-使用证书(CA内置MS / Dogtag / ASA)-可以使用ldap / AD用户生成证书。(最好在本地完成,在交付/安装证书时必须遵循OpSec最佳做法。)

因素2-具有令牌/ OTP密钥卡或移动设备安全注册的FreeRADIUS或Duo代理。

这样,如果以用户为目标,则攻击者必须获取a。)仅应存在于便携式计算机/端点密钥库中的证书副本b。)用户AD / radius用户名/密码c。)FOB(rsa / yubikey)或移动设备(DuoSec)

这也限制了设备丢失/被盗的责任。我相信二人组还提供了一种通过广告来管理用户的方法,这使得整个设置易于管理。您的设备必须允许超时/重试调整,以支持身份验证期间的带外用户交互。(将手机/口袋中的钥匙扣等解锁-允许至少30秒的半径超时)

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.