目录

简介

先决条件

要求

使用的组件

背景信息

网络图和场景

通信过程

Active Directory配置

Duo配置

Duo Auth代理配置

思科ISE配置

Cisco ASA RADIUS/ISE配置

Cisco ASA远程访问VPN配置

测试

故障排除

工作调试

简介

本文档介绍作为连接到ASA的AnyConnect客户端的两因素身份验证与AD和ISE的双向推送集成。

先决条件

要求

Cisco 建议您了解以下主题：

- ASA上的RA VPN配置

- ASA上的RADIUS配置

- ISE

- Active Directory

- Duo应用程序

使用的组件

本文档中的信息基于以下软件和硬件版本：

- Microsoft 2016服务器

- ASA 9.14(3)18

- ISE服务器3.0

- Duo服务器

- Duo身份验证代理管理器

本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始（默认）配置。如果您的网络处于活动状态，请确保您了解所有命令的潜在影响。

背景信息

本文档介绍如何配置与Active Directory(AD)和思科身份服务引擎(ISE)的双引擎集成，作为连接到思科自适应安全设备(ASA)的AnyConnect客户端的双因素身份验证。

网络图和场景

通信过程

https://duo.com/docs/ciscoise-radius

1. 向Cisco ISE发起主要身份验证

2. Cisco ASA将身份验证请求发送到Duo身份验证代理

3. 主身份验证使用Active Directory或RADIUS

4. 建立双向TCP端口双安全身份验证代理连接443

5. 通过Duo Security的服务进行辅助身份验证

6. Duo身份验证代理收到身份验证响应

7. 已授予思科ISE访问权限

用户帐户：

- Active Directory Admin：此帐户用作目录帐户，以允许Duo Auth代理绑定到Active Directory服务器以进行主要身份验证。

- Active Directory测试用户

- Duo测试用户进行辅助身份验证

Active Directory配置

Windows服务器已预配置了Active Directory域服务。

注意：如果RADIUS Duo Auth Proxy Manager在同一Active Directory主机上运行，则必须卸载/删除网络策略服务器(NPS)角色，如果两个RADIUS服务都运行，则它们可能冲突并影响性能。

要在远程访问VPN用户上实现身份验证和用户身份的AD配置，需要几个值。

必须在Microsoft服务器上创建或收集所有这些详细信息，才能在ASA和双重身份验证代理服务器上完成配置。

主要值包括：

- 域名.这是服务器的域名。在本配置指南中，agarciam.cisco是域名。

- 服务器IP/FQDN地址。用于访问Microsoft服务器的IP地址或FQDN。如果使用FQDN，则必须在ASA和双身份验证代理中配置DNS服务器以解析FQDN。

在本配置指南中，此值为agarciam.cisco（解析为10.28.17.107）。

- 服务器端口.LDAP服务使用的端口。默认情况下，LDAP和STARTTLS使用TCP端口389进行LDAP，LDAP over SSL(LDAPS)使用TCP端口636。

- 根 CA.如果使用LDAPS或STARTTLS，则需要用于签署LDAPS所用SSL证书的根CA。

- 目录用户名和密码。这是Duo Auth代理服务器用于绑定到LDAP服务器、对用户进行身份验证以及搜索用户和组的帐户。

- 基本和组可分辨名称(DN)。基础DN是Duo Auth代理的出发点，它告知Active Directory开始搜索和验证用户。

在本配置指南中，根域agarciam.cisco用作基础DN，组DN为Duo-USERS。

1.要添加新的Duo用户，请在Windows Server上导航到左下角的Windows图标，然后单击Windows管理工具，如图所示。

2.在“Windows管理工具”窗口中，导航到Active Directory用户和计算机。

在Active Directory用户和计算机面板上，展开域选项并导航到Users文件夹。

在此配置示例中，Duo-USERS用作辅助身份验证的目标组。

3.右键单击Users文件夹，然后选择New > User，如图所示。

4.在“新建对象 — 用户”窗口中，指定此新用户的身份属性，然后单击下一步，如图所示。

5.确认密码并单击下一步，然后在验证用户信息后单击完成。

6.将新用户分配给特定组，右键单击该组，然后选择“添加到组”，如图所示。

7.在“选择组”面板上，键入所需组的名称，然后单击检查名称。

然后选择符合条件的名称，然后单击Ok。

8.此用户是本文档中使用的示例。

Duo配置

1.登录您的Dudo Admin门户。

2.在左侧面板上，导航到Users，单击Add User，然后键入与活动域用户名匹配的用户名，然后单击Add User。

3.在新用户面板上，将所有必要信息填空。

4.在“用户设备”下，指定辅助身份验证方法。

注意：在本文档中，使用Duo推送移动设备方法，因此需要添加电话设备。

单击Add Phone。

5.键入用户电话号码，然后单击Add Phone。

6.在Duo Admin左面板上，导航到Users，然后单击新用户。

注意：如果您此时无权访问您的电话，可以选择电子邮件选项。

7.导航到Phones部分，然后单击Activate Duo Mobile。

8.单击生成Duo Mobile激活码。

9.选择Email以便通过邮件接收说明，键入您的电子邮件地址，然后单击Send Instructions by email。

10.您会收到一封包含说明的电子邮件，如图所示。

11.从您的移动设备打开Duo Mobile App，单击Add，然后选择Use QR code，然后从说明邮件中扫描代码。

12.新用户将添加到您的Duo移动应用。

Duo Auth代理配置

1.从https://duo.com/docs/authproxy-reference下载并安装Duo Auth Proxy Manager。

注意：在本文档中，Duo Auth Proxy Manager安装在承载Active Directory服务的同一Windows服务器上。

2.在Duo Admin Panel上，导航至Applications，然后单击Protect an Application。

3.在搜索栏上，查找Cisco ISE Radius。

4.复制集成密钥、Secrety密钥和API主机名。您需要此信息进行Duo身份验证代理配置。

5.运行Duo Authentication Proxy Manager应用并完成Active Directory客户端和ISE Radius服务器的配置，然后点击Validate。

注意：如果验证不成功，请参阅调试选项卡了解详细信息并相应更正。

思科ISE配置

1.登录ISE管理员门户。

2.展开Cisco ISE选项卡，导航到Administration，然后点击Network Resources，然后点击External RADIUS Servers。

3.在External Radius Servers选项卡上，单击Add。

4.使用Duo Authentication Proxy Manager中使用的RADIUS配置填空并点击Submit。

5.导航到RADIUS Server Sequences选项卡，然后单击Add。

6.指定序列名称并分配新的RADIUS外部服务器，单击Submit。

7.从“控制面板”菜单导航至策略，然后单击策略集。

8.将RADIUS序列分配给默认策略。

注意：在本文档中，对所有连接应用Duo序列，因此使用默认策略。策略分配可能因要求而异。

Cisco ASA RADIUS/ISE配置

1.在AAA服务器组下配置ISE RADIUS服务器，导航到配置，然后单击设备管理并展开用户/AAA部分，选择AAA服务器组。

2.在AAA Server Groups面板上，单击Add。

3.选择服务器组的名称并指定RADIUS作为要使用的协议，然后单击确定。

5.选择新的服务器组，然后单击“选定组”面板中“服务器”下的添加，如图所示。

6.在编辑AAA服务器窗口中，选择接口名称，指定ISE服务器的IP地址并键入RADIUS密钥，然后单击确定。

注意：所有这些信息都必须与Duo Authentication Proxy Manager上指定的信息匹配。

CLI 配置.

aaa-server ISE protocol radius

dynamic-authorization

aaa-server ISE (outside) host 10.28.17.101

key *****

Cisco ASA远程访问VPN配置

ip local pool agarciam-pool 192.168.17.1-192.168.17.100 mask 255.255.255.0

group-policy DUO internal

group-policy DUO attributes

banner value This connection is for DUO authorized users only!

vpn-tunnel-protocol ikev2 ssl-client

split-tunnel-policy tunnelspecified

split-tunnel-network-list value split-agarciam

address-pools value agarciam-pool

tunnel-group ISE-users type remote-access

tunnel-group ISE-users general-attributes

address-pool agarciam-pool

authentication-server-group ISE

default-group-policy DUO

tunnel-group ISE-users webvpn-attributes

group-alias ISE enable

dns-group DNS-CISCO

测试

1.在PC设备上打开Anyconnect应用。指定VPN ASA头端的主机名，并使用为Duo辅助身份验证创建的用户登录，然后单击OK。

2.您收到指定用户Duo移动设备上的Duo推送通知。

3.打开Duo Mobile App通知，然后单击Approve。

4.接受标语，然后建立连接。

故障排除

本部分提供的信息可用于对配置进行故障排除。

Duo Authentication Proxy附带调试工具，用于显示错误和故障原因。

工作调试

注意：下一个信息存储在C:\Program Files\Duo Security Authentication Proxy\log\connectivity_tool.log中。

1.连接问题、错误的IP、Active Directory配置上无法解析的FQDN/主机名。

2. Active Directory上管理员用户的密码错误。

调试.

3.错误的基础域。

调试.

4.错误的RADIUS值。

调试

5.验证ISE服务器发送访问请求数据包。

6.为了确认Duo身份验证代理服务器正常工作，Duo提供了工具NTRadPing来模拟Duo的访问请求数据包和响应。

6.1在不同的PC上安装NTRadPing并生成流量。

注：在本示例中，使用10.28.17.3 Windows计算机。

6.2使用ISE Radius配置中使用的属性进行配置。

6.3按如下所示配置Duo Authentication Proxy Manager。

6.4.导航到NTRadPing工具，然后单击Send。您会在分配的移动设备上收到Duo推送通知。