ADC

URL 列表

URL 列表功能使您可以控制对自定义 URL 列表(最多一百万个条目)的访问权限。该功能通过应用绑定到虚拟服务器的 URL 过滤策略来筛选网站。

作为管理员,您必须将 URL 列表导入 NetScaler 设备。此导入的列表在内部存储为名为 URL 集的策略数据集。然后,设备将独特的快速 URL 匹配算法应用于传入的 URL 请求。如果传入的 URL 请求与集合中的条目相匹配,则设备会应用相关的策略操作来控制访问权限。

URL 列表类型

URL 集中的每个条目可以包含一个 URL,也可以包括其元数据(URL 类别、类别组或任何其他相关数据)。对于含有元数据的 URL,设备使用策略表达式评估元数据。有关详细信息,请参阅 URL 集

自定义 URL 列表。您可以创建最多包含 1,000,000 个 URL 条目的自定义 URL 集,并将其作为文本文件导入到您的设备中。该列表可以包含带或不带元数据的 URL(可能类似于 URL 类别)。theNetScaler 平台会自动检测元数据是否存在。它还支持安全地存储导入的列表。有关详细信息,请参阅 URL 集

您可以托管 URL 列表并配置 NetScaler 设备以定期更新列表,无需手动干预。URL 列表更新后,设备可以使用策略表达式评估每个传入的 URL,然后应用诸如允许、阻止、重定向或通知用户之类的操作,从而自动检测元数据和类别。

URL 列表策略表达式

下表描述了可用于评估传入流量的基本表达式。将 URL 列表导入设备后,它被称为 URL 集

表达式 操作
<URL expression>.URLSET_MATCHES_ANY(<URLSET>) 如果 URL 与 URL 集中的任何条目完全匹配,则计算结果为 TRUE。
<URL expression>.GET_URLSET_METADATA(<URLSET>) 如果 URL 与 URL 集中的任何模式完全匹配,则 GET_URLSET_MEDATA () 表达式返回关联的元数据。如果没有匹配,则返回空字符串。
<URL expression>.GET_ URLSET_METADATA(<URLSET>).EQ(<METADATA>) 如果匹配的元数据等于,则计算结果为 TRUE。 <METADATA>
<URLexpression>.GET_URLSET_METADATA(<URLSET>).TYPECAST_LIST_T(‘,’).GET(0).EQ(<CATEGORY>) 如果匹配的元数据位于类别的开头,则计算结果为 TRUE。此模式可用于对元数据中的单独字段进行编码,但仅匹配字 1<sup>st</sup> 段。
HTTP.REQ.HOSTNAME.APPEND(HTTP.REQ.URL) 加入主机和 URL 参数,然后可以将其用作 <URL expression> 进行匹配。

URL 列表策略操作

对于与 URL 列表匹配的 URL,最常见的强制操作是限制访问。使用所需的 URL 列表匹配表达式和强制操作创建 URL 列表策略。策略组的使用取决于传入流量类型(HTTP 或 HTTPS)和设备上配置的虚拟服务器。您可以对 HTTP 流量使用响应程序策略,也可以对 HTTPS 流量使用视频优化策略。指定适用于与策略中表达式相匹配的 URL 的操作。下表列出了可用操作。

操作类型 策略 说明
ALLOW 响应方 允许请求访问目标 URL。
REDIRECT 响应方 将请求重定向到指定为目标的 URL。
DENY 响应方 拒绝请求。
RESET 响应程序、视频优化 重置连接。
DROP 响应程序、视频优化 断开连接。

必备条件

要配置 URL 列表功能,请确保已配置以下服务器。

用于 DNS 请求的 DNS 服务器

如果从主机名 URL 导入 URL 集,则必须配置 DNS 服务器。

在命令提示符下,键入:

add dns nameServer ((<IP> [-local]) | <dnsVserverName>) [-state (ENABLED | DISABLED )] [-type <type>] [-dnsProfileName <string>]
<!--NeedCopy-->

示例:

add dns nameServer 10.140.50.5
<!--NeedCopy-->

导入自定义 URL 列表

要导入 URL 集,请参阅 URL 集 主题。

为 HTTP 流量配置 URL 列表

NetScaler 设备支持 HTTP 和 HTTPS 流量。要为 HTTP 流量配置负载平衡虚拟服务器并将 URL 列表策略绑定到服务器,请执行以下操作:

  • 添加 URL 列表操作。
  • 添加 URL 列表策略。
  • 为 HTTP 流量添加 HTTP 负载平衡虚拟服务器
  • 为 HTTP 流量将 URL 列表策略绑定到 HTTP 负载平衡虚拟服务器

添加 URL 列表操作

在命令提示符处,键入以下内容:

add responder action <name> <type> (<target> | <htmlpage>) [-comment <string>] [-responseStatusCode <positive_integer>] [-reasonPhrase <string>]
<!--NeedCopy-->

为 HTTP 流量添加 HTTP 负载平衡虚拟服务器

在命令提示符处,键入以下内容:

add lb vserver <name> [-td <positive_integer>] <serviceType> [-cltT imeout <secs>]
<!--NeedCopy-->

示例:

add lb vserver vsrv-HTTP HTTP * 80 -persistenceType NONE -cltTimeout 120
<!--NeedCopy-->

将 URL 列表策略绑定到 HTTP 负载平衡虚拟服务器

在命令提示符处,键入以下内容:

bind lb vserver <vServerName> -policyName <string> [-priority <positive_integer>]
<!--NeedCopy-->

为 HTTPS 流量配置 URL 列表

NetScaler 设备支持 HTTP 和 HTTPS 流量。要为 HTTPS 流量配置 SSL-Bridge 负载平衡虚拟服务器并将 URL 列表策略绑定到服务器,请执行以下操作:

  • 添加 URL 列表操作。
  • 添加 URL 列表策略。
  • 为 HTTP 流量添加 SSL 桥负载平衡虚拟服务器
  • 将 URL 列表策略绑定到 SSL-Bridge 负载平衡虚拟服务器,用于 HTTP 流量

为 HTTPS 流量添加 URL 列表策略

在命令提示符下,键入:

add videooptimization detectionpolicy <name> -rule <expression> -action <string> [-undefAction <string>] [-comment <string>] [-logAction <string>]
<!--NeedCopy-->

添加 SSL 桥负载平衡虚拟服务器

在命令提示符下,键入:

add lb vserver <name> [-td <positive_integer>] <serviceType> [-cltT imeout <secs>]
<!--NeedCopy-->

示例:

add lb vserver vsrv-HTTPS SSL_BRIDGE * 443 -persistenceType NONE -cltTimeout 180
<!--NeedCopy-->

使用 CLI 将 URL 列表策略与 SSL 桥负载平衡绑定

在命令提示符下,键入:

bind lb vserver <vServerName> -policyName <string> [-priority <positive_integer>]
<!--NeedCopy-->

使用 GUI 配置 URL 列表

GUI 使您能够:

  • 导入 URL 列表。
  • 添加 URL 列表。
  • 配置 URL 列表操作。
  • 为 HTTP 流量配置 URL 列表策略。
  • 为 HTTP 流量添加 HTTP 负载平衡虚拟服务器。
  • 为 HTTPS 流量添加 SSL 桥负载平衡虚拟服务器。
  • 将 URL 列表策略绑定到 HTTP 负载平衡虚拟服务器。
  • 将 URL 列表策略绑定到 SSL-Bridge 负载平衡虚拟服务器。

导入 URL 列表

  1. 在导航窗格中,展开 AppExpert > URL 集
  2. 在详细信息窗格中,单击“导入”。
  3. 配置 URL 设置 页面上,设置以下参数。
    1. 名称。URL 集的名称。
    2. URL。访问 URL 集的位置的 URL。
    3. 覆盖。改写先前导入的 URL 集。
    4. 分隔符。分隔 CSV 文件记录的字符序列。
    5. 行分隔符。CSV 文件中使用的行分隔符。允许使用单字符 值,例如“/n”。
    6. 间隔。以秒为单位的间隔,四舍五入到最接近的 15 分钟,在此时更新 URL 集。
    7. 私人套装。防止导出 URL 集的选项
    8. Canary URL。内部 URL 用于测试设置的 URL 的内容是否要保密。URL 的最大长度为 2047 个字符
  4. 单击“创建”,然后单击“关闭”。

添加 URL 列表

  1. 在导航窗格中,展开 AppExpert > URL 集
  2. 在详细信息窗格中,单击“添加”。
  3. 创建 URL 集 页面上,设置以下参数。
    1. 名称。导入时提供的 URL 集的名称。
    2. 评论。关于 URL 集的简短描述。
  4. 单击创建

配置 URL 列表操作

  1. 登录 NetScaler 设备并导航到“配置”选项卡页面。
  2. 在菜单窗格中,导航到AppExpert> Responder** > Actions。**
  3. 在详细信息窗格中,单击“添加”。
  4. 在“创建响应程序操作”页面上,设置以下参数。
    1. 名称。URL 列表策略操作的名称。
    2. 类型。选择操作类型。
    3. 表达式。使用表达式编辑器创建策略表达式。
    4. 评论。关于策略操作的简短描述。
  5. 单击创建关闭

配置 URL 列表策略

  1. 在导航窗格中,展开 AppExpert > 响应程序 > 策略
  2. 在详细信息窗格中,单击“添加”。
  3. 在“创建响应者策略”页面上,设置以下参数。
    1. 名称。URL 列表策略操作的名称。
    2. 操作。选择您希望与策略关联的 URL 列表操作。
    3. 记录操作。选择日志操作。
    4. AppFlow。选择 AppFlow 操作。
    5. 表达式。使用表达式编辑器创建策略表达式。
    6. 评论。关于该策略的简短描述。
  4. 单击创建关闭

添加 HTTP 负载平衡虚拟服务器

  1. 导航到 流量管理 > 负载平衡 > 虚拟服务器 页面。
  2. 在详细信息窗格中,单击“添加”。
  3. 负载平衡虚拟服务器 屏幕上,设置以下参数:
    1. 名称。负载平衡虚拟服务器的名称。
    2. 协议。选择协议类型作为 HTTP。
    3. IP 地址类型。IP 可寻址类型。
    4. IP 地址。分配给虚拟服务器的 IP 4 或 IP6 IP 地址。
    5. Port(端口)。虚拟服务器的端口号。
  4. 击“确定”继续配置其他可选参数。有关详细信息,请参阅创建虚拟服务器。

将 URL 列表策略绑定到 HTTP 负载平衡虚拟服务器

  1. 导航到“流量管理”>“负载平衡”>“虚拟服务器”屏幕。
  2. 在详细信息窗格中,选择负载平衡虚拟服务器,然后单击 编辑
  3. 在“高级设置”部分中,单击“策略”。
  4. 在“策略”部分中,单击 + 图标以访问“策略”滑块。
  5. 在“策略”部分中,设置以下参数。
    1. 选择“策略”。从下拉列表中选择 URL 分类策略。
    2. 选择“类型”。选择策略类型作为请求。
  6. 单击继续
  7. 在“策略”页面中,从列表中选择 URL 列表策略,然后单击“选择”
  8. 在“策略”滑块中,单击“绑定关闭”。

为 HTTPS 流量添加 URL 列表策略

  1. 登录 NetScaler 设备并导航到配置 > 优化 > 视频优化>检测
  2. 在“检测”页面上,单击“视频优化检测策略”链接。
  3. 在“视频优化检测策略”页面上,单击“添加”。
  4. 创建视频优化检测策略 页面上,设置以下参数。
    1. 名称。优化策略的名称
    2. 表达式。使用自定义表达式配置策略。
    3. 操作。与处理传入视频流量的策略相关联的优化操作。
    4. UNDEF 操作。未定义事件,如果传入的请求与优化策略不匹配。
    5. 评论。策略的简短描述。
    6. 记录操作。选择审计日志操作,该操作指定要对日志消息执行的操作。
  5. 单击创建关闭

为 HTTPS 流量添加 SSL 桥负载平衡虚拟服务器

  1. 导航到 流量管理 > 负载平衡 > 虚拟服务器 页面。
  2. 在详细信息窗格中,单击“添加”。
  3. 负载平衡虚拟服务器 屏幕上,设置以下参数:
    1. 名称。负载平衡虚拟服务器的名称。
    2. 协议。选择协议类型作为 SSL 桥接。
    3. IP 地址类型。IP 地址类型:IPv4 或 IPv6。
    4. IP 地址。分配给虚拟服务器的 IPv4 或 IP6VIP 地址。
    5. Port(端口)。虚拟服务器的端口号。
  4. 击“确定”继续配置其他可选参数。有关更多信息,请参阅“创建虚拟服务器”主题。

将 URL 列表策略绑定到 SSL-Bridge 负载平衡虚拟服务器

  1. 导航到 流量管理 > 负载平衡 > 虚拟服务器 屏幕。
  2. 在详细信息窗格中,选择 SSL 桥负载平衡虚拟服务器,然后单击 编辑
  3. 在“高级设置”部分中,单击“策略”。
  4. 在“策略”部分中,单击 + 图标以访问“策略”滑块。
  5. 设置以下参数。
    1. 选择“策略”。从下拉列表中选择视频检测策略。
    2. 选择“类型”。选择策略类型作为请求。
  6. 单击继续
  7. 从列表中选择视频检测策略,然后单击 关闭

配置审计日志消息

审核日志允许您查看 URL 列表流程的任何阶段的条件或情况。当 NetScaler 设备收到传入 URL 时,如果响应程序策略具有 URL 集高级策略表达式,则审核日志功能会收集 URL 集信息并将详细信息存储为审核日志允许的任何目标的日志消息。

日志消息包含以下信息:

  1. 时间戳。
  2. 日志消息类型。
  3. 预定义的日志级别(严重、错误、通知、警告、信息、调试、警报和紧急)。
  4. 日志消息信息,例如 URL 集名称、策略操作、URL。

要为 URL 列表功能配置审核日志,必须完成以下任务:

  1. 启用审核日志。
  2. 创建审核日志消息操作。
  3. 使用审核日志消息操作设置 URL 列表响应程序策略。

有关更多信息,请参阅 审核记录

URL 列表语义

下表列出了 URL 匹配模式,并描述了 URL 列表中的 URL 如何与传入请求 URL 进行匹配。例如,模式 www.example.com/bar 仅与位于 www.example.com/bar 的一页匹配。要匹配所有网址以开头的页面 www.example.com/bar,您需要在网址末尾添加星号 (*)。

语义 URL 模式 已匹配 无与伦比的
子域名匹配 domain.com domain.com; www.domain.com; sub.one.domain.com 您的域网; 万维网
URL 匹配,精确路径 domain.com/example/bar/index.html domain.com/example/bar/index.html; www.domain.com/example/bar/index.html; s.domain.com/example/bar/index.html wwwdomaincom/example/bar/index.html; domain.com/example/bar/index.html/one.jpg
URL 匹配,精确路径 domain.com/example/bar/index.html domain.com/example/bar/index.html?key=value; www.domain.com/example/bar/index.html?; s.domain.com/example/bar/index.html wwwdomaincom/example/bar/index.html; domain.com/example/bar/index.html/one.jpg
URL 匹配、子路径匹配 域.com/示例/酒吧/ domain.com/example/bar/;domain.com/example/bar/index.html; www.domain.com/example/bar/index.html; domain.com/example/bar/index.html/one.jpg wwwdomaincom/example/bar/index.html