Windows上利用openssl自制SSL证书

1、下载并安装openssl

Openssl下载地址

下载该exe文件后,双击下一步傻瓜式安装

2、配置path环境变量

配置完成后,在cmd窗口执行"openssl version"命令,验证是否完成安装。

3、生成ssl私钥

bash 复制代码
openssl genrsa -out D:\cert\private.key 2048
bash 复制代码
openssl req -new -key D:\cert\private.key -out D:\cert\request.csr

4、生成ssl证书

bash 复制代码
openssl x509 -req -in D:\cert\request.csr -signkey D:\cert\private.key -out D:\cert\certificate.crt -days 365

5、验证ssl证书

bash 复制代码
openssl x509 -in D:\cert\certificate.crt -text -noout

6、nginx配置https

(1)将生成的证书文件拷贝到指定目录

(2)打开nginx.conf文件配置相关参数

bash 复制代码
 server {
       listen       8080 ssl;
       server_name  192.168.5.109;
	
	   ssl_certificate D:/Server/nginx-1.22.0/cert/certificate.crt;
       ssl_certificate_key D:/Server/nginx-1.22.0/cert/private.key;
		
	   ssl_session_cache    shared:SSL:10m;
       ssl_session_timeout  5m;
 
       ssl_ciphers  HIGH:!aNULL:!MD5;
       ssl_prefer_server_ciphers  on;

       location / { 
            proxy_pass   http://127.0.0.1:8765;
			limit_conn perip 10;
			limit_conn perserver 100;
			limit_rate_after 100M;
			limit_rate 10k;
			proxy_redirect off ; 
			proxy_set_header Host $host; 
			proxy_set_header X-Real-IP $remote_addr; 
			proxy_set_header REMOTE-HOST $remote_addr; 
			proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
			proxy_set_header X-Forwarded-Proto $scheme;			
			client_max_body_size 50m; 
			client_body_buffer_size 2560k; 
			proxy_connect_timeout 1; 
			proxy_send_timeout 300; 
			proxy_read_timeout 3000; 
			proxy_buffer_size 2560k; 
			proxy_buffers 4 2560k; 
			proxy_busy_buffers_size 2560k; 
			proxy_temp_file_write_size 2560k; 
			proxy_next_upstream error timeout invalid_header http_500 http_503 http_404; 
			proxy_max_temp_file_size 128m; 
        }


        #若是http请求自动跳转到https,端口为公网地址端口
        error_page 497 https://$host:8380$request_uri;
		
        error_page   500 502 503 504  /50x.html;
		
        location = /50x.html {
            root   html;
        }



}
相关推荐
DevilSeagull17 分钟前
MySQL(1) 安装与配置
java·数据库·git·mysql·http·开源·github
2501_9130613439 分钟前
网络原理之HTTP(3)
java·网络·网络协议·http·面试
551只玄猫1 小时前
【计算机网络 实验报告7】传输层两种协议的对比与TCP连接管理分析
网络·网络协议·计算机网络·课程设计·传输层·实验报告·tcp连接
guojb8241 小时前
告别部署踩坑:用 Docker Compose 优雅搞定多前端站点、HTTPS 与 SSE 推送
nginx·docker·https
pengyi8710151 小时前
代理IP在爬虫中的核心应用,高匿代理避检测基础
大数据·网络·网络协议·tcp/ip·http
埃伊蟹黄面2 小时前
传输层协议UDP/TCP
网络协议·tcp/ip·udp
lularible3 小时前
PTP协议精讲(3.1):走进开源PTP世界——LinuxPTP项目全景
网络·网络协议·开源·嵌入式·ptp
下地种菜小叶3 小时前
RPC 超时、重试、幂等怎么一起设计?一次讲清调用失败、重试风暴与下游保护思路
网络·网络协议·rpc
code_li16 小时前
HTTPS免费证书配置指南
网络协议·http·https
以太浮标18 小时前
华为eNSP模拟器综合实验之- 主机没有配置缺省网关时,通过路由式Proxy ARP实现通信(arp-proxy enable)
运维·网络·网络协议·华为·智能路由器·信息与通信