URL 分类

URL 分类会限制用户对特定 Web 站点和 Web 站点类别的访问权限。作为 Citrix Secure Web Gateway (SWG) 提供的订阅服务, 该功能允许企业客户使用商用分类数据库过滤 Web 流量。数据库中包含的大量(数十亿个)URL 分为不同的类别,例如社交网络、赌博、成人内容、新媒体和网上购物。除分类外, 每个 URL 都有一个根据站点的历史风险配置文件保持最新的信誉分数。要过滤流量, 可以根据类别、类别组 (如恐怖、违法毒品) 或站点信誉分数配置高级策略。

例如, 您可能会阻止访问危险站点 (例如已被恶意软件感染的站点), 并选择性地限制对企业用户的成人内容或娱乐流媒体等内容的访问权限。还可以捕获用户的事务详细信息以及用于监视 Citrix ADM 服务器上的 Web 流量分析的出站流量详细信息。

URL 分类的工作原理

下图显示了与商用 URL 分类数据库以及云服务 (用于频繁更新) 集成 Citrix SWG URL 分类服务。

本地化后的图片

这些组件将按如下所示进行交互:

  1. 客户端发送 Internet 绑定的 URL 请求。

  2. Citrix SWG proxy 根据从 URL 分类数据库检索到的类别详细信息 (例如类别、类别组和站点信誉分数), 对请求应用策略实施。如果数据库返回类别详细信息, 该过程将跳至步骤5。

  3. 如果数据库未命中分类详细信息, 请求将被发送到 URL 分类供应商所维护的基于云的查找服务。但是, 该设备不会等待响应, 而是将 URL 标记为未分类并执行策略强制 (跳至步骤 5)。设备将继续监视云查询反馈并更新缓存, 以便将来的请求可以受益于云查找。

  4. SWG 设备从基于云的服务接收 URL 类别详细信息 (类别、类别组和信誉分数), 并将其存储在分类数据库中。

  5. 此策略允许将 URL 和请求发送到源服务器。否则, 设备将丢弃、重定向或响应自定义 HTML 页面。

  6. 源服务器向 SWG 设备响应请求的数据。

  7. 设备会将响应发送至客户端。

用例: 企业的企业合规性下的 Internet 使用情况

可以使用 URL 过滤功能检测并实施合规性策略, 以阻止违反公司治理规范的站点。这些站点可以是在企业网络中可能被视为非生产站点或占用 Internet 带宽的站点(例如成人、流媒体、社交网络)。阻止访问这些 Web 站点可以提高员工的生产力,降低带宽使用的运营成本,并降低网络使用量的开销。

必备条件

仅当 “URL 分类” 功能在 Citrix SWG 平台上起作用时, 才可以在具有 URL 过滤功能和 Citrix Secure Web Gateway 的威胁情报的情况下使用该服务。订阅允许客户下载最新的 Web 站点威胁分类,然后在 Secure Web Gateway 上实施这些类别。该订阅适用于 Secure Web Gateway 的硬件设备和软件 (VPX) 版本。 在启用和配置此功能之前,必须安装以下许可证: CNS_WEBF_SSERVER_Retail.lic

CNS_XXXXX_SERVER_SWG_Retail。

其中, XXXXX 为平台类型, 例如: V25000

响应方策略表达式

下表列出了不同的策略表达式, 您可以使用这些表达式确认传入 URL 必须被允许、是否已重定向或被阻止。

  1. <text>. URL_CATEGORIZE (<min_reputation>, <max_reputation>)-返回一个URL_CATEGORY对象。如果<min_reputation>大于 0, 则返回的对象不包含信誉低于的类别<min_reputation>。如果<max_reputation>大于 0, 则返回的对象不包含信誉高于的类别<max_reputation>。如果类别无法及时解析, 则返回 undef 值。
  2. <url_category>. CATEGORY()-返回此对象的类别字符串。如果 URL 中没有类别, 或者如果 URL 的格式不正确, 则返回的值为 “未知”。
  3. <url_category>. CATEGORY_GROUP()-返回一个字符串, 用于标识对象的类别组。这是类别的更高级别的分组, 这对需要使用有关 URL 类别的详细信息的操作非常有用。如果 URL 中没有类别, 或者如果 URL 的格式不正确, 则返回的值为 “未知”。
  4. <url_category>. REPUTATION()-以介于0到5之间的数字形式返回信誉分数, 其中5表示 riskiest 信誉。如果存在 “未知” 类别, 信誉值为1。

策略类型:

  1. 为搜索引擎中的 URL 类别选择请求的策略 - add responder policy p1 ‘HTTP.REQ.HOSTNAME.APPEND(HTTP.REQ.URL).URL_CATEGORIZE(0,0). CATEGORY().EQ("Search Engine")
  2. 选择“成人”类别组中 URL 的请求的策略 - add responder policy p1 ‘HTTP.REQ.HOSTNAME.APPEND(HTTP.REQ.URL).URL_CATEGORIZE(0,0). CATEGORY_GROUP().EQ("Adult")’
  3. 选择信誉得分低于 4 的搜索引擎 URL 请求时使用的策略 - add responder policy p2 ‘HTTP.REQ.HOSTNAME.APPEND (HTTP.REQ.URL).URL_CATEGORIZE(4,0).HAS_CATEGORY("Search Engine")
  4. 用于选择请求搜索引擎和购物 URL 的策略 - add responder policy p3 ‘HTTP.REQ.HOSTNAME.APPEND(HTTP.REQ.URL).URL_CATEGORIZE(0,0).CATEGORY().EQ ("good_categories")
  5. 为信誉分数等于或高于 4 的搜索引擎 URL 选择请求数的策略 - add responder policy p5 ‘CLIENT.SSL.DETECTED_DOMAIN.URL_CATEGORIZE(4,0). CATEGORY().EQ("Search Engines")
  6. 为搜索引擎类别中的 URL 选择请求并将其与 URL 集进行比较的策略 - ‘HTTP.REQ.HOSTNAME.APPEND(HTTP.REQ.URL).URL_CATEGORIZE(0,0). CATEGORY().EQ("Search Engine") && HTTP.REQ.HOSTNAME.APPEND(HTTP.REQ.URL).URLSET_MATCHES_ANY("u1")’

响应方策略类型

在 URL 分类功能中可以使用两种类型的策略, 下面将介绍其中的每种策略类型:

策略类型 说明
URL 类别 根据评估结果块分类 Web 流量,允许或重定向流量。
URL 信誉分数 确定 Web 站点的信誉分数,并允许您根据管理员设置的信誉分数阈值级别控制访问。

配置 URL 分类

要在 Citrix SWG 设备上配置 URL 分类, 请执行以下操作:

  1. 启用 URL 过滤。
  2. 配置用于 Web 流量的代理服务器。
  3. 在显式模式下为 Web 流量配置 SSL 拦截。
  4. 配置共享内存以限制缓存内存。
  5. 配置 URL 分类参数。
  6. 使用 Citrix SWG 向导配置 URL 分类。
  7. 使用 SWG 向导配置 URL 分类参数。
  8. 配置 seedd 数据库路径和云服务器名称

步骤 1: 启用 URL 过滤

要启用 URL 分类, 请启用 URL 过滤功能并启用 URL 分类的模式。

使用 Citrix SWG: CLI 启用 URL 分类

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

enable ns feature URLFiltering

disable ns feature URLFiltering

步骤 2:在显式模式下为 Web 流量配置代理服务器

Citrix SWG 设备支持透明的代理虚拟服务器和显式代理虚拟服务器。要在显式模式下为 SSL 流量配置代理虚拟服务器, 请执行以下操作:

  1. 添加代理服务器。
  2. 将 SSL 策略绑定到代理服务器。

使用 Citrix SWG CLI 添加代理服务器

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

add cs vserver <name> [-td <positive_integer>] <serviceType>  [-cltTimeout <secs>]

示例:

add cs vserver starcs PROXY 10.102.107.121 80 -cltTimeout 180

使用 Citrix SWG CLI 将 SSL 策略绑定到代理虚拟服务器

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

步骤 3: 为 HTTPS 流量配置 SSL 截获

要为 HTTPS 流量配置 SSL 截获, 请执行以下操作:

  1. 将 CA 证书-密钥对绑定到代理虚拟服务器。
  2. 配置带有 SSL 参数的默认 SSL 配置文件。
  3. 将前端 SSL 配置文件绑定到代理虚拟服务器, 并在前端 SSL 配置文件中启用 SSL 拦截。

使用 Citrix SWG CLI 将 CA 证书-密钥对绑定到代理虚拟服务器

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

bind ssl vserver <vServerName> -certkeyName <certificate-KeyPairName> -CA –skipCAName

使用 Citrix SWG CLI 配置默认 SSL 配置文件

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

set ssl profile <name> -denySSLReneg <denySSLReneg> -sslInterception (ENABLED | DISABLED) -ssliMaxSessPerServer positive_integer>

使用 Citrix SWG CLI 将前端 SSL 配置文件绑定到代理虚拟服务器

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

set ssl vserver <vServer name>  -sslProfile ssl_profile_interception

步骤 4: 配置共享内存以限制缓存内存

使用 Citrix SWG CLI 配置共享内存以限制缓存内存

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

set cache parameter [-memLimit <megaBytes>]

在某些情况下, 为缓存配置的内存限制设置为 10 MB。

步骤 5: 配置 URL 分类参数

使用 Citrix SWG CLI 配置 URL 分类参数

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

set urlfiltering parameter [-HoursBetweenDBUpdates <positive_integer>] [-TimeOfDayToUpdateDB <HH:MM>]

示例:

Set urlfiltering parameter –urlfilt_hours_betweenDB_updates 20

步骤 6: 使用 Citrix SWG 向导配置 URL 分类

使用 Citrix SWG GUI 配置 URL 分类

  1. 登录 Citrix SWG 设备并导航到 “受保护的 Web Gateway “ 页面。
  2. 在详细信息窗格中, 执行以下操作之一: 1。单击受保护的 Web Gateway 向导以创建新配置。 1. 选择现有配置, 然后单击Edit (编辑)。
  3. URL 过滤部分中, 单击Edit (编辑)。
  4. 选中 “ URL 分类” 复选框以启用此功能。
  5. 选择URL 分类策略, 然后单击Bind (绑定)。
  6. 单击Continue (继续), 然后单击完成

有关 URL 分类策略的详细信息, 请参阅如何创建 URL 分类策略

步骤 7: 使用 SWG 向导配置 URL 分类参数

使用 Citrix SWG GUI 配置 URL 分类参数

  1. 登录 Citrix SWG 设备并导航到受保护的 Web Gateway > URL 过滤
  2. URL 过滤页面中, 单击更改 URL 过滤设置链接。
  3. 配置 URL 过滤参数页面中, 指定以下参数。
    1. DB 更新之间的小时数。数据库更新之间的 URL 过滤小时数。最小值: 0 和最大值: 720。
    2. 更新数据库所用的时间。更新数据库的 URL 过滤时间。
    3. 云主机。云服务器的 URL 路径。
    4. Seed DB Path。Seed 数据库查找服务器的 URL 路径。
  4. 单击确定关闭

示例配置:

enable ns feature LB CS SSL IC RESPONDER AppFlow URLFiltering

enable ns mode FR L3 Edge USNIP PMTUD

set ssl profile ns_default_ssl_profile_frontend -denySSLReneg NONSECURE -sslInterception ENABLED -ssliMaxSessPerServer 100

add ssl certKey swg_ca_cert -cert ns_swg_ca.crt -key ns_swg_ca.key

set cache parameter -memLimit 100

add cs vserver starcs PROXY 10.102.107.121 80 -cltTimeout 180

add responder action act1 respondwith ""HTTP/1.1 200 OK\r\n\r\n" + http.req.url.url_categorize(0,0).reputation + "\n""

add responder policy p1 "HTTP.REQ.URL.URL_CATEGORIZE(0,0).CATEGORY.eq("Shopping/Retail") || HTTP.REQ.URL.URL_CATEGORIZE(0,0).CATEGORY.eq("Search Engines & Portals

")" act1

bind cs vserver starcs_PROXY -policyName p1 -priority 10 -gotoPriorityExpression END -type REQUEST

add dns nameServer 10.140.50.5

set ssl parameter -denySSLReneg NONSECURE -defaultProfile ENABLED -sigDigestType RSA-MD5 RSA-SHA1 RSA-SHA224 RSA-SHA256 RSA-SHA384 RSA-SHA512 -ssliErrorCache ENABLED

-ssliMaxErrorCacheMem 100000000

add ssl policy pol1 -rule "client.ssl.origin_server_cert.subject.  URL_CATEGORIZE(0,0).CATEGORY.eq("Search Engines & Portals")"" -action INTERCEPT

add ssl policy pol3 -rule "client.ssl.origin_server_cert.subject.ne("citrix")" -action INTERCEPT

add ssl policy swg_pol -rule "client.ssl.client_hello.SNI.URL_CATEGORIZE(0,0).CATEGORY.ne("Uncategorized")" -action INTERCEPT

set urlfiltering parameter -HoursBetweenDBUpdates 3 -TimeOfDayToUpdateDB 03:00

配置 seed 数据库路径和云服务器名称

您现在可以配置 “seed database path” (seed 数据库 path) 和 cloud lookup server 名称, 以手动设置 cloud lookup 服务器名称和种子数据库路径。要执行此操作,请将两个新参数 CloudHost 和 SeedDBPath 添加到 URL 过滤参数命令中。

在命令提示窗口中,键入: set urlfiltering parameter [-HoursBetweenDBUpdates <positive_integer>] [-TimeOfDayToUpdateDB <HH:MM>] [-LocalDatabaseThreads <positive_integer>] [-CloudHost <string>] [-SeedDBPath <string>]

示例 set urlfiltering parameter -HoursBetweenDBUpdates 3 -TimeOfDayToUpdateDB 03:00 –CloudHost localhost –SeedDBPath /mypath

配置审核日志消息

通过审核日志记录, 您可以查看 URL 分类过程的任何阶段的条件或情况。当 Citrix ADC 设备接收到传入 URL 时, 如果响应方策略有 URL 过滤表达式, 则审核日志功能将收集 URL 中的 URL 集信息, 并将其作为日志消息存储在审核日志记录允许的任何目标中。

  • 源 IP 地址 (发出请求的客户端的 IP 地址)。
  • 目标 IP 地址 (所请求服务器的 IP 地址)。
  • 请求的 URL 中包含架构、主机和域名 (http://www.example.com
  • URL 过滤框架返回的 URL 类别。
  • URL 过滤框架返回的 URL 类别组。
  • URL 过滤框架返回的 URL 信誉号。
  • 策略执行的审核日志操作。

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

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

有关详细信息, 请参阅审核日志记录主题。

使用 SYSLOG 消息存储失败错误

在 URL 过滤过程的任何阶段, 如果存在系统级故障, Citrix ADC 设备将使用审核日志机制将日志存储在 ns.log 文件中。这些错误以 SYSLOG 格式的文本消息的形式存储, 因此管理员可以在以后按事件事件的事件顺序进行查看。这些日志还会发送到外部 SYSLOG 服务器以进行存档。有关详细信息,请参阅文章 CTX229399

例如, 如果在初始化 URL 过滤 SDK 时出现故障, 则会以以下消息格式存储该错误消息。

Oct 3 15:43:40 <local0.err> ns URLFiltering[1349]: Error initializing NetStar SDK (SDK error=-1). (status=1).

Citrix ADC 设备将错误消息存储在四个不同的故障类别下面:

  • 下载失败。尝试下载分类数据库时发生错误。
  • 集成失败。当您将更新集成到现有分类数据库中时发生错误。
  • 初始化失败。如果在初始化 URL 分类功能时出错、设置分类参数或结束分类服务, 则会出现错误。
  • 检索失败。如果设备在检索请求的分类详细信息时出现错误。

通过命令接口显示 URL 分类结果

通过 URL 分类, 您可以从 NetSTAR 第三方 URL 分类数据库输入 URL 并检索分类结果 (例如类别、组和信誉得分)。

输入 URL 时, URL 过滤功能将在命令接口上检索并显示分类结果。输入更多 URL 时,设备将从列表中排除较旧的 URL,并显示最新的三个 URL 的结果。

要显示 URL 类别结果最多包含三个 URL,请按照下面的步骤进行操作:

  1. 添加 URL 分类 URL
  2. 显示最多三个 URL 的 URL 分类详细信息
  3. 清除 URL 分类数据。

添加 URL 过滤分类 URL

要添加 URL 并检索其分类详细信息, 请执行以下操作: 在命令提示窗口中,键入:

add urlfiltering categorization –Url <string>

示例:

add urlfiltering categorization –Url www.facebook.com

显示最多三个 URL 的 URL 分类详细信息

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

> show urlfiltering categorization

示例:

show urlfiltering categorization
Url: http://www.facebook.com    Categorization: Facebook,Social Networking,1
Url: http://www.google.com      Categorization: Search Engines & Portals,Search,1
Url: http://www.citrix.com      Categorization: Computing & Internet,Computing & Internet,1
Done

示例配置:

add urlfiltering categorization -url www.facebook.com
Done
show urlfiltering categorization
Url: http://www.facebook.com    Categorization: Facebook,Social Networking,1
Done

add urlfiltering categorization -url www.google.com
Done
show urlfiltering categorization
Url: http://www.facebook.com    Categorization: Facebook,Social Networking,1
Url: http://www.google.com      Categorization: Search Engines & Portals,Search,1
Done

add urlfiltering categorization -url www.citrix.com
Done
show urlfiltering categorization
Url: http://www.facebook.com    Categorization: Facebook,Social Networking,1
Url: http://www.google.com      Categorization: Search Engines & Portals,Search,1
Url: http://www.citrix.com      Categorization: Computing & Internet,Computing & Internet,1
Done

add urlfiltering categorization -url www.in.gr
Done
show urlfiltering categorization
Url: http://www.google.com      Categorization: Search Engines & Portals,Search,1
Url: http://www.citrix.com      Categorization: Computing & Internet,Computing & Internet,1
Url: http://www.in.gr   Categorization: Search Engines & Portals,Search,1 Done

清除 URL 分类结果

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

clear urlfiltering categorization
done

show urlfiltering categorization
done

通过 GUI 界面显示 URL 分类结果

  1. 在“导航”窗格中, 展开 Secure Web Gateway > URL 过滤。
  2. 在详细信息窗格中,单击工具部分中的 URL 过滤搜索分类链接。
  3. URL 过滤搜索分类页面上,输入 URL 请求,然后单击搜索

    本地化后的图片

  4. 设备将显示请求的 URL 和前两个 URL 请求的类别结果。