苹果ATS - 证书选择及配置

发布于 1周前 作者 phonegap100 最后一次编辑是 5天前 来自 分享

来源https://www.west.cn/faq/list.asp?unid=1314

2017年1月1日开始,苹果要求所有iOS应用必须使用ATS(App Transport Security),即APP内连接必须使用安全的HTTPS并且需要满足ios9中的新特性。

1、证书颁发机构的要求

推荐用Symantec/GeoTrust/Godaddy/GlobalSign/comodo品牌的OV及以上证书,个人用户可签发DV证书。而CFCA品牌只在最新的苹果设备上才支持,不推荐CFCA品牌。不推荐使用免费证书;

2、证书的哈希算法和秘钥长度的要求

证书的哈希算法:在上面推荐的证书品牌中是哈希算法都是SHA256或者更高强度的算法;

秘钥长度: 如果自己创建CSR,请使用2048位或以上的RSA加密算法;

3、传输协议的要求

必须满足 TLS1.2

4、web服务器要求

Apache(2.2.23+) / Nginx(1.0.12+) 依赖 OpenSSL 1.0.1 + 以支持 TLSv1.2.

Tomcat 7 + Jdk 7.0 + 支持 TLSv1.2

IIS6(win2003)不支持,IIS7.5 默认未开启 TLSv1.2 需修改注册表以开启 TLSv1.2。

5、签字算法: 必须满足如下算法


TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA
TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA

苹果ATS特性服务器配置指南 以下举例不同服务器的ATS协议及加密套件如何配置(只列举了与ATS有关的属性,请不要完全复制以下配置)

1.Nginx 证书配置

server {    
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;   
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    }

2.Apache 证书配置

<IfModule mod_ssl.c>
        <VirtualHost *:443>
        SSLProtocol TLSv1 TLSv1.1 TLSv1.2
        SSLCipherSuite ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4        
        </VirtualHost>
</IfModule>

3.Tomcat 证书配置

<Connector port="443" protocol="HTTP/1.1" SSLEnabled="true"
    scheme="https" secure="true"
    ciphers="TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256"    
    SSLProtocol="TLSv1+TLSv1.1+TLSv1.2"    
    SSLCipherSuite="ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4" 
/>
回到顶部