我是否需要多個證書才能執行多個服務
我對此進行了大量研究,但我仍然對在我的私有伺服器上執行的每個服務需要自簽名多少證書感到困惑。這是交易:
我正在樹莓派 (raspbian~debian) 上創建自己的伺服器來執行我自己的 VPN 伺服器、日曆/聯繫人伺服器 (Darwin),未來可能還會有電子郵件伺服器和 Web 伺服器。
首先,我使用簡單的 RSA 配置了 openvpn 伺服器(客戶端使用密鑰和密碼進行身份驗證:遵循本教程)。值得注意的是,easy RSA 似乎與 openVPN 有關。
現在,我需要設置日曆伺服器並強制 TLS 連接以確保安全。但我不確定,是否需要自簽名另一個證書或只是重複使用舊證書。這次客戶端將只使用密碼進行身份驗證。我是否為每項服務使用不同的自簽名證書?
還有 ssl-cert-snakeoil.key,我可以使用還是不使用?
SSL 證書基本上是告訴遠端,他們連接到的 IP 或 DNS 名稱具有公私鑰設置,並且公鑰由某個證書頒發機構 (CA) “簽名”為屬於該 DNS 名稱或 IP 地址上的該服務。證書可能(最近)包括 subjectAlternateNames (SAN),表明該證書對其他幾個 DNS 名稱或 IP 號碼也有效。
現在回到您的問題:如果所有服務都使用相同的名稱(即“myhost.dyn-provider.net”),那麼您只需要一個 myhost.dyn-provider.net 證書。
但是,如果您需要 mywww.dyn-provider.net (HTTPS)、mycal.dyn-provider.net (iCal)、mysmtp.dyn-provider.net (Email) 和 myftps.dyn-provider.net (FTPS)等等,那麼您將需要為每個伺服器提供一個證書,或者您可以生成一個帶有額外 SAN/subjectAlternateName 條目的證書(Google為此,easyrsa 3.0.x 也有幫助:
easyrsa help altname
了解更多資訊)