NetScaler

扩展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日志:

  1. 导航到“系统>网络>”的acl和,在扩展acl页签,打开扩展ACL。
  2. 设置以下参数:
    • 日志状态-启用或禁用与扩展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 <名称>

使用NetScaler命令行启用ACL规则的状态参数。

  1. 导航到系统>网络>acl和,扩展acl选项卡。
  2. 启用有状态参数,添加或修改已存在的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 <名称> -有状态启用|禁用
    • 应用acls6
    • 显示acl6 <名称>

使用NetScaler命令行启用ACL6规则的状态参数。

  1. 导航到系统>网络>acl和,扩展ACL6s选项卡。
  2. 启用有状态参数,添加或修改已有的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 
扩展acl和扩展acl6