Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

示例:在 Junos OS 中配置 PKI

此示例演示如何配置 PKI 并对其进行故障排除。本主题包括以下部分:

要求

此示例使用以下硬件和软件组件:

  • Junos OS 9.4 或更高版本

  • 具有增强服务的 Junos OS 8.5 至 9.3 版

  • SRX 系列设备或 J 系列设备

注意:

此配置示例已使用列出的软件版本进行了测试,并假定适用于所有更高版本。

网络拓扑

图 1 显示了此示例用于配置基于策略的 VPN 的网络拓扑。

1: 网络拓扑图 Network Topology Diagram

必需的设置

注意:

对于基于策略的 VPN 和基于路由的 VPN,PKI 管理是相同的。

此示例假定具有以下设置:

  • 远程 VPN 对等方是瞻博网络 SSG5 防火墙/VPN 设备(最常用于分支机构)。

  • 设备的内部 LAN 接口处于 ge-0/0/0 区域信任状态,并具有专用 IP 子网。

  • 设备的互联网接口处于 ge-0/0/3 不信任区域,并且具有公共 IP。

  • 允许本地和远程 LAN 之间的所有流量,并且可以从任一端启动流量。

  • SSG5 已正确预配置,并加载了即用型本地证书、CA 证书和 CRL。

  • SSG5 设备配置为使用 ssg5.juniper.net 的 FQDN (IKE ID)。

  • 具有 1024 位密钥的 PKI 证书用于双方的 IKE 协商。

  • CA 是两个 VPN 对等方的域 labdomain.com 中的独立 CA。

注意:

有关 Junos OS 中 PKI 管理和使用过程的详细信息,请参阅 Junos OS 安全配置指南

注意:

有关使用来自 PKI 供应商(如 Microsoft 和 OpenSSL)的 CA 的详细信息,请参阅 附录 B:管理通用证书颁发机构

注意:

有关使用 SSG5 和其他基于 Juniper Networks ScreenOS 的平台进行 PKI 配置的更多信息。请参阅 瞻博网络 PKI(公钥基础架构)入门和常见问题解答,在 ScreenOS 中使用 X.509 证书

配置

本主题包括以下部分:

PKI 的基本配置步骤

分步过程

  1. 在千兆以太网接口上配置 IP 地址和协议家族(ge-0/0/0.0ge-0/0/3.0):

  2. 配置到互联网下一跃点的默认路由:

    在此示例中,VPN 流量在下一 ge-0/0/0.0 跃点为 . 1.1.1.1因此,流量在接口 ge-0/0/3.0上传出。任何隧道策略都必须考虑传入和传出接口。

    注意:

    (可选)您可以使用动态路由协议,例如 OSPF(本文档中未介绍)。处理新会话的第一个数据包时,Junos OS 设备会首先执行路由查找。静态路由(也是默认路由)指示传出 VPN 流量的区域。

  3. 设置系统时间和日期。

    提交配置后,使用命令验证 show system uptime 时钟设置。

  4. 设置 NTP 服务器地址。

  5. 设置域名系统 (DNS) 配置。

    许多 CA 使用主机名(例如 FQDN)来指定 PKI 的各种元素。由于 CDP 通常是使用包含 FQDN 的 URL 指定的,因此您必须在 Junos OS 设备上配置 DNS 解析程序。

    [edit]
    user@host# set system name-server 4.2.2.1
    user@host# set system name-server 4.2.2.2
    

  6. 通过以下方式生成证书请求:

    • 创建 CA 配置文件以指定 CA 设置。

    • 生成 PKCS10 证书请求。

      PKCS10 证书请求过程涉及生成公钥/私钥对,然后使用该密钥对生成证书请求本身。

      注意:

      记下有关 CA 配置文件的以下信息:

      • CA 配置文件定义证书颁发机构的属性。

      • 每个 CA 配置文件都与一个 CA 证书相关联。如果需要加载新的或续订的 CA 证书而不删除旧的 CA 证书,则必须创建新的配置文件。此配置文件还可用于联机获取 CRL。

      • 为不同用户创建的系统中可以存在多个此类配置文件。

    分步过程
    1. 使用以下必需值创建受信任的 CA 配置文件:

      • CA 配置文件名称 — (此示例为 ms-ca)(任何值)

      • CA 身份 — labdomain.com。(CA 域名)

    2. 创建吊销检查以指定检查证书吊销的方法:

      注意:

      您可以使用该选项 disable 禁用吊销检查或选择 crl 配置 CRL 属性。

    3. 设置刷新间隔(以小时为单位)以指定更新 CRL 的频率。默认值为:CRL 中的下一次更新时间,如果未指定下一次更新时间,则为 1 周。

    4. 指定检索 CRL(HTTP 或 LDAP)的位置 (URL)。默认情况下,URL 为空,并使用嵌入在 CA 证书中的 CDP 信息。

      注意:

      URL 可以包含服务器名称/端口信息,例如 ldap://<ip-or-fqdn>:<port>)。如果缺少端口号,HTTP 将使用端口 80,或 LDAP 将使用端口 443。目前只能配置一个 URL。不支持备份 URL 配置。

    5. 指定用于将证书请求直接发送给 CA 管理员的电子邮件地址。

      注意:

      如果指定要将证书请求发送到的 CA 管理员电子邮件地址,则系统会从证书请求文件撰写电子邮件并将其转发到指定的电子邮件地址。电子邮件状态通知将发送给管理员。

      注意:

      证书请求可以通过带外方法发送到 CA。

    6. 提交配置:

    7. 生成密钥对请求。

      配置 CA 配置文件后,下一步是在 Junos OS 设备上生成密钥对。要生成私钥和公钥对,请执行以下操作:

      将生成 PKCS10 证书请求,并将其作为挂起的证书或证书请求存储在系统上。将向 CA 管理员发送电子邮件通知(在此示例中为 certadmin@labdomain.com)。

      注意:

      目前,Junos OS 仅支持 RSA 算法,不支持数字签名算法 (DSA)。称为证书 ID 的唯一标识用于命名生成的密钥对。此 ID 还用于证书注册和请求命令,以获取正确的密钥对。生成的密钥对保存在证书存储中与证书 ID 同名的文件中。文件大小可以是 512、1024 或 2048 位。

      注意:

      如果设备中未预安装中间 CA,则可以创建默认(回退)配置文件。在没有专门配置的 CA 配置文件的情况下,将使用默认配置文件值。

      对于 CDP,遵循以下顺序:

      • 每个 CA 配置文件

      • 嵌入在 CA 证书中的 CDP

      • 默认 CA 配置文件

      我们建议使用特定的 CA 配置文件,而不是默认配置文件。

  7. 生成 PKCS-10 格式的本地数字证书请求。

    注意:

    在 PKCS10 证书的示例中,请求以“开始证书请求”行开头并包含该行,并以“结束证书请求”行结尾并包含该行。可以将此部分复制并粘贴到您的 CA 以进行注册。或者,您也可以卸载“ms-cert-req”文件并将其发送到您的 CA。

    生成要发送到 CA 的 PKCS10 证书请求。

    可用的选项包括:

    • certificate-id — 本地数字证书和公钥/私钥对的名称。这可确保将正确的密钥对用于证书请求,并最终用于本地证书。

    • subject — 包含公用名、部门、公司名称、州和国家/地区的可分辨名称格式:

      • CN — 通用名称

      • OU — 部门

      • O — 公司名称

      • L — 地点

      • ST — 州

      • C — 国家

      • CN — 电话

      • DC — 域组件

        注意:

        您不需要输入所有使用者名称组件。另请注意,您可以输入每种类型的多个值。

    • domain-name — FQDN。FQDN 为 IKE 协商提供证书所有者的标识,并提供使用者名称的替代方法。

    • filename (path | terminal) — (可选)应放置证书请求的位置或登录终端。

    • ip-address — (可选)设备的 IP 地址。

    • email — (可选)CA 管理员的电子邮件地址。

      注意:

      您必须使用以下地址之一:域名、IP 地址或电子邮件地址。

    域名、IP 地址或电子邮件地址定义 IKE ID 类型。IKE ID 类型在步骤 22 的 IKE 网关配置文件中配置。

    生成的证书请求存储在指定的文件位置。证书请求的本地副本保存在本地证书存储中。如果管理员重新发出此命令,则会再次生成证书请求。

    PKCS10 证书请求存储在指定的文件和位置,您可以从中下载它并将其发送到 CA 进行注册。如果尚未指定文件名或位置,则可以使用 CLI 中的命令获取 show security pki certificate-request certificate-id <id-name> PKCS10 证书请求详细信息。可以复制命令输出并将其粘贴到 CA 服务器的 Web 前端或电子邮件中。

  8. 将证书请求提交给 CA,然后检索证书。

    管理员向 CA 提交证书请求。CA 管理员验证证书请求并为 Junos OS 设备生成新证书。Junos OS 设备管理员检索它以及 CA 证书和 CRL。

    从 CA 检索 CA 证书、设备的新本地证书和 CRL 的过程取决于所使用的 CA 配置和软件供应商。

    有关如何检索证书的详细信息,请参阅 附录 B:管理通用证书颁发机构

    注意:

    Junos OS 支持以下 CA 供应商:

    • 委托

    • 威瑞信

    • 微软

    尽管其他 CA 软件服务(如 OpenSSL)可用于生成证书,但这些证书未经 Junos OS 验证。

    Junos OS 可能会将支持扩展到符合 X.509 证书标准的其他供应商。

  9. 加载本地证书、CA 证书和 CRL。

    检索到的证书(本地证书、CA 证书和 CRL)应使用 CLI 通过 FTP 加载到 Junos OS 设备中。

    采用以下证书名称:

    • 本地证书 — certnew.cer

    • CA 证书 — CA-certnew.cer

    • CRL — certcrl.crl

    注意:

    您可以使用命令 file list验证是否已上载所有文件。

  10. 将证书从指定的外部文件加载到本地存储中。

    您还必须指定证书 ID,以便与私钥/公钥对保持正确的链接。此步骤将证书加载到 PKI 模块的 RAM 缓存存储中,检查关联的私钥,并验证签名操作。

  11. 从指定的外部文件加载 CA 证书。

    您必须指定 CA 配置文件才能将 CA 证书关联到配置的配置文件。

  12. 将 CRL 加载到本地存储中。

    允许的最大 CRL 大小为 5 MB。您必须在命令中指定关联的 CA 配置文件。

  13. 验证是否已加载所有证书。

    您可以在 CLI 界面中显示所有本地证书的详细信息。

    注意:

    您可以通过在命令行中指定证书 ID 来显示各个证书的详细信息。此外,您可以选择输出格式为简短或详细。

  14. 查看 CA 证书。

    显示所有 CA 证书或单个 CA 配置文件的 CA 证书(指定)。

  15. 查看 CRL。

    显示所有加载的 CRL 或指定单个 CA 配置文件的 CRL。

    注意:

    您可以选择输出格式为简介或详细信息以显示CRL信息;目前,这两个选项提供相同的输出。

  16. 验证本地证书和 CA 证书的证书路径。

  17. 在 IPsec VPN 中使用证书。

    注意:

    使用证书配置 VPN 的步骤类似于使用预共享密钥配置 VPN 的步骤。唯一的区别是用于 IKE(第 1 阶段)策略的身份验证方法。IPsec(第 2 阶段)配置不需要更改,因为使用证书是第 1 阶段协商的一部分。

    以下配置步骤介绍如何配置基于策略的 VPN,因为此方法最常用于拨号 VPN。

    注意:

    有关 VPN 配置的详细信息,请参阅 Junos OS 增强型服务配置指南。

    注意:

    有关 Junos OS 增强型服务应用说明的更多信息,请参阅瞻博网络知识库中的KB10182 (https://kb.juniper.net/KB10182)。

    分步过程

    要使用证书配置 IPsec VPN,请执行以下操作:

    注意:

    请参考图 1 所示的网络 以完成以下步骤。

    1. 配置安全区域,并将接口绑定到相应的区域。确保在接口或区域上启用了所有必需的主机入站服务。在此示例中,在接口或不信任区域上 ge-0/0/3 启用互联网 IKE 服务。

    2. 为隧道策略的每个区域配置通讯簿条目。

    3. 将 IKE(第 1 阶段)提议配置为使用 RSA 加密。

    4. 配置 IKE 策略,指定 RSA 提议、本地证书、CA 证书和 x.509 类型对等证书。

    5. 配置 IKE 网关设置,指定 IKE 策略和由主机名标识的动态对等方。

      此步骤取决于之前生成证书请求的方式。在此示例中,“CN=ssg5.juniper.net”是在 SSG5 请求证书期间指定的,这意味着 IKE ID 类型为主机名。

    6. 配置 IPsec(第 2 阶段)VPN 设置。

      (可选)如果需要,您还可以配置 VPN 监视器设置。在此示例中,使用标准提议集和 PFS 组 2;但是,如有必要,您可以创建其他提案。

    7. 配置隧道策略以允许远程办公室流量进入主机 LAN,反之亦然。此外,使用互联网流量的源 NAT 配置传出“信任”到“不信任”允许所有策略。请确保隧道策略高于“全部允许”策略。否则,策略查找将永远不会到达隧道策略。

    8. 配置 IPsec 流量的 TCP 最大分段大小 (tcp-mss),以消除 TCP 流量分段的可能性。此步骤可减少设备上的资源使用量。

  18. 配置安全区域并将接口分配给区域。

    入口(传入)和出口(传出)区域由路由查找中涉及的入口和出口接口确定。

    在此示例中,数据包在 上 ge-0/0/0传入,入口区域是信任区域。

    在路由查找之后,出口接口为 ,出口区域为 ge-0/0/3不信任区域。因此,隧道策略应配置为“从区域信任到区域不信任”,反之亦然。

  19. 为每个区域配置主机入站服务。

    主机入站服务适用于发往 Junos OS 设备的流量。这些设置包括但不限于 FTP、HTTP、HTTPS、IKE、ping、rlogin、RSH、SNMP、SSH、Telnet、TFTP 和 traceroute。

    此示例假定应允许来自区域信任的所有主机入站服务。出于安全原因,我们只允许在发生 IKE 协商所需的面向 Internet 的区域中不信任 IKE。但是,如果需要,也可以单独启用其他服务,例如管理或故障排除服务。

  20. 为每个区域配置通讯簿条目。

    此示例使用通讯簿对象名称 local-net 和 remote-net。对于通讯簿名称支持哪些字符存在一些限制。有关更多详细信息,请参阅完整的 Junos OS 文档。

  21. 将 IKE(第 1 阶段)提议配置为使用 RSA 加密。

    此示例使用 3DES 加密、SHA1 身份验证算法和 Diffie-Hellman 组 2 密钥。

  22. 配置 IKE 策略。

    第 1 阶段交换可以在主模式或积极模式下进行。

    主模式通常用于具有静态 IP 对等方的站点到站点 VPN。主动模式用于动态 IP 和拨号对等方。

    此示例使用 main 模式,因为即使主机名(通常用于动态隧道)在此处用于 IKE ID,双方都有静态 IP 地址。

  23. 配置 IKE 网关。

    远程 IKE 对等方可以通过 IP 地址、FQDN/U-FQDN 或 ASN1-DN(PKI 证书)来识别。

    在此示例中,对等方由 FQDN(主机名)标识。因此,网关 IKE ID 应为远程对等域名。您必须指定正确的外部接口或对等方 ID,以便在第 1 阶段设置期间正确标识 IKE 网关。

  24. 配置 IPsec 策略。

    此示例使用标准提议集,其中包括 esp-group2-3des-sha1 和建议 esp-group2- aes128-sha1 。但是,可以创建唯一的提议,然后根据需要在 IPsec 策略中指定。

  25. 使用 IKE 网关和 IPsec 策略配置 IPsec VPN。

    在此示例中, ike-vpn 必须在隧道策略中引用 VPN 名称才能创建安全关联。此外,如果需要,如果空闲时间和代理 ID 与隧道策略地址不同,则可以指定它们。

  26. 为 VPN 流量配置双向隧道策略。

    在此示例中,从主机 LAN 到远程办公室 LAN 的流量需要“从区域信任到区域不信任”隧道策略。但是,如果需要从远程 LAN 到主机 LAN 的会话,则还需要相反方向的隧道策略“从区域不信任到区域信任”。通过在与配对策略相反的方向上指定策略,VPN 将变为双向。另请注意,除了操作 permit 之外,还需要指定要使用的 IPsec 配置文件。此外,如果需要,可以在策略上启用源NAT,但这超出了本应用说明的范围。请注意,对于隧道策略,操作始终是允许的。事实上,如果您配置的策略操作为拒绝,则不会看到用于指定隧道的选项。

  27. 为互联网流量配置安全策略。

    需要安全策略来允许从区域信任到区域不信任的所有流量。

    设备使用指定的 source-nat interface,并使用出口接口的 IP 地址作为源 IP 地址,并使用源端口的随机更高端口来转换传出流量的源 IP 地址和端口。如果需要,可以创建更精细的策略来允许/拒绝某些流量。

  28. 请注意,安全策略应位于层次结构中的隧道策略之下,因为策略列表是从上到下读取的。如果此策略高于隧道策略,则流量将始终与此策略匹配,并且不会继续到下一个策略。因此,不会加密任何用户流量。要将隧道策略移到策略 any-permit 上方,请使用如下所示的 insert policy 命令:

  29. tcp-mss配置隧道中的 TCP 流量设置。

    TCP-MSS 作为 TCP 3 向握手的一部分进行协商。它限制 TCP 分段的最大大小,以适应网络上的最大传输单元 (MTU) 限制。这对于 VPN 流量非常重要,因为 IPsec 封装开销以及 IP 和帧开销可能会导致生成的 ESP 数据包超过物理接口的 MTU,从而导致分段。分段会增加带宽和设备资源的使用量,应始终最好避免。

    对于 MTU 为 1500 或更高的大多数基于以太网的网络,建议用于 tcp-mss 的值为 1350。如果路径中任何设备的 MTU 值较低,或者有任何增加的开销(如 PPP、帧中继等),则可能需要更改此值。作为一般规则,您可能需要试验不同的 tcp-mss 值以获得最佳性能。

  30. 此步骤提供有关 SSG 设备配置的信息。由于此示例的重点是 Junos OS 配置和故障排除,因此此步骤将简要介绍 SSG 设备配置。

    为了显示 图 1 中的配置设置,SSG5 器件提供了相关配置的示例,仅供参考。

    但是,有关为瞻博网络防火墙/VPN 产品配置基于策略的 VPN 的概念,请参阅概念和示例 (C&E) 指南。有关更多信息,请参阅 https://www.juniper.net/documentation/software/screenos/ 上提供的概念和示例 ScreenOS 参考指南

    以下示例是 SSG5 配置的相关示例:

验证

IKE 和 IPsec 的验证和故障排除与使用预共享密钥的站点到站点 VPN 类似,只是将证书用于 IKE 识别、身份验证和加密方法。

有关详细信息,请参阅以下内容:

使用以下步骤验证 IKE 和 IPsec 配置:

确认 IKE 第 1 阶段状态

目的

通过检查任何 IKE 第 1 阶段安全关联状态来确认 VPN 状态。

与 IPsec 隧道相关的 PKI 在第 1 阶段设置期间形成。第 1 阶段的完成表明 PKI 已成功。

行动

意义

输出指示

  • 远程对等方为 2.2.2.2 ,状态为 UP,表示第 1 阶段建立关联成功。

  • 远程对等方 IKE ID、IKE 策略和外部接口均正确。

  • Index 20 是每个 IKE 安全关联的唯一值。可以使用此输出详细信息获取有关每个安全关联的更多详细信息。请参阅 获取有关各个安全关联的详细信息

不正确的输出将指示:

  • 远程对等方状态为 Down

  • 没有 IKE 安全关联 。

  • 存在 IKE 策略参数,例如错误的模式类型(Aggr 或 Main)、PKI 问题或第 1 阶段提议(所有参数都必须在两个对等方上匹配)。有关详细信息,请参阅 对 IKE、PKI 和 IPsec 问题进行故障排除

  • 外部接口无法接收 IKE 数据包。检查配置中是否存在与 PKI 相关的问题,或检查 kmd 日志中是否有任何其他错误,或运行跟踪选项以查找不匹配项。有关详细信息,请参阅 对 IKE、PKI 和 IPsec 问题进行故障排除

获取有关各个安全关联的详细信息

目的

获取有关各个 IKE 安全关联 (SA) 的详细信息。

行动

意义

输出显示各个 IKE SA 的详细信息,例如角色(发起方或响应方)、状态、交换类型、身份验证方法、加密算法、流量统计信息、第 2 阶段协商状态等。

您可以使用输出数据执行以下操作:

  • 了解 IKE SA 的作用。当对等方具有响应方角色时,故障排除会更容易。

  • 获取流量统计信息以验证两个方向的流量。

  • 获取已创建或正在进行的 IPsec 安全关联数。

  • 获取任何已完成的第 2 阶段协商的状态。

确认 IPsec 第 2 阶段状态

目的

查看 IPsec(第 2 阶段)安全关联。

第 2 阶段的发生与非基于证书的 VPN 相同。

确认 IKE 第 1 阶段后,查看 IPsec(第 2 阶段)安全关联。

行动

意义

输出指示

  • 有一个已配置的 IPsec SA 对可用。端口号 500 指示使用的是标准 IKE 端口。否则,它是网络地址转换遍历 (NAT-T)、4500 或随机高端口。

  • 安全参数索引 (SPI) 用于两个方向。SA 的生存期或使用限制以秒或千字节表示。在输出中, 1676/ unlim 指示阶段 2 生存期设置为 1676 秒后过期,并且没有指定的生存期大小。

  • ID 数字显示每个 IPsec SA 的唯一索引值。

  • 列中的Mon连字符 (-) 表示未为此 SA 启用 VPN 监控。

  • 虚拟系统 (vsys) 为零,这是默认值。

注意:

第 2 阶段生存期可以不同于第 1 阶段生存期,因为在 VPN 启动后,第 2 阶段不依赖于第 1 阶段。

注意:

有关 VPN 监控的信息,请参阅 https://www.juniper.net/documentation/ 上提供的 Junos OS 完整文档。

显示 IPsec 安全关联详细信息

目的

显示由索引号标识的各个 IPsec SA 详细信息。

行动

意义

输出显示本地身份和远程身份。

请注意,代理 ID 不匹配可能会导致第 2 阶段完成失败。代理 ID 派生自隧道策略(对于基于策略的 VPN)。本地地址和远程地址派生自通讯簿条目,服务派生自为策略配置的应用程序。

如果第 2 阶段由于代理 ID 不匹配而失败,请验证策略中配置了哪些通讯簿条目,并确保发送了正确的地址。还要确保端口匹配。仔细检查服务以确保远程和本地服务器的端口匹配。

注意:

如果在隧道策略中为源地址、目标地址或应用程序配置了多个对象,则该参数生成的代理 ID 将更改为零。

例如,假设隧道策略出现以下场景:

  • 本地地址 10.10.10.0/24 和 10.10.20.0/24

  • 远程地址 192.168.168.0/24

  • 应用程序作为 junos-http

生成的代理 ID 为本地 0.0.0.0/0、远程 192.168.168.0/24、服务 80。

如果未为第二个子网配置远程对等方,则生成的代理 ID 可能会影响互操作性。此外,如果您使用的是第三方供应商的应用程序,则可能需要手动输入代理 ID 进行匹配。

如果 IPsec 无法完成,请检查 kmd 日志或设置跟踪选项。有关详细信息,请参阅 对 IKE、PKI 和 IPsec 问题进行故障排除

检查 IPsec SA 统计信息

目的

检查 IPsec SA 的统计信息和错误。

要进行故障排除,请检查封装安全有效负载/身份验证标头 (ESP/AH) 计数器中是否存在特定 IPsec SA 的任何错误。

行动

意义

输出中的错误值为零表示正常情况。

我们建议多次运行此命令,以观察 VPN 中的任何数据包丢失问题。此命令的输出还显示加密和解密数据包计数器、错误计数器等的统计信息。

您必须启用安全流跟踪选项来调查哪些 ESP 数据包遇到错误及其原因。有关详细信息,请参阅 对 IKE、PKI 和 IPsec 问题进行故障排除

测试通过 VPN 的流量

目的

在第 1 阶段和第 2 阶段成功完成后,测试通过 VPN 的流量。您可以使用命令 ping 测试流量。您可以从本地主机 ping 到远程主机。您也可以从 Junos OS 设备本身发起 ping。

此示例说明如何发起从 Junos OS 设备到远程主机的 ping 请求。请注意,从 Junos OS 设备启动 ping 时,必须指定源接口,以确保进行正确的路由查找,并在策略查找中引用相应的区域。

在此示例中,接口与本地主机位于同一安全区域中, ge-0/0/0.0 必须在 ping 请求中指定,以便策略查找可以从区域信任到区域不信任。

行动

确认连接

目的

确认远程主机与本地主机之间的连接。

行动

意义

您可以使用从远程主机到本地主机的命令来 ping 确认端到端连接。在此示例中,命令是从 SSG5 设备启动的。

端到端连接失败可能表示路由、策略、终端主机或 ESP 数据包的加密/解密存在问题。要验证失败的确切原因,请执行以下操作:

  • 检查 IPsec 统计信息,了解有关 检查 IPsec SA 统计信息 中所述的错误的详细信息。

  • 使用与终端主机位于同一子网上的主机的命令确认 ping 终端主机连接。如果其他主机可以访问最终主机,则可以假定问题不与终端主机有关。

  • 启用安全流跟踪选项以对路由和策略相关问题进行故障排除。

    本示例未介绍详细信息,但您可以在 https://kb.juniper.net/ 获取的 Junos OS VPN 相关应用说明中的更多详细信息。

IKE、PKI 和 IPsec 问题疑难解答

基本的故障排除步骤如下:

  1. 识别和隔离问题。

  2. 调试问题。

开始故障排除的常用方法是从 OSI 层的最低层开始,然后沿着 OSI 堆栈向上工作,以确认发生故障的层。对 IKE、PKI 和 IPsec 进行故障排除的步骤如下:

  • 在物理和数据链路级别确认互联网链路的物理连接。

  • 确认 Junos OS 设备已连接到互联网下一跃点并连接到远程 IKE 对等方。

  • 确认 IKE 第 1 阶段完成。

  • 如果 IKE 第 1 阶段成功完成,请确认 IKE 第 2 阶段完成。

  • 确认通过 VPN 的流量(如果 VPN 已启动并处于活动状态)。

Junos OS 包含跟踪选项功能。使用此功能,您可以启用 traceoption 标志以将数据从 traceoption 写入日志文件,日志文件可以预先确定或手动配置并存储在闪存中。即使在系统重新启动后,这些跟踪日志也可以保留。在实施跟踪选项之前,请检查可用的闪存。

您可以在配置模式下启用跟踪选项功能,并提交配置以使用跟踪选项功能。同样,要禁用跟踪选项,您必须在配置模式下停用跟踪选项并提交配置。

检查设备上的可用磁盘空间

问题

检查设备文件系统中可用磁盘空间的统计信息。

解决 方案

代表 /dev/ad0s1a 板载闪存,目前容量为 35%。

注意:

您可以在 J-Web 界面的“系统存储”选项下查看可用的 系统存储

注意:

您可以启用跟踪选项以将跟踪数据记录到指定的文件名或默认日志文件中以接收跟踪操作的输出。

traceoptions 的输出位于 /var/log/kmd 中。

检查日志文件以验证不同的方案,并将日志文件上传到 FTP

问题

查看日志文件以检查安全 IKE 调试消息、安全流程调试以及记录到 syslog 的状态。

解决 方案

注意:

您可以使用命令 show log 查看 /var/log 目录中所有日志的列表。

也可以使用 file copy 命令将日志文件上载到 FTP 服务器。

ftp://10.10.10.10/kmd.log 100% of 35 kB 12 MBps

启用 IKE 跟踪选项以查看 IKE 上的消息

问题

若要查看 IKE 或 IPsec 的成功或失败消息,可以使用命令查看 show log kmd 密钥管理进程 (kmd) 日志。由于 kmd 日志显示一些常规消息,因此通过启用 IKE 和 PKI 跟踪选项来获取其他详细信息可能会很有用。

注意:

通常,最佳做法是对具有响应方角色的对等方进行故障排除。您必须从发起方和响应方获取跟踪输出,以了解故障原因。

配置 IKE 跟踪选项。

解决 方案

注意:

如果未为 <filename> 字段指定文件名,则所有 IKE 跟踪选项都将写入 kmd 日志。

必须至少指定一个标志选项才能将跟踪数据写入日志。例如:

  • file size — 每个跟踪文件的最大大小,以字节为单位。例如,1m 或 1000000 可以生成 1 MB 的最大文件大小。

  • files — 要在闪存中生成和存储的跟踪文件的最大数量。

注意:

必须提交配置才能启动跟踪。

启用 PKI 跟踪选项以查看 IPsec 上的邮件

问题

启用 PKI 跟踪选项以确定 IKE 故障是与证书有关还是与非 PKI 问题有关。

解决 方案

设置 IKE 和 PKI 跟踪选项以解决证书的 IKE 设置问题

问题

配置 IKE 和 PKI 跟踪选项的建议设置。

注意:

IKE 和 PKI 跟踪选项使用相同的参数,但所有与 PKI 相关的跟踪的默认文件名都可以在 pkid 日志中找到。

解决 方案

分析第 1 阶段成功消息

问题

了解 IKE 第 1 阶段和第 2 阶段条件成功的命令输出 show log kmd

解决 方案

示例输出指示:

  • 1.1.1.2 — 本地地址。

  • ssg5.juniper.net — 远程对等方(带有 FQDN 的主机名)。

  • udp: 500 — 表示未协商 NAT-T。

  • Phase 1 [responder] done — 指示第 1 阶段状态以及角色(发起方或响应方)。

  • Phase 2 [responder] done — 使用代理 ID 信息指示第 1 阶段状态。

    还可以使用 确认 IKE 阶段 1 状态中提到的验证命令确认 IPsec SA 状态。

分析第 1 阶段失败消息(提议不匹配)

问题

了解命令的 show log kmd 输出,其中 IKE 第 1 阶段条件为故障。此过程有助于确定 VPN 未建立第 1 阶段的原因。

解决 方案

示例输出表明

  • 1.1.1.2 — 是本地地址

  • ssg5.juniper.net — 指示远程对等方(带有 FQDN 的主机名)

  • udp: 500 — 表示未协商 NAT-T。

  • Phase-1 [responder] failed with error (No proposal chosen) — 指示由于提议不匹配而导致第 1 阶段失败。

要解决此问题,请确保响应方和发起方上的 IKE 网关第 1 阶段建议的参数匹配。还要确认 VPN 存在隧道策略。

分析第 1 阶段失败消息(身份验证失败)

问题

了解 IKE 第 1 阶段条件失败时的命令输出 show log kmd 。这有助于确定 VPN 未建立第 1 阶段的原因。

解决 方案

示例输出表明

  • 1.1.1.2 — 是本地地址

  • 2.2.2.2 — 是远程对等方

  • Phase 1 [responder] failed with error (Authentication failed) — 指示由于响应方无法识别来自有效网关对等方的传入请求而导致的第 1 阶段失败。对于具有 PKI 证书的 IKE,此故障通常表示指定或输入了不正确的 IKE ID 类型。

要解决此问题,请根据以下内容确认在本地对等方上指定了正确的对等方 IKE ID 类型:

  • 远程对等方证书的生成方式

  • 收到的远程对等方证书中的使用者替代名称或 DN 信息

分析第 1 阶段故障消息(超时错误)

问题

了解 IKE 第 1 阶段条件失败时的命令输出 show log kmd

解决 方案

示例输出指示:

  • 1.1.1.2 — 是本地地址

  • 2.2.2.2 — 是远程对等方

  • Phase 1 [responder] failed with error(Timeout) — 指示第 1 阶段故障。

    此错误表示 IKE 数据包在前往远程对等方的途中丢失,或者远程对等方出现延迟或无响应。

由于此超时错误是等待来自 PKI 守护程序的响应的结果,因此必须查看 PKI 跟踪选项输出以查看 PKI 是否存在问题。

分析第 2 阶段故障消息

问题

了解 IKE 第 2 阶段条件失败时的命令输出 show log kmd

解决 方案

示例输出表明

  • 1.1.1.2 — 是本地地址。

  • ssg5.juniper.net — 是远程对等方(IKE ID 类型主机名与 FQDN)。

  • Phase 1 [responder] done — 表示第 1 阶段成功。

  • Failed to match the peer proxy ids — 指示收到不正确的代理 ID。在前面的示例中,收到的两个代理 ID 是 192.168.168.0/24(远程)和 10.10.20.0/24(本地)(对于 service=any)。根据此示例中给出的配置,预期的本地地址为 10.10.10.0/24。这说明本地对等方配置不匹配,导致代理 ID 匹配失败。

    若要解决此问题,请更正通讯簿条目或在任一对等方上配置代理 ID,使其与另一个对等方匹配。

    输出还指示失败的原因为 No proposal chosen。但是,在这种情况下,您还会看到消息 Failed to match the peer proxy ids

分析第 2 阶段故障消息

问题

了解 IKE 第 2 阶段条件失败时的命令输出 show log kmd

解决 方案

示例输出指示:

  • 1.1.1.2 — 是本地地址。

  • fqdn(udp:500,[0..15]=ssg5.juniper.net — 是远程对等方。

  • Phase 1 [responder] done — 表示第 1 阶段成功。

  • Error = No proposal chosen — 表示在第 2 阶段未选择任何提案。此问题是由于两个对等方之间的提议不匹配造成的。

    若要解决此问题,请确认第 2 阶段建议在两个对等方上匹配。

与 IKE 和 PKI 相关的常见问题

问题

排查与 IKE 和 PKI 相关的常见问题。

启用 traceoptions 功能可帮助您收集有关调试问题的更多信息,而不是从普通日志条目中获取的信息。您可以使用跟踪选项日志来了解 IKE 或 PKI 失败的原因。

有关 IKE 和 PKI 问题以及跟踪选项输出的详细分析,请联系瞻博网络 JTAC 支持或访问 https://www.juniper.net/support 的瞻博网络支持网站以获取进一步帮助。

解决 方案

对 IKE 和 PKI 相关问题进行故障排除的方法:

  • 确保时钟、日期、时区和夏令时设置正确。使用 NTP 保持时钟准确。

  • 确保在 DN 的“C=”(国家/地区)字段中使用两个字母的国家/地区代码。

    例如:使用“US”而不是“USA”或“USA”。某些 CA 要求填充 DN 的“国家/地区”字段,允许您仅使用两个字母的值输入国家/地区代码值。

  • 确保如果对等证书使用多个 OU=CN= 字段,则使用可分辨名称与容器方法(必须维护序列并且区分大小写)。

  • 如果证书尚未生效,请检查系统时钟,如果需要,请调整系统时区,或者只在时钟中添加一天以进行快速测试。

  • 确保配置了匹配的 IKE ID 类型和值。

  • PKI 可能会由于吊销检查失败而失败。要确认这一点,请暂时禁用吊销检查,并查看 IKE 阶段 1 是否能够完成。

    要禁用吊销检查,请在配置模式下使用以下命令:

    set security pki ca-profile <ca-profile> revocation-check disable