1 、问题
apache错误日志提示如下
AH02004: SSL Proxy: Peer certificate is expired
接下来日志会打印ssl握手失败
然后抓包分析的时候错误提示如下
Level: Fatal, Description: Certificate Unkonw
2 、open ssl命令探测服务器证书日期
我们用open ssl命令探测服务器证书日期
echo | openssl s_client -connect host:port 2>/dev/null | openssl x509 -noout -dates
比如我 想知道百度地址(www.baidu.com)服务器证书的日期如下命令
echo | openssl s_client -connect 220.181.57.216:443 2>/dev/null | openssl x509 -noout -dates
notBefore=Mar 18 00:00:00 2019 GMT
notAfter=Mar 17 12:00:00 2020 GMT
我们开可以用open ssl命令探测服务端是否支持某个加密套件
openssl s_client -connect host:port -msg -state -cipher 具体加密套件
一般https协议,port端口默认值是443
3 总结:
ssl协议握手失败原因部分总结
Level: Fatal, Description: Protocol Version
一般是ssl协议版本不匹配导致
Level: Fatal, Description: HandShake Failure
一般可以向加密套件是否匹配(比如client hello数据包里面的加密套件包含Cipher Suite:Unknown的时候),内网是否拦截,是否有权限访问这个链接进行思考
Level: Fatal, Description: Certificate Unkonw
证书过期啥的。