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

目录
相关文章
|
4月前
|
应用服务中间件 Linux 网络安全
如何在 CentOS 7 上为 Nginx 创建自签名 SSL 证书
如何在 CentOS 7 上为 Nginx 创建自签名 SSL 证书
224 1
|
1天前
|
应用服务中间件 Linux 网络安全
nginx安装部署ssl证书,同时支持http与https方式访问
为了使HTTP服务支持HTTPS访问,需生成并安装SSL证书,并确保Nginx支持SSL模块。首先,在`/usr/local/nginx`目录下生成RSA密钥、证书申请文件及自签名证书。接着,确认Nginx已安装SSL模块,若未安装则重新编译Nginx加入该模块。最后,编辑`nginx.conf`配置文件,启用并配置HTTPS服务器部分,指定证书路径和监听端口(如20000),保存后重启Nginx完成部署。
73 6
|
1月前
|
安全 应用服务中间件 网络安全
如何测试Nginx反向代理实现SSL加密访问的配置是否正确?
如何测试Nginx反向代理实现SSL加密访问的配置是否正确?
61 3
|
1月前
|
安全 应用服务中间件 网络安全
配置Nginx反向代理实现SSL加密访问的步骤是什么?
我们可以成功地配置 Nginx 反向代理实现 SSL 加密访问,为用户提供更安全、可靠的网络服务。同时,在实际应用中,还需要根据具体情况进行进一步的优化和调整,以满足不同的需求。SSL 加密是网络安全的重要保障,合理配置和维护是确保系统安全稳定运行的关键。
120 3
|
2月前
|
安全 应用服务中间件 Shell
nginx配置https的ssl证书和域名
nginx配置https的ssl证书和域名
|
2月前
|
应用服务中间件 网络安全 nginx
nginx如何代理ssl
nginx如何代理ssl
|
4月前
|
jenkins 应用服务中间件 持续交付
如何配置 Nginx 作为 Jenkins 的反向代理并启用 SSL 加密
如何配置 Nginx 作为 Jenkins 的反向代理并启用 SSL 加密
264 8
|
4月前
|
负载均衡 前端开发 应用服务中间件
使用Nginx配置SSL以及部署前端项目
本文介绍了如何使用Nginx配置SSL证书以启用HTTPS,并展示了如何通过Nginx部署前端项目,包括配置SSL证书、设置代理和负载均衡的示例。
135 2
|
4月前
|
应用服务中间件 网络安全 nginx
运维专题.Docker+Nginx服务器的SSL证书安装
运维专题.Docker+Nginx服务器的SSL证书安装
193 3
|
4月前
|
Ubuntu 应用服务中间件 网络安全
如何在 Ubuntu 14.04 上为 Nginx 创建 SSL 证书
如何在 Ubuntu 14.04 上为 Nginx 创建 SSL 证书
114 0