HTTPS一般错误排查

来源:互联网 发布:设计师笔记本2017知乎 编辑:程序博客网 时间:2024/06/05 15:23

HTTPS 错误排查经验总结

对于WEB服务器来说,随着互联网对于数据安全的重视,HTTPS已然成为标配,自从2017.1.1日开始,苹果强制所有提交到 App Store 的应用强制开启ATS(App Transport Security)安全功能。启用ATS后,它会屏蔽明文HTTP资源加载,强制App通过HTTPS连接网络服务,通过传输加密保障用户数据安全。

ATS默认的安全要求:
服务器必须支持传输层安全(TLS)协议1.2以上版本;
通讯加密套件仅限支持完全正向加密的套件;
证书必须使用SHA256或更高的哈希算法签名;以及2048位以上RSA密钥或256位以上ECC密钥。

不满足以上条件,ATS会拒绝连接。

HTTPS的部署与服务需要复杂的前期工作,主要包括证书,加解密等。当然也是最容易出现问题的地方。

证书问题

字签证书
认证证书
验证证书与私钥是否匹配:
openssl x509 -noout -text -in your.crt
openssl rsa ——————-

openssl

版本历史

(openssl1.0.1+版本支持TLS1.1和TLS1.2协议)

curl

版本历史

链接:curl版本Changes
关键版本节点:

  • 支持SNI:curl-7.18.1 - March 30 2008
    -SNI(Server Name Indification)
  • 固定IP地址访问:7.21.3 - December 15 2010,
    -访问格式:curl https://host/uri –resolve host:443:IP , 比如curl https://www.example.com –resolve www.example.com:443:192.168.1.101 这样就能固定访问的IP地址以及端口,而不会造成host与证书中CN不一致导致的证书错误了。证书报错实例:curl https://192.168.1.101/uri -H “host:www.example.com” 注意的是,此种方式访问curl不会携带SNI扩展信息。

  • TLSV1.3 supported: 7.52.0 - December 21 2016

0 0