我有麻烦连接到SSL站点(不是我的)从命令行。 authenticationpath为“GeoTrust Global CA”>“GeoTrust SSL CA”>“* .131500.com.au”。 服务器最近取代了他们的证书,(从2013年5月13日起有效),这将在这个时间停止工作。
使用curl,wget和“openssl s_client”,whynopaddlock.com以及三个不同的主机(两个不同的Ubuntu 13.04主机,包括一个新的VM和一个Windows-7-x64 / cygwin),我看到了同样的问题。
使用浏览器时我没有问题(Windows 7-x64上的Google Chrome 26.0.1410.64 m)。
有没有人在这里有任何指针? 我通常会责怪我的SSL客户端configuration,但这是发生在多个主机上。 接下来我会责怪网站的configuration,但为什么它在Chrome中正常工作?
GeoTrust是否有可能改变configuration?
www.whynopadlock.com报道:
SSL verification issue (Possibly mis-matched URL or bad intermediate cert.). Details: ERROR: cannot verify tdx.131500.com.au's certificate, issued by `/C=US/O=GeoTrust, Inc./CN=GeoTrust SSL CA': Unable to locally verify the issuer's authority.
openssl s_client有如下的说法:
$ openssl s_client -connect tdx.131500.com.au:443 CONNECTED(00000003) depth=0 serialNumber = 8z3ZNMMt8GMi9Qumrn0xficRkxAYJZQq, C = AU, ST = New South Wales, L = North Sydney, O = SERCO GROUP PTY LIMITED, CN = *.131500.com.au verify error:num=20:unable to get local issuer certificate verify return:1 depth=0 serialNumber = 8z3ZNMMt8GMi9Qumrn0xficRkxAYJZQq, C = AU, ST = New South Wales, L = North Sydney, O = SERCO GROUP PTY LIMITED, CN = *.131500.com.au verify error:num=27:certificate not trusted verify return:1 depth=0 serialNumber = 8z3ZNMMt8GMi9Qumrn0xficRkxAYJZQq, C = AU, ST = New South Wales, L = North Sydney, O = SERCO GROUP PTY LIMITED, CN = *.131500.com.au verify error:num=21:unable to verify the first certificate verify return:1 --- Certificate chain 0 s:/serialNumber=8z3ZNMMt8GMi9Qumrn0xficRkxAYJZQq/C=AU/ST=New South Wales/L=North Sydney/O=SERCO GROUP PTY LIMITED/CN=*.131500.com.au i:/C=US/O=GeoTrust, Inc./CN=GeoTrust SSL CA --- Server certificate -----BEGIN CERTIFICATE----- MIIFDzCCA/egAwIBAgIDAjwuMA0GCSqGSIb3DQEBBQUAMEAxCzAJBgNVBAYTAlVT MRcwFQYDVQQKEw5HZW9UcnVzdCwgSW5jLjEYMBYGA1UEAxMPR2VvVHJ1c3QgU1NM IENBMB4XDTEzMDUxMzA2MTYyNVoXDTE0MDYxNDIzMTE1NlowgaUxKTAnBgNVBAUT IDh6M1pOTU10OEdNaTlRdW1ybjB4ZmljUmt4QVlKWlFxMQswCQYDVQQGEwJBVTEY MBYGA1UECBMPTmV3IFNvdXRoIFdhbGVzMRUwEwYDVQQHEwxOb3J0aCBTeWRuZXkx IDAeBgNVBAoTF1NFUkNPIEdST1VQIFBUWSBMSU1JVEVEMRgwFgYDVQQDDA8qLjEz MTUwMC5jb20uYXUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCnn9NM DgqNyrPFgvh+dH8Lf3DSWdr60eHYxDNnth8RDsFUWSxdpKW/nOJa8OL5DhCFgoAS Gr53OhQw1WdK1bq8EMcVVydCs8JOZuZY5hJTKKGuO3yDXKrGkDzoGI5tI+n+oRG4 FTN+DGcQq43zRsb2BMZTCsuCBPbvb3DCSR+c+s7sJE+rG7nAB8lFzbxirNSJSXBD 8GoXHB5idMr81SeW0Ft02zc6Uc4Y+dvPsBuMijoJTB69EthaeMjp1nZc+bYrVnBt qEOnZFXziOrvQGmpRYpLuzFLwT4wfyZBW4yHmAgSmpw2u9PONkdyvWtofr7fYNqd A2/FX/5My4hYoRNbAgMBAAGjggGqMIIBpjAfBgNVHSMEGDAWgBRCeVQbYc1VKz5j 1TxIV/Wf+0XOSjAOBgNVHQ8BAf8EBAMCBLAwHQYDVR0lBBYwFAYIKwYBBQUHAwEG CCsGAQUFBwMCMCkGA1UdEQQiMCCCDyouMTMxNTAwLmNvbS5hdYINMTMxNTAwLmNv bS5hdTA9BgNVHR8ENjA0MDKgMKAuhixodHRwOi8vZ3Rzc2wtY3JsLmdlb3RydXN0 LmNvbS9jcmxzL2d0c3NsLmNybDAdBgNVHQ4EFgQUhZiG+e9NpeswJV1uBQVPurXE erMwDAYDVR0TAQH/BAIwADBvBggrBgEFBQcBAQRjMGEwKgYIKwYBBQUHMAGGHmh0 dHA6Ly9ndHNzbC1vY3NwLmdlb3RydXN0LmNvbTAzBggrBgEFBQcwAoYnaHR0cDov L2d0c3NsLWFpYS5nZW90cnVzdC5jb20vZ3Rzc2wuY3J0MEwGA1UdIARFMEMwQQYK YIZIAYb4RQEHNjAzMDEGCCsGAQUFBwIBFiVodHRwOi8vd3d3Lmdlb3RydXN0LmNv bS9yZXNvdXJjZXMvY3BzMA0GCSqGSIb3DQEBBQUAA4IBAQB3NHVqrUfXC6o75PTE B5EBjWkQhK/wzP8hYcN72E3zwGtHCjimSse7DDkitla4w/hrI9in9VvsWmZ8jeH4 b3H+oNjhAewBx15CEGqCmMR8zzLjmW5xIwRtoi7pgCyD7bFhixH/SbrhLlloncPW AgTXdN0655k4DT0hD4gHAdTfx271JKcYZmoKB3Y2yAHOUCd8QB0fzGY5Y26dpyjR okUaMiVwXQKb4xNu6NBJwwippyccCFj712ceYUedjk2OEVYTS/91l95btJht4nkZ y56H7sQlu3Te1m8mgBsRB1hbme8VPxt0WQ21Uqu7ROJcyxDxDAFto4ITs3oogx/z QaXz -----END CERTIFICATE----- subject=/serialNumber=8z3ZNMMt8GMi9Qumrn0xficRkxAYJZQq/C=AU/ST=New South Wales/L=North Sydney/O=SERCO GROUP PTY LIMITED/CN=*.131500.com.au issuer=/C=US/O=GeoTrust, Inc./CN=GeoTrust SSL CA --- No client certificate CA names sent --- SSL handshake has read 1435 bytes and written 536 bytes --- New, TLSv1/SSLv3, Cipher is RC4-MD5 Server public key is 2048 bit Secure Renegotiation IS NOT supported Compression: NONE Expansion: NONE SSL-Session: Protocol : TLSv1 Cipher : RC4-MD5 Session-ID: 1D1C840AF8B831E4070232FC2E8057F0BAB6E1B5A37CB3C93F415C715E4CE05F Session-ID-ctx: Master-Key: A00FD977D39342B4F1DEA1A4ECCD74BDD09E709FAB7468105D78D476D9E22D330102891E341AB177B98B8BD8E29C9238 Key-Arg : None PSK identity: None PSK identity hint: None SRP username: None Start Time: 1369021662 Timeout : 300 (sec) Verify return code: 21 (unable to verify the first certificate) --- closed
服务器configuration不正确 – 它不发送所需的中间证书。 请注意,证书链中只有一个证书:
--- Certificate chain 0 s:/serialNumber=8z3ZNMMt8GMi9Qumrn0xficRkxAYJZQq/C=AU/ST=New South Wales/L=North Sydney/O=SERCO GROUP PTY LIMITED/CN=*.131500.com.au i:/C=US/O=GeoTrust, Inc./CN=GeoTrust SSL CA ---
在此之后应该有第二个证书s:/C=US/O=GeoTrust, Inc./CN=GeoTrust SSL CA
. s:/C=US/O=GeoTrust, Inc./CN=GeoTrust SSL CA
在Apache中,使用SSLCertificateChainFile选项configuration证书。
至于为什么这个网站似乎在Chrome中为你工作,有几个可能的解释:
不同的浏览器可能会使用单独的证书存储区,并且您的Chrome可能直接拥有可信的GeoTrust SSL CA
证书(但是,如果CA打算将该证书用作中间证书,则情况不太可能如此)。
浏览器经常在其证书存储区中caching中间证书,因此,如果您以前曾访问过正确configuration了GeoTrust SSL CA
中间证书的其他站点,则可以访问使用相同中间证书但不能正确发送它给客户端,没有安全警告,因为浏览器可以从它的caching中获得所需的中间证书,并且能够validation证书链。
有问题的最终实体证书包含可用于获取中间证书的HTTP URL:
Authority Information Access: OCSP - URI:http://gtssl-ocsp.geotrust.com CA Issuers - URI:http://gtssl-aia.geotrust.com/gtssl.crt
( CA Issuers
链接在这里指向DER格式的发行者证书)。 即使服务器没有返回中间证书,一些系统也可以使用这些链接来获取中间证书。 根据Mozilla Bug 399324 ,Firefox(以及其他基于Mozilla的软件)目前无法遵循这样的AIA链接; 但是, Internet Explorer可以使用它们 。
openssl找不到中间证书。 whynopadlock.com无法表明他们没有安装在第一位的事实,并且它在(某些)浏览器中工作,因为它们已经具有中间证书。 网站所有者需要安装中间证书,可以从geotrust.com下载。 在那里也可以find安装说明。
如果它有时有效,有时会失败,那么站点所有者已经忘记在所有服务器(或负载平衡器)上安装中间证书。