我去的主要問題之前,我想陳述我對密鑰庫和信任庫理解:TLS認證的密鑰庫Trustores
1)密鑰庫 - 密鑰的詳細信息(私鑰),用它我會做我的身份驗證作爲服務器
2)Truststore - 根/ interm CAs和其他我信任的不同域的簽名證書的列表。
我正在嘗試建立一個服務器間認證和數據交換機制。我的所有服務器都具有FQDN格式,如myserverX.mydomain.net
,其中X是索引,例如myserver1.mydomain.net
。如果我對密鑰庫和信任庫的理解是正確的,那麼當myserver1
請求myserver2
中的數據時,它是myserver1
誰是客戶端,myserver2
是服務器。
這樣:
1)myserver1
需要信任myserver2
所以myserver2
公鑰證書應在`MYSERVER1' 導入到信任。
2)當'myserver1'是服務器並且myserver2
是客戶端時,上述情況也是如此 - 除了現在myserver1
公鑰證書應該被導入myserver2
信任庫。
我真的在這裏做事嗎?或者我有任何根本的錯誤?我的意圖是使用自簽名證書進行嘗試,然後爲我的服務器獲取適當的根CA簽名證書。但如果有人能夠解釋我是否在這裏做出任何錯誤的假設,我將不勝感激。
注 - 我將使用Java keytool和JKS類型的密鑰庫(使用默認的對稱密鑰算法和大小),我將使用-certreq and -gencert
或-selfcert
爲我的測試生成自簽名證書。
」不需要導入步驟「 - 您的意思是說不需要」CA certficate「導入,但我仍然需要導入我的自簽名證書,對嗎? – ha9u63ar
我的意思是我說的。這似乎很清楚。你的問題沒有意義。如果您使用CA簽名的證書,則不使用自簽名證書。 – EJP
我想我正在努力理解的是當握手發生TLS時服務器發送的證書 - 這將是我的密鑰庫位置。如果這是由受信任的CA簽署的,則瀏覽器將正常繼續,否則通知該網站不受信任。 – ha9u63ar