扩展acl和扩展acl6
扩展acl和扩展acl6提供了简单acl无法提供的参数和操作。可以根据源IP地址、源端口、动作、协议等参数对数据进行过滤。您可以指定允许报文、拒绝报文或桥接报文的任务。
扩展acl和acl6在创建之后可以修改,并且可以重新编号它们的优先级,以指定它们的评估顺序。
注意:如果同时配置了简单acl和扩展acl,则简单acl优先于扩展acl。
扩展acl和acl6支持的操作有:修改、应用、禁用、启用、移除和重新编号(优先级)。通过显示扩展acl和acl6,可以查看扩展acl和acl6的配置信息,并显示扩展acl和acl6的统计信息。
您可以配置NetScaler设备对匹配扩展ACL的报文进行详细的日志记录。
扩展acl和扩展acl6的应用:与简单的acl和acl6不同,在NetScaler设备上创建的扩展acl和acl6在应用之前不能工作。此外,如果对扩展ACL或ACL6做了任何修改,例如禁用ACL、更改优先级或删除ACL,则必须重新应用扩展ACL或ACL6。在启用日志记录之后,还必须重新应用它们。应用扩展acl或acl6的过程将重新应用所有扩展acl。例如,如果应用了扩展ACL规则1到10,然后创建并应用规则11,则会重新应用前10条规则。
如果会话中存在与该会话相关的DENY ACL,则该会话在应用该ACL时将被终止。
缺省情况下,启用扩展acl和acl6。当它们被应用时,NetScaler设备开始比较传入的数据包。但是,如果禁用了它们,则在重新启用它们之前不会使用它们,即使重新应用了它们。
重新编号Extended ACLs和Extended acl6的优先级:优先级号决定了报文匹配扩展acl或acl6的顺序。优先级号越低的ACL优先级越高。它在具有较高优先级(较低优先级)的ACL之前进行评估,第一个匹配报文的ACL决定了对报文应用的动作。
当您创建扩展ACL或ACL6时,NetScaler设备会自动为其分配一个优先级号,该优先级号是10的倍数,除非您另行指定。例如,如果两个扩展ACL的优先级分别为20和30,并且希望第三个ACL的值位于这两个数字之间,则可以为其分配一个值25。如果稍后希望保留acl的计算顺序,但将其编号恢复为10的倍数,则可以使用重新编号过程。
配置扩展acl和扩展acl6
在NetScaler设备上配置扩展ACL或ACL6包括以下任务。
- 创建扩展ACL或ACL6。创建扩展ACL或ACL6,对报文进行允许、拒绝或桥接。用户可以指定IP地址或IP地址段与报文的源IP地址或目的IP地址进行匹配。通过指定协议来匹配入方向报文的协议。
- (可选)修改扩展ACL或ACL6.您可以修改之前创建的扩展acl或acl6。或者,如果你想暂时不使用它,你可以禁用它,然后重新启用它。
- 应用扩展的acl或acl6.当创建、修改、禁用、重新启用或删除扩展ACL / ACL6时,需要应用扩展ACL / ACL6才能激活。
- (可选)对扩展acl或acl6重新编号优先级.如果配置的acl的优先级不是10的倍数,如果需要恢复为10的倍数,可以使用rennumber过程。
NetScaler命令行过程
使用NetScaler命令行创建扩展ACL:
在命令提示符下,输入:
- 添加ns acl< aclname > < aclaction > [-srcIP(<操作符>)< srcIPVal >] [-srcPort(<操作符>)< srcPortVal >] [-destIP(<操作符>)< destIPVal >] [-destPort(<操作符>)< destPortVal >] [-TTL< positive_integer >] [-srcMac< mac_addr >] [(-协议
[-established]) | -protocolNumber< positive_integer >] [-vlan< positive_integer >] [-接口< interface_name >] [-icmpType< positive_integer > [-icmpCode< positive_integer >]] [-优先级< positive_integer >] [-状态(enabled | disabled)] [- .logstate(enabled | disabled) [- .ratelimit< positive_integer >]] - 显示ns acl(< aclName >)
例子:
-srcport 45-1024 -destIP 192.168.1.1 -protocol TCP Done
使用NetScaler命令行创建一个扩展的ACL6:
在命令提示符下,输入:
- 添加ns acl6< acl6name > < acl6action > [-srcIPv6(<操作符>)< srcIPv6Val >] [-srcPort(<操作符>)< srcPortVal >] [-destIPv6(<操作符>)< destIPv6Val >] [-destPort(<操作符>)< destPortVal >] [-TTL< positive_integer >] [-srcMac< mac_addr >] [(-协议
[-established]) | -protocolNumber< positive_integer >] [-vlan< positive_integer >] [-接口< interface_name >] [-icmpType [- icmpcode ]] [- .优先级< positive_integer >] [-状态(enabled | disabled)] - 显示ns acl6(< aclName >)
例子:
> add ns acl6 rule6 DENY -srcport 45-1024 -destIPv6 2001::45 -protocol TCP Done
使用NetScaler命令行修改扩展ACL:
要修改扩展ACL,请输入设置ns acl命令、扩展ACL的名称、需要修改的参数及其新值。
使用NetScaler命令行修改扩展ACL6:
要修改扩展的ACL6,请键入设置ns acl6命令、扩展ACL6的名称、要修改的参数及其新值。
通过NetScaler命令行禁用或启用扩展ACL:
在命令提示符下,输入以下命令之一:
- 禁用ns acl< aclname >
- 使ns acl< aclname >
使用NetScaler命令行禁用或启用扩展ACL6:
在命令提示符下,输入以下命令之一:
- 禁用ns acl6< aclname >
- 使ns acl6< aclname >
通过NetScaler命令行应用扩展acl:
在命令提示符下,输入:
- 应用ns acl
通过NetScaler命令行应用扩展acl6:
在命令提示符下,输入:
- 应用ns acls6
使用NetScaler命令行对扩展acl的优先级进行重新编号:
在命令提示符下,输入:
- 重编号ns acl
使用NetScaler命令行对扩展acl6的优先级进行重新编号:
在命令提示符下,输入:
- 重编号ns acls6
NetScaler GUI程序
通过NetScaler界面配置扩展ACL:
导航到系统>网络>acl和,扩展acl选项卡,添加新的扩展ACL或编辑现有的扩展ACL。要启用或禁用现有的扩展ACL,请选中该扩展ACL,然后选择启用或禁用从行动列表。
通过NetScaler界面配置扩展acl6:
导航到系统>网络>acl和,扩展ACL6s选项卡,添加新的扩展ACL6或编辑现有的扩展ACL6。要启用或禁用现有的扩展ACL6,请选中它,然后选择启用或禁用从行动列表。
使用NetScaler GUI应用扩展acl:
导航到系统>网络>acl和,扩展acl选项卡,行动列表中,点击应用.
通过NetScaler GUI应用扩展的acl6:
导航到系统>网络>acl和,扩展ACL6s选项卡,行动列表中,点击应用.
使用NetScaler GUI重新编号扩展acl的优先级:
导航到系统>网络>acl和,扩展acl选项卡,行动列表中,点击重编号优先(s).
使用NetScaler GUI重新编号扩展acl6的优先级:
导航到系统>网络>acl和,扩展ACL6s选项卡,行动列表中,点击重编号优先(s).
样例配置
通过命令行接口配置ACL扩展规则的示例如下表所示:acl示例配置.
日志扩展acl
您可以配置NetScaler设备对匹配扩展acl的报文进行详细的日志记录。
注意:不能为扩展的acl6启用日志记录。
日志中除了记录ACL名称外,还记录了源IP地址、目的IP地址等针对报文的详细信息。根据启用的全局日志(syslog或nslog)类型,信息存储在syslog文件或nslog文件中。
必须在全局级别和ACL级别同时启用日志记录。全局设置优先。有关全局启用日志记录的更多信息,请参见"。
为了优化日志记录,当来自同一流的多个包匹配ACL时,只记录第一个包的详细信息,并且对属于同一流的每个包递增计数器。流定义为一组源IP地址、目的IP地址、源端口、目的端口和协议参数都相同的报文的集合。为了避免日志消息泛滥,NetScaler设备执行内部速率限制,这样就不会重复记录属于相同流的数据包。在任何给定时间可以记录的不同流的总数被限制为10,000。
注意:在启用日志记录之后,必须应用acl。
NetScaler命令行过程
使用NetScaler命令行配置扩展ACL日志记录:
在命令提示符下,输入以下命令来配置日志记录并验证配置结果:
- 设置ns acl< aclName > [-logState(enabled | disabled)] [- .rateLimit< positive_integer >)
- 显示ns acl(< aclName >)
例子:
提示:acl被修改,应用acl来激活——NeedCopy >
NetScaler GUI程序
使用NetScaler GUI配置扩展ACL日志:
- 导航到“系统>网络>”的acl和,在扩展acl页签,打开扩展ACL。
- 设置以下参数:
- 日志状态-启用或禁用与扩展ACL规则相关的事件日志记录。日志消息保存在已配置的syslog或auditlog服务器中。
- 日志速率限制-每秒产生的最大日志消息数。设置该参数时,必须启用“日志状态”参数。
显示扩展ACL和扩展acl6统计信息
您可以查看扩展acl和acl6的统计信息。
下表列出了扩展acl和acl6的相关统计信息及其说明。
统计 | 指定 |
允许ACL支安打 | 报文匹配处理方式为“ALLOW”的acl。NetScaler设备处理这些数据包。 |
NAT ACL支安打 | 日志含义报文命中NAT ACL,生成NAT会话。 |
否认ACL支安打 | 报文命中处理模式为DENY的acl而被丢弃。 |
桥ACL支安打 | 对于匹配网桥ACL的报文,如果采用透明模式,则不进行业务处理。 |
ACL支安打 | 匹配ACL的报文。 |
ACL错过 | 不匹配任何ACL的报文。 |
NetScaler命令行过程
使用NetScaler命令行查询所有扩展acl的统计信息。
在命令提示符下,输入:
- stat ns acl
使用NetScaler命令行查询所有扩展acl6的统计信息。
在命令提示符下,输入:
- stat ns acl6
NetScaler GUI程序
使用NetScaler界面查询扩展ACL的统计信息。
进入“系统>网络> acl”界面扩展acl页签,选择扩展ACL,单击统计数据.
使用NetScaler界面显示扩展ACL6的统计信息。
进入“系统>网络> acl”界面扩展ACL6s页签,选择扩展ACL,单击统计数据.
有状态的acl
有状态ACL规则在请求匹配该规则时创建会话,并允许产生的响应,即使这些响应匹配NetScaler设备中的deny ACL规则。有状态ACL免除了创建额外ACL规则/转发会话规则以允许这些特定响应的工作。
有状态acl最适合在NetScaler设备的边缘防火墙部署中使用,该设备具有以下要求:
- NetScaler设备必须允许来自内部客户端的请求和来自Internet的相关响应。
- 设备必须从Internet删除与任何客户机连接无关的数据包。
在你开始之前
在配置有状态ACL规则前,需要注意以下几点:
- NetScaler设备支持有状态ACL规则和有状态ACL6规则。
- 在高可用性设置中,有状态ACL规则的会话不会同步到辅助节点。
- 如果ACL规则绑定了任何NetScaler NAT配置,则不能将该规则配置为有状态。NetScaler NAT配置的一些例子如下:
- RNAT
- 大规模NAT(大规模NAT44, DS-Lite,大规模NAT64)
- NAT64
- 转发会议
- 如果配置了TTL和Established参数,则不能将ACL规则配置为有状态。
- 有状态ACL规则创建的会话会一直存在,直到超时,而不受以下ACL操作影响:
- 删除ACL
- 禁用ACL
- 清晰的ACL
- 以下协议不支持有状态acl:
- 主动FTP
- TFTP
配置有状态IPv4 ACL规则
配置有状态ACL规则,就是启用ACL规则的有状态参数。
使用NetScaler命令行启用ACL规则的状态参数。
- 要在添加ACL规则时启用有状态参数,在命令提示符下输入:
- 添加acl
启用|禁用) - 应用acl
- 显示acl <名称>
- 添加acl
- 要启用已有ACL规则的有状态参数,在命令提示符下输入:
- 设置acl <名称> -有状态(启用|禁用)
- 应用acl
- 显示acl <名称>
使用NetScaler命令行启用ACL规则的状态参数。
- 导航到系统>网络>acl和,扩展acl选项卡。
- 启用有状态参数,添加或修改已存在的ACL规则。
> add acl acl -1 allow -srciP 1.1.1.1 -stateful Yes Done > apply acls Done > show acl 1) Name: acl -1 Action: allow Hits: 0 srcIP = 1.1.1.1 destIP srcMac: Protocol: Vlan: Interface: Active Status: ENABLED Applied Status: NOTAPPLIED Priority: 10 NAT: NO TTL: Log Status: DISABLED Forward Session: NO Stateful: Yes
配置有状态ACL6规则
配置有状态ACL6规则包括启用ACL6规则的有状态参数。
使用NetScaler命令行启用ACL6规则的状态参数。
- 要在添加ACL6规则时启用有状态参数,在命令提示符下输入:
- 添加acl6
ALLOW -有状态(启用|DISABLD) - 应用acls6
- 显示acl6 <名称>
- 添加acl6
- 要启用一个已有的ACL6规则的状态参数,在命令提示符下输入:
- 设置acl6 <名称> -有状态(启用|禁用)
- 应用acls6
- 显示acl6 <名称>
使用NetScaler命令行启用ACL6规则的状态参数。
- 导航到系统>网络>acl和,扩展ACL6s选项卡。
- 启用有状态参数,添加或修改已有的ACL6规则。
> add acl6 acl6 -1 allow -srcipv6 1000::1 -stateful Yes Done > apply acls6 Done > show acl6 1) Name: acl6 -1 Action: allow Hits: 0 srcIPv6 = 1000::1 destIPv6 srcMac: Protocol: Vlan: Interface: Active Status: ENABLED Applied Status: NOTAPPLIED Priority: 10 NAT: NO TTL: Forward Session: NO Stateful: Yes