Azure 上的 Red Hat Enterprise Linux 安全性考慮
本文說明在 Red Hat Enterprise Linux (RHEL) 環境中實作安全性的考慮和建議。 若要為 RHEL 系統提供安全性,請使用以多個區域為目標的方法。 安全性需要所有小組一起運作,以保護您的工作負載。 您部署的產品或平台無法只確保環境的安全性。
實作並遵循嚴格的程式,其中包含行為、管理和工程元件。 當您在 Azure 登陸區域中部署 RHEL 時,必須評估數個安全性因素。 若要建立安全且具復原性的雲端環境,請實作可同時套用 Azure 和 Red Hat 安全性機制的策略方法。
設計考量
若要為 RHEL 系統提供安全性,請在 Azure 或其他位置,確保您從已驗證和已驗證的內容開始。 在現代雲端環境中,二進位檔和程序代碼可能源自各種不同的來源。 作為部署的第一個考慮,請保護您的軟體供應鏈。
強化影像
您可以在 Azure Marketplace 和 私人產品 供應專案區段中找到影像,其中 Red Hat 或 Red Hat Limited 位於歐洲、中東和非洲 (EMEA) 區域,發佈記錄。 Red Hat 和 Microsoft驗證這些映像,以確保來源完整性,併為 RHEL 操作系統實例提供安全的預設設定。
若要符合您組織的目標工作負載運行時間安全性需求,請正確設定您從這些映像建置的實例。 若要協助簡化安全性措施,請使用來自 Azure Marketplace 的 Red Hat 已發布映像來部署 RHEL 系統。 請遵循 Red Hat 指引,以取得工作負載的系統與映像規格。 若要減少受攻擊面,請從最少的 Azure 優化 RHEL 映射開始。 您不需要從這個基底映像建立和設定所有實例。 為了符合各種強化需求,我們建議您使用可組合的元件來建置工作負載特定的映像。
您也可以使用 GitOps 做法來開發映射管線。 此方法是優越的方法。 這些管線會將定義為組態程式代碼的可組合元件分層到初始映射上,以產生工作負載映射。
若要有效地使用映像,請實作下列考慮:
建立強化基底映射,其遵循最低許可權的模型,以提供堅實的基礎。
將軟體和安全性設定分層在一起,以促進重複使用並遵循標準作業環境和 DevSecOps 最佳做法。
使用影像組合模型來減少測試和資格工作,並減少維護成本。
使用組合模型來增加彈性,並加速新工作負載的傳遞時間。
自動化模型的映像建置、測試和傳遞程式。
更新映像
您也應該定期更新映像。 暫時實例可能會有較最新的映像,因為您通常會從目前的映像部署它們。 但是,您應該使用中央修補系統,定期更新較長的實例。 此步驟可協助您調查環境中已修補系統的狀況。 當您將部署變化降到最低時,監視雜訊會降低,而且您可以更準確且快速地識別異常。 這種方法會增加自動化偵測和補救工作的成功率。
若要維護嚴格的訪問控制,請考慮實作集中式系統。 許多開放原始碼專案和商業現成的應用程式都提供使用本機帳戶或本機部署公鑰的簡單部署範例。 這些範例可以提供安全的設定,但隨著雲端使用量的擴充,即使使用自動化,維護當地語系化設定的努力也會變成問題。 自動化負載會隨著每個實例以線性方式增加,但安全性記錄和監視負載可能會以指數速率呈報。 這些變更會產生計算、記憶體和分析資源的過度負擔。 集中式訪問控制可減少設定點,以減少自動化和記錄負載、將變更降到最低,並簡化稽核性,同時維持對資源存取的嚴格控制。
在工作負載需要符合密碼編譯標準和合規性基準的區域,請考慮使用支持開放標準的整合式平臺功能,以確保與雲端工作負載的相容性。 Red Hat 和 Microsoft遵守並參與全球標準機構,並提供適當的工具。 例如,個別實例中的許多組態檔都有系統服務和應用程式的密碼編譯加密組態。 差異可以輕鬆地在目標工作負載內和車隊內跨系統發生。 若要定義合規性度量,請考慮使用開放式標準。 Red Hat 和 Microsoft 工具都會使用標準化檔格式,以提供最新的弱點和組態數據。 Red Hat 提供適用於 Red Hat 平臺元件的 Red Hat 產品安全性小組最新 開放弱點和評估語言 (OVAL) 摘要。
Azure 提供了使用雲端特定功能並維護安全性與合規性最佳做法的獨特機會。 Azure 基礎結構內的安全性功能和服務包括:
VM 的信任啟動:保護實例 BIOS 和設定。 您可以使用 VM 的信任啟動來保護啟動程式,這可確保 VM 以已驗證的程式代碼啟動。
Azure 金鑰保存庫 中的 Azure 磁碟加密:加密待用數據。 若要保護待用數據,請使用 金鑰保存庫 中的 Azure 磁碟加密來管理加密密鑰和秘密。 金鑰保存庫 支援兩種類型的容器:保存庫和受控硬體安全性模組 (HSM) 集區。 您可以將軟體、HSM 支援的金鑰、秘密和憑證儲存在保存庫中。
適用於雲端的 Microsoft Defender:確保集中式系統稽核。 適用於雲端的 Defender 可以提供集中式檢視區,以進行統一的安全性管理和威脅防護。
設計建議
在 Azure 上設計 RHEL 環境時,請利用 Red Hat 原生安全性功能和 Azure 雲端安全性功能,以確保強固、安全且有效率的部署。 從您強化和建置已知已驗證二進位檔的映像開始。 Azure Marketplace 中的 RHEL 映像可簡化雲端效能和安全性。 如果您的企業有特定的安全性需求,您應該從您從 Red Hat 來源二進位檔建置的自定義強化映像開始。 Red Hat Satellite 可以維護及管理 Red Hat、Microsoft,以及合作夥伴程式代碼或您的自定義應用程式程式代碼。 附屬可以透過受控內容認證和簽章來驗證程序代碼。 RHEL 會驗證軟體從來源到磁碟的一致性和真實性。
當您使用 Azure 和 Red Hat 管理工具來開發自動化工作流程時,Red Hat 建議您使用認證的 Ansible Automation Platform 集合。
確定您的工作流程:
- 產生、維護及測試基準和工作負載映像。
- 測試及部署暫時實例。
- 修補周期測試並傳遞持續性 VM 實例。
- 使用自動化管線。 自動化管線可大幅減少管理工作、確保一致的原則強制執行、改善異常偵測,以及加速整個 RHEL 登陸區域補救。
也請考慮使用 Azure 計算資源庫。 您可以使用組織中使用的所有必要安全性機制來建置 Red Hat 映射,並建立該 VM 的映像。 然後,您可以在 Azure 環境中的訂用帳戶和區域之間共用符合安全性的映像。 您也可以使用版本控制,以更細微地控制 VM 映像。 這種方法可協助您統一計算實例安全性修補程式,以及您在環境中使用的工具。
請考慮在 更新管理程序中實作 Azure 更新管理員 。 更新管理員是統一的服務,可用來監視部署中的更新。 使用更新管理員來調查 Azure、內部部署和其他雲端中整個機器群。
管理身分識別與存取權
若要集中強制執行嚴格的存取原則,請整合 Red Hat Identity Management (IdM)。 IdM 會使用信任和 OpenID Connect 整合,將下列功能的原生 Linux 實作合併到企業安全性模型中,而不需進行認證同步處理。
- 角色型存取控制 (RBAC)
- 主機型訪問控制
- 許可權提升原則
- SELinux 用戶對應原則
- 其他重要的Linux服務
相較於傳統的Linux部署,此方法會產生優點,例如:
- 透過減少自動化接觸點簡化變更控制。
- 減少記錄和分析相關負載。
- 符合驗證稽核需求。
- 原則一致性。
IdM 提供管理集中式 Linux 安全策略的優點。
Red Hat 建議您在所有以 RHEL 為基礎的實例上啟用並執行 SELinux,包括開發、測試和生產環境。 根據預設,所有 Red Hat 產生的映像和安裝都可以在強制執行模式中執行 SELinux。 當您設計工作負載部署時,您可以針對整個實例或實例內的個別服務,以寬鬆模式執行 SELinux。 然後,開發、安全性和作業小組可以判斷應用程式的存取特性,並使用稽核記錄數據搭配 SELinux 工具,為目標工作負載產生適當的 SELinux 原則。
SELinux 原則產生工具可以產生 RPM 型原則檔案,以包含在標準化映像部署的內容存放庫中。 開發、安全性和作業小組可以在管線內以反覆的方式在上游傳遞成品。 測試決定不會產生 SELinux 違規之後,您可以將 SELinux 組態設定設定為強制模式。 生產期間產生的 SELinux 違規表示與可接受的應用程式行為有重大偏差。 您應該加上旗標並調查這些違規。 使用 SELinux 提供完整的可見性和主動式威脅管理。
若要定義您指派給 RHEL 機器的 RBAC 角色,請瞭解小組的角色和責任。 相關小組可能需要提高虛擬機 (VM) 的存取權。 請考慮虛擬機參與者、虛擬機讀取器和類似的角色,以存取 VM。 如果您不需要常設存取權,請考慮 Just-In-Time 存取。 如果 RHEL 系統必須向 Azure 進行驗證,請考慮受控識別。 系統指派的受控識別可提供比服務主體更多的安全性,而且與 VM 資源相關聯。 除了 RBAC 角色,請考慮需要存取 Azure 環境的人員的條件式存取。 使用條件式存取,根據位置、IP 位址和其他準則限制使用者對 Azure 環境的存取。
使用防病毒軟體
請確定您在 RHEL 電腦上有適當的防病毒軟體。 請考慮在Linux上上線 適用於端點的 Microsoft Defender,以防範最新的弱點。 請記住,您不應該在用來裝載 SAP 資料庫的 RHEL 機器上啟用 適用於雲端的 Defender Standard。 請確定每個 RHEL 機器和工作負載都可以執行您的 Endpoint-Protection 軟體。
管理秘密
Red Hat 建議您盡可能在所有實例上設定全系統的密碼編譯原則。 您可以依多樣性來描述雲端部署的特性。 工作負載小組選擇自己的連結庫、語言、公用程式和密碼編譯提供者,以符合其特定解決方案的需求。 標準實作、應用程式元件分解、可組合性和其他技術可以降低變異性,但您可以在指定實例內的多個位置設定應用程式和服務的密碼編譯設定。
若要明智地設定新元件,需要大量精力,而且通常需要深入的密碼編譯知識。 過期或設定不當的密碼編譯原則會造成風險。 全系統密碼編譯原則會配合核心密碼編譯子系統的設定,其涵蓋傳輸層安全性(TLS)、因特網通訊協定安全性(IPSec)、功能變數名稱系統安全性延伸模組(DNSSEC)和 Kerberos 通訊協定。 RHEL 全系統密碼編譯 DEFAULT 原則會實作保守的設定,藉由停用舊版通訊協定,例如 TLS v1.1 和舊版,來消除整個類別的威脅。 FUTURE 和 FIPS 原則提供更嚴格的設定。 您也可以建立自定義原則。
您可以納入 RHEL 系統稽核和安全性合規性工具。 專注於符合業界標準的自動化掃描和補救。
會稽核 RHEL 稽核精靈,並記錄中央記錄精靈。 Azure 監視器可以從稽核和日誌擷取數據,以監視 RHEL 系統安全性事件,並饋送Microsoft Sentinel 或其他安全性資訊和事件管理 (SIEM) 服務。
需要符合國防資訊系統機構安全性技術實作指南 (DISA-STIG) 合規性的 RHEL 系統需要進階入侵檢測環境 (AIDE) 公用程式。 您應該將 AIDE 輸出記錄至 Azure。
監視及整合 Ansible Automation Platform,以識別、警示及補救重要系統檔案。
在所有以 Azure 為基礎的 RHEL 實例上使用免費的操作系統層級元件。
強制執行程式代碼執行原則:使用 fapolicyd 精靈來限制可在 RHEL 實例中執行的應用程式。
管理實例輸入和輸出流量:使用 具有 Azure 網路安全組 (NSG) 的防火牆 ,有效地管理對 VM 的北行和南行流量。
透過自動化集中管理設定:使用 GitOps 方法可確保在部署期間持續執行 RHEL 工作負載的一致設定管理,並持續執行 2 天的 RHEL 工作負載。
實作政府工作負載的 FIPS 合規性模式:確定指定的 RHEL 實例以 FIPS 模式執行,以符合密碼編譯標準。 使用 Azure 合規性供應專案來取得完整的合規性狀態。
一律執行 SELinux:在寬鬆模式中使用 SELinux 來識別工作負載存取配置檔,並確保在 RHEL VM 上強制模式中執行 SELinux 的適當原則。 SELinux 可大幅降低在 Azure 中執行之應用程式和服務的受攻擊面。
透過 Red Hat Satellite 向 Red Hat Insights 註冊 RHEL 伺服器。 Red Hat Insights 會利用 Red Hat 問題解決資料庫的分析。 深入解析會使用此分析,在影響作業之前,主動識別併產生部署和設定問題的補救。 此策略可增強安全性狀態和營運效率。 每個 RHEL 訂用帳戶都包含 Insights。 所有 RHEL 雲端式訂用帳戶都包含 Red Hat Satellite 訂用帳戶。 或者,您可以使用雲端存取 RHEL 訂用帳戶購買 Red Hat Satellite 訂用帳戶。
注意
深入解析會在 Azure 外部傳送遙測系統資訊。
設定網路
您可以將 NSG 套用至網路介面層級或子網層級。 除非特定需求需要網路介面層級的 NSG,否則建議您使用子網層級。 此方法可簡化網路通訊管理。 您可以使用應用程式安全組來允許應用程式通訊,以全面區隔子網之間的通訊。 判斷哪一種方法最適合您的案例,並確保 RHEL 機器能夠適當存取因特網以取得必要的存放庫。 您可能需要在最鎖定的環境中,將這些存放庫的URL列入允許清單。 私人端點可確保 Azure 資源預設可接收的唯一流量是來自 Azure 網路的流量,包括如果您有 Azure 閘道,則來自內部部署的連線。
實作 SIEM 或 SOAR 工具
請考慮 針對 RHEL 系統的安全性協調流程、自動化和回應 (SOAR) 工具或 SIEM 工具Microsoft Sentinel 。 Microsoft Sentinel 會使用 AI 來調整其偵測系統威脅的方式。 您可以透過 Runbook 自動回應攻擊。 使用 Microsoft Sentinel 進行主動式威脅偵測、威脅搜捕和威脅回應。
考慮機密運算
RHEL 具有特定 RHEL 操作系統選項的機密映像。 請考慮機密運算 使用案例。