简介
本文档介绍在Firepower管理中心(FMC)上为管理访问配置外部双因素身份验证所需的步骤。 在本示例中,FMC管理员根据ISE服务器进行身份验证,而Duo身份验证代理服务器以推送通知形式向管理员的移动设备发送附加身份验证。
先决条件
要求
Cisco 建议您了解以下主题:
- Firepower管理中心(FMC)对象配置
- 身份服务引擎(ISE)管理
使用的组件
本文档中的信息基于以下软件和硬件版本:
- 运行版本6.3.0的思科Firepower管理中心(FMC)
- 运行版本2.6.0.156的思科身份服务引擎(ISE)
- Windows计算机(运行Windows 7),可连接到FMC、ISE和Internet以充当双核身份验证代理服务器
- 访问FMC、ISE和Duo管理门户的Windows计算机
- Duo Web帐户
注意:本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您的网络处于活动状态,请确保您了解所有命令的潜在影响。
身份验证流程

身份验证流程说明
- 向Cisco FMC发起主身份验证
- Cisco FMC向Duo身份验证代理发送身份验证请求
- 主身份验证必须使用Active Directory或RADIUS
- 通过TCP端口443建立到Duo Security的Duo身份验证代理连接
- 通过Duo Security的服务进行辅助身份验证
- 双核身份验证代理接收身份验证响应
- 授予Cisco FMC GUI访问权限
配置
要完成配置,请考虑以下部分:
FMC上的配置步骤
步骤1.导航至System > Users > External Authentication,创建外部身份验证对象,并将身份验证方法设置为RADIUS。确保在默认用户角色下选择了Administrator,如图所示:
注意:10.106.44.177是Duo身份验证代理服务器的示例IP地址。


单击保存并应用,忽略警告,如图所示:

步骤2.导航至System > Users > Users,创建用户,并检查Authentication Method as External,如图所示:

步骤1.下载并安装Duo身份验证代理服务器。
登录到Windows计算机并安装Duo身份验证代理服务器:https://dl.duosecurity.com/duoauthproxy-latest.exe
建议使用至少具有1 CPU、200 MB磁盘空间和4 GB RAM的系统
注意:此计算机必须能够访问FMC、RADIUS服务器(在我们的案例中为ISE)和双云(互联网)
步骤2.配置authproxy.cfg文件。
在文本编辑器(如Notepad++或WordPad)中打开此文件。
注意:默认位置位于C:\Program Files (x86)\Duo安全身份验证Proxy\conf\authproxy.cfg。
编辑authproxy.cfg文件并添加此配置:
[radius_client]
host=10.197.223.23 Sample IP Address of the ISE server
secret=cisco Password configured on the ISE server in order to register the network device
FMC的IP地址必须与RADIUS密钥一起配置。
[radius_server_auto]
ikey=xxxxxxxxxxxxxxx
skey=xxxxxxxxxxxxxxxxxxxxxxxxxxx
api_host=api-xxxxxxxx.duosecurity.com
radius_ip_1=10.197.223.76 IP of FMC
radius_secret_1=cisco Radius secret key used on the FMC
failmode=safe
client=radius_client
port=1812
api_timeout=
确保配置ikey、skey和api_host参数。要获取这些值,请登录到您的Duo帐户(https://admin.duosecurity.com)并导航到Applications > Protect an Application。接下来,选择RADIUS身份验证应用,如图所示:

集成密钥=密钥
密钥=密钥
API主机名= api_host
步骤3.重新启动Duo安全身份验证代理服务。在Windows计算机上保存文件并重新启动Duo服务。
打开Windows Services控制台(services.msc),在服务列表中找到Duo Security Authentication Proxy Service,然后单击Restart,如图所示:

ISE上的配置步骤
步骤1.导航至Administration > Network Devices,单击Add以配置网络设备,如图所示:
注意:10.106.44.177是Duo身份验证代理服务器的示例IP地址。

如图所示,按authproxy.cfg中secret中所述配置共享密钥:

步骤2.导航至“管理”>“身份”,单击“添加”以配置身份用户,如图所示:

Duo管理门户上的配置步骤
步骤1.创建用户名并在终端设备上激活Duo Mobile
在Duo云管理网页上添加用户。导航至“用户”>“添加用户”,如图所示:

注意:确保最终用户已安装Duo应用。
手动安装IOS设备的Duo应用
手动安装Android设备的Duo应用
步骤2.自动生成代码:
添加用户的电话号码,如图所示:


选择激活Duo Mobile,如图所示:

选择生成Duo Mobile Activation Code(如图所示):

选择通过SMS发送说明,如图所示:

单击SMS中的链接,Duo应用将链接到“设备信息”部分的用户帐户,如图所示:

验证
使用本部分可确认配置能否正常运行。
使用ISE用户身份页面上添加的用户凭证登录FMC。您必须在终端上收到双重身份验证(2FA)的双重推送通知,批准该通知,FMC将登录,如图所示:

在ISE服务器上,导航到Operations > RADIUS > Live Logs,查找用于在FMC上进行身份验证的用户名,并在detail列下选择详细身份验证报告。在此,您必须验证身份验证是否成功,如图所示:

故障排除
本节提供可用于排除配置故障的信息。
- 检查Duo身份验证代理服务器上的调试。日志位于以下位置:
C:\Program Files (x86)\Duo安全身份验证代理\日志
在文本编辑器(如Notepad+或WordPad)中打开文件authproxy.log。
当输入不正确的凭证且ISE服务器拒绝身份验证时记录代码段。
2019-08-04T18:54:17+0530 [DuoForwardServer (UDP)] Sending request from 10.197.223.76 to radius_server_auto 10.197.223.76 is the IP of the FMC
2019-08-04T18:54:17+0530 [DuoForwardServer (UDP)] Received new request id 4 from ('10.197.223.76', 34524)
2019-08-04T18:54:17+0530 [DuoForwardServer (UDP)] (('10.197.223.76', 34524), 4): login attempt for username u'cpiplani'
2019-08-04T18:54:17+0530 [DuoForwardServer (UDP)] Sending request for user u'cpiplani' to ('10.197.223.23', 1812) with id 199
2019-08-04T18:54:17+0530 [RadiusClient (UDP)] Got response for id 199 from ('10.197.223.23', 1812); code 3 10.197.223.23 is the IP of the ISE Server.
2019-08-04T18:54:17+0530 [RadiusClient (UDP)] (('10.197.223.76', 34524), 4): Primary credentials rejected - No reply message in packet
2019-08-04T18:54:17+0530 [RadiusClient (UDP)] (('10.197.223.76', 34524), 4): Returning response code 3: AccessReject
2019-08-04T18:54:17+0530 [RadiusClient (UDP)] (('10.197.223.76', 34524), 4): Sending response
- 在ISE上,导航至操作> RADIUS >实时日志以验证身份验证详细信息。
使用ISE和Duo成功进行身份验证的日志片段:
2019-08-04T18:56:16+0530 [DuoForwardServer (UDP)] Sending request from 10.197.223.76 to radius_server_auto
2019-08-04T18:56:16+0530 [DuoForwardServer (UDP)] Received new request id 5 from ('10.197.223.76', 34095)
2019-08-04T18:56:16+0530 [DuoForwardServer (UDP)] (('10.197.223.76', 34095), 5): login attempt for username u'cpiplani'
2019-08-04T18:56:16+0530 [DuoForwardServer (UDP)] Sending request for user u'cpiplani' to ('10.197.223.23', 1812) with id 137
2019-08-04T18:56:16+0530 [RadiusClient (UDP)] Got response for id 137 from ('10.197.223.23', 1812); code 2 <<<< At this point we have got successful authentication from ISE Server.
2019-08-04T18:56:16+0530 [RadiusClient (UDP)] http POST to https://api-f754c261.duosecurity.com:443/rest/v1/preauth
2019-08-04T18:56:16+0530 [duoauthproxy.lib.http._DuoHTTPClientFactory#info] Starting factory <_DuoHTTPClientFactory: https://api-f754c261.duosecurity.com:443/rest/v1/preauth>
2019-08-04T18:56:17+0530 [HTTPPageGetter (TLSMemoryBIOProtocol),client] (('10.197.223.76', 34095), 5): Got preauth result for: u'auth'
2019-08-04T18:56:17+0530 [HTTPPageGetter (TLSMemoryBIOProtocol),client] Invalid ip. Ip was None
2019-08-04T18:56:17+0530 [HTTPPageGetter (TLSMemoryBIOProtocol),client] http POST to https://api-f754c261.duosecurity.com:443/rest/v1/auth
2019-08-04T18:56:17+0530 [duoauthproxy.lib.http._DuoHTTPClientFactory#info] Starting factory <_DuoHTTPClientFactory: https://api-f754c261.duosecurity.com:443/rest/v1/auth>
2019-08-04T18:56:17+0530 [duoauthproxy.lib.http._DuoHTTPClientFactory#info] Stopping factory <_DuoHTTPClientFactory: https://api-f754c261.duosecurity.com:443/rest/v1/preauth>
2019-08-04T18:56:30+0530 [HTTPPageGetter (TLSMemoryBIOProtocol),client] (('10.197.223.76', 34095), 5): Duo authentication returned 'allow': 'Success. Logging you in...'
2019-08-04T18:56:30+0530 [HTTPPageGetter (TLSMemoryBIOProtocol),client] (('10.197.223.76', 34095), 5): Returning response code 2: AccessAccept <<<< At this point, user has hit the approve button and the authentication is successful.
2019-08-04T18:56:30+0530 [HTTPPageGetter (TLSMemoryBIOProtocol),client] (('10.197.223.76', 34095), 5): Sending response
2019-08-04T18:56:30+0530 [duoauthproxy.lib.http._DuoHTTPClientFactory#info] Stopping factory <_DuoHTTPClientFactory: https://api-f754c261.duosecurity.com:443/rest/v1/auth>
相关信息