使用 LetsEncrypt 為內網路子網域發出有效的 HTTPS 憑證

使用 LetsEncrypt 為內網路子網域發出有效的 HTTPS 憑證

我正在嘗試在我的家庭 Intranet 上提供安全服務。到目前為止,我已經使用帶有虛構網域的自簽名證書example.foo,以及用於我的單獨系統的子網域(例如srv1.example.foo)。這些網域是在我的本機 DNS 伺服器上定義的。

現在我已經購買了該域名example.com,但沒有計劃提供任何公共服務。我還有一個有靜態 IP 的 VPS 可供指向example.com

我希望建立一個通配符 LetsEncrypt 憑證以*.example.com用於我的 Intranet 系統。為了將本機系統與任何公共系統分開,我在本機 DNS 上定義了一個子網域,該子網域不應在公共 DNS 伺服器上解析(例如*.local.example.com)。因此,本地 Intranet 系統使用諸如srv1.local.example.com.

這個設定可行嗎?

我可以在我的 VPS 上建立這樣的證書,*.example.com並使用產生的證書保護 Intranet 服務嗎?我的本機 DNS 伺服器是否可以將網域解析srv1.local.example.com為私人 IP,並且不會向公眾公開任何私人 IP 或網域?

答案1

我可以在我的 VPS 上為 *.example.com 建立這樣的證書,並使用產生的證書保護 Intranet 服務嗎?

是的,但這是一種奇怪的做法。它並不能讓自動化變得容易。

我會在實際的需要憑證的系統,或網路中需要憑證的系統可以取得憑證的某些伺服器。

使用DNS 質詢驗證驗證對域的控制。這需要具有 API 的外部 DNS 供應商,例如 Route53、Cloudflare、Azure 或許多其他提供者。

除了用於驗證所有權的 txt 記錄之外,您不需要任何公共 dns 記錄。

答案2

您無法建立通配符憑證*.example.com並將其用於s1.sd.example.com.這就是證書的工作原理。如果您想為其建立通配符證書,s1.sd.example.com則必須為*.sd.example.com

相關內容