一次nginx NET::ERR_SSL_OBSOLETE_VERSION 解决

nginx 的https证书到期,替换后,访问网站出现

NET::ERR_SSL_OBSOLETE_VERSION ,连接已重置

说的是没有使用TLS1.2,不安全,看了一下配置

图片[1]-一次nginx NET::ERR_SSL_OBSOLETE_VERSION 解决-百分数

之前是这样的,没有指定版本,然后指定版本再试试

添加这一行

 ssl_protocols TLSv1.2 TLSv1.1 TLSv1;

图片[2]-一次nginx NET::ERR_SSL_OBSOLETE_VERSION 解决-百分数

添加完了之后,再访问,还是这样,TLSv1.2没用上,看了配置,跟其他机器的配置一样,其他的就没事,这个机器比较老,centos5。。。平时都不咋动它。

后来查阅资料发现

“如果需要支持1.2的话.  注:OpenSSL版本要求 >= 1.0.1”

注:  配置tls1.2不生效, 原因是某些站点ssl部分配置不一致。 所以一定要注意: 如果你有多个站点配置了https, 所有的站点的ssl配置部分一定要一致,要不然不会生效。 

没有多个站点,所以第二条不存在了

检查openssl版本

图片[3]-一次nginx NET::ERR_SSL_OBSOLETE_VERSION 解决-百分数

0.9.8,难怪不成功

图片[4]-一次nginx NET::ERR_SSL_OBSOLETE_VERSION 解决-百分数

图片[5]-一次nginx NET::ERR_SSL_OBSOLETE_VERSION 解决-百分数

perl需要5.10.0版本,太麻烦了,所以选择换台机器,在另一台解析,proxy_pass到这台机器就行了

图片[6]-一次nginx NET::ERR_SSL_OBSOLETE_VERSION 解决-百分数

    server
        {
        listen       80;
        listen    443 ssl;
        server_name  xxx.com;
        charset  utf-8;
        error_page  404 /404.html;

        ssl_session_cache shared:SSL:10m;
        ssl_session_timeout 10m;
        ssl_protocols TLSv1.2 TLSv1.1 TLSv1;
        ssl_certificate      xxx.com.crt;
        ssl_certificate_key  xxx.com.key;
        ssl_prefer_server_ciphers on;


      location / {
        proxy_buffer_size  64k;
        proxy_buffers      32 32k;
        proxy_busy_buffers_size 128k;
        add_header X-Static transfer;
        proxy_pass http://192.168.1.128;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header REMOTE-HOST $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}
192.168.1.128(centos5)上就监听一个80端口就行了

© 版权声明
THE END
喜欢就支持一下吧
点赞14
分享
评论 抢沙发