2012-08-09 72 views
3

我使用Amazon EC2的ELB並按照他們的使用CNAME來指代ELB的公共DNS的建議:通配符SSL和CNAME

$ nslookup qa.mydomain.com 
Server:  192.168.1.1 
Address: 192.168.1.1#53 

Non-authoritative answer: 
qa.mydomain.com canonical name = mydomain-20530xxxx.us-west-1.elb.amazonaws.com. 
Name: mydomain-20530xxxx.us-west-1.elb.amazonaws.com 
Address: 50.18.xxx.yyy 

我購買了通配符SSL證書來保護我的所有子域。所以該證書頒發給*.mydomain.com。但是,當我訪問qa.mydomain.com時,所有瀏覽器都尖叫着安全。谷歌瀏覽器上的消息,當我嘗試訪問https://qa.mydomain.com時:

Chrome說:您試圖訪問mydomain-20530xxxx.us-west-1.elb.amazonaws.com,但是實際上您確實已到達識別自身的服務器如* .mydomain.com。這可能是由於服務器上的配置錯誤或更嚴重的原因造成的。

我是否正在錯誤地進行操作? CNAME的使用是否與PKI/SSL基本不兼容?我有什麼選擇?

謝謝。

PS:以下是關於地址:qa.mydomain.com執行的報告。顯然,實際的域名和結果已被屏蔽以確保安全。

$ dig qa.mydomain.com 

; <<>> DiG 9.8.1-P1 <<>> qa.mydomain.com 
;; global options: +cmd 
;; Got answer: 
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 961 
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0 

;; QUESTION SECTION: 
;qa.mydomain.com.  IN A 

;; ANSWER SECTION: 
qa.mydomain.com. 1670 IN CNAME mydomain-205300xxxx.us-west-1.elb.amazonaws.com. 
mydomain-205300xxxx.us-west-1.elb.amazonaws.com. 60 IN A 50.18.xxx.yyy 

;; Query time: 105 msec 
;; SERVER: 192.168.1.1#53(192.168.1.1) 
;; WHEN: Thu Aug 9 14:05:31 2012 
;; MSG SIZE rcvd: 121 

回答

4

IP地址解析是否來自CNAME或DNS條目對證書名稱驗證沒有影響。

重要的是,您在URL中請求的名稱與證書中的某個條目相匹配。

簡而言之,如果證書具有主題備用名稱條目,則其中一個必須與您請求的主機名稱匹配;如果沒有SAN DNS條目,則主題DN的公用名稱(CN)必須與主機名稱匹配。

+0

感謝您的迴應,布魯諾。這是否意味着通配符SSL不能與CNAME一起使用,因爲常用名稱是* .mydomain.com? – Raj 2012-08-09 20:27:44

+0

這完全不是我說的:CNAME和通配符根本就沒有關係。如果您沒有任何SAN,並且CN是'* .mydomain.com',則可以使用https:// something.mydomain.com。 – Bruno 2012-08-09 20:30:46

+0

東西不加起來。我有一個頒發給* .mydomain.com的證書。我有CNAME映射到我的亞馬遜提供的名稱。當我訪問https://qa.mydomain.com時,Safari和Google Chrome都給我一個錯誤的證書。 Chrome說:你試圖到達rmydomain-20530xxxx.us-west-1.elb.amazonaws.com,但實際上你到達了一個標識自己爲* .mydomain.com的服務器。這可能是由服務器上的配置錯誤或更嚴重的原因導致的...... – Raj 2012-08-09 20:34:24