IBM Cloud Docs
传输中的加密-保护文件共享与虚拟服务器实例之间的安装连接

传输中的加密-保护文件共享与虚拟服务器实例之间的安装连接

您可以使用因特网安全协议 (IPsec) 安全概要文件和 X.509 证书在虚拟服务器实例与存储系统之间建立加密安装连接。 通过在传输中启用加密,您可以为数据创建安全的端到端加密。

如果选择使用“传输中的加密”,那么需要在性能与增强的安全性之间平衡您的需求。 由于需要对端点上的数据进行加密和解密,因此对传输中的数据进行加密可能会对性能产生一些影响。 影响取决于工作负载特征。 在启用 EIT 时,执行同步写入或绕过 VSI 高速缓存 (例如数据库) 的工作负载可能会对性能产生重大影响。 要确定 EIT 的性能影响,请在使用和不使用 EIT 的情况下对工作负载进行基准测试。

即使没有 EIT,数据也会通过安全的数据中心网络移动。 有关网络安全性的更多信息,请参阅 VPC 中的安全性使用基于上下文的限制保护虚拟私有云(VPC)基础架构服务

File Storage for VPC只有在启用传输中加密时才会被视为金融服务验证服务。 如需了解更多信息,请参阅 什么是金融服务验证服务

概述

通过此功能,您可以在使用具有基于安全组的访问控制方式的文件共享以及通过虚拟网络接口安装目标时启用数据的安全端到端加密。 当连接了此类安装目标并且在虚拟服务器实例上安装了共享时,虚拟网络接口将检查安全组策略以确保只有授权实例才能与共享通信。 授权虚拟服务器实例与文件共享之间的流量可以由客户机封装 IPsec。

IPsec 是一组协议,它们共同设置设备之间的加密连接。 它有助于确保通过公用网络发送的数据安全。 IPsec 对 IP 包进行加密,并对包来自的源进行认证。 要在虚拟服务器实例上配置 IPsec,可以使用 strongSwan,这是一个基于 IPsec 的开源 VPN 解决方案。 有关 strongSwan 工作原理的更多信息,请参阅 Introduction to strongSwanIPsec Protocol

IPsec 连接要求您具有用于认证的 X.509 证书。 X.509 是公用密钥证书的国际标准格式,数字文档将密钥对与身份 (例如 Web 站点,个人或组织) 安全地关联。 元数据服务用于创建证书。

证书签名请求 (CSR) 是用户申请证书时转发到认证中心 (CA) 的编码文本块。 将在要安装证书的服务器上创建 CSR。 CSR 包含诸如域名,组织名称,位置和国家或地区之类的信息。 该请求还包含与生成的证书相关联的公用密钥以及专用密钥。 创建证书时,CA 仅使用公用密钥。 必须保存专用密钥并将其保密。 由于专用密钥是具有公用密钥的密钥对的一部分,并且如果专用密钥丢失,那么证书不起作用。

Bare Metal Servers for VPC上不支持传输中的加密。

配置传输中的加密

要使用该功能,需要满足以下需求:

如果要将文件共享连接到区域中不同 VPC 中运行的实例,那么可以创建多个安装目标。 您可以为每个 VPC 创建一个挂载目标。

配置主机并获取证书

IBM Cloud® 文件服务提供 安装帮助程序实用程序,以自动执行在虚拟服务器实例上执行的以下任务。

  1. 配置虚拟服务器实例以访问文件共享时,必须为安装目标地址配置 IPsec 传输方式安装 并配置 strongSwan 客户机。

  2. 获取认证所需的 X.509 证书。 无法在多个区域中使用相同的证书。

    1. 以下命令使用 openssl 生成 证书签名请求 (CSR) 和 RSA 密钥对

      openssl req -sha256 -newkey rsa:4096 -subj '/C=US' -out ./sslcert.csr -keyout file.key -nodes
      

      运行该命令时,请将国家或地区代码 US 替换为 '/C=US' 中的两位数国家或地区代码。

      OpenSSL 是一个开源命令行工具包,可用于处理 证书、证书签名请求(CSR)和加密密钥。X.509 有关更多信息,请参阅 OpenSSL 文档

      如果要使用其他软件来创建 CSR,那么可能会提示您输入有关位置的信息,例如国家或地区代码 (C),状态 (ST),位置 (L),组织名称 (O) 和组织单元 (OU)。 可以使用这些命名属性中的任何一个。 将拒绝任何其他命名属性 (例如公共名称)。 指定了“通用名”的 CSR 会被拒绝,因为当您提出 API 请求时,系统会将实例 ID 值应用于实例身份证书的主题“通用名”。 具有扩展的 CSR 也将被拒绝。

    2. 在使用以下命令对元数据服务进行 API 调用之前,请先格式化 csr。

      awk 'NF {sub(/\r/, ""); printf "%s\\n",$0;}' sslcert.csr
      
  3. 然后,使用 元数据服务 创建客户证书。

    1. 发出 PUT /instance_identity/v1/token API 请求以从元数据服务获取用于后续调用的令牌。 有关更多信息,请参阅 获取实例身份访问令牌
    2. 提出 POST /instance_identity/v1/certificates 请求,并在 HTTP 授权标头中指定实例身份令牌,以及证书签名请求(作为 csr 属性)和有效期(作为 expires_in 属性)。 此调用将返回新的客户机证书和中间证书链,允许客户机通过在传输中使用 IPsec 加密来访问文件共享。 有关更多信息,请参阅 使用实例身份访问令牌生成实例身份证书。 复制输出,包括 -----BEGIN CERTIFICATE----------END CERTIFICATE----- 行,并将其保存到一个具有可识别名称的文件中,如 ca-cert.pem。 确保创建的文件扩展名为 .pem
  4. 复制 /etc/ipsec.d/cacerts 目录中的实例身份证书。

    sudo cp /tmp/ca-cert.pem /etc/ipsec.d/cacerts
    
  5. 启动 strongSwan 客户端,建立安全连接。

  6. 挂载文件共享。