首页 > 系统相关 >nginx国密ssl测试

nginx国密ssl测试

时间:2023-12-14 10:32:45浏览次数:29  
标签:index ssl -- nginx 国密 usr local



文章目录

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


文件准备

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

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

下载国密版openssl

https://www.gmssl.cn/gmssl/index.jspnginx国密ssl测试_nginx

下载稳定版nginx
http://nginx.org/en/download.htmlnginx国密ssl测试_运维_02
nginx国密ssl测试_html_03

编译部署nginx

下载解压nginx程序包,目录如下

nginx国密ssl测试_ssl_04

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

nginx国密ssl测试_nginx_05


编译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测试_国密_06


执行make&& make install 进行安装,结果如下

nginx国密ssl测试_国密_07

申请国密数字证书

https://www.gmcrt.cn/gmcrt/index.jsp

nginx国密ssl测试_html_08


提交后下载的证书文件压缩包内容如下,

如下四个上传到 服务器并在nginx中进行配置

nginx国密ssl测试_运维_09


上传服务器如下:

nginx国密ssl测试_运维_10

配置证书并测试

修改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测试_nginx_11


下载国密浏览器,可以正常进行访问:

nginx国密ssl测试_国密_12


标签:index,ssl,--,nginx,国密,usr,local
From: https://blog.51cto.com/u_15873191/8815106

相关文章

  • 免费通配符SSL证书(泛域名证书)申请
    近期在折腾群辉NAS,如何远程访问家里的NAS就是一个需要解决的问题,而域名+DDNS动态解析就是一个解决方案,如何设置不是这里关注的部分。而通过域名远程访问,为了数据安全,往往会采用https的传输协议,这种协议下需要配置SSL证书,否则浏览器会出现不安全警告。SSL证书分为单域名证书、通......
  • nginx配置多个站点共用80端口,不算端口冲突吗?
    在使用Nginx配置多个站点时,可以将它们共享一个端口(例如80端口)。这是因为Nginx使用虚拟主机(VirtualHost)的概念,通过对访问请求进行区分,将请求发送到不同的站点。Nginx的配置文件中,可以通过server块来定义不同的虚拟主机。每个server块中可以指定不同的域名或IP地址,并设置对应的站点......
  • k8s安装Ingress-Nginx
    目前,DHorse(https://gitee.com/i512team/dhorse)只支持Ingress-nginx的Ingress实现,下面介绍Ingress-nginx的安装过程。下载安装文件首先,需要匹配Ingress-nginx版本和kubernetes版本。在https://github.com/kubernetes/ingress-nginx可以找到,如下图所示:笔者用的k8s版本是v1.21......
  • Nginx
    简介Nginx(”enginex”)是一个高性能的HTTP和反向代理服务器,特点是占有内存少,并发能力强,事实上Ngfinx的并发能力确实在同类型的网页服务器中表现较好。Nginx专为性能优化而开发,性能是其最重要的考量,实现上非常注重效率,能经受高负载的考验,有报告表明能支持高达50000个并发连接数......
  • Nginx-server-文件下载配置
    server{ listen8001; server_namelocalhost; #错误日志:在location块中添加错误日志记录,以便于问题排查。 error_log/var/log/nginx/8001_down_error.log; #通过valid_referers指令来限制允许访问资源的来源。 valid_referersnoneblockedserver_nameslocalh......
  • 深入了解RPM包管理与Nginx源码包管理
    在Linux系统中,RPM(RedHatPackageManager)是一种流行的软件包管理工具,用于安装、查询和卸载软件包。同时,在编译和安装Nginx等软件时,源码包管理也是一个重要的方面。本文将详细介绍RPM包管理的基本操作以及Nginx源码包管理的方法。RPM包管理1.安装RPM包使用命令可以轻松安装RPM......
  • Nginx——记录post请求回执405的一种解决方式
    前言:nginx做反向代理,一直报405,由于之前配置过,一直是没问题的,这次一直报405,搞了一下午,终于找到原因了是因为开启了多个ngixn导致的。解决办法:cmd杀掉nginx后台进程命令杀掉nginx后台nginx常用命令taskkill/f/t/imnginx.exenginx 常用命令startnginx#启动Ng......
  • Docker部署Nginx Proxy Manager
    更新环境aptupdate-y&&aptinstall-ycurlsocatwgetsudoBBRPLUS四合一脚本wget-N--no-check-certificate"https://raw.githubusercontent.com/chiakge/Linux-NetSpeed/master/tcp.sh"&&chmod+xtcp.sh&&./tcp.sh安装Dockerc......
  • 镜像挂载+nginx实现局域网yum源
    应用说明在内网的linux主机搭建系统时,主机无法使用默认配置的官网yum源,且内网环境中不提供公共yum源,在这个情况下可自行搭建局域网yum源。部署方式:选择一台主机作为服务端,在这台主机上挂载系统iso镜像,并部署nginx将package进行发布,其他主机作为客户端配置局域网yum源iso镜像要......
  • Nginx 各种反向代理方式_nginx反向代理1
    Nginx反向代理代理http实现负载均衡nginx代理httpsnginx代理tcpnginx平滑升级代理http本次实验后端为geoserver如下就可以实现基础的http反向代理server{listen80;server_name192.168.144.100;location/{......