Citrix ADC

URL 列表

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

作为管理员,您必须将 URL 列表导入 Citrix ADC 设备。此导入的列表在内部存储为称为 URL 集的策略数据集。然后,设备将唯一的快速 URL 匹配算法应用于传入的 URL 请求。如果传入 URL 请求与集中的条目匹配,设备将应用关联的策略操作来控制访问。

URL 列表类型

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

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

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

URL 列表策略表达式

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

表达式 操作
<URL expression>.URLSET_MATCHES_ANY(<URLSET>) 如果 URL 与 URL 集中的任何条目完全匹配,则计算结果为 TRUE。
<URL expression>.GET_URLSET_METADATA(<URLSET> 如果 URL 与 URL 集中的任何模式完全匹配,则 GET_URLSET_METADATA() 表达式将返回关联的元数据。如果没有匹配,则返回空字符串。
<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>]

示例:

add dns nameServer 10.140.50.5

导入自定义 URL 列表

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

为 HTTP 流量配置 URL 列表

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

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

添加 URL 列表操作

在命令提示窗口中,键入以下内容:

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

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

在命令提示窗口中,键入以下内容:

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

示例:

add lb vserver vsrv-HTTP HTTP * 80 -persistenceType NONE -cltTimeout 120

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

在命令提示窗口中,键入以下内容:

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

为 HTTPS 流量配置 URL 列表

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

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

添加 HTTPS 流量的 URL 列表策略

在命令提示窗口中,键入:

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

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

在命令提示符处键入:

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

示例:

add lb vserver vsrv-HTTPS SSL_BRIDGE * 443 -persistenceType NONE -cltTimeout 180

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

在命令提示符处键入:

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

使用 GUI 配置 URL 列表

GUI 使您能够:

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

导入 URL 列表

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

添加 URL 列表

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

配置 URL 列表操作

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

配置 URL 列表策略

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

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

  1. 导航到流量管理 > 负载平衡 > 虚拟服务器页面。
  2. 在详细信息窗格中,单击 Add(添加)。
  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. 登录到 Citrix ADC 设备,然后导航到配置 > 优化 > 视频 优化 > 检测
  2. 检测页面上,单击视频优化检测策略链接。
  3. 视频优化检测策略页上,单击添加
  4. 创建视频优化检测策略页面上,设置以下参数。
    1. 名称。优化策略的名称
    2. 表达式。使用自定义表达式配置策略。
    3. 操作。与策略关联的优化操作以处理传入视频流量。
    4. UNDEF 操作。如果传入请求与优化策略不匹配,则未定义事件。
    5. 评论。策略的简短描述。
    6. 日志操作。选择一个审核日志操作,该操作指定要对日志消息执行的操作。
  5. 点击 创建关闭

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

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

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

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

配置审核日志消息

审核日志记录使您能够在 URL 列表过程的任何阶段查看条件或情况。当 Citrix ADC 设备接收到传入 URL 时,如果响应程序策略具有 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 的末尾添加星号 (*)。

语义 URL 模式 匹配 无与伦比的
子域匹配 域网 域网;[www.domain.com](http://www.domain.com/; 子 .一个域网 您的域网; 万维网
URL 匹配,精确路径 domain.com/example/bar/index.html 域名/示例/条形/索引 .html;域名/示例/条形/索引 .html;域名/示例/条形/索引 .html;域名称。 域名/例子/酒吧/索引 .html; 域名 .com/ 例子/酒吧/索引 .HTML/ 一个 .jpg
URL 匹配,精确路径 domain.com/example/bar/index.html 域名/示例/条形/索引。关键字 = 值; …com/ 示例/条形/索引 .html;……………………………………………………………… 域名/例子/酒吧/索引 .html; 域名 .com/ 例子/酒吧/索引 .HTML/ 一个 .jpg
URL 匹配,子路径匹配 域.com/示例/酒吧/ 域 .com/示例/酒吧/域.com/示例/酒吧/索引.html;www.domain.com/例子/酒吧/索引.html; 域 .com/示例/酒吧/索引.html/一个.jpg wwww域名/例子/酒吧/索引.html