简介
本文详细描述VPN过滤器并且适用于LAN对LAN (L2L), Cisco VPN Client和Cisco AnyConnect安全移动客户端。
过滤器由相关规则组成,这些规则基于源地址、目标地址和协议等条件,确定是否允许或拒绝通过安全设备的隧道传输数据包。您配置访问控制列表(ACL)为了允许或否决多种流量类型。过滤器在组策略、用户名属性或者动态访问策略(DAP)可以配置。
DAP取代根据两项用户名属性和组策略配置的值。万一DAP不分配任何过滤器,用户名属性值取代组政策价值。
Cisco 建议您了解以下主题:
- L2L VPN隧道配置
- VPN客户端远程访问(RA)配置
- AnyConnect RA配置
使用的组件
本文档中的信息根据Cisco 5500-X系列可适应安全工具(ASA)版本9.1(2)。
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您使用的是真实网络,请确保您已经了解所有命令的潜在影响。
背景信息
sysopt连接permit-vpn命令允许进入安全工具到VPN通道绕过接口访问列表的所有流量。组策略和每用户授权访问列表仍然适用于数据流。
vpn过滤器应用对postdecrypted流量,在退出通道和对preencrypted流量后,在输入通道前。为vpn过滤器isused的ACL不应该也用于接口访问组。
当vpn过滤器应用对管理远程访问虚拟专用网客户端连接的组政策时,应该配置ACL与客户端分配在ACL的src_ip位置和本地网络的IP地址在ACL的dest_ip位置。当vpn过滤器应用对管理L2L VPN连接的组政策时,应该配置ACL与远程网络在ACL的src_ip位置和本地网络在ACL的dest_ip位置。
配置
在入站方向必须配置VPN过滤器,虽然规则仍然应用双向。打开增强CSCsf99428支持单向的规则,但是未为实施被安排/做了。
有AnyConnect或VPN客户端的示例1. vpn过滤器
假设,客户指派的IP地址是10.10.10.1/24和本地网络是192.168.1.0/24。
此访问控制项(ACE)允许AnyConnect客户端远程登录到本地网络:
access-list vpnfilt-ra permit tcp
10.10.10.1 255.255.255.255 192.168.1.0 255.255.255.0 eq 23

Note:如果使用源端口23, ACE access-list vpnfilt RA permit tcp 10.10.10.1 255.255.255.255 192.168.1.0 255.255.255.0 eq 23也允许本地网络首次对RA客户端的连接所有TCP端口的。
此ACE允许本地网络远程登录到AnyConnect客户端:
access-list vpnfilt-ra permit tcp 10.10.10.1 255.255.255.255
eq 23 192.168.1.0 255.255.255.0

Note:如果使用源端口23, ACE access-list vpnfilt RA permit tcp 10.10.10.1 255.255.255.255 eq 23 192.168.1.0 255.255.255.0也允许RA客户端首次对本地网络的连接在所有TCP端口。
警告:vpn过滤器功能允许在仅入站方向将过滤的流量,并且出站规则自动地被编译。所以,当您创建互联网控制消息协议(ICMP) access-list时,请勿指定ICMP输入访问列表格式化,如果想要定向过滤器。
有L2L VPN连接的示例2. vpn过滤器
假设,远程网络是10.0.0.0/24和本地网络是192.168.1.0/24。
此ACE允许远程网络远程登录到本地网络:
access-list vpnfilt-l2l permit tcp 10.0.0.0 255.255.255.0 192.168.1.0
255.255.255.0 eq 23

Note: 如果使用源端口23, ACE access-list vpnfilt-l2l permit tcp 10.0.0.0 255.255.255.0 192.168.1.0 255.255.255.0 eq 23也允许本地网络首次对远程网络的连接在所有TCP端口。
此ACE允许本地网络远程登录到远程网络:
access-list vpnfilt-l2l permit tcp 10.0.0.0 255.255.255.0 eq 23
192.168.1.0 255.255.255.0

Note: 如果使用源端口23, ACE access-list vpnfilt-l2l permit tcp 10.0.0.0 255.255.255.0 eq 23 192.168.1.0 255.255.255.0也允许远程网络首次对本地网络的连接在所有TCP端口。
警告:vpn过滤器功能允许在仅入站方向将过滤的流量,并且出站规则自动地被编译。所以,当您创建ICMP access-list时,请勿指定ICMP输入访问列表格式化,如果想要定向过滤器。
VPN过滤器和每用户覆盖访问组
VPN流量没有由接口ACL过滤。no命令sysopt连接permit-vpn可以用于为了更改默认行为。在这种情况下,两个ACL可以应用到用户数据流:接口ACL首先然后被检查vpn过滤器。
每用户覆盖关键字(仅入站ACL)允许为用户授权下载为了改写ACL分配到接口的动态用户ACL。例如,如果接口ACL否决从10.0.0.0的所有流量,但是动态ACL允许从10.0.0.0的所有流量,然后动态ACL改写该用户的接口ACL,并且流量允许。
示例(当sysopt连接permit-vpn没有配置) :
- 没有每用户覆盖,没有vpn过滤器-流量匹配接口ACL
- 没有每用户覆盖, vpn过滤器-流量匹配首先接口ACL,然后vpn过滤器
- 每用户覆盖, vpn过滤器-流量匹配仅vpn过滤器
使用本部分可确认配置能否正常运行。
思科 CLI 分析器(仅适用于注册客户)支持某些 show 命令。要查看对 show 命令输出的分析,请使用思科 CLI 分析器。
- 显示asp表过滤器[access-list <acl-name>] [hits]
为了调试加速的安全路径过滤器表,请使用显示asp表过滤器in命令特权EXEC模式。当过滤器应用到VPN通道时,过滤规则安装到过滤器表。如果通道有指定的一个过滤器,则过滤器表在加密之前被检查和,在解密为了确定以后是否应该允许或拒绝内部信息包。
USAGE
show asp table filter [access-list <acl-name>] [hits]
SYNTAX <acl-name> Show installed filter for access-list <acl-name>
hits Show filter rules which have non-zero hits values
- 清楚asp表过滤器[access-list <acl-name>]
此命令清除ASP过滤器条目的命中计数器。
USAGE
clear asp table filter [access-list <acl-name>]
SYNTAX
<acl-name> Clear hit counters only for specified access-list <acl-name>
本部分提供了可用于对配置进行故障排除的信息。
思科 CLI 分析器(仅适用于注册客户)支持某些 show 命令。要查看对 show 命令输出的分析,请使用思科 CLI 分析器。
Note:使用 debug 命令之前,请参阅有关 Debug 命令的重要信息。
- 调试ACL过滤器
此命令启用VPN过滤器调试。它可以用于帮助排除故障VPN过滤器的安装/删除到ASP过滤器表里。有AnyConnect或VPN客户端的示例1. vpn过滤器。
Debug输出,当user1连接:
ACL FILTER INFO: first reference to inbound filter vpnfilt-ra(2): Installing
rule into NP.
ACL FILTER INFO: first reference to outbound filter vpnfilt-ra(2): Installing
rule into NP.
Debug输出,当user2连接(在user1和同样以后过滤器) :
ACL FILTER INFO: adding another reference to outbound filter vpnfilt-ra(2): refCnt=2
ACL FILTER INFO: adding another reference to inbound filter vpnfilt-ra(2): refCnt=2
Debug输出,当user2断开:
ACL FILTER INFO: removing a reference from inbound filter vpnfilt-ra(2): remaining
refCnt=1
ACL FILTER INFO: removing a reference from outbound filter vpnfilt-ra(2): remaining
refCnt=1
Debug输出,当user1断开:
ACL FILTER INFO: releasing last reference from inbound filter vpnfilt-ra(2): Removing
rule into NP.
ACL FILTER INFO: releasing last reference from outbound filter vpnfilt-ra(2): Removing
rule into NP.
- 显示asp表
这是输出显示asp表过滤器在之前,当user1连接时。只隐式拒绝规则为IPv4和IPv6里里外外安装在两个方向。
Global Filter Table:
in id=0xd616ef20, priority=11, domain=vpn-user, deny=true
hits=0, user_data=0xd613ea60, filter_id=0x0(-implicit deny-), protocol=0
src ip=0.0.0.0, mask=0.0.0.0, port=0
dst ip=0.0.0.0, mask=0.0.0.0, port=0
in id=0xd616f420, priority=11, domain=vpn-user, deny=true
hits=0, user_data=0xd615ef70, filter_id=0x0(-implicit deny-), protocol=0
src ip=::/0, port=0
dst ip=::/0, port=0
out id=0xd616f1a0, priority=11, domain=vpn-user, deny=true
hits=0, user_data=0xd614d900, filter_id=0x0(-implicit deny-), protocol=0
src ip=0.0.0.0, mask=0.0.0.0, port=0
dst ip=0.0.0.0, mask=0.0.0.0, port=0
out id=0xd616f6d0, priority=11, domain=vpn-user, deny=true
hits=0, user_data=0xd6161638, filter_id=0x0(-implicit deny-), protocol=0
src ip=::/0, port=0
dst ip=::/0, port=0