---
title: Global Cache TLS配置
description: "1. 进入证书生成脚本目录。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengboostkithistory/2200SPC2/sds/kunpengglobalcache_06_0037.html
sourcePath: /source/zh/kunpengboostkithistory/2200SPC2/sds/kunpengglobalcache_06_0037.html
indexId: 336ca32db78aac79243798b2a32601f604a130d711a063b46145d375e2c7a3ce78
---
# Global Cache TLS配置

1. 进入证书生成脚本目录。

```
cd /opt/certtool/certificate
```


  因为需要kmc相关加解密库，请保证服务端或者客户端已经安装了对应的RPM包： 服务端需要安装的globalcache rpm包： 1 rpm -ivh boostkit-globalcache-release-1.3.15.oe1.aarch64.rpm 客户端需要安装的rpm包： ARM环境： 1 rpm -ivh boostkit-globalcache-ceph-adaptor-release-1.3.15.oe1.aarch64.rpm x86环境： 1 rpm -ivh boostkit-globalcache-ceph-adaptor-release-1.3.15.oe1.x86_64.rpm

2. 修改agent_node_list，原来文件中的注释请删除。
  agent_node_list文件内容格式如下：

```
IPaddress globalcache
op
```


  当有多个服务端和客户端时，每行写一个IP地址与用户，用户指定为globalcacheop，所有节点信息均需写入。

  举例，文件内容如下所示。

```
1.1.1.1 globalcacheop
1.1.1.2 globalcacheop
1.1.1.3 globalcacheop
1.1.1.4 globalcacheop
```


3. 修改CA_node_list，原来文件中的注释请删除。
  CA_node_list文件内容格式，仅写入CA节点的信息。如下：

```
IPaddress globalcache
op
```


  举例，文件内容如下所示。

```
1.1.1.5 globalcacheop
```


4. 查看common_var.sh，请根据CA服务器的特性修改相应的变量值，需要关注的变量值如下。| 变量 | 说明 |
| --- | --- |
| CERT\_BASE\_DIR | CA证书根目录。 |
| PRIVATE\_KEY\_DIR | CA私钥目录。 |
| PUBLIC\_KEY\_DIR | CA公钥目录。 |
| CERT\_DIR | CA服务器设备证书目录。 |
| CSR\_DIR | CA服务器证书请求存放目录。 |
| CA\_CERT\_FILE | 根证书文件名。 |
| AGENT\_CERT\_FILE | 设备证书文件名。 |


5. 运行cert_manager.sh。

```
sh cert_manager.sh [ops_type] [ops_user] [run_user] [agent_node_list] [CA_node_list] [make_req/fetch_cert]
```


  命令参数说明如下。
| 参数 | 说明 |
| --- | --- |
| ops\_type | create\_cert表示创建证书；update\_key表示不创建证书，仅更新kmc密钥 |
| ops\_user | 操作账号。 |
| run\_user | 运行账号。 |
| agent\_node\_list | 创建证书节点列表文件。 |
| CA\_node\_list | 创建根证书节点文件。 |
| make\_req/fetch\_cert | make\_req表示节点生成证书请求，且把证书请求传输到CA服务器指定目录；fetch\_cert表示从CA服务器获取设备证书和根证书。 |


  为设备节点生成证书请求（此步骤请客户在所选服务器上完成）。

```
sh cert_manager.sh create_cert globalcacheop globalcacheop agent_node_list CA_node_list make_req
```


  分别输入OPS user，Agent和CA账号的密码，以及加密口令（最小长度为6，包含字母、数字、特殊字符）。

```
Enter OPS user password:#当前账户密码
Enter Agent password:#agent节点账户密码(需为同一个)
Enter CA password:#CA节点账户密码
Enter Password:#加密口令（第一次）
******
Verifying - Enter Password:#加密口令（第二次）
******
```


6. 在CA节点根据设备节点的CSR文件签发设备节点证书（此步骤请客户在自己根证书服务器上完成）。
  如果按照数字证书认证机构配置进行测试，可在CA服务器上执行如下命令生成证书。

```
openssl ca -in /opt/gcache/secure/CACerts/csr/${agentip}.agent.csr -out /opt/gcache/secure/CACerts/certs/${agentip}.agent.crt -days 3650 -config /opt/gcache/secure/CACerts/openssl.cnf
#注意${agentip}替换为实际agent ip
```


  需要对每一个节点IP生成证书，密码为3中生成的密码。

7. 从根证书节点获取设备证书和根证书，分别输入OPS user，Agent和CA运维账号的密码。

```
sh cert_manager.sh create_cert globalcacheop globalcacheop agent_node_list CA_node_list fetch_cert
```


  分别输入OPS user，Agent和CA账号的密码，以及加密口令，与步骤7密码格式保持一致，执行完成后生成安全所需要的文件。
  - agent_node_list中的节点生成Certs目录“/opt/gcache/secure/Certs”，目录下包含如下文件。| 文件 | 说明 |
| --- | --- |
| agent.crt | 节点证书文件。 |
| agent.self | 节点私钥。 |
| agent.common | 节点公钥。 |
| ca.crt | CA证书文件。 |
| identity.ks | 节点私钥口令。 |


  - agent_node_list中的节点生成kmc根密钥目录“/opt/gcache/secure/kmc”，目录下包含如下文件。| 文件 | 说明 |
| --- | --- |
| kmc.primary.ks | kmc primary根密钥 |
| kmc.standby.ks | kmc standby根密钥 |


    通过证书工具生成的口令和公私钥已经满足了华为公司相关安全要求，但是为了保证用户环境长期安全性，建议定期更新相关文件。 配置文件中默认开启了TLS功能，如果用户关闭TLS功能，相关安全措施无法得到保障。 证书工具不负责根证书的生成和签发，根证书的处理请客户自己完成。 证书管理基于openEuler默认的openSSL版本，请客户关注对应openSSL关于证书的相关漏洞。
