作為安裝後程序的一部分,可能需要設定安全通訊端層 (SSL) 憑證。安裝 SaltStack Config 時,設定 SSL 憑證是可選操作,但建議執行此操作。

開始之前

設定 SSL 憑證是一系列步驟中的一個安裝後步驟,這些步驟應按特定順序執行。首先,完成其中一個安裝案例,然後閱讀以下安裝後頁面:

設定 SSL 憑證

建立 SSL 憑證:

  1. 若要在安裝後設定 SSL,則必須使用 python36-pyOpenSSL 套件。此步驟通常在安裝前完成。如果在安裝前未能進行安裝,可以現在安裝。如需檢查和安裝此相依項的相關指示,請參閱〈安裝或升級 Salt〉
  2. 針對 RaaS 服務的憑證資料夾建立和設定權限。
    sudo mkdir -p /etc/raas/pki
    sudo chown raas:raas /etc/raas/pki
    sudo chmod 750 /etc/raas/pki
  3. 使用 Salt 為 RaaS 服務產生金鑰,或提供您自己的金鑰。
    sudo salt-call --local tls.create_self_signed_cert tls_dir=raas
    sudo chown raas:raas /etc/pki/raas/certs/localhost.crt
    sudo chown raas:raas /etc/pki/raas/certs/localhost.key
    sudo chmod 400 /etc/pki/raas/certs/localhost.crt
    sudo chmod 400 /etc/pki/raas/certs/localhost.key
  4. 若要啟用與 SaltStack Config 使用者介面的 SSL 連線,請產生 PEM 編碼的 SSL 憑證,或確保您具有現有 PEM 編碼憑證的存取權。
  5. 將上一個步驟中產生的 .crt.key 檔案儲存至 RaaS 節點上的 /etc/pki/raas/certs
  6. 透過在文字編輯器中開啟 /etc/raas/raas 來更新 RaaS 服務組態。設定下列值,將 <filename> 取代為 SSL 憑證檔案名稱:
    tls_crt:/etc/pki/raas/certs/<filename>.crt
    tls_key:/etc/pki/raas/certs/<filename>.key
    port:443
  7. 重新啟動 RaaS 服務。
    sudo systemctl restart raas
  8. 確認 RaaS 服務是否正在執行。
    sudo systemctl status raas
  9. 在網頁瀏覽器中,透過導覽至組織的自訂 SaltStack Config URL 並輸入認證,確認可以連線至使用者介面。如需有關登入的詳細資訊,請參閱〈首次登入並變更預設認證〉

SaltStack Config 的 SSL 憑證現已設定完成。

更新 SSL 憑證

如需為 SaltStack Config 更新 SSL 憑證的相關指示,請參閱 VMware 知識庫。如需詳細資訊,請參閱〈如何為 SaltStack Config 更新 SSL 憑證〉

SaltStack Config 使用自我簽署憑證的 vRealize Automation 環境進行疑難排解

此因應措施適用於使用非標準憑證授權機構簽署的憑證進行 vRealize Automation 部署的客戶。

SaltStack Config 可能會遇到以下症狀:

  • 首次開啟 vRealize Automation 時,網頁瀏覽器會在 URL 旁邊或顯示頁面中顯示一條安全警告,指明無法驗證憑證。
  • 嘗試在網頁瀏覽器中開啟 SaltStack Config 使用者介面時,可能會顯示 403 錯誤或空白螢幕。

如果 vRealize Automation 部署使用非標準憑證授權機構簽署的憑證,則可能會導致出現這些症狀。若要驗證這是否導致 SaltStack Config 顯示空白螢幕,請透過 SSH 登入託管 SaltStack Config 的節點,然後檢閱 RaaS 記錄檔 (/var/log/raas/raas)。如果發現回溯追蹤錯誤訊息,指明不允許使用自我簽署憑證,以下因應措施可能會解決此問題。

備註:

安全性最佳做法是,絕不應將生產環境設定為使用自我簽署憑證或錯誤簽署的憑證來驗證 vRealize AutomationSaltStack Config。建議做法是改為使用受信任憑證授權機構簽署的憑證。

如果您選擇使用自我簽署或錯誤簽署的憑證,可能會將您的系統置於安全性漏洞的嚴重風險之中。使用此程序時,請謹慎進行。

如果遇到此問題,並且您的環境需要繼續使用非標準憑證授權機構簽署的憑證,則解決方案是將 vRealize Automation 憑證 CA 新增到 SaltStack Config 環境,如以下因應措施中所述。

此因應措施需要:

  • 根存取權
  • 能夠使用 SSH 登入 RaaS 伺服器
備註:

額外的安全性最佳做法是,僅向組織中最受信任和最資深的人員授與此層級的存取權。請謹慎限制對環境的根存取權。

您可能會發現,建立專用憑證授權機構並使用該憑證授權機構簽署您自己的 vRealize Automation 憑證比使用自我簽署憑證更容易。這種方法的優點是,對於所需的每個 vRealize Automation 憑證,只需要執行一次此過程。否則,您必須針對建立的每個 vRealize Automation 憑證執行此過程。如需建立專用憑證授權機構的詳細資訊,請參閱如何使用自己的憑證授權機構簽署憑證請求 (Stack Overflow)

若要將非標準憑證授權機構簽署的憑證新增到 SaltStack Config 中的憑證授權機構清單,請執行以下操作:

  1. 嘗試在瀏覽器中開啟 vRealize Automation Web 介面。憑證應在瀏覽器視窗和 URL 顯示中顯示警告訊息。
  2. 下載所需憑證。
    • 對於 Chrome 瀏覽器:按一下 URL 顯示中的 [不安全] 警告以開啟功能表。選取憑證 (無效)。將遺失的憑證拖曳至本機電腦的檔案總管或 Finder 加以儲存。選擇憑證簽署者 (CA) (如果可用)。按一下憑證圖示,然後將其拖動到本機電腦的檔案總管中。如果副檔名不是 .pem (.crt .cer .der),請使用以下命令將其轉換為 .pem 格式:openssl x509 -inform der -in certificate.cer -out certificate.pem
    • 對於 Firefox 瀏覽器:按一下 URL 顯示中的警告圖示以開啟功能表。選取 [連線不安全] > [更多資訊]。在對話方塊中,按一下 [檢視憑證]。按一下遺失的憑證,以將其下載至本機電腦的檔案系統。
  3. 透過 SSH 登入 RaaS 伺服器 (如果尚未登入)。
  4. 將憑證檔案附加到以下目錄中檔案的末尾:/etc/pki/tls/certs/ca-bundle.crt。您可以使用以下命令將憑證附加到檔案末尾,並將範例檔案取代為您的實際檔案名稱:
    cat <certificate-file>.crt  >> /etc/pki/tls/certs/ca-bundle.crt
    備註:

    也可以使用此命令複製副檔名為 .pem 的檔案。

  5. 導覽至目錄 /usr/lib/systemd/system,然後在編輯器中開啟 raas.service 檔案。將以下行新增到此檔案中 ExecStart 行上方的任意位置:
    Environment=REQUESTS_CA_BUNDLE=/etc/pki/tls/certs/ca-bundle.crt
  6. 使用下列命令重新載入精靈並重新啟動 RaaS:
    systemctl daemon-reload
    systemctl stop raas
    rm /var/log/raas/raas
    systemctl start raas
    tail -f /var/log/raas/raas
    備註:

    使用 tail -f /var/log/raas/raas 連續顯示 RaaS 記錄檔,這可能有助於進行疑難排解。

  7. 登入 SaltStack Config Web 介面,驗證此解決方案是否已解決該問題。如果問題已解決,SaltStack Config 將顯示 [儀表板] 頁面。

後續步驟

設定 SSL 憑證後,可能需要完成其他安裝後步驟。

如果您是 SaltStack SecOps 客戶,下一步是設定這些服務。如需詳細資訊,請參閱設定 SaltStack SecOps

如果已完成所有必要的安裝後步驟,下一步是將 SaltStack ConfigvRealize Automation SaltStack SecOps 整合。如需詳細資訊,請參閱建立 SaltStack Config 與 vRealize Automation 的整合