国密ssl证书部署方法

更新时间:2025-12-23 来源:TopSSL AI 助理 作者:TopSSL AI 助理

国密SSL证书的部署方法涉及使用SM2算法的非对称加密体系,与国际通用的RSA算法不同,因此在服务器配置和兼容性方面有其特殊性。以下是基于主流Web服务器(如Nginx)的标准部署流程及注意事项。

1. 生成国密SSL证书

首先需通过支持国密算法的CA机构申请SM2证书。以华测国密CA为例:

  • 访问华测国密CA平台;
  • 提交域名信息并完成身份验证;
  • 在线生成SM2算法的CSR(证书签名请求),或由系统自动生成密钥对;
  • 下发证书后将获得以下文件:
    • SS_sign.crt:签名证书
    • SS_sign.key:签名私钥
    • SE_enc.crt:加密证书
    • SE_enc.key:加密私钥

注意:国密SM2证书采用双证书结构(签名+加密),不同于传统单证书模式。


2. Nginx 部署国密SSL证书

由于标准OpenSSL不支持SM2/SM3/SM4算法,必须使用支持国密的OpenSSL分支(如GmSSL)重新编译Nginx。

步骤如下

  1. 准备环境

    • 安装依赖库:yum install gcc pcre-devel zlib-devel openssl-devel -y
    • 下载并解压支持国密的OpenSSL版本(例如 GmSSL 或 商用国密版OpenSSL)
      unzip openssl-gm.zip -d /opt/openssl-gm
      
  2. 下载并编译Nginx

    tar -zxvf nginx-1.25.2.tar.gz
    cd nginx-1.25.2
    ./configure \
      --prefix=/usr/local/nginx \
      --with-http_ssl_module \
      --with-openssl=/opt/openssl-gm \
      --with-openssl-opt=enable-gm
    make && make install
    
  3. 上传证书文件 将四个国密证书文件上传至服务器指定目录,例如 /etc/nginx/certs/sm2/

    • SS_sign.crt
    • SS_sign.key
    • SE_enc.crt
    • SE_enc.key
  4. 修改nginx.conf 配置

    server {
        listen 443 ssl;
        server_name www.example.com;
    
    ssl_certificate          /etc/nginx/certs/sm2/SS_sign.crt;
    ssl_certificate_key      /etc/nginx/certs/sm2/SS_sign.key;
    ssl_certificate_enc      /etc/nginx/certs/sm2/SE_enc.crt;
    ssl_certificate_key_enc  /etc/nginx/certs/sm2/SE_enc.key;
    

    ssl_protocols TLSv1.1 TLSv1.2; ssl_ciphers ECDHE-SM2-WITH-SMS4-SM3; ssl_prefer_server_ciphers on;

    location / { root html; index index.html; }

    }

    注:ssl_certificate_encssl_certificate_key_enc 是国密扩展指令,仅在支持SM2的Nginx中可用。

  5. 启动或重载Nginx

    /usr/local/nginx/sbin/nginx -t
    /usr/local/nginx/sbin/nginx -s reload
    
  6. 浏览器测试 使用支持国密算法的专用浏览器(如密信浏览器、奇安信可信浏览器等)访问站点,查看是否启用SM2加密套件。


3. 兼容性处理:双证书部署方案

为兼顾合规性与全球访问兼容性,推荐采用SM2/RSA双证书部署方案

实现方式

  • 同时在服务器上部署国密SM2证书和RSA证书;
  • 利用支持“双栈”的Web服务器中间件(如天威诚信iTrusCloud、江南科友HSM网关等)自动识别客户端类型;
  • 当用户使用国密浏览器时返回SM2证书,使用Chrome/Firefox/Safari时返回RSA证书。

此方案已在华测检测等大型企业官网成功应用,既满足《金融和重要领域密码应用与创新发展工作规划(2018-2022年)》政策要求,又保障公众用户的正常访问体验。

[出处:https://www.topssl.cn/article/279]


4. 常见问题与建议

问题解决建议
国密证书无法退款购买前确认技术可行性与部署能力
微信小程序不支持国密证书必须额外购买一张RSA证书用于小程序接口通信
普通浏览器无法打开网站需配合RSA证书做双证书切换
编译失败或模块缺失使用预编译的国密Nginx发行版或容器镜像

延伸阅读:


相关产品推荐

产品名称参考价格适用场景
华测国密CA SM2 SSL证书3000元适用于需要符合国家密码合规要求的政府、金融、国企单位
锐安信(vTrus)入门级DV65元适用于个人博客或测试环境
Sectigo DV SSL证书297元适用于中小企业官网、展示型网站

[出处:https://www.topssl.cn/article/279]
HTTPS合规性要求说明

立即探索,帮您快速寻找适合您的SSL数字证书 申请SSL证书
免费SSL证书 | 快速实现HTTPS加密与付费证书申请 - TopSSL
提供免费与付费SSL证书申请
微信公众号二维码 扫一扫在线咨询
关注 TopSSL 公众号, RSS订阅 SSL资讯与技术支持

2004-2026 © 北京传诚信  版权所有 | TopSSL提供免费SSL证书与付费证书,快速实现HTTPS加密  北京市朝阳区鹏景阁大厦16层

技术协助:wo@topssl.cn 企业咨询:vip@topssl.cn