原文阅读:苹果ATS对SSL/TLS的安全检测要求
苹果(Apple)公司一向有着对安全性要求极高的著称,如果你申请了SSL证书并且部署到服务器中,但这并不意味SSL部署符合Apple ATS的检测要求,Apple对证书算法、有效期、加密套件、SSL安全漏洞都有极严格的要求。
Apple ATS全App Transport Security,即ATS,是苹果公司在iOS 9和Mac OS X 10.11(El Capitan)中推出的一个新的安全标准。总的来说满足前向安全性(Forward Secrecy)加密技术、服务器使用最新的TLS1.2安全协议、SHA256以上的证书签名算法三个要点即可,
使用在线工具可检查结果:https://infinisign.com/tools/sslcheck/?lang=cn
证书基本要求
- 经Apple ATS信任的CA机构签发的SSL数字,详情查看:iOS 中可用的受信任根证书列表[](https://support.apple.com/zh-...
- 签发证书的通用名称证书与域名匹配,非常重要;
- 证书时间有效,使用在线工具检查;
- 证书公钥算法使用RSA 2048位及以上,或使用更高的算法ECC 256加密算法;
- 使用SHA2级别的证书签名算法,例如SHA-256, SHA-512等;
服务器配置项
- 开启服务器SSL/TLS要求的端口例如443,8443等并助部署支持https协议
- 支持TLS1.0, TLS1.1, TLS1.2,禁用SSL3.0和SSL2.0
- 支持前向安全性
-
iOS 密码套件支持
RSA算法要求使用以下加密套件:
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_SHADSA算法要求使用以下加密套件:
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
重要配置项检查
Apache配置项
SSLProtocol all -SSLv2 -SSLv3
SSLCipherSuite ECDH:AESGCM:HIGH:!RC4:!DH:!MD5:!aNULL:!eNULL;
Nginx配置项
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ECDH:AESGCM:HIGH:!RC4:!DH:!MD5:!aNULL:!eNULL;
Tomcat要求环境 tomcat7+和JDK1.7+,配置参考如下:
<Connector port="443" protocol="org.apache.coyote.http11.Http11Protocol"
maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
keystoreFile="keystore/domain.jks" keystorePass="证书密码"
clientAuth="false" sslProtocol="TLS"
ciphers="TLS_RSA_WITH_AES_128_GCM_SHA256,
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,
TLS_RSA_WITH_AES_128_CBC_SHA,
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,
TLS_RSA_WITH_AES_128_CBC_SHA256,
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,
SSL_RSA_WITH_3DES_EDE_CBC_SHA,
TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA" />
Windows IIS
IIS要求环境 windows server 2008 R2/IIS 7+ 以上版本,详细设置参考:Windows服务器IIS配置符合苹果ATS方法
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。