日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

在注冊集群中配置容器安全策略(新版)

注冊集群能夠提供更多符合K8s應用場景的策略規則,在規則配置上也更加靈活簡單,幫助企業安全運維管理人員更好地使用策略治理相關能力。本文介紹如何在注冊集群中安裝策略治理組件及如何管理策略實例。

索引

背景信息

注冊集群的容器安全策略相較于原PSP(PodSecurityPolicy)策略能夠提供符合更多K8s應用場景的策略規則,在規則配置上也更加靈活簡單,幫助企業安全運維管理人員更好地使用策略治理相關能力。

前提條件

  • 已創建注冊集群,且集群版本至少為1.16.9-aliyun.1,并將自建Kubernetes集群接入注冊集群。具體操作,請參見創建注冊集群并接入本地數據中心集群

  • 已在本地安裝配置onectl。具體操作,請參見通過onectl管理注冊集群

  • 如果您使用RAM賬號進行策略管理,RAM賬號需要擁有以下RAM授權條件。關于如何自定義RAM授權策略,請參見自定義RAM授權策略

    參數

    說明

    cs:DescribePolicies

    列舉策略治理規則庫列表。

    cs:DescribePoliceDetails

    獲取策略規則模板詳情。

    cs:DescribePolicyGovernanceInCluster

    獲取集群策略治理詳情。

    cs:DescribePolicyInstances

    獲取集群中當前部署的策略實例列表。

    cs:DescribePolicyInstancesStatus

    獲取集群當前不同策略類型對應的實例部署狀態。

    cs:DeployPolicyInstance

    在指定集群中部署策略規則實例。

    cs:DeletePolicyInstance

    在指定集群中刪除策略規則實例。

    cs:ModifyPolicyInstance

    在指定集群中修改策略規則實例。

注意事項

  • 僅支持1.16.9-aliyun.1及以上版本的注冊集群。

  • 當前僅適用于Linux節點。

  • 當前不支持自定義策略規則,所有規則均來自于阿里云容器服務內置的規則庫。

  • 僅支持通過容器服務管理控制臺組件管理頁面以及onectl方式安裝gatekeeper組件。

    如果集群中已通過其他途徑安裝gatekeeper組件,請您卸載后再通過組件管理安裝gatekeeper組件。關于gatekeeper組件的版本發布信息,請參見gatekeeper

安裝策略治理組件

policy-template-controller組件為基于阿里云策略模板開發的K8s控制器,幫助您更好地管理基于不同策略模板部署的策略實例和集群整體的治理狀態。

在安裝策略治理組件policy-template-controller前,您需要安裝以下組件。

  • gatekeeper組件:基于OPA策略引擎的K8s策略準入控制器,幫助您方便地管理和應用集群內的OPA策略,實現命名空間標簽管理等功能。

  • logtail-ds日志組件:用于對不符合策略約束的攔截或告警事件進行收集和檢索。

您可以使用以下兩種方式安裝gatekeeper、logtail-ds和策略治理組件。

通過onectl安裝

  1. 在本地安裝配置onectl。具體操作,請參見通過onectl管理注冊集群

  2. 執行以下命令,安裝所需組件。

    onectl ram-user grant --addon logtail-ds
    onectl addon install gatekeeper
    onectl addon install logtail-ds
    onectl addon install policy-template-controller

    預期輸出:

    Ram policy ack-one-registered-cluster-policy-logtail-ds granted to ram user ack-one-user-ce313528c3 successfully.
    Addon gatekeeper, version **** installed.
    Addon logtail-ds, version **** installed.
    Addon policy-template-controller, version **** installed.

通過控制臺安裝

您可以通過組件管理頁面安裝gatekeeper、logtail-ds組件。具體操作,請參見管理組件

  1. 登錄容器服務管理控制臺,在左側導航欄選擇集群

  2. 集群列表頁面,單擊目標集群名稱,然后在左側導航欄,選擇安全管理 > 策略管理

  3. 策略管理頁面,單擊開始安裝,根據頁面提示,依次完成策略治理組件的安裝。

策略規則庫說明

當前阿里云容器服務ACK內置如下類型的策略規則庫,策略分類和簡要說明如下。關于策略規則庫具體的參數配置和模板使用說明,請參見容器安全策略規則庫說明

Category

Policy

Description

Severity

Compliance

ACKNoEnvVarSecrets

限制Secret以secretKeyRef的形式掛載到應用Pod環境變量中。

medium

ACKPodsRequireSecurityContext

限制Pod中所有容器必須配置securitycontext字段。

low

ACKRestrictNamespaces

限制資源部署在集群指定的命名空間中。

low

ACKRestrictRoleBindings

限制指定命名空間下的rolebinding使用指定范圍內的Role或Clusterrole。

high

ACKNamespacesDeleteProtection

限制指定的Namespace被誤刪除。

medium

Infra

ACKBlockProcessNamespaceSharing

限制在集群指定范圍部署的應用中使用shareProcessNamespace

high

ACKEmptyDirHasSizeLimit

要求emptyDir類型的Volume必須指定sizelimit

low

ACKLocalStorageRequireSafeToEvict

限制部署在集群指定范圍內的Pod必須具有 "cluster-autoscaler.kubernetes.io/safe-to-evict": "true" 注釋標簽。默認情況下autoscaler在集群自動伸縮時不會驅逐使用HostPath或EmptyDir卷的Pod。為了允許驅逐這些Pod,必須在Pod上添加該注釋標簽。

low

ACKOSSStorageLocationConstraint

限制指定Namespaces下的部署只能使用指定Region中的阿里云OSS存儲卷。

low

K8s-general

ACKAllowedRepos

限制在集群指定范圍部署的應用Pod中拉取白名單列表外的鏡像。

high

ACKBlockAutoinjectServiceEnv

要求在應用中配置enableServiceLinks: false防止在Pod環境變量中透出服務IP。

low

ACKBlockAutomountToken

要求在應用中設置automountServiceAccountToken: false字段防止自動掛載serviceaccount

high

ACKBlockEphemeralContainer

限制在集群指定范圍的應用Pod中啟動臨時容器。

medium

ACKBlockLoadBalancer

限制在集群指定范圍內部署LoadBalancer類型的Service。

high

ACKBlockNodePort

限制在集群指定范圍內使用NodePort類型的Service。

high

ACKContainerLimits

要求集群指定范圍的應用Pod配置資源limits

low

ACKExternalIPs

限制在集群指定范圍內的Services實例使用白名單范圍之外的externalIPs。

high

ACKImageDigests

限制在集群指定范圍內部署不符合digest格式的鏡像。

low

ACKRequiredLabels

限制在集群指定范圍內部署沒有指定范式label標簽的應用。

low

ACKRequiredProbes

限制在集群指定范圍內部署的Pod配置指定類型的readinessProbe和livenessProbe。

medium

ACKCheckNginxPath

限制在Ingress實例的spec.rules[].http.paths[].path字段中使用危險配置。Ingress-nginx 1.2.1以下版本建議開啟該策略。

high

ACKCheckNginxAnnotation

限制在Ingress實例的metadata.annotations字段中使用危險配置。Ingress-nginx 1.2.1以下版本建議開啟該策略。

high

ACKBlockInternetLoadBalancer

限制創建公網類型的LoadBalancer Service。

high

PSP

ACKPSPAllowPrivilegeEscalationContainer

限制在集群指定范圍內部署的Pod配置allowPrivilegeEscalation參數。

medium

ACKPSPAllowedUsers

限制在集群指定范圍內部署的Pod中的啟動usergroupsupplementalGroups以及fsGroup

medium

ACKPSPAppArmor

限制在集群指定范圍內部署的Pod配置AppArmor。

low

ACKPSPCapabilities

限制在集群指定范圍內部署的Pod配置Linux Capabilities能力。

high

ACKPSPFSGroup

限制在集群指定范圍內部署的Pod配置fsGroup。

medium

ACKPSPFlexVolumes

限制在集群指定范圍內部署Pod的FlexVolume驅動配置。

medium

ACKPSPForbiddenSysctls

限制在集群指定范圍內部署Pod的禁止的Sysctl范圍。

high

ACKPSPHostFilesystem

限制在集群指定范圍內部署的Pod允許掛載的主機Host目錄范圍。

high

ACKPSPHostNamespace

限制在集群指定范圍內部署的Pod是否允許共享主機Host命名空間。

high

ACKPSPHostNetworkingPorts

限制在集群指定范圍內部署的Pod使用主機網絡和指定端口。

high

ACKPSPPrivilegedContainer

限制在集群指定范圍內部署的Pod中啟動特權容器。

high

ACKPSPProcMount

限制在集群指定范圍內部署的Pod允許掛載的Proc類型。

low

ACKPSPReadOnlyRootFilesystem

限制在集群指定范圍內部署的Pod使用只讀的根文件系統。

medium

ACKPSPSELinuxV2

限制在集群指定范圍內部署的Pod必須使用AllowedSELinuxOptions參數中規定的Selinux配置。

low

ACKPSPSeccomp

限制在集群指定范圍內部署的Pod使用指定的Seccomp配置文件。

low

ACKPSPVolumeTypes

限制在集群指定范圍內部署的Pod使用指定的Volume掛載類型。

medium

查看集群當前策略治理狀態

對于安裝了策略治理相關組件的集群,可以通過以下操作查看集群當前策略治理狀態。

  1. 登錄容器服務管理控制臺,在左側導航欄選擇集群

  2. 集群列表頁面,單擊目標集群名稱,然后在左側導航欄,選擇安全管理 > 策略管理

  3. 策略實施總覽頁簽中查看集群當前策略治理狀態。

    包含以下信息:

    • 策略開啟總覽,包括高危和中危防護策略的總數和已開啟數展示,建議開啟的策略列表等。

    • 近7天攔截和告警結果統計。

    • 近7天策略實施記錄,當前頁面表格中會默認展示7天內最近100條的攔截或告警日志,如果您想查看更多審計日志,可以單擊近7天策略實施記錄后的未知圖標,并單擊懸浮窗口中的日志服務鏈接在SLS日志服務控制臺指定的Logstore中查看全部日志。策略實施總覽

查看策略列表和集群中已部署的策略實例

您可以通過以下操作查看策略列表和在集群中當前已部署的策略實例總數。

  1. 登錄容器服務管理控制臺,在左側導航欄選擇集群

  2. 集群列表頁面,單擊目標集群名稱,然后在左側導航欄,選擇安全管理 > 策略管理

  3. 我的策略頁簽中查看集群所有可部署的策略名稱。

    在列表中顯示所有可部署的策略名稱,在表格右上角會顯示全部策略已開啟未開啟的策略計數。其中已開啟的策略名稱會優先顯示在表格上部,在策略實例數中會顯示對應策略在集群中已部署的實例個數。

    • 單擊操作列下的編輯或單擊策略名稱中的鏈接可以修改策略實例的配置。

    • 單擊操作列下的刪除可以刪除該策略在集群中部署的所有實例。

    • 如果策略實例數為空說明該策略還未在集群中部署創建,可以通過單擊操作列下的開啟進行參數配置后部署對應的策略實例。

    關于策略說明和模板示例的更多信息,請參見容器安全策略規則庫說明

創建策略實例

您可以根據以下操作在指定集群中創建策略實例。

  1. 登錄容器服務管理控制臺,在左側導航欄選擇集群

  2. 集群列表頁面,單擊目標集群名稱,然后在左側導航欄,選擇安全管理 > 策略管理

  3. 單擊我的策略頁簽,然后單擊創建策略實例。在創建策略實例對話框配置相關參數。

    參數

    說明

    策略類型

    首先選擇策略類型,包括如下大類:

    • Infra:基礎設施層資源相關的策略類型。

    • Compliance:基于K8s合規規范定制的策略類型。

    • PSP:替代Pod Security Policy(PSP)的策略類型。

    • K8s-general:基于最佳安全實踐對K8s資源配置進行安全加固約束的通用策略類型。

    策略名稱

    根據選擇的策略類型,在策略名稱下拉列表中選擇需要部署的策略模板名稱。更多信息,請參見策略規則庫說明

    實施動作

    • 攔截:違反策略規則約束的指定資源部署會被攔截。

    • 告警:違反策略規則約束的指定資源仍舊可以部署,只會產生對應違規審計的告警日志。

    作用范圍

    選擇策略實例實施在集群中哪些指定的命名空間。

    參數配置

    • 如果參數配置輸入框中默認為空,說明規則不需要進行參數配置。

    • 如果輸入框中包含需要配置的參數模板,則請參考策略參數說明按照指定格式配置參數。更多信息,請參見策略規則庫說明

修改策略實例

您可以根據以下操作在指定集群中修改已經部署的策略實例。

  1. 登錄容器服務管理控制臺,在左側導航欄選擇集群

  2. 集群列表頁面,單擊目標集群名稱,然后在左側導航欄,選擇安全管理 > 策略管理

  3. 我的策略頁簽右側的操作列,單擊目標策略對應的編輯

    當策略在集群中已部署超過1個實例時,您可以單擊操作列的查看策略實例,選擇需要修改配置的指定實例,單擊對應策略的編輯,在編輯策略對話框修改相關配置。關于相關配置說明,請參見策略的相關參數配置說明

刪除策略實例

您可以根據以下操作在指定集群中刪除策略實例。

  1. 登錄容器服務管理控制臺,在左側導航欄選擇集群

  2. 集群列表頁面,單擊目標集群名稱,然后在左側導航欄,選擇安全管理 > 策略管理

  3. 我的策略頁簽右側的操作列,單擊目標策略對應的刪除

    • 單擊刪除,可以刪除對應策略在集群中已經部署的所有實例。

    • 當對應策略在集群中已部署超過1個實例時,您可以單擊操作列中的查看策略實例,選擇目標實例,然后單擊對應策略的刪除