昇腾社区首页
中文
注册
开发者
下载

导入TLS证书

  • 通过接口tft_start_controller、tft_init_processor配置TLS密钥证书等,进行TLS安全连接,安全选项默认开启,建议用户开启TLS加密配置,以保证通信安全,如需关闭加密功能,可以使用下面示例,调用接口进行关闭。
  • 系统启动后,建议删除本地密钥证书等信息敏感文件。
  • 调用该接口时,传入的文件路径应避免包含英文分号、逗号、冒号。
  • 支持通过环境变量TTP_ACCLINK_CHECK_PERIOD_HOURSTTP_ACCLINK_CERT_CHECK_AHEAD_DAYS配置证书检查周期与证书过期预警时间。

配置TLS接口调用示例

  • TLS关闭(“enable_tls”=False)时,tls_info无效,无需配置。此开关不影响MindIO TFT特性功能。
    from mindio_ttp.framework_ttp import tft_start_controller, tft_init_processor
    
    tft_start_controller(bind_ip: str, port: int, enable_tls=False, tls_info='')
    tft_init_processor(rank: int, world_size: int, enable_local_copy: bool, enable_tls=False, tls_info='', enable_uce=True, enable_arf=False)
    • 如果关闭TLS(即“enable_tls”=False时),会存在较高的网络安全风险。
    • tft_start_controllertft_init_processor的enable_tls开关状态需要保持一致。若两个接口enable_tls开关不同,会造成以下问题:
      • 模块间TLS建链失败。
      • MindIO TFT无法正常运行,训练任务启动失败。
  • TLS开启(“enable_tls”=True)时,证书相关信息,作为必选参数tls_info用于如下接口:
    from mindio_ttp.framework_ttp import tft_start_controller, tft_init_processor, tft_register_decrypt_handler
    
    # 在tls_info中 ,以“;”分隔不同字段,以“,”分隔各个文件
    tls_info = r"(
    tlsCert: /etc/ssl/certs/cert.pem;
    tlsCrlPath: /etc/ssl/crl/;
    tlsCaPath: /etc/ssl/ca/;
    tlsCaFile: ca_cert_1.pem, ca_cert_2.pem;
    tlsCrlFile: crl_1.pem, crl_2.pem;
    tlsPk: private key;
    tlsPkPwd: private key pwd;
    packagePath: /etc/ssl/
    )"
    
    # 若tlsPkPwd口令为密文,则需注册口令解密函数
    tft_register_decrypt_handler(user_decrypt_callback)
    tft_start_controller(bind_ip: str, port: int, enable_tls=True, tls_info=tls_info)
    tft_init_processor(rank: int, world_size: int, enable_local_copy: bool, enable_tls=True, tls_info=tls_info, enable_uce=True, enable_arf=False)

tls_info中各字段含义

字段

含义

Required

tlsCert

Server证书。

tlsCaPath

CA证书存储路径。

tlsCaFile

CA证书列表。

tlsCrlPath

证书吊销列表存储路径。

tlsCrlFile

证书吊销列表。

tlsPk

私钥。

tlsPkPwd

私钥口令。

packagePath

OpenSSL库路径

证书安全要求:

  • 需使用业界公认安全可信的非对称加密算法、密钥交换算法、密钥长度、Hash算法、证书格式等。
  • 应处于有效期内。