2011-04-13 24 views
0

我正在測試ssl,我需要給所有客戶端機器頒發證書,以便他們可以對我擁有的虛擬機服務器進行wcf調用。ssl與變化的ip地址服務器

我假設證書必須與他們輸入到地址欄中的名稱相匹配,才能使某種無效的證書崩潰。

他們鍵入一個IP。有時候這個IP會改變。我不想繼續在所有客戶端上安裝證書。

也許我可以使用hosts文件來做到這一點?

DNS在這裏不是一個選項。

什麼是最好的方式來做到這一點(這隻適用於測試環境)。

+0

您指的是_client證書authentication_或服務器提供SSL證書_的正常SSL加密? – 2011-04-13 19:00:25

+0

我這麼認爲......但我不確定 – zachary 2011-04-14 18:06:03

+0

如果他不確定,那很可能是第二個。 – 2011-04-16 13:22:46

回答

1

這裏是什麼,我會在你的情況做:

  • 創建自己的證書(MyCA)用作證書頒發機構
  • 安裝myCA爲每個客戶端上受信任的根權限。 (一旦下班)
  • 然後,我將用MyCA爲每個測試主機簽名證書。

的SSL握手的工作原理是SSL證書的服務器(測試主機)服務於客戶端Common Name屬性相匹配。因此,客戶端用來解析測試主機的名稱。爲確保名稱匹配,您可以使用DNS或主機文件。

PS:我從來沒有通過將通用名稱屬性設置爲IP地址來簽署證書,但它可能值得一試。上面的情況在幾種情況下對我很好。

網上有很多教程,所以here is one。還有一些方法可以使用OpenSSL簽署IIS請求。

底線是:您的服務器的SSL證書必須良好,並由客戶端驗證。

0

對於測試環境,如果名稱在證書上不匹配,用戶將被警告,並且可以單擊以忽略警告並繼續。過去我已經以這種方式使用證書來測試環境。

+0

我這樣做,但它會導致在wcf – zachary 2011-04-14 18:05:46

+0

異常好吧,我曾經通過指定什麼證書允許在webclient類中解決此問題...我會看看如果我能找到這個地方,然後我們會看到如果它可以應用於wcf。我假設你的意思是在WCF的一端,而不是服務器? – 2011-04-16 13:22:10