我有几台运行Centos 5.11的虚拟机(并且由于多种原因无法升级)
作为检查以验证机器是否与此处描述的新PayPal更新兼容: https://www.paypal-knowledge.com/infocenter/index?page=content&widgetview=true&id=FAQ1766&viewlocale=en_US
我在shell中运行它:
grep -C 5 --color=always "VeriSign Class 3 Public Primary Certification Authority - G5" /etc/pki/tls/certs/ca-bundle.crt
一切看起来都很好,这是输出:
数据: 版本:3(0x2) 序列号: 18:DA:D1:9E:26:7D:E8:BB:4A:21:58:CD:CC:6B:3B:图4a 签名算法:sha1WithRSAEncryption 发行人:C = US,O = VeriSign,Inc.,OU = VeriSign Trust Network,OU =(c)2006 VeriSign,Inc。 - 仅供授权使用,CN = VeriSign Class 3公共主要证书颁发机构 - G5 合法性 不是之前:2006年11月8日00:00:00 GMT 不是之后:格林威治标准时间7月16日23:59:59 2036 GMT 主题:C = US,O = VeriSign,Inc.,OU = VeriSign Trust Network,OU =(c)2006 VeriSign,Inc。 - 仅供授权使用,CN = VeriSign Class 3公共主要证书颁发机构 - G5 主题公钥信息: 公钥算法:rsaEncryption 公钥:(2048位) 模数: 00:AF:24:08:08:29:7A:35:9E:60:0C:AA:E7:4B:3B:
对我而言,这意味着新的所需G5根证书实际上就在那里。 但是,在对沙盒进行测试时,该沙盒应该已经使用此命令使用新规范:
openssl s_client -connect api-3t.sandbox.paypal.com:443 -showcerts
回复是:
CONNECTED(00000003)
2052:错误:14077410:SSL例程:SSL23_GET_SERVER_HELLO:sslv3警报握手失败:s23_clnt.c:586:
当然,在非沙盒链接上执行相同操作时没有问题。
我101%被困在这里。证书在那里,但我仍然失败了? 已安装的Openssl(以及最新的官方回购利用)是openssl-0.9.8e-40.el5_11。
我看到了有关握手问题的其他几个问题,但是它们似乎都没有解决这样的问题(证书到位但仍然会发生连接)。
知道为什么会这样吗?
编辑: 同时尝试以这种方式调用ssl3:
openssl s_client -ssl3 -connect api-3t.sandbox.paypal.com:443 -showcerts
我得到了这个:
CONNECTED(00000003)
6064:错误:14094410:SSL例程:SSL3_READ_BYTES:sslv3警报握手失败:s3_pkt.c:1092:SSL警报号40 6064:错误:1409E0E5:SSL例程:SSL3_WRITE_BYTES:ssl握手失败:s3_pkt.c:536:
答案 0 :(得分:0)
的OpenSSL 0.9.8e-40.el5_11。
Paypal要求您支持TLS 1.2。仅自4年前发布的OpenSSL版本1.0.1起支持TLS 1.2。由于旧版OpenSSL不支持TLS 1.2,但最多只支持TLS 1.0,因此会出现握手错误。这与证书无关。