共用方式為


管理 HPC Pack 的 Linux 驗證金鑰

重要

若要解決 CVE-2025-21198 嚴重弱點,所有 HPC Pack 2016 叢集和 HPC Pack 2019 Update 2 和舊版叢集都必須立即套用下列步驟,在所有前端節點和所有 Linux 計算節點上設定 Linux 驗證密鑰。 此 包含任何完全沒有 Linux 計算節點的叢集,。 在 Windows 上獨佔的叢集仍然需要在所有前端節點上設定 Linux 驗證密鑰。

基於回溯相容性的原因,HPC Pack 2019 Update 3 修補程式會 NOT 為現有叢集產生 Linux 驗證密鑰,以免中斷前端節點與計算節點之間的連線。 用戶必須手動將Linux驗證金鑰新增至其叢集,並確認其叢集在更新至 Update 3 之前是否正常運作。

此外,任何新安裝的 HPC Pack 2016 叢集和 HPC Pack 2019 Update 2 和更早的叢集都必須立即套用下列步驟,以在安裝後立即在前端節點和 Linux 計算節點上設定 Linux 驗證密鑰。 這包括透過安裝程式部署的叢集,以及透過 ARM 範本部署的叢集,

HPC Pack 2019 Update 3 和更新版本的叢集,無論是透過安裝程式或 ARM 範本部署,都會在安裝期間預設設定或產生 Linux 驗證密鑰,因此不需要下列修正步驟。

Linux 驗證金鑰是 HPC Pack 前端節點與 HPC Pack Linux 計算節點之間的預先共用金鑰,可保護前端節點與計算節點之間的通訊。 它是可以是任何長度的密碼字串,包含英數位元或 -._~+/= 符號。

Linux 驗證金鑰設定會分別在前端節點和每個 Linux 計算節點上維護,而相同叢集中的每個節點都必須將 Linux 驗證密鑰設定為相同的值。

管理前端節點上的Linux驗證金鑰

注意

HPC Pack 2019 Update 3 和更新版本的安裝程式會在安裝新的叢集時自動產生新的隨機 Linux 驗證密鑰,或使用透過 authenticationKeyARM 範本提供的使用者指定 Linux 驗證金鑰, 參數或自動安裝程式的 LinuxAuthenticationKey 參數。 不需要針對全新安裝的 HPC Pack 2019 Update 3 或更新版本叢集的前端節點執行下列步驟。

不過,將現有的 HPC Pack 2019 Update 2 或更早版本的叢集修補為 Update 3 和更新版本不會產生 Linux 驗證密鑰。 用戶應該依照下列步驟設定 Linux 驗證金鑰,並確認任何 Linux 計算節點在安裝 Update 3 修補程式之前仍在運作中。

注意

authenticationKey 參數不適用於已部署 HPC Pack 2 或更早版本的叢集前端節點,但不論叢集版本為何,都會套用並傳播至所有已部署的 Linux 計算節點。 用戶必須在透過ARM範本部署 HPC Pack 2019 Update 2 或更早版本的叢集前端節點上,立即手動設定 Linux 驗證金鑰。

在 HPC Pack 叢集的每個前端節點上,使用相同的 參數執行 AuthenticationKey,以設定或更新前端節點的 Linux 驗證金鑰。 此腳本會設定叢集登錄設定,並視需要更新 Azure IaaS Linux 節點的內建 ARM 範本,以進行預先共用密鑰傳播。

如果您發現自己需要回到舊的(不安全)行為以進行疑難解答,請移除 [ValidateNotNullOrEmpty()] 參數的 AuthenticationKey 屬性,然後使用空字串 AuthenticationKey 參數執行腳本。

如果您已經設定 Linux 驗證金鑰,請執行下列 PowerShell 命令來擷取目前設定的 Linux 驗證金鑰:

Get-HpcClusterRegistry -PropertyName ClusterAuthenticationKey

在 Linux 計算節點上管理 Linux 驗證金鑰

注意

HPC Pack 2019 Update 2 和舊版叢集的內部部署 Linux 節點安裝 setup.py 腳本不接受 authenticationKey 參數。 用戶必須 更新setup.py 腳本,執行內部部署Linux計算節點安裝

編輯 Linux 節點代理程式的組態檔,也就是 /opt/hpcnodemanager/nodemanager.json 並新增或更新 ClusterAuthenticationKey 選項,以成為叢集的 Linux 驗證密鑰,與前端節點上設定的組態檔相同。 例如,您可以使用下列命令行來變更組態:

# back up the confiugration
cp /opt/hpcnodemanager/nodemanager.json /opt/hpcnodemanager/nodemanager_backup.json
jq '. + {ClusterAuthenticationKey: "your_value_here"}' /opt/hpcnodemanager/nodemanager.json > /opt/hpcnodemanager/nodemanager_updated.json
cat /opt/hpcnodemanager/nodemanager_updated.json > /opt/hpcnodemanager/nodemanager.json

如果您發現自己需要回到舊的 (不安全) 行為以進行疑難解答,請將 ClusterAuthenticationKey 設定為空字串 ""

套用上述變更之後,重新啟動 Linux 計算節點。