Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

配置 SSL 代理

SRX 系列设备支持 SSL 转发代理和 SSL 反向代理。

配置 SSL 转发代理

SSL 代理配置概述

配置 SSL 转发代理 将显示有关如何配置 SSL 代理的概述。配置 SSL 代理包括:

  • 配置根 CA 证书

  • 加载 CA 配置文件组

  • 配置 SSL 代理配置文件并关联根 CA 证书和 CA 配置文件组

  • 通过定义输入流量匹配标准创建安全策略

  • 将 SSL 代理配置文件应用于安全策略

  • 创建允许列表和 SSL 代理日志记录等可选步骤

配置根 CA 证书

CA 可以树结构的形式颁发多个证书。根证书是树最上部的证书,其私有密钥用于 sign 其他证书。根证书紧下方的所有证书均继承根证书的签名或可信度。这有点像 notarizing 一个身份。

您可以通过首先获取根 CA 证书(生成自签名证书或导入证书)然后将其应用到 SSL 代理配置文件来配置根 CA 证书。您可以使用 Junos OS CLI 获取根 CA 证书

使用 CLI 生成根 CA 证书

要在 CLI 中定义自签名证书,必须提供以下详细信息:

  • 证书标识符(在上一步中生成)

  • 证书的完全限定域名 (FQDN)

  • 证书拥有实体的电子邮件地址

  • 通用名称及涉及的组织

使用 Junos OS CLI 生成根 CA 证书:

  1. 在操作模式下,为本地数字证书生成 PKI 公钥/私钥对。

    在这里,您可以选择以下组合之一:

    • 1024 位(仅限 RSA/DSA)

    • 2048 位(仅限 RSA/DSA)

    • 256 位(仅限 ECDSA)

    • 384 位(仅限 ECDSA)

    • 4096 位(仅限 RSA/DSA)

    • 521 位(仅限 ECDSA)

    例子:

  2. 定义自签名证书。

    例子:

    通过配置选项 add-ca-constraint ,可确保证书可用于对其他证书进行签名。

  3. 在配置模式下,将加载的证书作为 SSL 代理配置文件中的 root-ca 进行应用。

    例子:

  4. 将根 CA 作为可信 CA 导入客户端浏览器。这是客户端浏览器信任 SRX 系列设备签名的证书所必需的。请参阅 将根 CA 证书导入浏览器

配置 CA 配置文件组

CA 配置文件定义了用于认证的证书信息。它包括 SSL 代理在生成新证书时使用的公钥。Junos OS 允许您在一个操作中创建一组 CA 配置文件并加载多个证书,查看有关一个组内所有证书的信息,并删除不需要的 CA 组。

您可以通过获取可信 CA 证书列表、定义 CA 组并将 CA 组连接到 SSL 代理配置文件来加载一组 CA 配置文件。

  1. 使用以下方法之一获取可信 CA 证书列表。启动连接时,连接设备(如 Web 浏览器)会检查证书是否由可信 CA 颁发。如果没有这些证书,浏览器将无法验证大多数网站的身份,并将它们标记为不受信任的站点。
    • Junos OS 提供可在系统上加载的可信 CA 证书的默认列表。Junos OS 软件包将默认 CA 证书作为 PEM 文件(例如 ,trusted_CA.pem)。下载 Junos OS 软件包后,您的系统上可以使用默认证书。

      在操作模式下,加载默认的可信 CA 证书(组名称标识 CA 配置文件组):

      例子:

      我们建议使用此方法。

    • 或者,您可以定义自己的可信 CA 证书列表并将其导入系统上。您可以在单个 PEM 文件中获取可信的 SA 列表(例如 IE-all.pem),并将 PEM 文件保存在特定位置(例如 /var/tmp)。

      在操作模式下,将可信列表加载到设备(组名称标识 CA 配置文件组):

      例子:

    • 从其他第三方(如 Mozilla (https://curl.haxx.se/docs/caextract.html)下载最新的 CA 捆绑包列表。可信证书颁发机构列表可能会随着时间而更改,确保您使用最新的 CA 捆绑包。

    • 使用公钥基础架构 (PKI) 导入您自己的可信 CA 证书。PKI 有助于验证和验证可信 CA 证书的有效性。创建包含可信 CA 证书的 CA 配置文件组,然后将该组导入设备上,以便进行服务器身份验证。

  2. 将可信 CA 或可信 CA 组连接到 SSL 代理配置文件。您可以一次连接所有可信 CA 或一个可信 CA:
    • 附加所有 CA 配置文件组:

      例子

    • 附加一个 CA 配置文件组(组名称标识 CA 配置文件组)。

      例子

您可以轻松地显示一个 CA 配置文件组中所有证书的信息:

您可以删除 CA 配置文件组。请记住,删除 CA 配置文件组会删除属于该组的所有证书:

将根 CA 证书导入浏览器

为了让您的浏览器或系统自动信任由 SSL 代理配置文件中配置的根 CA 签名的所有证书,您必须指示平台或浏览器信任 CA 根证书。

要导入根 CA 证书:

  1. 为配置的根 CA 生成 PEM 格式的文件。
  2. 将根 CA 证书导入浏览器。

    从 Internet Explorer(版本 8.0):

    1. 从工具菜单中选择 互联网选项
    2. 在 Content(内容)选项卡中,单击 证书
    3. 选择 可信根证书颁发机构 选项卡,然后单击 导入
    4. 在证书导入向导中,导航至所需的根 CA 证书并选择它。

    来自 Firefox(版本 39.0):

    1. 从工具菜单中选择 选项
    2. 从高级菜单中选择 证书 选项卡,然后单击 查看证书
    3. 在“证书管理器”窗口中,选择“ 颁发机构 ”选项卡,然后单击“ 导入”。
    4. 导航至所需的根 CA 证书并选择它。

    来自 Google Chrome (45.0):

    1. 从“设置”菜单中选择“显示高级设置”。
    2. 从高级菜单中选择 证书 选项卡,然后单击 查看证书
    3. 在 HTTPS/SSL 下,单击 管理证书
    4. 在证书窗口中,选择 可信根证书颁发机构 ,然后单击 导入
    5. 在证书导入向导中,导航至所需的根 CA 证书并选择它。

将 SSL 代理配置文件应用于安全策略

SSL 代理作为安全策略中的一项应用程序服务启用。在安全策略中,指定希望在其上启用 SSL 代理作为匹配条件的流量,然后指定要应用于流量的 SSL 代理 CA 配置文件。 图 1 显示了 SSL 代理配置文件和安全策略配置的图形视图。

图 1:将 SSL 代理配置文件应用于安全策略

在安全策略中启用 SSL 代理:

此示例假设您已经创建了信任和不信任安全区域,并为从信任区域到不信任区域的流量创建安全策略。

  1. 创建安全策略并指定策略的匹配标准。作为匹配标准,指定要启用 SSL 代理的流量。

    例子:

  2. 将 SSL 代理配置文件应用于安全策略。

配置 SSL 代理日志记录

配置 SSL 代理时,您可以选择设置接收部分或全部日志的选项。SSL 代理日志包含逻辑系统名称、SSL 代理允许列表、策略信息、SSL 代理信息,以及在出错时帮助您排除故障的其他信息。

您可以配置日志记录 all 或特定事件,例如错误、警告和信息事件。您还可以配置发生错误后允许列出、丢弃、忽略或允许的会话日志记录。

您可以使用 enable-flow-tracing 选项启用调试跟踪。

配置证书颁发机构配置文件

证书颁发机构 (CA) 配置文件配置包含特定于 CA 的信息。一个 SRX 系列设备上可以有多个 CA 配置文件。例如,您可能有一个组织A 配置文件,一个配置文件用于组织B。每个配置文件都与一个 CA 证书相关联。如果要在不删除旧 CA 证书的情况下加载新的 CA 证书,请创建新的 CA 配置文件(例如,Microsoft-2008)。对于给定拓扑,您可以将多个 CA 配置文件分组到一个可信 CA 组中。

在此示例中,您将使用 CA 身份 microsoft-2008 创建一个名为 ca-profile-security 的 CA 配置文件。然后,您可以为 CA 配置文件创建代理配置文件。

  1. 在配置模式下,配置用于加载证书的 CA 配置文件。

    例子:

  2. 提交配置。
  3. 在操作模式下,使用 PKI 命令加载证书。

    例子:

  4. 在配置模式下,禁用撤销检查(如果需要)。

    例子:

  5. 在配置模式下,将加载的证书配置为 SSL 代理配置文件中的可信 CA。

    例子:

    注意:

    可以为一个配置文件配置多个可信 CA。

  6. (可选)如果您有多个可信的 CA 证书,则不必单独指定每个可信 CA。您可以在配置模式下使用以下命令加载 all 可信 CA 证书。
    注意:

    或者,您可以将一组可信的 SA 从浏览器导入 SRX 系列设备。

将证书导出到指定位置

使用 PKI 命令生成自签名证书时,新生成的证书存储在预定义的位置(var/db/certs/common/local)。

使用以下命令将证书导出到特定位置(设备内部)。您可以指定证书 ID、文件名和文件类型格式 (DER/PEM):

忽略服务器身份验证

Junos OS 允许您配置完全忽略服务器身份验证的选项。如果将系统配置为忽略身份验证,则 SSL 握手时的服务器证书验证过程中遇到的任何错误将被忽略。通常被忽略的错误包括无法验证 CA 签名、证书到期日期不正确等。如果未设置此选项,则当遇到错误时,服务器发送自签名证书的所有会话都会被丢弃。

我们不建议使用此选项进行身份验证,因为配置此选项会导致网站根本没有通过身份验证。但是,您可以使用此选项有效地识别 SSL 会话丢弃的根本原因。

在配置模式下,指定忽略服务器身份验证:

SSL 反向代理

概述

SRX 系列设备支持用于服务器保护的代理模型实现(通常称为 反向代理),以改进握手并支持更多协议版本。您可以在通过 SSL 反向代理解密的流量上启用第 7 层服务(应用程序安全、IPS、UTM、SKY ATP)。

从 Junos OS 15.1X49-D80 和 17.3R1 版开始,SRX5000 系列、SRX4100、SRX4200、SRX1500 设备支持 SSL 反向代理。

从 Junos OS 15.1X49-D80 和 17.3R1 版开始,我们建议使用 SSL 反向代理和入侵检测与防御 (IDP),而不是使用 IDP SSL 检测功能。

从 Junos OS 15.1X49-D80 和 17.3R1 开始,IDP SSL 检查会弃用(而不是立即移除)以提供向后兼容性并使您的配置符合新配置。

#id-overview__rp-compare1 提供了 15.1X48-D80 和 17.3R1 版本后适用于 SRX 系列设备的更改。

表 1:比较 Junos OS 15.1X49-D80 版之前和之后的反向代理

特征

15.1X49-D80 之前

15.1X49-D80 和 17.3R1 版本

代理模型

仅在点击模式下运行,它不参与 SSL 握手,它会侦听 SSL 握手,计算会话密钥,然后解密 SSL 流量。

终止 SRX 系列设备上的客户端 SSL,并启动与服务器的新 SSL 连接。对来自客户端/服务器的 SSL 流量解密,并在发送至服务器/客户端之前再次加密(在检测后)。

协议版本

不支持 TLS 版本 1.1 和 1.2。

支持所有当前协议版本。

密钥交换方法

  • 支持 RSA

  • 不支持 DHE。

  • 支持 RSA

  • 支持 DHE 或 ECDHE

回显系统

与 IDP 引擎及其探测器紧密结合。

使用现有 SSL 转发代理,并在下面使用 TCP 代理。

安全服务

解密的 SSL 流量只能由 IDP 检查。

就像转发代理一样,解密的 SSL 流量适用于所有安全服务。

支持密码

支持有限密码集。

支持所有常用的密码。

您必须配置 SSL root-ca 代理配置文件或 server-certificate 配置 SSL 代理配置文件。否则,提交检查将失败。请参阅 #id-overview__profile-type1

表 2:支持的 SSL 代理配置

配置的服务器证书

root-ca 配置

配置文件类型

提交检查失败。您必须配置或server-certificateroot-ca

是的

是的

提交检查失败。不支持同时配置和root-ca在同一配置文件中配置server-certificate

是的

转发代理

是的

反向代理

支持配置多个正向和反向代理配置文件实例。但对于给定的防火墙策略,只能配置一个配置文件(正向或反向代理配置文件)。此外,还支持在同一设备上配置正向代理和反向代理。

您无法为给定防火墙策略配置之前的反向代理实施与新的反向代理实施。如果两者均已配置,您将收到一条提交检查失败消息。

以下是配置反向代理的最小步骤:

  1. 使用 CLI 命令 request security pki local-certificate load filename filename key key certificate-id certificate-id passphrase exmample@1234将服务器证书及其密钥加载到 SRX 系列设备证书存储库中。例如:
  2. 使用 CLI 命令 set services ssl proxy profile profile server-certificate certificate-id passphrase exmample@1234将服务器证书标识符连接到 SSL 代理配置文件。例如

    user@host# 设置服务 ssl 代理配置文件服务器保护配置文件服务器证书server2_cert_id

  3. show services ssl使用CLI 命令,以验证您的配置。例如:

SSL 转发代理和反向代理需要在防火墙规则级别配置配置文件。此外,还必须使用反向代理的私有密钥配置服务器证书。在 SSL 握手期间,SSL 代理会为其服务器私钥哈希表数据库中的匹配服务器私钥执行查找。如果查找成功,则握手将继续。否则,SSL 代理会终止握手。反向代理不会禁止服务器证书。它会按实际服务器证书/链转发给客户端,无需修改。拦截服务器证书仅使用转发代理。

以下示例显示正向和反向代理配置文件配置。

配置 SSL 反向代理

此示例说明如何配置反向代理以启用服务器保护。此外,为了保护服务器,必须配置带有私钥的服务器证书。

反向代理通过向客户端隐藏服务器的详细信息来保护服务器,从而增加一层额外的安全。

要配置 SSL 反向代理,您必须:

  • 将服务器证书及其密钥加载到 SRX 系列设备的证书存储库中。

  • 将服务器证书标识符连接到 SSL 代理配置文件。

  • 在安全策略中将 SSL 代理配置文件作为应用程序服务应用。

要配置 SSL 反向代理:

  1. 加载 PKI 内存中 SSL 代理配置文件的签名证书和相应的密钥。
  2. 将服务器证书连接到 SSL 代理配置文件。
  3. 创建安全策略并指定策略的匹配标准。作为匹配标准,指定要启用 SSL 代理的流量。
  4. 将 SSL 代理配置文件应用于安全策略。此示例假定根据要求创建安全区域。

验证设备上的 SSL 反向代理配置

目的

查看 SRX 系列设备上的 SSL 反向代理统计信息。

行动

您可以使用命令查看 SSL 代理统计信息 show services ssl proxy statistics

使用 UTM 配置 SSL 代理

SRX 系列设备支持客户端保护(转发代理)和服务器保护(反向代理)。您可以为启用统一威胁管理 (UTM) 的转发代理和反向代理配置 SSL 代理配置文件。

使用 UTM 配置 SSL 转发代理

在此过程中,您可以使用 UTM 配置 SSL 转发代理配置文件。配置 UTM 时,SSL 代理充当 SSL 服务器,从客户端终止 SSL 会话,并建立与服务器的新 SSL 会话。SRX 系列设备解密,然后重新加密所有 SSL 代理流量。UTM 可以使用 SSL 代理中的解密内容。

以 root-ca 身份生成本地证书。

  1. 在操作模式下,为本地数字证书生成密钥对。
  2. 使用上述生成的密钥对生成本地证书。
  3. 在配置模式下,将加载的证书作为 SSL 代理配置文件中的 root-ca 进行应用。
  4. 将 SSL 配置文件和 UTM 策略连接到安全策略。

使用 UTM 配置 SSL 反向代理

在此过程中,您可以使用 UTM 配置 SSL 反向代理配置文件。

  1. 将服务器证书及其密钥加载到 SRX 系列设备证书存储库。
  2. 在配置模式下,将服务器证书标识符连接到 SSL 代理配置文件。
  3. 将 SSL 配置文件和 UTM 策略连接到从不信任区域到信任区域的流量的安全策略。

创建 SSL 代理豁免目的地的允许列表

SSL 加密和解密可能会占用 SRX 系列设备上的内存资源。为了限制这一点,您可以针对某些会话(例如,与熟悉的可信服务器或域交易的会话)选择绕过 SSL 代理处理。由于法律要求,您还可以免除与金融和银行网站的会话。

要从 SSL 代理中豁免会话,可以通过添加服务器的 IP 地址或域名来创建允许列表。允许列表包括要免于接受 SSL 代理处理的地址。

使用以下步骤创建允许列表:

  • 在全局通讯簿中指定 IP 地址和域名。

  • 请参阅 SSL 代理配置文件中的全局通讯簿。

您可以在全局通讯簿中配置以下类型的 IP 地址。

  • IPv4 地址(纯文本)。例如:

  • IPv4 地址范围。例如:

  • IPv4 通配符。例如:

  • DNS 名称。例如:

  • IPv6 地址。例如:

允许列表不支持以下类型的 IP 地址:

  • 已转换的 IP 地址。允许列出会话是基于实际 IP 地址而不是转换的 IP 地址。因此,在 SSL 代理配置文件的允许列表配置中,应提供实际 IP 地址,而不是转换后的 IP 地址。

  • 非连续网络掩码。例如:

    • 支持 IP 地址 -203.0.113.0 和掩码 255.255.255.0(即 203.0.113.0/24)。

    • 不支持 IP 地址 - 203.0.113.9 和掩码 255.0.255.0。

以下示例说明如何在 SSL 代理配置文件中使用允许列表。

在此示例中,您将豁免所有会话。 www.mycompany.com为此,您首先在通讯簿中指定域,然后在 SSL 代理配置文件中配置地址。

  1. 在通讯簿中配置域。
  2. 在 SSL 代理配置文件中指定全局通讯簿地址。

为 SSL 代理创建一个可豁免 URL 类别的允许列表

您可以配置 UTM 模块中支持的 URL 类别,以免除 SRX 系列设备上的 SSL 检查。要使用 UTM 中的 URL 类别,SRX 系列设备将 SSL 代理配置文件与 EWF 功能集成在一起。现在,您可以将 SSL 代理配置文件下的 URL 类别列表配置为允许列表以及地址簿。您可以从 UTM 支持的一组预定义 URL 类别或自定义 URL 类别中配置列表。

安全设备使用由 UTM 模块提取的服务器名称指示 (SNI) 字段来确定 URL 类别。SSL 代理使用这些信息来确定是接受和代理,还是忽略会话。

SRX340、SRX345、SRX5400、SRX5600、SRX5800 和 vSRX 实例支持此功能。

从 Junos OS 15.1X49-D80 版和 Junos OS 17.3R1 版开始,SSL 代理允许列出功能包括 UTM 支持的 URL 类别。

从 Junos OS 17.4R1 版开始,SSL 代理允许列出功能将支持扩展到 UTM 支持的自定义 URL 类别。

以下示例说明如何在 SSL 代理配置文件中配置 URL 类别:

创建豁免 URL 类别的允许列表

使用以下步骤在 SSL 代理配置文件中配置预定义的 URL 类别。

  1. 预定义的 URL 类别取决于 UTM。要启用 SSL 代理中基于 URL 的允许列表,需要以下基本 URL 配置:
  2. 指定 SSL 代理配置文件中预定义的 URL 类别。在此示例中,您使用的 URL 类别Enhanced_Financial_Data_and_Services。
  3. 通过指定匹配条件创建安全策略,并将 UTM 策略附加到安全策略,以使用 SSL 允许列表中 URL 类别。

创建豁免自定义 URL 类别的允许列表

使用以下步骤在 SSL 代理配置文件中配置自定义 URL 类别。

  1. 创建自定义 URL 类别。

    [edit]
    user@host# set security utm custom-objects url-pattern URL-1 value www.example.com 
    user@host# set security utm custom-objects custom-url-category CATEGORY-1 value URL-1
    user@host#  set security utm feature-profile web-filtering juniper-local profile PROFILE-1 category CATEGORY-1 action permit
    

  2. 为 Web 过滤 HTTP 协议配置 UTM 策略,并将在上一步中创建的配置文件与 UTM 策略相关联。
  3. 指定在上一步 SSL 代理配置文件中创建的自定义 URL 类别。
  4. 通过指定匹配条件创建安全策略,并将 UTM 策略附加到安全策略,以使用 SSL 允许列表中 URL 类别。
版本历史记录表
释放
描述
17.4R1
从 Junos OS 17.4R1 版开始,SSL 代理允许列出功能将支持扩展到 UTM 支持的自定义 URL 类别。
15.1X49-D80
从 Junos OS 15.1X49-D80 和 17.3R1 版开始,SRX5000 系列、SRX4100、SRX4200、SRX1500 设备支持 SSL 反向代理
15.1X49-D80
从 Junos OS 15.1X49-D80 和 17.3R1 版开始,我们建议使用 SSL 反向代理和入侵检测与防御 (IDP),而不是使用 IDP SSL 检测功能。
15.1X49-D80
从 Junos OS 15.1X49-D80 和 17.3R1 开始,IDP SSL 检查会弃用(而不是立即移除)以提供向后兼容性并使您的配置符合新配置。
15.1X49-D80
从 Junos OS 15.1X49-D80 版和 Junos OS 17.3R1 版开始,SSL 代理允许列出功能包括 UTM 支持的 URL 类别。