首页 加密服务 最佳实践 如何配置可通过KMS硬件密钥管理实例连接的密码机集群

如何配置可通过KMS硬件密钥管理实例连接的密码机集群

密钥管理服务KMS(Key Management Service)的硬件密钥管理实例通过连接您的加密服务密码机集群,将密钥存储在密码机内,为业务提供统一的密钥管理和密码运算界面,您无需再关注密码机集群的数据同步、负载均衡以及数据高可用性,使用该实例前您需要先配置密码机集群。本文介绍如何配置可通过KMS硬件密钥管理实例连接的密码机集群。

背景信息

相比单独使用加密服务,使用KMS硬件密钥管理实例连接加密服务密码机集群有以下优势:

  • 降低使用加密服务的复杂度,为您的加密服务提供稳定、易用的上层密钥管理途径和密码计算服务。

  • 将您的加密服务与云服务无缝集成,为云服务加密提供更高的安全性和可控制性。更多信息,请参见支持服务端集成加密的云服务

说明
  • 如果您仅使用加密服务,不使用KMS,请参考在生产环境使用加密服务

  • 如果您使用的是KMS其他类型实例,无需额外购买及配置密码机。关于KMS实例类型的更多信息,请参见密钥类型

应用场景

当您部署在互联网的应用存储有用户手机号码、身份证号、银行卡号等用户敏感数据,客户端应用或者云产品服务端需要对文件进行传输或存储,为了避免敏感数据被攻击或者在数据传输过程中导致的数据泄露,您可以使用KMS提供的硬件密钥管理实例对敏感数据进行加密。

例如您的自建应用部署在VPC中,在使用KMS硬件密钥管理实例进行数据加密保护前,您需要在两个不同可用区购买密码机实例,并完成密码机实例集群的创建。

网络架构如下:KMS&加密服务最佳实践架构图

操作流程

最佳实践操作流程

前提条件

  • 已购买和启用KMS硬件密钥管理实例。具体操作,请参见购买和启用实例

  • 已在KMS硬件密钥管理实例所在地域创建VPC,且在VPC内创建了两个不同可用区的交换机。具体操作,请参见创建专有网络和交换机创建交换机

  • 为密码机GVSM配置双向TLS认证前,您需要通过智能在线联系技术支持人员,获取证书文件生成工具。

步骤一:购买密码机实例

KMS关联的密码机集群由两个密码机实例组成,因此您需要购买两个密码机实例。

  1. 登录加密服务管理控制台,在顶部菜单栏,选择目标地域。
  2. 实例列表页面,单击创建密码机实例

  3. 在密码机购买页面,参考下表完成各项配置后单击立即购买,仔细阅读并勾选服务协议,单击去支付完成购买。

    配置项

    说明

    示例值

    区域

    开通加密服务的地域。加密服务只能在VPC中使用,且加密服务的地域必须与您的KMS硬件密钥管理实例的地域相同。

    华南1(深圳)

    可用区

    开通加密服务的可用区。KMS关联的集群由两个不同可用区的密码机实例构成,需要分两次购买。

    可用区A

    密码机类型

    设备型号。选择通用服务器密码机GVSM

    通用服务器密码机GVSM

    购买数量

    需要购买的密码机数量。选择1

    1

    购买时长

    购买的有效服务时间。建议您选择与KMS硬件密钥管理实例相同的购买时长。

    说明

    建议您购买时选择到期自动续费,防止加密服务到期未及时续费而导致的密钥永久性丢失。您选择到期自动续费后,阿里云会在服务到期前9个自然日从您购买密码机时使用的支付账户自动扣款。

    1年

  4. 购买另外一个可用区的密码机实例。

    参考步骤3的配置,除可用区不同外(本文示例中此处为可用区E),其他配置项取值相同。配置成功后,您可以在实例列表页签查看到两个密码机实例。

步骤二:启用并配置密码机实例

配置密码机实例的所属VPC等网络信息,使KMS硬件密钥管理实例在同一个VPC内连接密码机集群。

  1. 实例列表页面,定位到创建的密码机实例,在操作列单击启用

  2. 密码机实例配置对话框,配置密码机实例,然后单击确定

    配置项

    说明

    示例值

    所属的VPC网络ID

    选择密码机实例需要绑定的VPC,和KMS标准版实例所属的VPC必须保持一致。

    vpc-wz95******

    VPC子网

    选择密码机实例所属的VPC子网IP,即选择当前实例所在可用区的交换机。

    vsw-wz9h******

    私网IP地址

    为密码机实例分配一个所属的私网IP。

    重要
    • 您分配给密码机实例的私网IP地址必须是所属的VPC子网网段中的IP地址,否则配置将会失败。
    • 末位为253、254、255的IP地址为系统保留地址。当您使用系统保留地址的网络时,该密码机实例只能在局域网内部进行通信,不能与其他网络互连。为了不影响网络互通,在分配私网IP地址时,请不要分配系统保留地址。

    192.168.XX.XX

    设置密码机实例白名单

    设置访问该密码机实例的白名单,不在白名单内的访问请求将被拒绝。

    说明

    本场景下无需配置。在步骤三:创建并激活集群时会设置集群的白名单,集群的白名单优先级高于集群中密码机实例的白名单。

    无需配置

  3. 参照步骤2配置另外一个密码机实例。

    示例值如下:VPC子网为vsw-wz96******,私网IP地址为192.169.XX.XX,其他配置项取值和步骤2相同。

    配置成功后,密码机实例的状态变为已启用

步骤三:创建并激活集群

集群即将处于同一地域不同可用区、用于相同业务的一组密码机实例关联起来,进行统一管理,为业务应用提供密码计算的高可用性、负载均衡以及横向扩展的能力。创建并激活集群时,您需要选定一个密码机实例作为主密码机,创建后再添加另外一个密码机作为子密码机。

  1. 实例列表页面,定位到目标密码机实例(即选定为主密码机的实例),单击操作列的创建集群

  2. 创建并激活集群面板,创建集群信息并激活集群,然后单击下一步

    配置项

    说明

    示例值

    集群名称

    自定义集群名称。集群的名称不能重复且长度不允许超过24个字符。

    custer1

    设置集群访问白名单

    允许访问集群的IP地址,如果没有设置白名单,则所有IP地址都能访问集群,如果您设置了白名单,需要确保如下IP均添加到白名单中。

    • 集群中各密码机实例所在交换机的网段

      例如,集群中密码机实例所属的VPC子网(交换机)网段分别为172.16.1.0/24和172.16.2.0/24,则在编辑框中增加输入两行,内容分别为:172.16.1.0/24和172.16.2.0/24。

    • 管理密码机实例的ECS实例的私网IP

      例如,ECS实例的私网IP为172.16.3.0,则在编辑框中增加输入一行,内容为:172.16.3.0。

    重要 集群的白名单优先级高于集群中密码机实例的白名单。例如,您设置的集群中密码机实例的白名单为10.10.10.10,集群的白名单为172.16.0.1,则您只能通过172.16.0.1访问集群中的密码机实例。

    172.16.1.0/24

    172.16.2.0/24

    172.16.3.0

    指定集群的VPC网络

    集群所属的VPC。该参数默认填充,无需您设置。

    无需配置

    指定XX地域可用区XX的交换机

    配置集群所在地域的两个可用区的交换机。

    例如:在本文的场景示例中,您选择可用区A的密码机实例hsm-cn-tl32******为主密码机,则可用区A的交换机vsw-wz9h******默认填充无需配置,您仅需要选择可用区E的交换机vsw-wz96******。

    说明

    如果您的可用区E下有多个交换机,请选择另外一个密码机实例绑定的交换机。

    vsw-wz96******

    确认密码机状态

    只有已选主密码机状态显示初始化时,才能激活集群。如果显示未初始化,请参照如下操作初始化:

    1. 实例列表页面,单击目标实例操作列的扩展图标后,单击初始化
    2. 初始化实例页签,单击确定

      初始化预计需要1~5分钟时间,请耐心等待。初始化完成后,您再次进入初始化实例页签时,初始化状态会显示已初始化,该状态下请勿重复初始化。

    确认密码机状态为初始化

  3. 根据页面提示在可选实例中选择另外一个密码机实例,单击右箭头图标,然后单击完成将另外一个密码机实例添加到集群。

    如果您在此处未将另外一个密码机实例添加至集群,您也可以在实例列表页面,找到主密码机实例,在操作列单击扩展集群,根据页面提示完成添加。

    配置成功后,在密码机实例的集群列,您可以看到密码机状态分别为主密码机子密码机

步骤四:为密码机实例配置双向TLS认证

为了确保安全性,KMS硬件密钥管理实例连接密码机实例时采用双向TLS认证,您需要进行双向TLS认证配置。

为密码机GVSM配置双向TLS认证前,您需要通过智能在线联系技术支持人员,获取证书文件生成工具。

  1. 运行证书文件生成工具,生成CA证书、客户端证书和服务端证书。

    重要
    • 工具的运行环境没有限制,可以是本地计算机、ECS实例或其他满足工具运行条件的环境。

    • 工具仅为阿里云提供的辅助性工具,如果您有相关技术能力可以自己生成这些证书文件,则无需使用本工具。

    • Windows系统:双击鼠标左键运行windows文件夹中的hsm_certificate_generate.exe文件,在certs文件夹获取证书文件。

    • Linux系统和macOS系统:切换到Linux或darwin文件夹所在路径,然后运行以下命令,在certs文件夹获取证书文件。

      ./hsm_certificate_generate -dir ./certs -pswd 12345678
      
      -dir 用于指定生成证书文件的保存路径。
      -pswd 用于指定生成的PKCS格式证书口令。

    您将会获得下列证书与私钥:

    certs/
    ├── client.p12 (客户端PKCS12格式证书,包含客户端证书以及私钥)
    ├── client.pem (PEM格式客户端证书)
    ├── rootca.key (CA私钥)
    ├── rootca.pem (PEM格式CA证书)
    └── server.p12 (服务端PKCS12格式证书)
  2. 下载并安装密码机实例管理工具。

    重要

    密码机实例管理工具只支持在Windows系统运行。

    1. 实例列表页面,定位到目标密码机实例。

    2. 单击密码机实例的规格列信息,然后单击下载密码机实例管理工具

      下载密码机实例管理工具
    3. 解压获取到的密码机软件包,选择以下任一方式安装密码机实例管理工具。

      • 在本地终端安装密码机实例管理工具,然后通过VPN或物理专线使本地终端连接到密码机实例所属的VPC网络。

      • 在ECS实例上安装密码机实例管理工具,然后通过本地终端远程登录ECS实例,在ECS实例上操作密码机实例管理工具。购买ECS实例的具体操作,请参见使用向导创建实例

  3. 使用密码机实例管理工具连接主密码机。

    以密码机实例管理工具安装在ECS实例上为例:

    1. 登录ECS实例,在ECS实例上使用密码机实例管理工具连接主密码机GVSM。

      1. 双击PKIManager-X.X.X.X.exe打开密码机实例管理工具。

      2. 选择系统 > TCP/IP连接

      3. TCP/IP连接对话框,输入主密码机的 IP地址端口号(固定为8020)。

        说明

        您可以在加密服务控制台的实例列表页面,单击操作列的更多后单击配置,在配置页面查看IP地址。

      4. 单击连接,然后单击登录

      说明

      登录成功后,建议您注册管理员账号,使用管理员账号登录以获得更高的安全性。具体操作,请参见随密码机实例管理工具下载的GVSM用户管理手册中的2.1.3. 注册管理员2.1.2. 管理员登录

    2. 在密码机实例管理工具完成如下配置。

      配置项

      操作步骤

      配置客户端证书(client.pem

      1. 选择密钥管理 > 客户端管理

      2. 客户端证书管理对话框,单击导入证书

      3. 导入证书对话框,选择证书文件生成工具生成的客户端证书(client.pem),然后单击导入

      配置服务端证书(server.p12

      1. 选择密钥管理 > 服务端管理

      2. 服务端p12证书管理对话框,单击导入证书

      3. 导入证书对话框,选择证书文件生成工具生成的服务端证书(server.p12),然后输入证书口令

      4. 单击导入

      配置主密码机GVSM设备端口属性

      1. 选择设备管理 > 主机端口属性

      2. 主机端口属性对话框,配置以下参数:

        • Socket KeepAlive时间:60。

        • 消息报文头长度:0。

        • 消息报文编码格式:ASCII。

        • 主机服务通讯方式:双向通讯。

        • 主机服务通讯协议:TLSv1.2。

      3. 单击重置

      4. 单击立即重启,然后单击确定

步骤五:同步集群数据

当您第一次创建并激活集群后,您需要将集群的主密码机数据手动同步到集群的子密码机实例。当您对集群进行扩容时,集群数据会自动同步到新添加的密码机实例。

  1. 实例列表页面,定位到目标主密码机实例,单击操作列的同步集群

  2. 仔细阅读弹出的对话框中的内容,单击同步集群

    重要

    同步集群预计需要5分钟,请在业务空闲期进行同步,以免影响业务运行。同步过程中集群的状态为同步中

    集群同步结束后,如果两台密码机实例的摘要信息完全一致,表示您已经完成配置密钥管理服务关联的加密服务集群。如果摘要信息不一致请重复同步集群数据的操作,若摘要信息仍不一致,请通过智能在线联系技术支持人员。查看实例摘要信息

后续配置

请前往密钥管理服务控制台完成KMS硬件密钥管理实例的相关配置。具体操作,请参见密钥服务快速入门

阿里云首页 加密服务 相关技术圈