nginx代理服务器配置双向证书验证的方法
发表于:2025-12-01 作者:千家信息网编辑
千家信息网最后更新 2025年12月01日,生成证书链用脚本生成一个根证书, 一个中间证书(intermediate), 三个客户端证书.中间证书的域名为 localhost.#!/bin/bash -xset -efor C in `echo
千家信息网最后更新 2025年12月01日nginx代理服务器配置双向证书验证的方法
生成证书链
用脚本生成一个根证书, 一个中间证书(intermediate), 三个客户端证书.
中间证书的域名为 localhost.
#!/bin/bash -xset -efor C in `echo root-ca intermediate`; do mkdir $C cd $C mkdir certs crl newcerts private cd .. echo 1000 > $C/serial touch $C/index.txt $C/index.txt.attr echo '[ ca ]default_ca = CA_default[ CA_default ]dir = '$C' # Where everything is keptcerts = $dir/certs # Where the issued certs are keptcrl_dir = $dir/crl # Where the issued crl are keptdatabase = $dir/index.txt # database index file.new_certs_dir = $dir/newcerts # default place for new certs.certificate = $dir/cacert.pem # The CA certificateserial = $dir/serial # The current serial numbercrl = $dir/crl.pem # The current CRLprivate_key = $dir/private/ca.key.pem # The private keyRANDFILE = $dir/.rnd # private random number filenameopt = default_cacertopt = default_capolicy = policy_matchdefault_days = 365default_md = sha256[ policy_match ]countryName = optionalstateOrProvinceName = optionalorganizationName = optionalorganizationalUnitName = optionalcommonName = suppliedemailAddress = optional[req]req_extensions = v3_reqdistinguished_name = req_distinguished_name[req_distinguished_name][v3_req]basicConstraints = CA:TRUE' > $C/openssl.confdoneopenssl genrsa -out root-ca/private/ca.key 2048openssl req -config root-ca/openssl.conf -new -x509 -days 3650 -key root-ca/private/ca.key -sha256 -extensions v3_req -out root-ca/certs/ca.crt -subj '/CN=Root-ca'openssl genrsa -out intermediate/private/intermediate.key 2048openssl req -config intermediate/openssl.conf -sha256 -new -key intermediate/private/intermediate.key -out intermediate/certs/intermediate.csr -subj '/CN=localhost.'openssl ca -batch -config root-ca/openssl.conf -keyfile root-ca/private/ca.key -cert root-ca/certs/ca.crt -extensions v3_req -notext -md sha256 -in intermediate/certs/intermediate.csr -out intermediate/certs/intermediate.crtmkdir outfor I in `seq 1 3` ; do openssl req -new -keyout out/$I.key -out out/$I.request -days 365 -nodes -subj "/CN=$I.example.com" -newkey rsa:2048 openssl ca -batch -config root-ca/openssl.conf -keyfile intermediate/private/intermediate.key -cert intermediate/certs/intermediate.crt -out out/$I.crt -infiles out/$I.requestdone
服务器
nginx 配置
worker_processes 1;events { worker_connections 1024;}stream{ upstream backend{ server 127.0.0.1:8080; } server { listen 8888 ssl; proxy_pass backend; ssl_certificate intermediate.crt; ssl_certificate_key intermediate.key; ssl_verify_depth 2; ssl_client_certificate root.crt; ssl_verify_client optional_no_ca; }}客户端
curl \ -I \ -vv \ -x https://localhost:8888/ \ --proxy-cert client1.crt \ --proxy-key client1.key \ --proxy-cacert ca.crt \ https://www.baidu.com/
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对的支持。如果你想了解更多相关内容请查看下面相关链接
证书
内容
客户
客户端
学习
生成
服务器
服务
配置
三个
价值
就是
更多
篇文章
脚本
链接
参考
工作
支持
双向
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络安全大赛和机器人
云南统一软件开发推广
如何增加网络安全
黑龙江软件开发定制近期价格
存储技术与数据库设计
找不到radius服务器
从学生的角度看网络安全
kvm虚拟机无法连接到服务器
软件开发中 甲方提新需求
建立网络 将强网络安全
怎么查看sql数据库
数据库和网页空间
九阴真经最新服务器
电脑怎样重启数据库
山西ntp网络时间服务器供应商
世善缘互联网科技有限公司
网络安全风险处置计划
杭州的互联网科技发展
网络安全管理什么公安岗位
安徽远程服务器租赁多少钱
杭州嘉得网络技术有限公司
怎么向网络安全局举报
游戏运营服务器管理系统
数据库异常抓不到
网络安全中学生包括哪些方面
高级工程师网络技术教学 1
教资数据库技术应用及其特点
服务器白色面板
数据库一旦建立就不能修改重命名
江阴软件开发价格优惠