跳至主要内容

合規掃描

Rancher 可以執行安全掃描,以檢查叢集是否根據 Kubernetes 安全基準中定義的安全最佳實踐進行部署,例如 STIG、BSI 或 CIS 提供的基準。合規掃描可以在任何 Kubernetes 叢集上執行,包括託管的 Kubernetes 提供商,如 EKS、AKS 和 GKE。

rancher-compliance 應用程式利用 kube-bench,這是 Aqua Security 的開源工具,用於檢查叢集是否符合 Kubernetes 基準。此外,為了生成整個叢集的報告,該應用程式使用 Sonobuoy 進行報告聚合。

關於 CIS 基準​

Center for Internet Security 是一個 501(c)(3) 非營利組織,成立於 2000 年 10 月,其使命是「識別、開發、驗證、推廣和維持網路防禦的最佳實踐解決方案,並建立和領導社群以在網路空間中建立信任環境」。該組織總部位於紐約州 East Greenbush,成員包括大型企業、政府機構和學術機構。

CIS 基準是目標系統安全配置的最佳實踐。CIS 基準是透過主題專家、技術供應商、公共和私人社群成員以及 CIS 基準開發團隊的慷慨志願者努力而開發的。

在 CIS 網站註冊以查看官方基準文件。

關於生成的報告​

每次掃描都會生成一個報告,可以在 Rancher UI 中查看,並可以下載為 CSV 格式。

預設情況下,使用 CIS Benchmark v1.6。

基準版本包含在生成的報告中。

基準提供兩種類型的建議:自動化和手動。基準中標記為手動的建議不包含在生成的報告中。

某些測試被指定為「不適用」。由於 Rancher 佈建 RKE2/K3s 叢集的方式,這些測試不會在任何 CIS 掃描中執行。有關如何審核測試結果以及為什麼某些測試被指定為不適用的資訊,請參閱 Rancher 針對相應 Kubernetes 版本的自我評估指南。

報告包含以下資訊:

報告中的欄位描述
idCIS 基準的 ID 編號。
descriptionCIS 基準測試的描述。
remediation需要修復什麼才能通過測試。
state指示測試是通過、失敗、被跳過還是不適用。
node_type節點角色,這會影響在節點上執行哪些測試。Master 測試在 controlplane 節點上執行,etcd 測試在 etcd 節點上執行,node 測試在 worker 節點上執行。
audit這是 kube-bench 為此測試執行的審核檢查。
audit_config適用於審核腳本的任何配置。
test_infokube-bench 報告的測試相關資訊(如果有)。
commandskube-bench 報告的測試相關命令(如果有)。
config_commandskube-bench 報告的測試相關配置資料(如果有)。
actual_value測試的實際值,如果 kube-bench 有報告則存在。
expected_result測試的預期結果,如果 kube-bench 有報告則存在。

請參閱叢集強化指南中的表格,了解 Kubernetes、基準、Rancher 和我們的叢集強化指南的哪些版本相互對應。另請參閱強化指南,以獲取符合 CIS 的叢集配置檔案以及有關修復失敗測試的資訊。

測試配置檔​

提供以下配置檔:

  • Generic CIS 1.6
  • Generic CIS 1.20
  • Generic CIS 1.23
  • RKE2 permissive 1.6
  • RKE2 hardened 1.6
  • RKE2 permissive 1.20
  • RKE2 hardened 1.20
  • RKE2 permissive 1.23
  • RKE2 hardened 1.23
  • K3s permissive 1.6
  • K3s hardened 1.6
  • K3s permissive 1.20
  • K3s hardened 1.20
  • K3s permissive 1.23
  • K3s hardened 1.23
  • AKS
  • EKS
  • GKE

您還可以透過儲存一組要跳過的測試來自訂配置檔。

所有配置檔都會有一組在 CIS 掃描期間會被跳過的不適用測試。這些測試基於 RKE2/K3s 叢集管理 Kubernetes 的方式而不適用。

有兩種類型的 RKE2/K3s 叢集掃描配置檔:

  • Permissive: 此配置檔有一組將被跳過的測試,因為這些測試在預設的 RKE2/K3s Kubernetes 叢集上會失敗。除了跳過的測試列表外,該配置檔也不會執行不適用的測試。
  • Hardened: 此配置檔不會跳過任何測試,除了不適用的測試。

EKS 和 GKE 叢集掃描配置檔基於特定於這些類型叢集的 CIS 基準版本。

為了通過「Hardened」配置檔,您需要遵循強化指南上的步驟,並使用強化指南中定義的 cluster.yml 來佈建強化叢集。

預設配置檔和支援的 CIS 基準版本取決於將要掃描的叢集類型:

rancher-compliance 支援 CIS 1.9 基準版本。

  • 對於 RKE2 Kubernetes 叢集,預設使用 RKE2 Permissive 1.9 配置檔。
  • EKS 和 GKE 有由 kube-bench 發布的自己的 CIS 基準。預設情況下,這些叢集使用相應的測試配置檔。
  • 對於 RKE2、EKS 和 GKE 以外的叢集類型,預設使用 Generic CIS 1.5 配置檔。

關於跳過和不適用的測試​

目前,只有使用者定義的跳過測試在生成的報告中標記為跳過。

任何由預設配置檔定義為跳過的跳過測試都標記為不適用。

基於角色的存取控制​

有關權限的資訊,請參閱此頁面。

配置​

有關為掃描、配置檔和基準版本配置自訂資源的更多資訊,請參閱此頁面。

操作指南​

請參閱合規掃描指南以了解如何執行合規掃描。