简介
本文档介绍如何在基于RAVPN客户端的安全防火墙设备上执行和配置动态访问策略。
先决条件
要求
Cisco 建议您了解以下主题:
- 向FMC注册安全防火墙,并使其与最新版本的配置文件同步。
- 在注册的安全防火墙上预配置远程访问虚拟专用网络(RAVPN)策略。
- 下载Hostscan程序包(.pkg)及其等效版本的Anyconnect安全移动客户端。
- 有关RAVPN解决方案的基本知识。
- DAP功能的一般概念。
- 安全防火墙管理中心管理和配置知识。
使用的组件
本文档中的信息基于以下软件和硬件版本:
- FMC 7.0.0版本或更高版本
- Secure Firewall 7.0.0或更高版本
- 使用Cisco安全客户端Anyconnect软件4.10或更高版本的MAC/Windows计算机
- HostScan程序包4.10或更高版本
- 用于AAA身份验证的Active Directory。
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您的网络处于活动状态,请确保您了解所有命令的潜在影响。
背景信息
本文档介绍如何在基于RAVPN客户端计算机属性的安全防火墙设备上执行并配置动态访问策略的分步指南。HostScan用于收集客户端信息,DAP分别向Mac OS和Windows用户应用不同的策略。
RAVPN设计在不同和动态的场景中运行,网络管理员无法控制这些场景。通常有若干连接位于同一VPN网关上,这些连接基于多个变量(如用户名、组织、硬件设备、操作系统等)来确定每个连接如何受到威胁,其中一些连接可能需要特权用户角色、程序和应用的访问权限、不同的IP地址分配或子网过滤规则。
动态访问策略(DAP)是Cisco Secure Firewall Threat Defense软件版本7.0.0中引入的一项新功能,它允许网络管理员根据来自Cisco Secure Client(Anyconnect)的RAVPN客户端的属性集合,将不同的策略应用于在上述动态环境中运行的不同用户,这些属性等同于一个或多个条件(DAP条件)。
Anyconnect软件为RAVPN客户端功能和状态模块提供识别主机上安装的操作系统、防病毒、防间谍软件和防火墙软件等属性以及 HostScan应用收集此信息(如果适用)。
配置
网络图
配置
1.使用管理员凭据登录FMC GUI,并在主控制面板视图中单击Devices,然后从展开的菜单中选择Dynamic Access Policy。
2.在“动态访问策略”视图中,单击创建动态访问策略。
3.指定DAP策略的名称,然后选择HostScan程序包下拉菜单旁边的新建(此操作可以打开带有Object manager部分的新浏览器选项卡)。
注意:如果已上载HostScan映像,请从下拉菜单中选择该映像,然后点击保存并跳至第6步。
4.在Object选项卡视图中,转到Add Secure Client File以上传HostScan程序包。
5.指定文件的名称,单击Browse从本地文件上传HostScan程序包(.pkg),然后从File type下拉菜单中选择HostScan程序包,然后单击Save。
6.从步骤3返回到创建动态访问策略选项卡。
指定动态访问策略的名称,此时您可以在下拉菜单上看到新的HostScan程序包,然后单击Save。
7.您可以重定向到新的DAP编辑器窗口,单击创建DAP记录以生成新条目。
注意:在本示例中,我们可以配置DAP记录以从RAVPN Anyconnect客户端收集操作系统信息,并在主机运行Mac OS时允许连接。
8.指定DAP记录的名称,选中Display User Message on Criterion Match并键入提示消息,以便让用户知道连接基于操作系统进入DAP。在Action字段下选择Continue以允许连接。
注意:您可以选择Terminate或Quarantine作为根据您的案例应用的操作。
注意:您还可以根据网络要求应用网络ACL或安全客户端属性。
9.转至Endpoint Criteria选项卡,选择OS system并指定equals Mac OS X,将Version下拉列表留空,因为此示例意图是检测Mac OS而不考虑版本,然后单击Save。
注意:在本文中,使用Endpoint Criteria属性,但您可以使用AAA Criteria来匹配LDAP或RADIUS属性。
10.在Endpoint Criteria选项卡中,您可以看到新的操作系统系统条件,后跟Match criteria选项。
选择Any。
注:您可以创建多个标准条目,并根据要求选择Match All或Match any。
11.转至页面右下方,然后单击Save。
11.新的Mac OS DAP记录可以与其配置参数一起显示,确认它们正确无误,然后单击创建DAP 记录为Windows OS检测创建新记录。
注意:在本示例中,目的是阻止Windows客户端并仅允许Mac OS进行RAVPN连接。
12.指定DAP记录的名称,在操作字段下选择终止,然后键入要发送给用户的警告消息提示。
13.转至“终端标准”选项卡,在Operating System部分下创建新的等效标准,选择Windows 10作为等效操作系统,然后单击保存,然后选择匹配任意。
14.转至右下方,然后单击Save。
15.在DAP菜单上,确认存在两个具有新配置的新条目。
16.已创建动态访问策略,为了将其应用到RAVPN设置,请从FMC GUI转到Devices选项卡,然后单击Remote Access。
17.选择预配置的RAVPN策略,然后点击编辑按钮(铅笔图标)。
18.在右上角,点击动态访问策略文本标签旁边的无。
19.在“动态访问策略”窗口中,选择我们刚刚创建的DAP策略,然后单击确定。
20.在右上角,确认DAP已应用于“动态访问策略”文本标签旁边,然后点击保存。
部署更改,从FMC GUI中单击Deploy选项卡,选择FTD Device并单击Deploy按钮。
验证
1.从安全防火墙转到命令行界面(CLI),确认已应用HostScan配置:
firepower# sh run webvpn
webvpn
enable OUTSIDE
enable
hostscan image disk0:/csm/hostscan_4.10.06083-k9.pkg
hostscan enable
anyconnect image disk0:/csm/anyconnect-macos-4.10.04071-webdeploy-k9.pkg 1 regex "Mac OS"
anyconnect enable
.
.
firepower# sh run all dynamic-access-policy-record
dynamic-access-policy-record DfltAccessPolicy
user-message "nDID NOT MEET THE CRITERIA! TERMINATING"
action terminate
dynamic-access-policy-record "MAC USER"
user-message "DAP-TEST MATCH!!!!MAC USER DETECTED"
action continue
priority 0
dynamic-access-policy-record "WINDOWS USER"
user-message "WINDOWS DEVICE DETECTED!!TERMINATING CONNECTION!"
action terminate
priority 1
2.确认dap.xml文件已生成并存储在闪存中:
firepower# sh flash:
--#-- --length-- -----date/time------ path
76 4096 Feb 03 2023 19:01:10 log
222 1293 Feb 09 2023 17:32:16 dap.xml
3.显示dap.xml内容
firepower# more flash:dap.xml
MAC USER
and
match-any
match-all
endpoint.os.version
EQ
Mac OS X
WINDOWS USER
and
match-any
match-all
endpoint.os.version
EQ
Windows 10
故障排除
本部分提供可用于故障排除和确认DAP进程如何执行和如何按预期工作的信息。
注意:在安全防火墙上,可以设置各种调试级别;默认情况下,使用级别1。如果更改调试级别,调试的详细程度可能会增加。请谨慎执行此操作,尤其是在生产环境中。
使用Mac OS进行测试。
在用户尝试从一个Mac OS设备连接时启用DAP调试。
firepower# debug dap trace 127
debug dap trace enabled at level 127
firepower# debug dap errors
debug dap errors enabled at level 1
启动Mac OS设备并运行Anyconnect应用,连接到IP地址/主机名/FQDN,然后点击Connect使用请求的身份验证方法。
Secure Firewall CLI上的调试输出
firepower#
firepower# DAP_TRACE: DAP_open: New DAP Request: 9
DAP_TRACE[5]: Username: ad1, DAP_add_AC:
endpoint.anyconnect.clientversion = "4.10.06079";
endpoint.anyconnect.platform = "mac-intel";
endpoint.anyconnect.devicetype = "MacBookPro17,1";
endpoint.anyconnect.platformversion = "13.1.0";
.
.
.
DAP_TRACE: aaa["ldap"]["displayName"] = "ad1"
DAP_TRACE: aaa["ldap"]["memberOf"] = "AD-USERS-ONLY"
DAP_TRACE: aaa["ldap"]["name"] = "ad1"
.
.
.
DAP_TRACE: aaa["cisco"]["tunnelgroup"] = "RA-VPN"
DAP_TRACE: endpoint["application"]["clienttype"] = "AnyConnect"
DAP_TRACE: endpoint.os.version = "Mac OS X"
DAP_TRACE: endpoint.os.servicepack = "13.1"
.
.
.
DAP_TRACE: Username: ad1, Selected DAPs: ,MAC USER
DAP_TRACE: dap_process_selected_daps: selected 1 records
DAP_TRACE: Username: ad1, dap_concat_fcn: [DAP-TEST MATCH!!!!MAC USER DETECTED] 35 490
DAP_TRACE: Username: ad1, DAP_close: 9
Mac OS客户端提示。
使用Windows 10设备进行测试。
运行DAP调试,并尝试从一台Windows 10设备连接。
firepower# debug dap trace 127
debug dap trace enabled at level 127
firepower# debug dap errors
debug dap errors enabled at level 1
启动Windows 10设备并运行Anyconnect应用,连接到IP地址/主机名/FQDN,然后点击Connect使用请求的身份验证方法。
firepower#
firepower# DAP_TRACE: DAP_open: New DAP Request: A
DAP_TRACE[5]: Username: ad1, DAP_add_AC:
endpoint.anyconnect.clientversion = "4.10.05111";
endpoint.anyconnect.platform = "win";
endpoint.anyconnect.devicetype = "LENOVO";
endpoint.anyconnect.useragent = "AnyConnect Windows 4.10.05111";
.
.
.
AP_TRACE: aaa["cisco"]["grouppolicy"] = "agarciam"
DAP_TRACE: aaa["cisco"]["username"] = "ad1"
DAP_TRACE: aaa["cisco"]["tunnelgroup"] = "RA-VPN"
DAP_TRACE: endpoint["application"]["clienttype"] = "AnyConnect"
DAP_TRACE: endpoint.os.version = "Windows 10"
.
.
.
DAP_TRACE: Username: ad1, Selected DAPs: ,WINDOWS USER
DAP_TRACE: dap_process_selected_daps: selected 1 records
DAP_TRACE: Username: ad1, dap_concat_fcn: [WINDOWS DEVICE DETECTED!!TERMINATING CONNECTION!] 48 490
DAP_TRACE: Username: ad1, DAP_close: A
Windows 10用户促销。