簡體   English   中英

如何使用自簽名證書運行Java HTTP服務器並信任瀏覽器?

[英]How to run a Java HTTP server with self-signed certificate and trust that for browers?

我有一個需要在SSL上運行基於Java的HTTP服務器並從瀏覽器連接到該服務器的要求。 我還需要確保瀏覽器不會顯示自簽名證書的安全異常。

我做了以下-

  1. 使用Java keytool -keygen生成了JKS密鑰庫。
  2. 使用keytool -importkeystore將密鑰庫作為PKCS12 p12文件導入。
  3. 將p12文件加載到X509Certificate2對象中,並將其添加到Root和CertificateAuthority

    X509Store store5 = new X509Store(StoreName.Root, StoreLocation.LocalMachine); store5.Open(OpenFlags.ReadWrite); store5.Add(cert); store5.Close(); X509Store store2 = new X509Store(StoreName.CertificateAuthority, StoreLocation.LocalMachine); store2.Open(OpenFlags.ReadWrite); store2.Add(cert); store2.Close();

  4. 從JKS密鑰庫導出了證書文件。

  5. 將該.cer文件添加到Java的證書中。

現在,當我運行HTTP服務器時,它會選擇證書並處理HTTPS請求,但瀏覽器仍將站點顯示為不受信任。

當然是不可能的。 瀏覽器錯誤消息的全部目的是提醒用戶網站正在使用不安全的證書。

將證書請求發送到CA之后。 您應該下注CA證書以及一個“捆綁包”,該捆綁包是兩個(或更多)鏈接(聯合)的證書,然后將其安裝到jks(java密鑰庫)中,瀏覽器將接受您的網站為安全

您最喜歡的搜索引擎可以提供有關此主題的大量資源...

Nitin,這里的選項是安裝您在瀏覽器中生成的證書。 您沒有指定哪個瀏覽器,我以IE為例。 您可以導入證書。

請注意 :我將它們導入到受信任的商店,因為,我知道我創建了它們並且我信任證書的頒發者。 切勿對不受信任的第三方網站執行此操作。 此外, 如果您信任該站點,則可能希望將其添加為安全性較低的受信任站點。

在此處輸入圖片說明

暫無
暫無

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

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