简体中文版经机器翻译而成,仅供参考。如与英语版出现任何冲突,应以英语版为准。

通过线缆加密配置 IP 安全性( IP security , IPsec )

提供者 netapp-barbe

从 ONTAP 9.8 开始, ONTAP 在传输模式下使用 IPsec 协议,以确保数据持续安全和加密,即使在传输过程中也是如此。IPsec 为所有 IP 流量提供数据加密,包括 NFS , iSCSI 和 SMB 协议。IPsec 为 iSCSI 流量提供了唯一的传输加密选项。

从 ONTAP 9.10.1 开始,您可以使用预共享密钥( PSK )或证书通过 IPsec 进行身份验证。以前, IPsec 仅支持 PSK 。

配置 IPsec 后,客户端和 ONTAP 之间的网络流量将通过预防措施得到保护,以防止重放和中间人( MIM )攻击。

对于 NetApp SnapMirror 和集群对等流量加密,仍然建议使用集群对等加密( Cluster peering encryption , CPE )和传输层安全( Transport Layer Security , TLS )而不是通过 IPsec 进行,以便通过线缆进行安全传输。这是因为 TLS 的性能优于 IPsec 。

在集群上启用了 IPsec 功能时,网络需要使用安全策略数据库( SPD )条目来匹配要保护的流量,并指定保护详细信息(例如密码套件和身份验证方法),然后才能使流量流动。每个客户端上也需要相应的 SPD 条目。对于 PSK 和认证身份验证方法,都需要 SPD 要求。

在集群上启用 IPsec

您可以在集群上启用 IPsec ,以确保数据持续安全和加密,即使在传输期间也是如此。

步骤
  1. 发现是否已启用 IPsec :

    sIPsec 安全配置 show

    如果结果包括 IPsec Enabled : false ,请继续执行下一步。

  2. 启用 IPsec :

    sIPsec 安全配置 modify -is-enabled true

  3. 再次运行 discovery 命令:

    sIPsec 安全配置 show

    结果现在包括 IPsec Enabled : true

准备通过证书身份验证创建 IPsec 策略

如果您仅使用预共享密钥 PSK 进行身份验证,而不使用证书身份验证,则可以跳过此步骤。

在创建使用证书进行身份验证的 IPsec 策略之前,必须确保满足以下前提条件:

  • ONTAP 和客户端都必须安装另一方的 CA 证书,以便最终实体( ONTAP 或客户端)证书可由双方进行验证

  • 系统会为参与此策略的 ONTAP LIF 安装证书

注 ONTAP LIF 可以共享证书。不需要在证书和 LIF 之间进行一对一映射。
步骤
  1. 您必须将相互身份验证期间使用的所有 CA 证书(包括 ONTAP 端和客户端 CA )安装到 ONTAP 证书管理中,除非已安装此证书(如 ONTAP 自签名根 CA )。* 示例命令 * cluster :: > security certificate install -vserver svm_name -type server-ca -cert -name my_ca_cert

  2. 要确保在身份验证期间安装的 CA 位于 ONTAP CA 搜索路径中,请使用 "security IPsec ca-certificate add" 命令将 证书管理 CA 添加到 IPsec 模块中。* 示例命令 * cluster :: > security ipsec ca-certificate add -vserver svm_name -ca-certs my_ca_cert

  3. 创建并安装一个证书以供 ONTAP LIF 使用。此证书的颁发者 CA 必须已安装到 ONTAP 并添加到 IPsec 中。* 示例命令 * cluster :: > security certificate install -vserver svm_name -type server -cert-name my_nfs_server_cert

有关 ONTAP 中证书的详细信息,请参见 ONTAP 9 文档中的 security certificate 命令。

定义安全策略数据库( SPD )

在允许流量在网络上流动之前, IPsec 需要 SPD 条目。无论您使用的是 PSk 还是证书进行身份验证,都是如此。

步骤
  1. 使用 security ipsec policy create 命令执行以下操作:

    1. 选择要参与 ONTAP 传输的 IPsec IP 地址或 IP 地址子网。

    2. 选择要连接到 ONTAP IP 地址的客户端 IP 地址。

      注 客户端必须使用预共享密钥( psk )支持 Internet 密钥交换版本 2 ( IKEv2 )。
    3. 可选。选择要保护的上层协议( UDP , TCP , ICMP 等),本地端口号和远程端口号。相应的参数分别为 protocolslocal-portsremote-ports

      跳过此步骤可保护 ONTAP IP 地址和客户端 IP 地址之间的所有流量。默认情况下,保护所有流量。

    4. 为所需的身份验证方法输入 auth-method 参数的 psk 或 pki 。

      1. 如果输入了一个 psk ,则在完成所有其他可选参数后,按 <ENTER> 以提示输入并验证预共享密钥。

      2. 如果输入 PKI ,则还需要输入 cert-namelocal-identityremot-identity 参数。如果远程端证书的身份未知或需要多个客户端身份,请输入特殊词 anything

security ipsec policy create -vserver <vs1> -name <test34> -local-ip-subnets <192.168.134.34/32> -remote-ip-subnets <192.168.134.44/32>
Enter the preshared key for IPsec Policy _test34_ on Vserver _vs1_:
security ipsec policy create -vserver vs1 -name test34 -local-ip-subnets 192.168.134.34/32 -remote-ip-subnets 192.168.134.44/32 -local-ports 2049 -protocols tcp -auth-method PKI -cert-name my_nfs_server_cert -local-identity CN=netapp.ipsec.lif1.vs0 -remote-identity ANYTHING

只有在 ONTAP 和客户端设置了匹配的 IPsec 策略,并且两端都具有身份验证凭据( PSk 或证书)之后, IP 流量才能在客户端和服务器之间流动。有关详细信息,请参见客户端的 IPsec 配置。

使用 IPsec 身份

对于预共享密钥身份验证方法,除非 IPsec 客户端(如 LibresWAN )需要,否则身份是可选的。对于 PKI/ 证书身份验证方法,本地和远程身份都是必需的。这些标识用于指定在每一方的证书中认证的身份以及在验证过程中使用的身份。如果远程身份未知或可能具有多种不同的身份,请使用特殊身份 anything

在 ONTAP 中,标识是通过修改 SPD 条目或在创建 SPD 策略期间指定的。SPD 可以是 IP 地址或字符串格式的标识名称。

要修改现有 SPD 的身份设置,请使用以下命令:

sIPsec 安全策略修改

sIPsec 安全策略 modify -vserver vs1 -name test34 -local-identity 192.168.134.34 -remote-identity client.fooboo.com

IPsec 多客户端配置

如果少数客户端需要利用 IPsec ,则为每个客户端使用一个 SPD 条目就足以满足要求。但是,当数百甚至数千个客户端需要利用 IPsec 时, NetApp 建议使用 IPsec 多客户端配置。

ONTAP 支持将多个网络中的多个客户端连接到启用了 IPsec 的单个 SVM IP 地址。您可以使用以下方法之一完成此操作:

  • * 子网配置 *

    要允许特定子网上的所有客户端(例如 192.168.134.0/24 )使用单个 SPD 策略条目连接到单个 SVM IP 地址,您必须以子网形式指定 remot-ip-subnets 。此外,您还必须使用正确的客户端标识指定 remot-identity 字段。

注 在子网配置中使用单个策略条目时,该子网中的 IPsec 客户端将共享 IPsec 身份和预共享密钥( PSk )。但是,对于证书身份验证,情况并非如此。使用证书时,每个客户端都可以使用自己的唯一证书或共享证书进行身份验证。ONTAP IPsec 会根据安装在其本地信任存储上的 CA 检查证书的有效性。ONTAP 还支持证书撤消列表( Certificate Revocation List , CRL )检查。
  • * 允许所有客户端配置 *

    要允许任何客户端(无论其源 IP 地址如何)连接到启用了 SVM IPsec 的 IP 地址,请在指定 remote-ip-subnets 字段时使用 0.0.0.0/0 通配符。

    此外,您还必须使用正确的客户端标识指定 remot-identity 字段。对于证书身份验证,您可以输入 anything

    此外,如果使用 0.0.0.0/0 通配符,则必须配置要使用的特定本地或远程端口号。例如, NFS 端口 2049

    步骤
    1. 使用以下命令之一为多个客户端配置 IPsec :

      1. 如果使用 * 子网配置 * 支持多个 IPsec 客户端:

        sIPsec 安全策略 create -vserver vserver_name -name policy_name -local-ip-subnets ipsec_ip_address/32 -remote-ip-subnets ip_address/subnet -local-identity local_id -remote-identity remote_id

      sIPsec 安全策略 create -vserver vs1 -name subnet134 -local-ip-subnets 192.168.134.344/32 -remote-ip-subnets 192.168.134.0/24 _ -local-identity _ontap_side _identity -remote-identity client_side identity

      1. 如果使用 * 允许所有客户端配置 * 来支持多个 IPsec 客户端:

        sIPsec 安全策略 create -vserver vserver_name -name policy_name -local-ip-subnets ipsec_ip_address/32 -remote-ip-subnets 0.0.0.0/0 -local-ports port_number -local-identity local_id -remote-identity remote_identity_id

    sIPsec 安全策略 create -vserver vs1 -name test35 -local-ip-subnets ipsec_ip_address/32 -remote-ip-subnets 0.0.0.0/0 -local-ports 2049 -local-identity ontap_side _identity -remote-identity client_side identity

IPsec 统计信息

通过协商,可以在 ONTAP SVM IP 地址和客户端 IP 地址之间建立一个称为 "ike 安全关联( SA ) " 的安全通道。IPsec SAS 安装在两个端点上,用于执行实际的数据加密和解密工作。

您可以使用 statistics 命令来检查 IPsec SAS 和 ike SAS 的状态。

IKESA 命令示例:

sIPsec Security show-ikesasa -node hosting node_name_for_SVM_IP

IPsec SA 命令和输出示例:

sipsec ecurity show-ipsecsa -node hosting node_name_for_SVM_IP

cluster1::> security ipsec show-ikesa -node cluster1-node1
            Policy Local           Remote
Vserver     Name   Address         Address         Initator-SPI     State
----------- ------ --------------- --------------- ---------------- -----------
vs1         test34
                   192.168.134.34  192.168.134.44  c764f9ee020cec69 ESTABLISHED

IPsec SA 命令和输出示例:

security ipsec show-ipsecsa -node hosting_node_name_for_svm_ip

cluster1::> security ipsec show-ipsecsa -node cluster1-node1
            Policy  Local           Remote          Inbound  Outbound
Vserver     Name    Address         Address         SPI      SPI      State
----------- ------- --------------- --------------- -------- -------- ---------
vs1         test34
                    192.168.134.34  192.168.134.44  c4c5b3d6 c2515559 INSTALLED