nginx国密ssl测试

文章目录

  • 文件准备
  • 编译部署nginx
  • 申请国密数字证书
  • 配置证书并测试

文件准备

下载文件并上传到服务器,这里使用centos 7.8

本文涉及的程序文件已打包可以直接下载。 点击下载

下载国密版openssl

https://www.gmssl.cn/gmssl/index.jsp
nginx国密ssl测试_第1张图片

下载稳定版nginx
http://nginx.org/en/download.html
nginx国密ssl测试_第2张图片
nginx国密ssl测试_第3张图片

编译部署nginx

下载解压nginx程序包,目录如下
nginx国密ssl测试_第4张图片

修改源码包中
/root/apps/nginx-1.24.0/auto/lib/openssl/conf 文件内容中
$OPENSSL/.openssl 路径为 $OPENSSL

nginx国密ssl测试_第5张图片
编译nginx

./configure \
--without-http_gzip_module \
--with-http_ssl_module \
--with-http_stub_status_module \
--with-http_v2_module \
--with-file-aio \
--with-openssl="/usr/local/gmssl" \
--with-cc-opt="-I/usr/local/gmssl/include" \
--with-ld-opt="-lm"

如果编译过程中出现错误,根据错误信息baidu进行解决。编译完成结果如下
nginx国密ssl测试_第6张图片
执行make&& make install 进行安装,结果如下
nginx国密ssl测试_第7张图片

申请国密数字证书

https://www.gmcrt.cn/gmcrt/index.jsp
nginx国密ssl测试_第8张图片
提交后下载的证书文件压缩包内容如下,
如下四个上传到 服务器并在nginx中进行配置
nginx国密ssl测试_第9张图片
上传服务器如下:
在这里插入图片描述

配置证书并测试

修改nginx配置文件,如下,证书先配置 签名证书和私钥,再配置加密证书和私钥

 server {
        listen       443 ssl;
        server_name  localhost;
        ssl_protocols TLSv1  TLSv1.1 TLSv1.2;
        ssl_certificate      /usr/local/nginx/certs/sm2.test.sig.crt.pem;
        ssl_certificate_key  /usr/local/nginx/certs/sm2.test.sig.key.pem;
        ssl_certificate      /usr/local/nginx/certs/sm2.test.enc.crt.pem;
        ssl_certificate_key  /usr/local/nginx/certs/sm2.test.enc.key.pem;
       
        #ssl_verify_client off;
        #ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:AES128-SHA:DES-CBC3-SHA:ECC-SM4-CBC-SM3:ECC-SM4-GCM-SM3;
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:AES128-SHA:DES-CBC3-SHA:ECC-SM4-CBC-SM3:ECC-SM4-GCM-SM3;
        ssl_verify_client off;

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

访问测试,chrome edge 等浏览器 都提示无法访问 如下:
nginx国密ssl测试_第10张图片
下载国密浏览器,可以正常进行访问:

nginx国密ssl测试_第11张图片

你可能感兴趣的:(nginx和,openresty,nginx,ssl,运维,国密)