簡體   English   中英

AWS Elastic Load Balancer 的 SSL 證書配置錯誤

[英]Misconfiguration of SSL Certificate for AWS Elastic Load Balancer

我正在嘗試配置 SSL 證書以通過 AWS ELB 支持 HTTPS。 我已經配置好了一切:

1) 在 AWS ELB 中配置的 GoDaddy SSL 證書(包括證書鏈)。
2) 讓 ELB 監聽器看起來像這樣:
客戶端 ---> HTTPS --> ELB 端口 443 --> HTTP ---> 服務器端口 80
3) 在 GoDaddy 中,創建了一個 CNAME 條目,如下所示:
service.acme.com CNAME 到 aws-some-region.elb.amazonaws.com
4)如果我 curl -kv https://service.acme.com/

*   Trying 52.6.xxx.xx...
* Connected to service.acme.com (52.6.xxx.xxx) port 443 (#0)
* TLS 1.2 connection using TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
* Server certificate: pixxeen.com
* Server certificate: Go Daddy Secure Certificate Authority - G2
* Server certificate: Go Daddy Root Certificate Authority - G2
> GET / HTTP/1.1
> Host: service.acme.com
> User-Agent: curl/7.43.0
> Accept: */*
> 
< HTTP/1.1 200 OK
< Accept-Ranges: bytes
< Content-Type: text/html
< Date: Mon, 22 Feb 2016 14:06:08 GMT 
< ETag: W/"154-1455797592000"
< Last-Modified: Thu, 18 Feb 2016 12:13:12 GMT
< Server: Apache-Coyote/1.1
< Content-Length: 154
< Connection: keep-alive
< 
<html>
  <head>
    <title>Acme Service Application</title>
  </head>
  <body bgcolor=white>
      <p>Acme Service Application</p>
  </body>
* Connection #0 to host service.acme.com left intact

HTML 是我為 ELB 部署的 index.html 頁面,用於請求確認 EC2 實例已啟動並正在運行。

但是,我遇到的問題是,如果任何移動客戶端框架訪問 service.acme.com 服務端點(okhttp 或 AFNetworking),我會看到以下內容(這是一個 okhttp 調用):

02-22 08:52:10.513 2564-2564/com.acme W/System.err: javax.net.ssl.SSLPeerUnverifiedException: Hostname service.acme.com not verified:
02-22 08:52:10.513 2564-2564/com.acme W/System.err:     certificate: sha1/+axZF3Oyaatuoio5rsmNhUUhOZE=
02-22 08:52:10.513 2564-2564/com.acme W/System.err:     DN: CN=acme.com,OU=Domain Control Validated
02-22 08:52:10.513 2564-2564/com.acme W/System.err:     subjectAltNames: [acme.com, www.acme.com]

那么,有沒有人知道我哪里出錯了?

我在 StackOverflow 上閑逛,看到了這篇文章(我見過的最詳細的文章之一): 在 Amazon EC2 ELB 上安裝 SSL 證書,它似乎證實了我所做的所有步驟。

您的證書對於service.acme.com域名無效。

它僅對確切的主機acme.comwww.acme.com 有效

如果省略curl-k (不安全)選項,您將清楚地看到此錯誤(這不是一個好的測試標志,因為它有意忽略了大多數 SSL 問題)

附加到 ELB 的證書將根據 cname 而不是 ELB 名稱本身進行驗證。 如果您已將證書 xyzcom 附加到 ELB ,那么您的 cname 應該匹配 xyzcom 而不是 ELB cname。

如果您有通配符證書 *.xyzcom ,那么您的 cname 可以是任何內容。 xyzcom 以符合要求。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM