如何解決實體主機上客戶端 TLS 憑證先有雞還是先有蛋的問題?

如何解決實體主機上客戶端 TLS 憑證先有雞還是先有蛋的問題?

我不明白在自動化安裝伺服器時如何解決先有雞還是先有蛋的問題。

我有一系列可以透過 PXE 重建的伺服器。重建機器時,它會從 Apache 伺服器載入所需的所有設置,包括稍後使用不同服務時用於驗證自身身分的私有憑證。此 Apache 伺服器透過 IP 位址識別用戶端,以便為它們提供針對給定伺服器的設定或證書,或拒絕為其提供服務。

但是,客戶端的 IP 位址可能會被欺騙。對於 MAC 位址也是如此,如果在某個時候我也添加這種驗證。

為了安全地取得其配置和私有證書,透過 PXE 啟動的電腦應該已經擁有一個在與 Apache 伺服器通訊時可以使用的憑證。然而,這看起來不可能,因為從 PXE 啟動的機器要么是全新的,要么在安裝過程中無論如何都會格式化其磁碟。

我錯過了什麼嗎?如何在不存在欺騙風險的情況下識別全新機器?

我應該使用包含私鑰的始終連接的 USB 金鑰嗎?或是有其他選擇嗎?

答案1

我們用的是工頭的啟動磁碟插件以此目的。我並不是說這是正確或獨特的方法,而是我們成功使用的方法。

每次需要(重新)配置主機時,都會產生一個短暫的令牌,並將其保存在與主機耦合的資料庫中。此令牌會與 ipxe 二進位檔案和腳本一起放入 iso 檔案中,該腳本僅在提供正確的令牌作為識別碼時才從設定主機下載 kicstart 檔案。配置主機後,令牌將被刪除。在特定時間(可調整,預設為 60 分鐘)之後,令牌將失效。

這適用於作為 uefi 韌體的 BIOS,並且不需要 pxe,只需 http(s),因此您只需進行很少的修改就可以真正進行互聯網部署(方便在遠端位置部署硬體)。

相關內容