• nginx 配置ssl


    单向SSL配置实例:

    server{
        listen 443 ssl;
        server_name www.123.com;
        root /data/wwwroot/www.123.com/ ;
        index index.html ;
        ssl_certificate server.crt;
        ssl_certificate_key server.key;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_ciphers ALL:!DH:!EXPORT:!RC4:+HIGH:+MEDIUM:!eNULL;
        ssl_prefer_server_ciphers on;
        location / {
        }
    }

    配置说明:

    1. 443端口为ssl监听端口。
    2. ssl on表示打开ssl支持。
    3. ssl_certificate指定crt文件所在路径,如果写相对路径,必须把该文件和nginx.conf文件放到一个目录下。
    4. ssl_certificate_key指定key文件所在路径。
    5. ssl_protocols指定SSL协议。
    6. ssl_ciphers配置ssl加密算法,多个算法用:分隔,ALL表示全部算法,!表示不启用该算法,+表示将该算法排到最后面去。
    7. ssl_prefer_server_ciphers 如果不指定默认为off,当为on时,在使用SSLv3和TLS协议时,服务器加密算法将优于客户端加密算法。

    注意:

    nginx在源码安装的时候,默认没有开启ssl模块,需要重新编译安装,安装命令如下:

    ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
    make && make install

    然后重启nginx

    双线SSL配置示例

    server{
        listen 443 ssl;
        server_name www.123.com;
        root /data/wwwroot/www.123.com/ ;
        index index.html ;
        ssl_certificate server.crt;
        ssl_certificate_key server.key;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_ciphers ALL:!DH:!EXPORT:!RC4:+HIGH:+MEDIUM:!eNULL;
        ssl_prefer_server_ciphers on;
        ssl_client_certificate ca.crt; //这里的ca.crt是根证书公钥文件
        ssl_verify_client on;
        location / {
        }
    }

    说明:

    就是比单向多了加粗的俩行,但是配置了双向后,服务器还要对客户端的证书进行认证,一般情况下,我们单向SSL使用较为普遍。

    注:

    因为我们的证书为自建CA签发的证书,浏览器并不信任该证书,所以在访问的时候会提示“证书不受信任”。

    这种情况,只需要把CA的根证书导入到浏览器中 “受信任的根证书颁发机构” 中就不会再提示 “证书不受信任”。

    导出为windows可用的证书方式如下:

    [root@localhost root_ca]# openssl pkcs12 -export -inkey private/ca.key -in ca.crt -out ca.pfx

    导出的证书复制到windows上,双击安装,按照向导导入到 “受信任的根证书颁发机构” ,即可。

  • 相关阅读:
    前端模块的前生今世
    variable fonts
    node
    webpack tree shaking
    es6 proxy浅析
    如何实现优美的骨架屏
    阿里巴巴Java开发手册建议创建HashMap时设置初始化容量,但是多少合适呢?
    新来个技术总监,禁止我们使用Lombok!
    2020年Java程序员应该学习的10大技术
    为啥HashMap的默认容量是16?
  • 原文地址:https://www.cnblogs.com/yyxianren/p/10839373.html
Copyright © 2020-2023  润新知