openssl生成自签(Nginx)证书

生成自签证书,提供给Nginx代理,对外使用https访问业务系统。

1、在创建 /opt/ssl 路径;

2、在 /opt/ssl 路径下新建 openssl.cnf 文件,文件内容为:

req

distinguished_name = req_distinguished_name

x509_extensions = v3_req

prompt = no

req_distinguished_name

C = CN

ST = GuangDong

L = GuangZhou

O = Leatop

OU = Pmhub

CN = 172.16.119.22

v3_req

keyUsage = critical, digitalSignature, keyEncipherment

extendedKeyUsage = serverAuth

subjectAltName = @alt_names

alt_names

IP.1 = 172.16.119.22

3、在 /opt/ssl 下执行命令(证书有效期10年为例):

openssl req -x509 -nodes -days 3650 -newkey rsa:2048 -keyout server.key -out server.crt -config openssl.cnf -extensions v3_req

此时生成了server.crt、server.key文件。

4、使用Nginx代理:

将生成的server.crt、server.key文件,放到Nginx的conf目录下,并配置Nginx配置文件:

server {

listen 8081 ssl; # ssl新增

server_name localhost_8082;

server_name_in_redirect off;

add_header 'Access-Control-Allow-Credentials' 'true';

add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';

add_header 'Access-Control-Allow-Headers' 'DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type';

证书文件路径

ssl_certificate /etc/nginx/conf.d/server.crt; # ssl新增

ssl_certificate_key /etc/nginx/conf.d/server.key; # ssl新增

ssl_session_timeout 10m; # ssl新增

ssl_session_cache shared:SSL:10m; # ssl新增

ssl_protocols TLSv1.2 TLSv1.3; # ssl新增

ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; # ssl新增

ssl_prefer_server_ciphers on; # ssl新增

其他配置内容省略...

}

相关推荐
黑贝是条狗12 分钟前
Excel批量处理工具
linux·运维·excel
星月昭铭13 分钟前
5步在Trae中配置SQLcl MCP,让AI直接操作Oracle数据库
数据库·oracle·ai编程
实心儿儿17 分钟前
Linux —— 进程间通信 - 匿名管道
linux·运维·服务器
phltxy21 分钟前
Redis Set:原理、命令与实战场景详解
数据库·redis·缓存
他是龙55121 分钟前
SQLi-Labs 通关笔记(Less-38 ~ Less-53):堆叠注入与 ORDER BY 注入
数据库·笔记·less
今天也是元气满满的一天呢23 分钟前
20260512-SQL学习大览
数据库·sql·学习
wgl66652026 分钟前
进程间通信
linux·运维·服务器
悠悠1213827 分钟前
从0到1掌握Ansible:让自动化运维不再是梦想
运维·自动化·ansible
璞华Purvar28 分钟前
VC PE投资管理系统选型的核心考量因素有哪些?(2026选型指南)
大数据·运维·人工智能
北秋,28 分钟前
Web Security Academy 第二关:SQL 注入登录绕过
数据库·sql