内容筛选
内容过滤提供基本的数据丢失防御功能。内容过滤基于 MIME 类型、文件扩展名和协议命令过滤流量。您还可使用内容过滤器模块来阻止 ActiveX、Java Applet 和其他内容类型。内容过滤不需要单独的许可证。有关更多信息,请参阅以下主题:
内容过滤概述
基于文件类型的内容筛选
以前,根据 MIME 类型、文件扩展名和协议命令执行内容过滤以阻止或允许某些类型的流量。内容过滤器根据配置的过滤器列表检查流量,从而控制网关上的文件传输。这种基于文件类型的评估仅在 Junos OS 21.4R1 版之前的 Junos OS 版本上受支持。
从 Junos OS 21.4R1 版开始,将根据文件内容进行内容评估。不推荐使用基于文件类型的内容评估,并隐藏相关配置。
如果您不想迁移到增强的内容过滤功能,则可以使用旧版功能。您将被允许使用旧配置,但所有旧配置旋钮都将弃用并隐藏。此外,当您使用旧配置选项时,您将收到系统日志和错误消息警告。
在这种类型的评估中,内容过滤器模块先于所有其他内容安全模块(Web 过滤除外)评估流量。因此,如果流量满足内容过滤器中配置的条件,则内容过滤器会首先对此流量采取措施。
您可以配置以下类型的内容过滤器:
-
MIME 模式过滤器 — MIME 模式用于识别 HTTP 和 MAIL 协议中的流量类型。内容筛选器使用两个 MIME 模式列表来确定要执行的作。阻止 MIME 列表包含内容筛选器要阻止的 MIME 类型流量列表。MIME 例外列表包含内容过滤器不会阻止的 MIME 模式,通常是阻止列表中项的子集。请注意,例外列表的优先级高于阻止列表。如果两个列表上都有显示的 MIME 条目,则内容筛选器不会阻止这些 MIME 类型,因为例外列表具有优先级。因此,在将项目添加到例外列表时,具体一点对您有利。
-
阻止扩展名列表 — 由于文件名在文件传输期间可用,因此使用文件扩展名是阻止或允许文件传输的一种非常实用的方法。内容筛选器列表包含要阻止的文件扩展名列表。所有协议都支持使用块扩展列表。
-
协议命令阻止和允许列表 — 不同的协议使用不同的命令在服务器和客户端之间进行通信。通过阻止或允许某些命令,可以在协议命令级别控制流量。
阻止和允许命令列表旨在组合使用,允许列表充当阻止列表的例外列表。
如果协议命令同时出现在允许列表和阻止列表中,则允许该命令。
从 Junos OS 15.1X49-D100 版开始,Web 过滤和内容安全功能支持 HTTP、FTP、SMTP、POP3、IMAP 协议的 IPv6 直通流量。
由于并非所有有害文件或组件都可以通过 MIME 类型或文件扩展名进行控制,因此您还可以使用内容过滤器模块来阻止 ActiveX、Java Applet 和其他类型的内容。以下类型的内容阻止仅支持 HTTP:
-
阻止 ActiveX
-
块 Java 小程序
-
阻止 Cookie
-
阻止 EXE 文件
-
阻止 ZIP 文件
基于文件内容的内容过滤
以前基于文件类型、MIME 类型、内容类型和协议命令执行内容过滤。使用 MIME 类型、协议命令过滤器或文件扩展名过滤器进行文件检测并不总是可靠的。识别文件类型的最简单方法是通过文件扩展名,但它不是真实的,因为任何扩展名都可以赋予任何类型的文件。
从 Junos OS 21.4R1 版开始,内容安全会执行内容过滤,以根据文件内容(而不是文件扩展名)确定文件类型。首先分析文件内容以准确确定文件类型。此功能是对应用识别(应用 ID)的补充,允许您配置防火墙来识别和控制对 Web(HTTP 和 HTTPS)流量的访问,并保护您的网络免受攻击。当应用 ID 确认最终应用程序匹配时,将考虑使用匹配的内容安全策略进行内容筛选。

基于文件内容的内容过滤按如下方式执行:
-
文件标识:对于每种文件类型,都定义了用于检查内容和确定文件类型的规则。内容安全过程使用文件内容,并将其与定义的规则进行匹配,以确定文件类型。
-
定义流量方向的内容过滤规则:内容安全进程从 CLI 读取配置,解析和解释规则集和规则。您可以定义内容过滤规则并强制执行这些规则来引导流量。
规则集和规则配置添加在层次结构级别之下
[edit security utm utm-policy <utm-policy-name> content-filtering]
。您可以在内容过滤器规则中配置连接重置选项。检测到规则中列出的内容时,协议处理程序将完全按照策略中的配置与客户端和服务器执行 TCP 连接重置。
注意:不支持基于 mime-type、content-type 和 protocol 命令的内容过滤选项。升级到 Junos OS 21.4R1 版后,不支持和
[edt security utm feature-profile content-filtering profile <profile-name>
层次结构下先前存在的基于文件扩展名的内容过滤选项[edit security utm utm-policy <utm-policy-name> content-filtering]
。 - 使用为内容过滤定义的规则和规则集:您可以使用层次结构中上面
[edit security utm default-configuration content-filtering
定义的规则和规则集。这些规则和规则集允许您配置特定方向的内容过滤器和连接重置。 -
内容过滤的内容安全策略选择:通过应用 ID 确认最终应用程序匹配后,将选择定义内容过滤规则的潜在匹配内容安全策略进行处理。
对于每个内容安全策略,都会创建一个包含规则集节点列表的链,并将在规则集下配置的所有规则添加到列表中,然后附加到相应的规则集节点。
通过所有检查后,将为配置的每个规则集和规则分配一个唯一 ID,以便在本地内存中保留和组织相应的信息。本地内存中的此存储是跟踪您所做的配置更改和同步更新所必需的。
-
验证:使用以下命令查看内容过滤系统统计信息和错误。
-
要在根逻辑系统的策略中显示内容过滤统计信息,请使用
show security utm content-filtering statistics utm policy <utm policy name>
和show security utm content-filtering statistics root-logical-system utm-policy <utm policy name>
命令。 -
要在指定逻辑系统内的策略中显示内容过滤统计信息,请使用命令
show security utm content-filtering statistics logical-system <logical-system-name> utm-policy <utm policy name>
。
-
如果迁移到此新功能,并且配置中有旧选项,则将收到以下错误消息,并且提交将失败。
已弃用的功能不能与增强的内容过滤(规则集/规则)\n“);删除标记为已弃用的配置以取得领先(有关详细信息:show security utm)\n“)如果您不想迁移到增强的内容过滤功能,可以使用旧版内容过滤功能。旧配置选项已弃用并已隐藏。使用已弃用的旧选项时,您将收到以下错误消息。
ERRMSG(“不推荐使用配置 \'%s\'”, “安全 utm utm-policy <>内容过滤 http-profile”)好处
-
使用内容过滤规则中准确检测到的文件类型,提供安全的 Web 访问并保护您的网络免受攻击。
-
控制通过网络的流量,并根据流量方向强制执行内容过滤规则。
-
改进了日志消息,包括用户和源身份、会话 ID 和数据包方向信息。
从 Junos OS 22.4R1 版开始,内容安全内容过滤模块与 JDPI 解析器集成,JDPI 上下文用于调用内容过滤功能。
添加了内容安全、内容过滤、数据包和流插件以处理普通流量。
对邮件协议执行作时,将删除 TCP 代理依赖关系。 notify-mail-sender
邮件协议的 CLI 配置支持已移除。
另见
了解内容过滤协议支持
每种受支持的协议都可以以不同的方式实现可用的内容过滤器。并非所有协议都支持所有过滤功能。本主题包含以下部分:
HTTP 支持
HTTP 协议支持所有内容过滤功能。使用 HTTP,内容过滤器保留在网关中,检查 HTTP 客户端和服务器之间的每个请求和响应。
如果由于内容过滤而丢弃 HTTP 请求,客户端将收到如下响应:
<custom drop message/user-configured drop message>.<src_port><dst_ip>:<dst_port>Download request was dropped due to <reason>
因此,可能会显示一条消息,如下所示:
Juniper Networks Firewall Content Filtering blocked request. 5.5.5.1:80->4.4.4.1:55247 Download request was dropped due to file extension block list
FTP 支持
FTP 协议不支持所有内容过滤功能。它仅支持以下内容:阻止扩展列表和协议命令阻止列表。
当内容过滤阻止 FTP 请求时,将通过控制通道发送以下响应:
550 <src_ip>:<src_port>-<dst_ip>:<dst_port><custom drop message/user-configured drop message> for Content Filtering file extension block list.>
因此,可能会显示一条消息,如下所示:
550 5.5.5.1:21->4.4.4.1:45237 Requested action not taken and the request is dropped for Content Filtering file extension block list
电子邮件支持
电子邮件协议(SMTP、IMAP、POP3)对以下功能的内容过滤支持有限:块扩展列表、协议命令块列表和 MIME 模式过滤。由于以下原因,对电子邮件协议的支持有限:
内容过滤器仅扫描电子邮件标头的一个级别。因此,不会扫描递归电子邮件标头和加密附件。
如果整封电子邮件都经过 MIME 编码,则内容筛选器只能扫描 MIME 类型。
如果电子邮件的任何部分由于内容过滤而被阻止,则原始电子邮件将被删除,并由一个文本文件代替,其中包含电子邮件被阻止原因的解释。
从 Junos OS 19.4R1 版开始,防病毒和内容过滤功能支持隐式和显式 SMTPS、IMAPS 和 POP3S 协议,并且仅支持显式被动模式 FTPS。
隐式模式 — 使用安全通道连接到 SSL/TLS 加密端口。
显式模式 — 首先连接到不安全通道,然后发出 STARTTLS 命令来保护通信。对于 POP3S,请使用 STLS 命令。
另见
指定内容过滤协议(CLI 过程)
要配置内容过滤协议,请使用以下 CLI 配置语句:
content-filtering { profile name { permit-command cmd-list block-command cmd-list block-extension file-ext-list block-mime { list mime-list exception ex-mime-list } block-content-type { activex java-applet exe zip http-cookie } notification-options { type { message } notify-mail-sender custom-message msg } } traceoptions { flag { all basic detail } } }
内容过滤配置概述
内容安全过滤器根据 MIME 类型、文件扩展名、协议命令和嵌入对象类型阻止或允许某些类型的流量。内容过滤器根据配置的过滤器列表检查流量,从而控制网关上的文件传输。内容过滤模块先评估流量,然后评估所有其他内容安全模块,如果流量满足内容过滤器中配置的条件,则内容过滤器首先对此流量执行作。以下过程列出了应配置内容筛选器的建议顺序:
示例:配置内容筛选自定义对象
此示例说明如何配置内容筛选自定义对象。
概述
在此示例中,您将定义用于创建内容筛选配置文件的自定义对象。执行以下任务来定义自定义对象:
创建两个名为 ftpprotocom1 和 ftpprotocom2 的协议命令列表,并向其添加 user、pass、port 和 type 命令。
创建名为 extlist2 的文件扩展名列表,并向其添加 .zip、.js 和 .vbs 扩展名。
定义块-哑剧列表,调用 cfmime1 并向列表添加模式。
配置
程序
CLI 快速配置
要快速配置此示例,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改详细信息,以便与网络配置匹配,将命令复制并粘贴到层 [edit]
级的 CLI 中,然后从配置模式进入 commit
。
set security utm custom-objects protocol-command ftpprotocom1 value [user pass port type] set security utm custom-objects protocol-command ftpprotocom2 value [user pass port type] set security utm custom-objects filename-extension extlist2 value [zip js vbs] set security utm custom-objects mime-pattern cfmime1 value [video/quicktime image/x-portable-anymap x-world/x-vrml] set security utm custom-objects mime-pattern ex-cfmime1 value [video/quicktime-inappropriate]
分步过程
下面的示例要求您在各个配置层级中进行导航。有关作说明,请参阅 CLI 用户指南中的在配置模式下使用 CLI 编辑器。
要配置内容过滤自定义对象,请执行以下作:
创建两个协议命令列表。
[edit security utm] user@host# set custom-objects protocol-command ftpprotocom1 [edit security utm] user@host# set custom-objects protocol-command ftpprotocom2
将协议命令添加到列表中。
[edit security utm] user@host# set custom-objects protocol-command ftpprotocom1 value [user pass port type] [edit security utm] user@host# set custom-objects protocol-command ftpprotocom2 value [user pass port type]
创建文件扩展名列表。
[edit security utm] user@host# set custom-objects filename-extension extlist2
将扩展添加到列表中。
[edit security utm] user@host# set custom-objects filename-extension extlist2 value [zip js vbs]
创建防病毒扫描列表。
[edit security utm] user@host# set custom-objects mime-pattern cfmime1 user@host# set custom-objects mime-pattern ex-cfmime1
将模式添加到列表中。
[edit security utm] user@host# set custom-objects mime-pattern cfmime1 value [video/quicktime image/x-portable-anymap x-world/x-vrml] user@host# set custom-objects mime-pattern ex-cfmime1 value [video/quicktime-inappropriate]
结果
在配置模式下,输入 show security utm
命令以确认您的配置。如果输出未显示预期的配置,请重复此示例中的配置说明,以便进行更正。
[edit] userhost#show security utm custom-objects { mime-pattern { cfmime1 { value [ video/quicktime image/x-portable-anymap x-world/x-vrml ]; } ex-cfmime1 { value video/quicktime-inappropriate; } } filename-extension { extlist2 { value [ zip js vbs ]; } } protocol-command { ftpprotocom1 { value [ user pass port type ]; } } protocol-command { ftpprotocom2 { value [ user pass port type ]; } } }
如果完成设备配置,请从配置模式输入 commit
。
示例:配置内容过滤 内容安全策略
此示例介绍如何创建内容筛选内容安全策略以附加到功能配置文件。
概述
您可以配置内容安全策略,以便有选择地对通过启用了内容安全的设备的网络流量实施各种内容安全解决方案。通过功能配置文件,您可以将自定义对象关联到这些策略,并指定阻止或允许某些类型的流量。
在此示例中,您将配置名为 utmp4 的内容安全策略,然后将预配置的功能配置文件 confilter1 分配给此策略。
配置
程序
分步过程
要配置内容过滤内容安全策略,请执行以下作:
您可以在内容安全策略中配置不同的协议应用程序。该示例仅显示 HTTP,而不显示其他协议。之前,您为 FTP 配置了自定义对象(ftpprotocom1 和 ftpprotocom2)。接下来,您应该为 FTP 添加内容过滤器策略,例如:
set security utm utm-policy utmp4 content-filtering ftp upload-profile confilter1
set security utm utm-policy utmp4 content-filtering ftp download-profile confilter1
-
创建内容安全策略。
[edit security utm] user@host# set utm-policy utmp4
-
将内容安全策略附加到配置文件。
[edit security utm] user@host# set utm-policy utmp4 content-filtering http-profile contentfilter1
如果完成设备配置,请提交配置。
[edit] user@host# commit
示例:将内容过滤内容安全策略附加到安全策略
此示例说明如何创建安全策略并将内容安全策略附加到该安全策略。
要求
开始之前:
-
配置内容安全自定义对象,定义内容过滤配置文件,并创建内容安全策略。请参阅 内容过滤配置概述。
启用和配置安全策略。请参阅 示例:配置安全策略以允许或拒绝所有流量。
概述
通过将内容过滤内容安全策略附加到安全策略,可以过滤从一个安全区域传输到另一个安全区域的流量。
在此示例中,您将创建名为 p4 的安全策略,并指定使用 HTTP 应用程序从任何源地址到任何目标地址的流量与条件匹配。然后,将名为 utmp4 的内容安全策略分配给安全策略 p4。此内容安全策略适用于与安全策略 p4 中指定的条件匹配的任何流量。
配置
程序
CLI 快速配置
要将内容过滤内容安全策略快速附加到安全策略,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改详细信息,以便与网络配置匹配,将命令复制并粘贴到层级的 CLI [edit]
中,然后从配置模式进入 commit
。
[edit] set security policies from-zone trust to-zone untrust policy p4 match source-address any set security policies from-zone trust to-zone untrust policy p4 match destination-address any set security policies from-zone trust to-zone untrust policy p4 match application junos-htttp set security from-zone trust to-zone untrust policy p4 then permit application-services utm-policy utmp4
分步过程
下面的示例要求您在各个配置层级中进行导航。有关作说明,请参阅 CLI 用户指南中的在配置模式下使用 CLI 编辑器。
要将内容安全策略附加到安全策略:
创建安全策略。
[edit] user@host# edit security policies from-zone trust to-zone untrust policy p4
指定策略的匹配条件。
[edit security policies from-zone trust to-zone untrust policy p4] user@host# set match source-address any user@host# set match destination-address any user@host# set match application junos-http
-
将内容安全策略附加到安全策略。
[edit security policies from-zone trust to-zone untrust policy p4] user@host# set then permit application-services utm-policy utmp4
结果
在配置模式下,输入 show security policies
命令以确认您的配置。如果输出未显示预期的配置,请重复此示例中的配置说明,以便进行更正。
[edit] user@host# show security policies from-zone trust to-zone untrust { policy p4 { match { source-address any; destination-address any; application junos-http; } then { permit { application-services { utm-policy utmp4; } } } } } default-policy { permit-all; }
如果完成设备配置,请从配置模式输入 commit
。
监控内容过滤配置
目的
查看内容过滤统计信息。
行动
要在 CLI 中查看内容过滤统计信息,请输入 user@host > show security utm content-filtering statistics
命令。
内容过滤 show statistics
命令显示以下信息:
Base on command list: # Blocked Base on mime list: # Blocked Base on extension list: # Blocked ActiveX plugin: # Blocked Java applet: # Blocked EXE files: # Blocked ZIP files: # Blocked HTTP cookie: # Blocked
要使用 J-Web 查看内容过滤统计信息,请执行以下作:
选择 “清除内容筛选统计信息”“监视器>安全性>UTM>内容筛选”监视器>安全性>UTM>内容筛选。
以下统计信息可在右窗格中查看。
Base on command list: # Passed # Blocked Base on mime list: # Passed # Blocked Base on extension list: # Passed # Blocked ActiveX plugin: # Passed # Blocked Java applet: # Passed # Blocked EXE files: # Passed # Blocked ZIP files: # Passed # Blocked HTTP cookie: # Passed # Blocked
您可以单击 “清除内容过滤统计信息 ”以清除所有当前可见统计信息并开始收集新的统计信息。
变更历史表
是否支持某项功能取决于您使用的平台和版本。使用 功能浏览器 查看您使用的平台是否支持某项功能。