config_mindie_server_tls_cert.py
脚本功能
EndPoint开启https时,使用该脚本对证书进行管理,主要功能如下:
- 对CA证书进行导入/更新、删除。
- 对服务证书,私钥进行导入/更新、删除。
- 对吊销列表进行导入/更新。
- 查询已导入的CA证书,服务证书,吊销列表详情信息。
证书校验规则
- 验签证书CA校验规则如下:
#1. 是否属于X509v3证书,不是则直接退出。 #2. 证书是否过期,过期则直接退出。 #3. 签名算法是否为sha256WithRSAEncryption和sha512WithRSAEncryption,不是则有告警提示。 #4. 是否为签名证书(存在CA Flag Digital Signature Certificate cRLSign字段),不是则有告警提示。 #5. RSA密钥算法是否长度 >= 3072,不是则有告警提示。
- 验证服务证书Cert校验规则如下:
#1. 格式是否为x509_v3,不是则直接退出。 #2. 签名算法是否是sha256WithRSAEncryption和sha512WithRSAEncryption,不是则有告警提示。 #3. RSA密钥算法长度是否 >= 3072,不是则有告警提示。 #4. 是否包含Certificate Signature和cRLSign字段,不是则有告警提示。 #5. 证书是否过期。 #6. 证书和私钥是否匹配。
- 验证吊销列表校验规则如下:
#1. crl列表是否为空,为空则自己退出。 #2. 吊销列表是否过期,过期则直接退出。
前置配置
# 缺失的包 pip3 install pyOpenSSL # 开启日志 export MIES_CERTS_LOG_TO_FILE=1 export MIES_CERTS_LOG_TO_STDOUT=1 # 日志配置 export MIES_CERTS_LOG_LEVEL=INFO export MIES_CERTS_LOG_PATH=/workspace/log/certs.log # 文件当前需要通过umask为0077指定为0600
使用指南
- 对CA证书进行导入/更新。
python3 scripts/config_mindie_server_tls_cert.py 软件包安装目录 import_ca CA文件列表(不超过5个) # 样例 python3 scripts/config_mindie_server_tls_cert.py /home/Ascend-mindie-server_{version}_linux-{arch} import_ca /home/ca.pem /home/ca2.pem
- 对已导入的CA文件进行删除。
python3 scripts/config_mindie_server_tls_cert.py 软件包安装目录 delete_ca CA文件名称列表(不超过5个) # 样例 python3 scripts/config_mindie_server_tls_cert.py /home/Ascend-mindie-server_{version}_linux-{arch} delete_ca ca.pem ca2.pem
- 对服务证书,私钥进行导入/更新(会在弹窗中进行私钥口令输入)。
python3 scripts/config_mindie_server_tls_cert.py 软件包安装目录 import_cert 服务证书路径 服务私钥路径 # 样例 python3 scripts/config_mindie_server_tls_cert.py /home/Ascend-mindie-server_{version}_linux-{arch} import_cert /home/server.pem /home/server.key.pem
- 对服务证书,私钥进行删除。
python3 scripts/config_mindie_server_tls_cert.py 软件包安装目录 delete_cert # 样例 python3 scripts/config_mindie_server_tls_cert.py /home/Ascend-mindie-server_{version}_linux-{arch} delete_cert
- 对吊销列表进行导入/更新,crl配套CA文件列表中的第一个CA文件。
python3 scripts/config_mindie_server_tls_cert.py 软件包安装目录 import_crl 吊销列表文件路径 # 样例 python3 scripts/config_mindie_server_tls_cert.py /home/Ascend-mindie-server_{version}_linux-{arch} import_crl /home/server_crl.pem
- 查询导入的CA证书,服务证书,吊销列表文件详情。
python3 scripts/config_mindie_server_tls_cert.py 软件包安装目录 query # 样例 python3 scripts/config_mindie_server_tls_cert.py /home/Ascend-mindie-server_{version}_linux-{arch} query

- HTTPS使用三面隔离时,https的业务面和管理面不建议使用同一套安全证书,使用同一套安全证书会导致存在较高的网络安全风险。
- HTTPS和GRPC不建议使用同一套安全证书,使用同一套安全证书会导致存在较高的网络安全风险。
- 导入证书时,对于用户导入的CA文件证书工具要求的权限为600,服务证书文件证书工具要求的权限为600,私钥文件证书工具要求的权限要求为400,吊销列表证书工具要求的权限为600。
父主题: 证书管理工具