6.6. 启用 IPsec 加密


作为集群管理员,您可以在集群和外部 IPsec 端点之间启用 pod 到 pod 的 IPsec 加密。

您可以使用以下模式之一配置 IPsec:

  • Full :pod 到 pod 和外部流量的加密
  • External :对外部流量进行加密
注意

如果以 Full 模式配置 IPsec,还必须完成"为外部流量配置 IPsec 加密"过程。

如果您以 Full 模式启用 IPsec,作为集群管理员,您可以通过将 full 模式添加到 network. operator.openshift.io 来配置模式的选项。full 模式支持 encapsulation 参数。您可以使用此参数为 IPsec 流量配置网络地址转换(NAT-T) 封装。encapsulation 参数支持以下值:

  • Auto 是默认值,当 libreswan 检测到节点内流量中的网络地址转换(NAT)数据包时启用 UDP 封装。
  • Always 为节点中所有流量类型启用 UDP 封装。这个选项不依赖于 libreswan 来检测节点中的 NAT 数据包。

先决条件

  • 安装 OpenShift CLI (oc) 。
  • 以具有 cluster-admin 权限的用户身份登录集群。
  • 您已将集群 MTU 的大小减少为 46 字节,以允许 IPsec ESP 标头的开销。

流程

  1. 要启用 IPsec 加密,请输入以下命令:

    $ oc patch networks.operator.openshift.io cluster --type=merge -p \
      '{
      "spec":{
        "defaultNetwork":{
          "ovnKubernetesConfig":{
            "ipsecConfig":{
              "mode":"<mode"> 
    1
    
            }}}}}'
    Copy to Clipboard Toggle word wrap
    1
    指定 External 以加密到外部主机的流量,或者指定 Full 来加密 pod 到 pod 流量,以及可选的到外部主机的流量。默认情况下禁用 IPsec。

    Full 模式启用 IPsec 的配置示例,并将 encapsulation 设置为 Always

    $ oc patch networks.operator.openshift.io cluster --type=merge -p \
      '{
      "spec":{
        "defaultNetwork":{
          "ovnKubernetesConfig":{
            "ipsecConfig":{
              "mode":"Full",
              "full":{
                "encapsulation": "Always"
              }}}}}}'
    Copy to Clipboard Toggle word wrap

  2. 完成"为外部流量配置 IPsec 加密"流程,使用 IPsec 加密外部流量。

验证

  1. 要查找 OVN-Kubernetes data plane pod 的名称,请输入以下命令:

    $ oc get pods -n openshift-ovn-kubernetes -l=app=ovnkube-node
    Copy to Clipboard Toggle word wrap

    输出示例

    ovnkube-node-5xqbf                       8/8     Running   0              28m
    ovnkube-node-6mwcx                       8/8     Running   0              29m
    ovnkube-node-ck5fr                       8/8     Running   0              31m
    ovnkube-node-fr4ld                       8/8     Running   0              26m
    ovnkube-node-wgs4l                       8/8     Running   0              33m
    ovnkube-node-zfvcl                       8/8     Running   0              34m
    ...
    Copy to Clipboard Toggle word wrap

  2. 运行以下命令,验证您在集群中启用了 IPsec:

    注意

    作为集群管理员,当您以 Full 模式配置 IPsec 时,您可以验证您是否在集群中的 pod 之间启用了 IPsec。此步骤不会验证 IPsec 是否在集群和外部主机间工作。

    $ oc -n openshift-ovn-kubernetes rsh ovnkube-node-<XXXXX> ovn-nbctl --no-leader-only get nb_global . ipsec 
    1
    Copy to Clipboard Toggle word wrap

    其中: & lt;XXXXX > 指定上一步中 pod 的随机字符序列。

    命令的成功输出显示状态为 true

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat