我可以為不同伺服器上的子域使用單個 Let’s Encrypt SSL 證書嗎?
目前,我可以獲得一個在具有多個子域的伺服器上工作的 Let’s Encrypt SSL 證書。
例如。伺服器 A 上的 m.example.com、www.example.com、example.com
但是,為了使案例如。伺服器 B 上的 cdn.example.com,我該如何實現?
我的想法是:
(1) Server A上的單一證書,包含所有子域:cdn.example.com, m.example.com, www.example.com, example.com,然後rsync到Server B
(2) Server A上的一個證書,包含:m.example.com、www.example.com、example.com
伺服器 B 上的第二個證書,僅包含:cdn.example.com
進行實施的正確方法或最佳方法是什麼?
我不確定我是否允許為根域 example.com 生成多個證書
如果我擴展到多台伺服器,我發現(1)在更新時更容易。
可以這樣做嗎?或者它是多餘的?
更新:
兩台伺服器中的相同 SSL 證書 並不能完全解決我的問題。接受的解決方案部分回答 SSL 證書是 FQDN 特定的,而不是機器特定的。
如果是這樣的話,我提出的(1)不是一個簡化的解決方案嗎?
我的問題是:
我可以有一個僅包含子域的部分 SSL 證書,
cdn.example.com
但忽略伺服器 B 上的其他證書,然後為伺服器 A 頒發另一個具有根域的 SSL 證書example.com
,www.example.com
和m.example.com
?
恕我直言,每台伺服器都應該有自己的私鑰,您可以使用 LE 頒發任意數量的證書,我能想到的每個 IP 使用多個 SAN 的唯一原因是您的客戶端無法執行 SNI(例如:舊的 java 客戶端如果您正在使用 webhook/api 或其他端點)。
TLDR;選項 2,只是不要忘記設置您的自動續訂 cronjobs 並輸入有效的電子郵件,以防出現問題。
我會為您的應用程序/資產使用單獨密鑰的另一個原因是信任級別不同。我認為您的圖像與您的程式碼/內容無關緊要,並且您不會通過 CDN 向使用者送出表單,伺服器 A 可能在現場,伺服器 B 可能在 SSD 上的公共雲中。