配置 SSL 代理
SRX 系列设备支持 SSL 转发代理和 SSL 反向代理。
配置 SSL 转发代理
- SSL 代理配置概述
- 配置根 CA 证书
- 使用 CLI 生成根 CA 证书
- 配置 CA 配置文件组
- 将根 CA 证书导入浏览器
- 将 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 证书:
配置 CA 配置文件组
CA 配置文件定义了用于认证的证书信息。它包括 SSL 代理在生成新证书时使用的公钥。Junos OS 允许您在一个操作中创建一组 CA 配置文件并加载多个证书,查看有关一个组内所有证书的信息,并删除不需要的 CA 组。
您可以通过获取可信 CA 证书列表、定义 CA 组并将 CA 组连接到 SSL 代理配置文件来加载一组 CA 配置文件。
您可以轻松地显示一个 CA 配置文件组中所有证书的信息:
user@host> show security pki ca-certificates ca-profile-group group-name
您可以删除 CA 配置文件组。请记住,删除 CA 配置文件组会删除属于该组的所有证书:
user@host> clear security pki ca-certificates ca-profile-group group-name
将根 CA 证书导入浏览器
为了让您的浏览器或系统自动信任由 SSL 代理配置文件中配置的根 CA 签名的所有证书,您必须指示平台或浏览器信任 CA 根证书。
要导入根 CA 证书:
将 SSL 代理配置文件应用于安全策略
SSL 代理作为安全策略中的一项应用程序服务启用。在安全策略中,指定希望在其上启用 SSL 代理作为匹配条件的流量,然后指定要应用于流量的 SSL 代理 CA 配置文件。 图 1 显示了 SSL 代理配置文件和安全策略配置的图形视图。
在安全策略中启用 SSL 代理:
此示例假设您已经创建了信任和不信任安全区域,并为从信任区域到不信任区域的流量创建安全策略。
配置 SSL 代理日志记录
配置 SSL 代理时,您可以选择设置接收部分或全部日志的选项。SSL 代理日志包含逻辑系统名称、SSL 代理允许列表、策略信息、SSL 代理信息,以及在出错时帮助您排除故障的其他信息。
您可以配置日志记录 all 或特定事件,例如错误、警告和信息事件。您还可以配置发生错误后允许列出、丢弃、忽略或允许的会话日志记录。
[edit] user@host# set services ssl proxy profile profile-name actions log all user@host# set services ssl proxy profile profile-name actions log sessions-whitelisted user@host# set services ssl proxy profile profile-name actions log sessions-allowed user@host# set services ssl proxy profile profile-name actions log errors
您可以使用 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 配置文件创建代理配置文件。
将证书导出到指定位置
使用 PKI 命令生成自签名证书时,新生成的证书存储在预定义的位置(var/db/certs/common/local)。
使用以下命令将证书导出到特定位置(设备内部)。您可以指定证书 ID、文件名和文件类型格式 (DER/PEM):
user@host> request security pki local-certificate export certificate-id certificate-id filename filename type der
忽略服务器身份验证
Junos OS 允许您配置完全忽略服务器身份验证的选项。如果将系统配置为忽略身份验证,则 SSL 握手时的服务器证书验证过程中遇到的任何错误将被忽略。通常被忽略的错误包括无法验证 CA 签名、证书到期日期不正确等。如果未设置此选项,则当遇到错误时,服务器发送自签名证书的所有会话都会被丢弃。
我们不建议使用此选项进行身份验证,因为配置此选项会导致网站根本没有通过身份验证。但是,您可以使用此选项有效地识别 SSL 会话丢弃的根本原因。
在配置模式下,指定忽略服务器身份验证:
[edit] user@host# set services ssl proxy profile profile-name actions ignore-server-auth-failure
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 系列设备的更改。
特征 |
15.1X49-D80 之前 |
15.1X49-D80 和 17.3R1 版本 |
---|---|---|
代理模型 |
仅在点击模式下运行,它不参与 SSL 握手,它会侦听 SSL 握手,计算会话密钥,然后解密 SSL 流量。 |
终止 SRX 系列设备上的客户端 SSL,并启动与服务器的新 SSL 连接。对来自客户端/服务器的 SSL 流量解密,并在发送至服务器/客户端之前再次加密(在检测后)。 |
协议版本 |
不支持 TLS 版本 1.1 和 1.2。 |
支持所有当前协议版本。 |
密钥交换方法 |
|
|
回显系统 |
与 IDP 引擎及其探测器紧密结合。 |
使用现有 SSL 转发代理,并在下面使用 TCP 代理。 |
安全服务 |
解密的 SSL 流量只能由 IDP 检查。 |
就像转发代理一样,解密的 SSL 流量适用于所有安全服务。 |
支持密码 |
支持有限密码集。 |
支持所有常用的密码。 |
您必须配置 SSL root-ca
代理配置文件或 server-certificate
配置 SSL 代理配置文件。否则,提交检查将失败。请参阅 #id-overview__profile-type1。
配置的服务器证书 |
root-ca 配置 |
配置文件类型 |
---|---|---|
不 |
不 |
提交检查失败。您必须配置或 |
是的 |
是的 |
提交检查失败。不支持同时配置和 |
不 |
是的 |
转发代理 |
是的 |
不 |
反向代理 |
支持配置多个正向和反向代理配置文件实例。但对于给定的防火墙策略,只能配置一个配置文件(正向或反向代理配置文件)。此外,还支持在同一设备上配置正向代理和反向代理。
您无法为给定防火墙策略配置之前的反向代理实施与新的反向代理实施。如果两者均已配置,您将收到一条提交检查失败消息。
以下是配置反向代理的最小步骤:
SSL 转发代理和反向代理需要在防火墙规则级别配置配置文件。此外,还必须使用反向代理的私有密钥配置服务器证书。在 SSL 握手期间,SSL 代理会为其服务器私钥哈希表数据库中的匹配服务器私钥执行查找。如果查找成功,则握手将继续。否则,SSL 代理会终止握手。反向代理不会禁止服务器证书。它会按实际服务器证书/链转发给客户端,无需修改。拦截服务器证书仅使用转发代理。
以下示例显示正向和反向代理配置文件配置。
# show services ssl ... proxy { Â Â profile ssl-inspect-profile-dut { # For forward proxy. No server cert/key is needed. trusted-ca all; Â Â Â Â root-ca ssl-inspect-ca; Â Â Â Â actions { Â Â Â Â Â Â ignore-server-auth-failure; Â Â Â Â Â Â log { Â Â Â Â Â Â Â Â all; Â Â Â Â Â Â } Â Â Â Â } Â Â } Â Â profile ssl-1 { trusted-ca all; Â Â Â Â root-ca ssl-inspect-ca; Â Â Â Â actions { Â Â Â Â Â Â ignore-server-auth-failure; Â Â Â Â Â Â log { Â Â Â Â Â Â Â Â all; Â Â Â Â Â Â } Â Â Â Â } Â Â } profile ssl-2 { trusted-ca all; Â Â Â Â root-ca ssl-inspect-ca; Â Â Â Â actions { Â Â Â Â Â Â ignore-server-auth-failure; Â Â Â Â Â Â log { Â Â Â Â Â Â Â Â all; Â Â Â Â Â Â } Â Â Â Â } Â Â } Â Â profile ssl-server-protection { # For reverse proxy. No root-ca is needed. Â Â Â Â server-certificate ssl-server-protection; Â Â Â Â actions { Â Â Â Â Â Â log { Â Â Â Â Â Â Â Â all; Â Â Â Â Â Â } Â Â Â Â } Â Â } } ...
配置 SSL 反向代理
此示例说明如何配置反向代理以启用服务器保护。此外,为了保护服务器,必须配置带有私钥的服务器证书。
反向代理通过向客户端隐藏服务器的详细信息来保护服务器,从而增加一层额外的安全。
要配置 SSL 反向代理,您必须:
将服务器证书及其密钥加载到 SRX 系列设备的证书存储库中。
将服务器证书标识符连接到 SSL 代理配置文件。
在安全策略中将 SSL 代理配置文件作为应用程序服务应用。
要配置 SSL 反向代理:
验证设备上的 SSL 反向代理配置
目的
查看 SRX 系列设备上的 SSL 反向代理统计信息。
行动
您可以使用命令查看 SSL 代理统计信息 show services ssl proxy statistics
。
root@host> show services ssl proxy statistics PIC:spu-1 fpc[0] pic[1] ------ sessions matched 0 sessions whitelisted 0 sessions bypassed:non-ssl 0 sessions bypassed:mem overflow 0 sessions bypassed:low memory 0 sessions created 0 sessions ignored 0 sessions active 0 sessions dropped 0
使用 UTM 配置 SSL 代理
SRX 系列设备支持客户端保护(转发代理)和服务器保护(反向代理)。您可以为启用统一威胁管理 (UTM) 的转发代理和反向代理配置 SSL 代理配置文件。
使用 UTM 配置 SSL 转发代理
在此过程中,您可以使用 UTM 配置 SSL 转发代理配置文件。配置 UTM 时,SSL 代理充当 SSL 服务器,从客户端终止 SSL 会话,并建立与服务器的新 SSL 会话。SRX 系列设备解密,然后重新加密所有 SSL 代理流量。UTM 可以使用 SSL 代理中的解密内容。
以 root-ca 身份生成本地证书。
使用 UTM 配置 SSL 反向代理
在此过程中,您可以使用 UTM 配置 SSL 反向代理配置文件。
创建 SSL 代理豁免目的地的允许列表
SSL 加密和解密可能会占用 SRX 系列设备上的内存资源。为了限制这一点,您可以针对某些会话(例如,与熟悉的可信服务器或域交易的会话)选择绕过 SSL 代理处理。由于法律要求,您还可以免除与金融和银行网站的会话。
要从 SSL 代理中豁免会话,可以通过添加服务器的 IP 地址或域名来创建允许列表。允许列表包括要免于接受 SSL 代理处理的地址。
使用以下步骤创建允许列表:
在全局通讯簿中指定 IP 地址和域名。
请参阅 SSL 代理配置文件中的全局通讯簿。
您可以在全局通讯簿中配置以下类型的 IP 地址。
IPv4 地址(纯文本)。例如:
set security address-book global address address-4 192.0.2.117
IPv4 地址范围。例如:
set security address-book global address address-2 range-address 192.0.2.117 to 192.0.2.199
IPv4 通配符。例如:
set security address-book global address address-3 wildcard-address 203.0.113.0/24
DNS 名称。例如:
set security address-book global address address-1 dns-name www.abc.com
IPv6 地址。例如:
set security address-book global address address-5 FE80::/10
允许列表不支持以下类型的 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 代理配置文件中配置地址。
为 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 类别。
创建豁免自定义 URL 类别的允许列表
使用以下步骤在 SSL 代理配置文件中配置自定义 URL 类别。