因为技术更新迭代的原因, XP的电脑上的IE6/IE7不支持sha256签名算法. 而XP用户在国内尚有约10%的市场占有率, 我们应该怎样才能让我们的网站https业务支持到XP呢?

原理:

在介绍方法之前, 给大家介绍下另外一个概念:

SNI(https://en.wikipedia.org/wiki/Server_Name_Indication): 是用于让单个IP支持多个SSL证书配置的TLS协议扩展. 原理就是浏览器在TCP握手时将域名哈希信息和随机种子一起发送给服务器, 服务器根据域名去配置中寻找不同的SSL配置实现同IP多证书.

我们正好可以利用SNI的此特性, 对支持SNI的现代化浏览器/系统提供SHA256以支持更安全的加密通信, 对不支持SNI的浏览器做SHA1证书以向下兼容. 即可达到SHA256+SHA1证书实现100%的浏览器市场占有率.

成本:

你需要多申请一份sha1算法的证书. 推荐使用WoSign(https://www.wosign.com/)提供的免费SSL证书. 申请时一定选择英文+sha1的.

开始干:

http{
    ...
    server {
        server_name                 xxx;  #这儿不能写我网站的域名, 也就是www.it68.com.cn, 原因请自己想象
        listen                      443 ssl;
        ssl                         on;
        ssl_certificate             /home/ssl/it68_sha1.crt;
        ssl_certificate_key         /home/ssl/it68_sha1.pem;
        ssl_session_cache           shared:SSL:10m;
        ssl_session_timeout         10m;

        location / {
            ...
        }
    }

    server {
        server_name                 *.it68.com.cn;
        listen                      443 ssl spdy;
        ssl                         on;
        ssl_certificate             /home/ssl/it68_sha256.crt;
        ssl_certificate_key         /home/ssl/it68_sha256.pem;
        ssl_prefer_server_ciphers   on;
        ssl_ciphers                 ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:DES-CBC3-SHA:HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
        ssl_protocols               TLSv1 TLSv1.1 TLSv1.2;
        ssl_session_cache           shared:SSL:10m;
        ssl_session_timeout         10m;
        ssl_stapling                on;
        spdy_headers_comp           9;

        location / {
            ...
        }
    }
}

运行效果:

IE6/IE7
TB1D91_IVXXXXb8XVXXXXXXXXXX.png

现代浏览器
TB1k9PkIVXXXXaGXpXXXXXXXXXX.png

后话:

如果您不懂技术又想占有更全的浏览器市场, 欢迎联系我帮您配置, 收费100元/台服务器. 微信: xiaohuilam1992.

原文:

IT乐吧: NGINX简单配置 让SHA256证书支持XP SP1/SP2
https://www.it68.com.cn/2015/08/06/nginx-ssl-sha256-support-xp-ie-and-ie7/


ARGUS
1.6k 声望155 粉丝

便宜的SSL证书 www.ssl.com.ru