因为苹果ATS的要求, tomcat服务器要求上https+TLS1.2, 前面搞定了https,但是tls一直是1.0, 甚至把跑了一年的服务器重启了, 不解决问题.
思路如下:
1. 将openJDK升级到1.8, 因为1.8以后的java默认支持tls 1.2, 不然就是1.0
2. tomcat server.xml修改了一下:
<Connector port="443" protocol="HTTP/1.1" keystoreFile="/tomcat/213981844530408/213981844530408.pfx" keystoreType="PKCS12" keystorePass="213981844530408" maxThreads="150" SSLEnabled="true" scheme="https" secure="true" ciphers="TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256" clientAuth="false" SSLProtocol="TLSv1+TLSv1.1+TLSv1.2" SSLCipherSuite="ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4" />
重启tomcat
终于支持tls1.2了.
附上:
1. Symantec网站可以查目前的tls支持状况:
https://cryptoreport.websecurity.symantec.com/checker/views/certCheck.jsp
2. Mac OS上面可以用命令查ats支持的情况, 命令是nscurl --ats-diagnostics --verbose 接口https地址
你会看到一堆的pass, 表示ATS支持成功.
遗留问题, 发现留下了心血(heartbleed)的漏洞.