Nginx ssl双向认证

简介: Nginx ssl双向认证

生成证书

# 生成ca私钥
openssl genrsa -out ca.key 4096
#  生成ca证书
openssl req -new -x509 -days 3650 -key ca.key -out ca.crt
# 生成服务端私钥
openssl genrsa -out server.key 4096
# 服务端证书请求
openssl req -new -key server.key -out server.csr
# ca签发服务端证书
openssl x509 -req -in server.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out server.crt -days 3650
# 生成客户端私钥
openssl genrsa -out client.key 4096
# 客户端证书请求
openssl req -new -key client.key -out client.csr
# 签发客户端证书
openssl x509 -req -in client.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out client.crt -days 3650
# 验证证书状态
openssl verify -verbose -CAfile ca.crt client.crt server.crt

nginx开启双向认证

server {
    listen   443 ssl;
    server_name ba-ssl.sample.com;
    ssl_certificate     /etc/nginx/conf.d/ssl/client_bauth/server.crt;
    ssl_certificate_key /etc/nginx/conf.d/ssl/client_bauth/server.key;
    ssl_client_certificate /etc/nginx/conf.d/ssl/client_bauth/ca.crt;
    ssl_verify_client onq;
    location / {
       return 200 "ok";
    }
}

Curl测试

客户端证书文件:

暂时无法在飞书文档外展示此内容

确保curl版本不能低于 7.47版本,否则会出现:400 No required SSL certificate was sent

curl -v --cacert ca.crt --cert client.crt --key client.key https://xxx.sample.com

image.png

目录
相关文章
|
1月前
|
应用服务中间件 Linux 网络安全
如何在 CentOS 7 上为 Nginx 创建自签名 SSL 证书
如何在 CentOS 7 上为 Nginx 创建自签名 SSL 证书
106 1
|
1月前
|
jenkins 应用服务中间件 持续交付
如何配置 Nginx 作为 Jenkins 的反向代理并启用 SSL 加密
如何配置 Nginx 作为 Jenkins 的反向代理并启用 SSL 加密
56 8
|
1月前
|
负载均衡 前端开发 应用服务中间件
使用Nginx配置SSL以及部署前端项目
本文介绍了如何使用Nginx配置SSL证书以启用HTTPS,并展示了如何通过Nginx部署前端项目,包括配置SSL证书、设置代理和负载均衡的示例。
76 2
|
1月前
|
应用服务中间件 网络安全 nginx
运维专题.Docker+Nginx服务器的SSL证书安装
运维专题.Docker+Nginx服务器的SSL证书安装
43 3
|
2月前
|
应用服务中间件 网络安全 nginx
使用Nginx Proxy Manager配置Halo的反向代理和申请 SSL 证书
本文引导如何用Nginx Proxy Manager (NPM)配置Halo的反向代理与SSL证书。NPM简化了Nginx的配置流程,适合无Nginx基础的用户。安装NPM无需额外安装Nginx,避免端口冲突。通过`docker-compose.yaml`启动NPM服务,并映射必要的端口。配置Halo反向代理需登录NPM面板,添加代理主机,设置域名、转发IP等参数。NPM支持自动申请与续期SSL证书,确保网站安全访问。更多Halo安装细节,请参考[如何在Linux云服务器上通过Docker Compose部署安装Halo](https://zhangfeidezhu.com/?p=631).
134 0
使用Nginx Proxy Manager配置Halo的反向代理和申请 SSL 证书
|
1月前
|
Ubuntu 应用服务中间件 网络安全
如何在 Ubuntu 14.04 上为 Nginx 创建 SSL 证书
如何在 Ubuntu 14.04 上为 Nginx 创建 SSL 证书
78 0
|
1月前
|
应用服务中间件 Linux API
Linux 利用 Cloudflare API 配置 acme.sh 自动续签 SSL (Apache、Nginx适用)
安装acme.sh工具,命令为`curl https://get.acme.sh | sh -s email=你的邮箱`。接着配置Cloudflare API,创建并记录API令牌及Zone ID。最后通过`acme.sh --issue -d 你的域名 --dns dns_cf`签发SSL证书,对于Nginx可使用`acme.sh --install-cert`命令安装证书,并设置自动重载Nginx服务。
|
2月前
|
负载均衡 应用服务中间件 nginx
nginx配置kibana访问用户名和密码认证、及无认证访问配置
nginx配置kibana访问用户名和密码认证、及无认证访问配置
130 0
|
2月前
|
应用服务中间件 网络安全 nginx
|
2月前
|
网络安全
嗯… 无法访问此页面43.139.210.211 花了太长时间进行响应,无法连接宝塔,是服务器内的宝塔面板开启了ssl的验证,但是没有绑定证书,所以被拦截,关闭宝塔面板的ssl访问认证恢复正常
嗯… 无法访问此页面43.139.210.211 花了太长时间进行响应,无法连接宝塔,是服务器内的宝塔面板开启了ssl的验证,但是没有绑定证书,所以被拦截,关闭宝塔面板的ssl访问认证恢复正常