2012-02-09 212 views
0

我想在一臺服務器上使用多個SSL證書。在過去,只有當你有更多的IP指向它時纔有可能。現在我讀到了SNI,它可以實現這一點,儘管它只能在客戶端的實際瀏覽器上支持。我總是閱讀SNI的先決條件,至少需要Apache版本2.2.12和OpenSSL 0.9.8f。與SNI的CA證書?

那麼我可以使用Thawte,Verisign或其他認證機構的證書嗎?這些證書不是OpenSSL,是嗎?

回答

1

服務器名稱指示是客戶機告訴服務器正在請求哪個主機名的機制,以便服務器可以選擇將哪個證書發送給客戶機(如果它具有多個)。證書的頒發者並不重要。

客戶端和服務器都必須支持SNI擴展才能工作。這就是爲什麼如果你使用OpenSSL的Apache服務器,你需要支持它的版本。客戶端支持並不限於瀏覽器(最新版本的cURL也應該支持SNI),並且這取決於瀏覽器/平臺。

1

您將OpenSSL混合爲加密庫和使用OpenSSL創建的證書。 SNI是關於SSL的,證書不是SSL - 它們是獨立的實體,通常由SSL使用。

對於SNI的工作,你需要一個服務器和一個客戶端都支持SNI。但是,使用什麼證書並不重要(或者您是否使用證書)。

+0

好的。所以我需要OpenSSL庫來進行SSL連接,並且與創建證書無關? – m0tv 2012-02-09 13:03:10

+0

@ m0tv由於您要購買第三方證書,因此您不需要使用OpenSSL來生成證書(儘管技術上OpenSSL包含用於生成X.509證書的函數)。 – 2012-02-10 07:14:26