服务器证书安装配置指南(SM2证书)




一、生成证书请求

*密钥文件不区分操作系统平台,推荐使用CIM客户端工具。

*下载CIM:
*https://cim.itrus.cn

运行CIM客户端,点击工具箱,点击CSR生成,然后填写您的证书注册信息,点击生成,然后下拉至底部,点击保存CSR和私钥。请确保您填写的信息真实性和准确性,否则会导致证书申请失败。
 以下是示例信息: 


*使用CIM工具创建csr文件之后,将生成的server.csr文件发送给天威诚信,等待证书的签发。请同时备份server.key文件并稍后上传到服务器上进行配置。
*在您收到证书签发邮件之前,请不要删除压缩包中的server.key文件,以避免私钥丢失而导致证书无法安装。
注:如SSL证书已签发,不需要再次生成CSR,开始安装证书即可。

 

二,安装服务器证书
1.获取服务器签名证书文件 
将证书签发邮件中的“以下是您的签名证书”代码的文本复制出来(包括“-----BEGIN CERTIFICATE-----”和“-----END CERTIFICATE-----”)粘贴到记事本等文本编辑器中。 
为保障服务器证书在客户端的兼容性,服务器证书需要安装中级CA证书。 在服务器证书代码文本结尾,回车换行不留空行,粘贴证书签发邮件中的“以下是您的中级CA证书”部分里的第一段CA证书和第二段的内容(包括“-----BEGIN CERTIFICATE-----”和“-----END CERTIFICATE-----”),每串证书代码之间均需要使用回车换行不留空行,修改文件扩展名,保存包含三段证书代码的文本文件为server.pem文件。


2.获取服务器加密证书文件 

将证书签发邮件中的“以下是您的加密证书”代码的文本复制出来(包括“-----BEGIN CERTIFICATE-----”和“-----END CERTIFICATE-----”)粘贴到记事本等文本编辑器中,保存包含一段证书代码的文本文件为serverencryption.pem文件。

3. 提取加密密钥
请下载SM2密钥提取工具:http://www.itrus.cn/soft/iTrusSM2Tools.rar  

打开压缩包后,运行“iTrusSm2Tools.exe”文件,并在工具中录入对应信息。
签名证书私钥为server.key文件,加密证书为serverencryption.pem文件,加密私钥密文为 证书签发邮件中“以下是您的加密密钥提取值”内容。如图所示:

提取后得到的文件保存为serverencryption.key文件。

4. 安装服务器证书
复制生成的证书文件和密钥文件Nginx安装目录下的conf目录(Nginx不支持SM2证书安装建议使用支持SM2算法的硬件设备适配或通过天威诚信获取Nginx编译GMSSL兼容SM2算法参考建议)。
打开Nginx安装目录下conf目录中的nginx.conf文件 
找到 
    # HTTPS server 
    # 
    #server { 
    #    listen       443; 
    #    server_name  localhost; 
    #    ssl                  on; 
    #    ssl_certificate      cert.pem; 
    #    ssl_certificate_key  cert.key; 
    #    ssl_session_timeout  5m; 
    #    ssl_protocols  SSLv2 SSLv3 TLSv1; 
    #    ssl_ciphers  ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
    #    ssl_prefer_server_ciphers   on; 
    #    location / { 
    #        root   html; 
    #        index  index.html index.htm; 
    #    } 
    #} 
将其修改为 
    server { 
        listen       443 ssl; 
        server_name  www.itrus.cn; 
        ssl_certificate      serverRSA.pem; 
        ssl_certificate_key  serverRSA.key; 
#可以配置RSA算法的国际可信证书,若不需要RSA证书可注释上方2行配置。
      ssl_certificate      server.pem; 
        ssl_certificate_key  server.key
#配置SM2算法证书签名证书密钥对
      ssl_certificate      serverencryption.pem; 
        ssl_certificate_key  serverencryption.key; 
#配置SM2算法证书加密证书密钥对
      ssl_session_cache    shared:SSL:1m;
        ssl_session_timeout  5m; 
        ssl_protocols GMTLSv1.1 TLSv1.1 TLSv1.2;
        ssl_ciphers  HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:ECC-SM4-SM3:SM2-WITH-SMS4-SM3;
        ssl_prefer_server_ciphers   on; 
        location / { 
            root   html; 
            index  index.html index.htm; 
        } 
    } 
保存退出,并重启Nginx。 
通过360等支持SM2算法的浏览器以https方式访问您的站点,测试站点证书的安装配置。
 
三、备份服务器证书 
在您成功的安装和配置了服务器证书之后,请务必依据下面的操作流程,备份好您的服务器证书,以防证书丢失给您的系统应用带来不便。 
1.   服务器证书的备份 
备份所有.key后缀服务器证书私钥文件,以及.pem后缀的服务器证书文件即可完成服务器证书的备份操作。
 
2.   服务器证书的恢复 
请参照服务器证书配置部分,将服务器证书密钥文件恢复到您的服务器上,并修改配置文件,恢复服务器证书的应用。