zoukankan      html  css  js  c++  java
  • nginx 1.12 HTTPS双向认证配置

    使用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;
     
  • 相关阅读:
    Java Web学习总结(16)——JSP的九个内置对象
    Java Web学习总结(15)——JSP指令
    【我的物联网成长记11】8招带你玩转规则引擎
    云图说|高效管理华为云SAP的“秘密武器”
    Python 中更优雅的日志记录方案
    有了它,Python编码再也不为字符集问题而发愁了!
    【鲲鹏来了】手把手教你创造一个属于自己的鲲鹏开发者环境
    解密昇腾AI处理器--DaVinci架构(计算单元)
    使用Keil5构建GD32450i-EVAL工程
    云图说|SAP技术画册“一点通”
  • 原文地址:https://www.cnblogs.com/gjb724332682/p/8610714.html
Copyright © 2011-2022 走看看