nginx 1.12 HTTPS双向认证配置

本文详细介绍如何使用openssl生成CA证书、服务端证书及客户端证书,并提供Nginx配置示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

使用openssl生成相关证书:
#生成CA私钥,私钥会被加密,需要设置密码
openssl genrsa -aes256 -out ca.key 2048
#生成CA证书签名请求,需要输入CA私钥密码,并按提示输入以下信息:Country Name、State or Province Name、Locality Name、Organization Name、Organizational Unit Name、Common Name
openssl req -new -key ca.key -out ca.csr
#自签名生成CA证书,需要输入CA私钥密码
openssl x509 -req -days 36500 -sha1 -extensions v3_ca -signkey ca.key -in ca.csr -out ca.crt
 
#生成服务端私钥,私钥会被加密,需要设置密码
openssl genrsa -aes256 -out server.key 2048
#解密服务端私钥,需要输入服务端私钥密码
openssl rsa -in server.key -out server.key
#生成服务端证书签名请求,并按提示输入以下信息:Country Name、State or Province Name、Locality Name、Organization Name、Organizational Unit Name、Common Name
openssl req -new -key server.key -out server.csr
#用CA私钥签名生成服务端证书,需要输入CA私钥密码
openssl x509 -req -days 36500 -sha1 -extensions v3_req -CA ca.crt -CAkey ca.key -CAserial ca.srl -CAcreateserial -in server.csr -out server.crt
 
#生成客户端私钥,私钥会被加密,需要设置密码
openssl genrsa -aes256 -out client.key 2048
#解密客户端私钥,需要输入客户端私钥密码
openssl rsa -in client.key -out client.key
#生成客户端证书签名请求,并按提示输入以下信息:Country Name、State or Province Name、Locality Name、Organization Name、Organizational Unit Name、Common Name
openssl req -new -key client.key -out client.csr
#用CA私钥签名生成客户端证书,需要输入CA私钥密码
openssl x509 -req -days 36500 -sha1 -extensions v3_req -CA ca.crt -CAkey ca.key -CAserial ca.srl -CAcreateserial -in client.csr -out client.crt
#导出客户端私钥和证书到p12证书,需要设置p12证书密码
openssl pkcs12 -export -clcerts -inkey client.key -in client.crt -out client.p12
 
配置示例:
server {
listen 80;
listen 443 ssl;
server_name localhost;
 
keepalive_timeout 70;
 
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 10m;
ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
ssl_prefer_server_ciphers on;
ssl_certificate /usr/local/nginx/ssl/server.crt;
ssl_certificate_key /usr/local/nginx/ssl/server.key;
ssl_client_certificate /usr/local/nginx/ssl/ca.crt;
ssl_verify_client on;
 

转载于:https://www.cnblogs.com/gjb724332682/p/8610714.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值