통합
Red Hat Advanced Cluster Security for Kubernetes 통합
초록
1장. 이미지 레지스트리와 통합
RHACS(Advanced Cluster Security for Kubernetes)는 다양한 이미지 레지스트리와 통합되어 이미지를 이해하고 이미지 사용을 위한 보안 정책을 적용할 수 있습니다.
이미지 레지스트리와 통합할 때 이미지 생성 날짜 및 Dockerfile 세부 정보(이미지 계층 포함)와 같은 중요한 이미지 세부 정보를 볼 수 있습니다.
RHACS를 레지스트리와 통합한 후 이미지를 스캔하고, 이미지 구성 요소를 보고, 배포 전이나 후에 이미지에 보안 정책을 적용할 수 있습니다.
이미지 레지스트리와 통합할 때 RHACS는 레지스트리의 모든 이미지를 검사하지 않습니다. RHACS는 다음의 경우에만 이미지를 검사합니다.
- 배포에서 이미지 사용
-
roxctlCLI를 사용하여 이미지 확인 - 지속적인 통합 (CI) 시스템을 사용하여 보안 정책 적용
RHACS를 다음을 포함하여 주요 이미지 레지스트리와 통합할 수 있습니다.
1.1. 자동 설정
Red Hat Advanced Cluster Security for Kubernetes에는 Docker Hub 등과 같은 표준 레지스트리와 기본 통합이 포함되어 있습니다. 또한 이미지 풀 시크릿과 같이 모니터링된 클러스터에 있는 아티팩트를 기반으로 통합을 자동으로 구성할 수 있습니다. 일반적으로 레지스트리 통합을 수동으로 설정할 필요가 없습니다.
GCR 레지스트리를 사용하는 경우 Red Hat Advanced Cluster Security for Kubernetes는 레지스트리 통합을 자동으로 생성하지 않습니다.
1.2. Amazon ECR 통합
Amazon ECR 통합의 경우 다음 조건이 충족되면 Kubernetes용 Red Hat Advanced Cluster Security가 ECR 레지스트리 통합을 자동으로 생성합니다.
- 클러스터의 클라우드 공급자는 AWS입니다.
- 클러스터의 노드에는 IAM(인스턴스 ID 및 액세스 관리) 역할 연결이 있고 노드에서 인스턴스 메타데이터 서비스를 사용할 수 있습니다. 예를 들어 Amazon Elastic Kubernetes Service(EKS)를 사용하여 클러스터를 관리할 때 이 역할을 EKS Node IAM 역할로 알려져 있습니다.
- 인스턴스 IAM 역할에는 배포 중인 ECR 레지스트리에 대한 액세스 권한을 부여하는 IAM 정책이 있습니다.
나열된 조건이 충족되면 ECR 레지스트리에서 가져오고 이를 위해 ECR 통합을 자동으로 생성하는 Kubernetes용 Red Hat Advanced Cluster Security가 배포를 모니터링합니다. 이러한 통합은 자동으로 생성된 후 편집할 수 있습니다.
1.3. 이미지 레지스트리 수동 구성
GCR을 사용하는 경우 이미지 레지스트리 통합을 수동으로 생성해야 합니다.
1.3.1. OpenShift Container Platform 레지스트리 수동 구성
Kubernetes용 Red Hat Advanced Cluster Security를 OpenShift Container Platform 기본 컨테이너 이미지 레지스트리와 통합할 수 있습니다.
사전 요구 사항
- OpenShift Container Platform 레지스트리를 사용한 인증에 필요한 사용자 이름 및 암호가 필요합니다.
절차
- RHACS 포털에서 플랫폼 구성 → 통합 으로 이동합니다.
- 이미지 통합 섹션에서 일반 Docker 레지스트리 를 선택합니다.
- New Integration을 클릭합니다.
다음 필드에 대한 세부 정보를 입력합니다.
- 통합 이름: 통합의 이름입니다.
- Endpoint: 레지스트리의 주소입니다.
- 사용자 이름 및 암호.
- 레지스트리에 연결할 때 TLS 인증서를 사용하지 않는 경우 Disable TLS certificate validation (비보안) 을 선택합니다.
- 레지스트리에 대한 연결을 테스트하지 않고 통합을 생성하려면 테스트 없이 통합 생성을 선택합니다.
- 테스트를 선택하여 선택한 레지스트리와의 통합이 작동하는지 테스트합니다.
- 저장을 선택합니다.
1.3.2. Amazon Elastic Container Registry 수동 구성
Kubernetes용 Red Hat Advanced Cluster Security를 사용하여 Amazon Elastic Container Registry(ECR) 통합을 수동으로 생성하고 수정할 수 있습니다. Amazon ECR에서 배포하는 경우 일반적으로 Amazon ECR 레지스트리의 통합이 자동으로 생성됩니다. 그러나 배포 외부에서 이미지를 스캔하기 위해 자체적으로 통합을 생성할 수도 있습니다. 자동 생성된 통합의 매개변수를 수정할 수도 있습니다. 예를 들어 자동 생성된 Amazon ECR 통합에서 사용하는 인증 방법을 변경하여 AssumeRole 인증 또는 기타 권한 부여 모델을 사용할 수 있습니다.
자동으로 생성되는 ECR 통합을 지우려면 통합을 삭제하고 Red Hat Advanced Cluster Security for Kubernetes는 Amazon ECR에서 이미지를 배포할 때 자동으로 생성된 매개변수로 새로운 통합을 생성합니다.
사전 요구 사항
-
IAM(Amazon Identity and Access Management) 액세스 키 ID와 시크릿 액세스 키가 있어야 합니다. 또는
kiam또는kube2iam과 같은 노드 수준 IAM 프록시를 사용할 수 있습니다. - 액세스 키는 ECR에 대한 읽기 액세스 권한이 있어야 합니다. 자세한 내용은 How do I create an AWS access key? 에서 참조하십시오.
EKS(Amazon Elastic Kubernetes Service)에서 Red Hat Advanced Cluster Security for Kubernetes를 실행하고 별도의 Amazon 계정에서 ECR과 통합하려는 경우 먼저 ECR에서 리포지토리 정책 문을 설정해야 합니다. 리포지토리 정책 설정 의 지침에 따라 Amazon ECR API 작업의 다음 범위를 선택합니다.
- ecr:BatchCheckLayerAvailability
- ecr:BatchGetImage
- ecr:DescribeImages
- ecr:GetDownloadUrlForLayer
- ecr:ListImages
절차
- RHACS 포털에서 플랫폼 구성 → 통합 으로 이동합니다.
- 이미지 통합 섹션에서 Amazon ECR 을 선택합니다.
- New integration 을 클릭하거나 자동 생성된 통합 중 하나를 클릭하여 엽니다.
다음 필드에 대한 세부 정보를 입력하거나 수정합니다.
- 저장된 인증 정보 업데이트: 액세스 키 및 암호와 같은 자격 증명을 업데이트하지 않고 통합을 수정하는 경우 이 상자를 지웁니다.
- 통합 이름: 통합의 이름입니다.
- 레지스트리 ID: 레지스트리의 ID입니다.
- Endpoint: 레지스트리의 주소입니다. AssumeRole 옵션이 선택되면 이 필드가 활성화되지 않습니다.
-
region : 레지스트리의 리전 (예:
us-west-1)입니다.
- IAM을 사용하는 경우 컨테이너 IAM 역할 사용을 선택합니다. 그렇지 않으면 Use Container IAM 역할 상자를 지우고 Access 키 ID 및 시크릿 액세스 키를 입력합니다.
AssumeRole 인증을 사용하는 경우 AssumeRole 사용을 선택하고 다음 필드에 대한 세부 정보를 입력합니다.
- AssumeRole ID: 가정할 역할의 ID입니다.
- AssumeRole 외부 ID (선택 사항): AssumeRole과 함께 외부 ID 를 사용하는 경우 여기에서 입력할 수 있습니다.
- 레지스트리에 대한 연결을 테스트하지 않고 통합을 생성하려면 테스트 없이 통합 생성을 선택합니다.
- 테스트를 선택하여 선택한 레지스트리와의 통합이 작동하는지 테스트합니다.
- 저장을 선택합니다.
1.3.2.1. Amazon ECR에서 assumerole 사용
AssumeRole 을 사용하여 각 사용자의 권한을 수동으로 구성하지 않고도 AWS 리소스에 대한 액세스 권한을 부여할 수 있습니다. 대신 사용자에게 해당 역할을 가정할 수 있는 액세스 권한이 부여되도록 원하는 권한으로 역할을 정의할 수 있습니다. AssumeRole 을 사용하면 더 세분화된 권한을 부여, 취소 또는 관리할 수 있습니다.
1.3.2.1.1. 컨테이너 IAM을 사용하여 AssumeRole 구성
Kubernetes용 Red Hat Advanced Cluster Security에서 AssumeRole을 사용하려면 먼저 구성해야 합니다.
절차
EKS 클러스터의 IAM OIDC 공급자를 활성화합니다.
$ eksctl utils associate-iam-oidc-provider --cluster <cluster name> --approve
- EKS 클러스터의 IAM 역할을 생성합니다.
새로 생성된 역할을 서비스 계정과 연결합니다.
$ kubectl -n stackrox annotate sa central eks.amazonaws.com/role-arn=arn:aws:iam::67890:role/<role-name>
변경 사항을 적용하려면 Central을 다시 시작하십시오.
$ kubectl -n stackrox delete pod -l app=central
역할이 다른 역할을 필요에 따라 가정할 수 있는 정책에 역할을 할당합니다.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": "sts:AssumeRole", "Resource": "arn:aws:iam::<ecr-registry>:role/<assumerole-readonly>" 1 } ] }- 1
- &
lt;assumerole-readonly>를 가정하려는 역할로 바꿉니다.
가정하려는 역할의 신뢰 관계를 업데이트합니다.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::<ecr-registry>:role/<role-name>" 1 ] }, "Action": "sts:AssumeRole" } ] }- 1
- &
lt;role-name>은 이전에 생성한 새 역할과 일치해야 합니다.
1.3.2.1.2. 컨테이너 IAM 없이 AssumeRole 구성
컨테이너 IAM 없이 AssumeRole을 사용하려면 액세스 및 시크릿 키를 사용하여 프로그램 액세스 권한이 있는 AWS 사용자로 인증해야 합니다.
절차
AssumeRole 사용자가 ECR 레지스트리와 동일한 계정에 있는지 또는 다른 계정에 있는지에 따라 다음 중 하나를 수행해야 합니다.
역할을 가정하려는 사용자가 ECR 레지스트리와 동일한 계정에 있는 경우 원하는 권한으로 새 역할을 생성합니다.
참고역할을 생성할 때 필요한 신뢰할 수 있는 엔터티를 선택할 수 있습니다. 그러나 생성 후 수정해야 합니다.
또는 ECR 레지스트리에 액세스할 수 있는 권한을 제공하고 사용자가 ECR 레지스트리와 다른 계정에 있는 경우 신뢰 관계를 정의해야 합니다.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": "sts:AssumeRole", "Resource": "arn:aws:iam::<ecr-registry>:role/<assumerole-readonly>" 1 } ] }- 1
- &
lt;assumerole-readonly>를 가정하려는 역할로 바꿉니다.
Principal 필드에 사용자 ARN을 포함하여 역할의 신뢰 관계를 구성합니다.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::<ecr-registry>:user/<role-name>" ] }, "Action": "sts:AssumeRole" } ] }
1.3.2.1.3. RHACS에서 AssumeRole 구성
ECR에서 AssumeRole을 구성한 후 AssumeRole을 사용하여 Kubernetes용 Red Hat Advanced Cluster Security를 Amazon Elastic Container Registry(ECR)와 통합할 수 있습니다.
절차
- RHACS 포털에서 플랫폼 구성 → 통합 으로 이동합니다.
- 이미지 통합 섹션에서 Amazon ECR 을 선택합니다.
- New Integration 을 클릭합니다.
다음 필드에 대한 세부 정보를 입력합니다.
- Integration Name: 통합의 이름입니다.
- 레지스트리 ID: 레지스트리의 ID입니다.
-
region : 레지스트리의 리전 (예:
us-west-1)입니다.
- IAM을 사용하는 경우 컨테이너 IAM 역할 사용을 선택합니다. 그렇지 않으면 사용자 정의 IAM 역할 사용 상자를 지우고 Access 키 ID 및 시크릿 액세스 키를 입력합니다.
AssumeRole을 사용하는 경우 AssumeRole 사용을 선택하고 다음 필드에 대한 세부 정보를 입력합니다.
- AssumeRole ID: 가정할 역할의 ID입니다.
- AssumeRole 외부 ID (선택 사항): AssumeRole과 함께 외부 ID 를 사용하는 경우 여기에서 입력할 수 있습니다.
- 테스트를 선택하여 선택한 레지스트리와의 통합이 작동하는지 테스트합니다.
- 저장을 선택합니다.
1.3.3. 수동으로 Google Container Registry 구성
Kubernetes용 Red Hat Advanced Cluster Security를 GCR(Google Container Registry)과 통합할 수 있습니다.
사전 요구 사항
- 서비스 계정 키가 있어야 합니다.
- 연결된 서비스 계정에 레지스트리에 대한 액세스 권한이 있어야 합니다. GCR 에 대한 사용자 및 기타 프로젝트 액세스 권한 부여에 대한 정보는 액세스 제어 구성을 참조하십시오.
GCR 컨테이너 분석을 사용하는 경우 서비스 계정에 다음 역할도 부여해야 합니다.
- 컨테이너 분석 노트 뷰어
- 컨테이너 분석 Occurrences Viewer
- 스토리지 오브젝트 뷰어
절차
- RHACS 포털에서 플랫폼 구성 → 통합 으로 이동합니다.
- 이미지 통합 섹션에서 Google Container Registry 를 선택합니다.
- New Integration을 클릭합니다.
다음 필드에 대한 세부 정보를 입력합니다.
- 통합 이름: 통합의 이름입니다.
- 유형: 레지스트리 를 선택합니다.
- Registry Endpoint: 레지스트리의 주소입니다.
- 프로젝트: Google Cloud 프로젝트 이름입니다.
- 서비스 계정 키(JSON) 인증을 위한 서비스 계정 키입니다.
- 레지스트리에 대한 연결을 테스트하지 않고 통합을 생성하려면 테스트 없이 통합 생성을 선택합니다.
- 테스트를 선택하여 선택한 레지스트리와의 통합이 작동하는지 테스트합니다.
- 저장을 선택합니다.
1.3.4. 수동으로 Google Artifact Registry 설정
Red Hat Advanced Cluster Security for Kubernetes를 Google Artifact Registry와 통합할 수 있습니다.
사전 요구 사항
-
Artifact Registry Autoscaler Identity and Access Management (IAM) 역할
roles/artifactregistry.reader가 있는 서비스 계정 키가 필요합니다.
절차
- RHACS 포털에서 플랫폼 구성 → 통합 으로 이동합니다.
- 이미지 통합 섹션에서 Google Artifact Registry 를 선택합니다.
- New Integration을 클릭합니다.
다음 필드에 대한 세부 정보를 입력합니다.
- 통합 이름: 통합의 이름입니다.
- Registry Endpoint: 레지스트리의 주소입니다.
- 프로젝트: Google Cloud 프로젝트 이름입니다.
- 서비스 계정 키(JSON) 인증을 위한 서비스 계정 키입니다.
- 레지스트리에 대한 연결을 테스트하지 않고 통합을 생성하려면 테스트 없이 통합 생성을 선택합니다.
- 테스트를 선택하여 선택한 레지스트리와의 통합이 작동하는지 테스트합니다.
- 저장을 선택합니다.
1.3.5. Microsoft Azure Container Registry 수동 구성
Kubernetes용 Red Hat Advanced Cluster Security를 Microsoft Azure Container Registry와 통합할 수 있습니다.
사전 요구 사항
- 인증을 위한 사용자 이름과 암호가 있어야 합니다.
절차
- RHACS 포털에서 플랫폼 구성 → 통합 으로 이동합니다.
- 이미지 통합 섹션에서 Microsoft Azure Container Registry 를 선택합니다.
- New Integration을 클릭합니다.
다음 필드에 대한 세부 정보를 입력합니다.
- 통합 이름: 통합의 이름입니다.
- Endpoint: 레지스트리의 주소입니다.
- 사용자 이름 및 암호.
- 레지스트리에 대한 연결을 테스트하지 않고 통합을 생성하려면 테스트 없이 통합 생성을 선택합니다.
- 테스트를 선택하여 선택한 레지스트리와의 통합이 작동하는지 테스트합니다.
- 저장을 선택합니다.
1.3.6. 수동으로 JFrog Artifactory 구성
Red Hat Advanced Cluster Security for Kubernetes를 JFrog Artifactory와 통합할 수 있습니다.
사전 요구 사항
- JFrog Artifactory를 사용한 인증에 필요한 사용자 이름과 암호가 있어야 합니다.
절차
- RHACS 포털에서 플랫폼 구성 → 통합 으로 이동합니다.
- Image Integrations 섹션에서 JFrog Artifactory 를 선택합니다.
- New Integration을 클릭합니다.
다음 필드에 대한 세부 정보를 입력합니다.
- 통합 이름: 통합의 이름입니다.
- Endpoint: 레지스트리의 주소입니다.
- 사용자 이름 및 암호.
- 레지스트리에 연결할 때 TLS 인증서를 사용하지 않는 경우 Disable TLS certificate validation (비보안) 을 선택합니다.
- 레지스트리에 대한 연결을 테스트하지 않고 통합을 생성하려면 테스트 없이 통합 생성을 선택합니다.
- 테스트를 선택하여 선택한 레지스트리와의 통합이 작동하는지 테스트합니다.
- 저장을 선택합니다.
1.3.7. 수동으로 Quay Container Registry 구성
RHACS(Advanced Cluster Security for Kubernetes)를 Quay Container Registry와 통합할 수 있습니다. 다음 방법을 사용하여 Quay와 통합할 수 있습니다.
- Quay 공용 리포지토리(registry)와 통합: 이 방법은 인증이 필요하지 않습니다.
- 로봇 계정을 사용하여 Quay 프라이빗 레지스트리와 통합: 이 방법을 사용하려면 Quay에 사용할 로봇 계정을 생성해야 합니다(권장). 자세한 내용은 Quay 설명서 를 참조하십시오.
- Quay와 통합하여 RHACS 스캐너 대신 Quay 스캐너를 사용합니다. 이 방법은 API를 사용하며 인증을 위해 OAuth 토큰이 필요합니다. "해결" 섹션의 "위키 컨테이너 레지스트리를 사용하여 이미지를 스캔"을 참조하십시오.
사전 요구 사항
- Quay 프라이빗 레지스트리를 사용한 인증을 위해서는 로봇 계정 또는 OAuth 토큰(더 이상 사용되지 않음)과 연결된 인증 정보가 필요합니다.
절차
- RHACS 포털에서 플랫폼 구성 → 통합 으로 이동합니다.
- Image Integrations 섹션에서 Red Hat Quay.io 를 선택합니다.
- New Integration을 클릭합니다.
- Integration 이름을 입력합니다.
끝점 또는 레지스트리의 주소를 입력합니다.
- Quay 공용 리포지토리와 통합하려는 경우 유형 에서 레지스트리 를 선택한 다음 다음 단계로 이동합니다.
Quay 프라이빗 레지스트리와 통합하려는 경우 유형 에서 레지스트리 를 선택하고 다음 필드에 정보를 입력합니다.
-
robot username : Quay 로봇 계정을 사용하여 레지스트리에 액세스하는 경우 <
namespace>+<accountname> 형식으로 사용자 이름을 입력합니다. - robot password: Quay robot 계정을 사용하여 레지스트리에 액세스하는 경우 robot 계정 사용자 이름의 암호를 입력합니다.
- OAuth 토큰: OAuth 토큰(더 이상 사용되지 않음)을 사용하여 레지스트리에 액세스하는 경우 이 필드에 입력합니다.
-
robot username : Quay 로봇 계정을 사용하여 레지스트리에 액세스하는 경우 <
- 선택 사항: 레지스트리에 연결할 때 TLS 인증서를 사용하지 않는 경우 Disable TLS 인증서 검증(비보안) 을 선택합니다.
- 선택 사항: 테스트 없이 통합을 생성하려면 테스트 없이 통합 생성을 선택합니다.
- 저장을 선택합니다.
Quay 통합을 편집 중이지만 자격 증명을 업데이트하지 않으려면 Update stored 자격 증명이 선택되어 있지 않은지 확인합니다.
1.4. 추가 리소스
1.4.1. 수동으로 IBM Cloud Container Registry 구성
Red Hat Advanced Cluster Security for Kubernetes를 IBM Cloud Container Registry와 통합할 수 있습니다.
사전 요구 사항
- IBM Cloud Container Registry를 사용한 인증을 위한 API 키가 있어야 합니다.
절차
- RHACS 포털에서 플랫폼 구성 → 통합 으로 이동합니다.
- 이미지 통합 섹션에서 IBM Cloud Container Registry 를 선택합니다.
- New Integration을 클릭합니다.
다음 필드에 대한 세부 정보를 입력합니다.
- 통합 이름: 통합의 이름입니다.
- Endpoint: 레지스트리의 주소입니다.
- API 키.
- 테스트를 선택하여 선택한 레지스트리와의 통합이 작동하는지 테스트합니다.
- 저장을 선택합니다.
1.4.2. 수동으로 Red Hat Container Registry 설정
Red Hat Advanced Cluster Security for Kubernetes를 Red Hat Container Registry와 통합할 수 있습니다.
사전 요구 사항
- Red Hat Container Registry를 사용한 인증에 필요한 사용자 이름과 암호가 있어야 합니다.
절차
- RHACS 포털에서 플랫폼 구성 → 통합 으로 이동합니다.
- 이미지 통합 섹션에서 Red Hat Registry 를 선택합니다.
- New Integration을 클릭합니다.
다음 필드에 대한 세부 정보를 입력합니다.
- 통합 이름: 통합의 이름입니다.
- Endpoint: 레지스트리의 주소입니다.
- 사용자 이름 및 암호.
- 레지스트리에 대한 연결을 테스트하지 않고 통합을 생성하려면 테스트 없이 통합 생성을 선택합니다.
- 테스트를 선택하여 선택한 레지스트리와의 통합이 작동하는지 테스트합니다.
- 저장을 선택합니다.
2장. CI 시스템과 통합
RHACS(Advanced Cluster Security for Kubernetes)는 다양한 CI(지속적인 통합) 제품과 통합되며 이미지를 배포하기 전에 빌드 시간 및 배포 시간 보안 규칙을 적용할 수 있습니다.
Red Hat Advanced Cluster Security for Kubernetes는 이미지를 빌드하고 레지스트리로 푸시한 후 CI 파이프라인에 통합됩니다. 먼저 이미지를 내보내면 개발자가 다른 CI 테스트 실패, linter 위반 또는 기타 문제와 함께 정책 위반을 처리하면서 아티팩트를 계속 테스트할 수 있습니다.
가능한 경우 Red Hat Advanced Cluster Security for Kubernetes 검사가 실패하는 빌드 단계를 포함하는 빌드 단계에서 병합되는 요청을 병합 또는 병합하는 것을 차단하도록 버전 제어 시스템을 구성해야 합니다.
Kubernetes 설치용 Red Hat Advanced Cluster Security for Kubernetes 설치에 연결하여 CI 제품 기능과의 통합으로 이미지가 구성된 빌드 단계 정책을 준수하는지 확인합니다. 정책 위반이 있는 경우 정책 설명, 이유 및 수정 지침을 포함하여 콘솔 로그에 자세한 메시지가 표시됩니다. 각 정책에는 선택적 적용 설정이 포함됩니다. 빌드 단계 적용에 대한 정책을 표시하면 해당 정책이 실패하면 클라이언트가 0이 아닌 오류 코드로 종료됩니다.
Red Hat Advanced Cluster Security for Kubernetes를 CI 시스템과 통합하려면 다음 단계를 따르십시오.
- 빌드 정책을 구성합니다.
- 레지스트리 통합을 구성합니다.
- Red Hat Advanced Cluster Security for Kubernetes 인스턴스에 대한 액세스를 구성합니다.
- CI 파이프라인과 통합.
2.1. 빌드 정책 구성
빌드 중 Red Hat Advanced Cluster Security for Kubernetes 정책을 확인하려면 먼저 컨테이너 라이프사이클의 빌드 단계에 적용되는 정책을 구성해야 합니다. 그런 다음 빌드 중 이미지가 푸시되는 레지스트리와 통합해야 합니다.
2.1.1. 기존 빌드 단계 정책 확인
RHACS 포털을 사용하여 Red Hat Advanced Cluster Security for Kubernetes에서 구성한 기존 빌드 단계 정책을 확인합니다.
절차
- RHACS 포털에서 플랫폼 구성 → 정책 으로 이동합니다.
-
글로벌 검색을 사용하여
라이프사이클 단계:Build.
2.1.2. 새 시스템 정책 생성
기본 정책을 사용하는 것 외에도 Red Hat Advanced Cluster Security for Kubernetes에서 사용자 지정 정책을 생성할 수도 있습니다.
절차
- RHACS 포털에서 플랫폼 구성 → 정책 으로 이동합니다.
- + 새 정책을 클릭합니다.
- 정책의 이름을 입력합니다.
- 정책의 심각도 수준을 선택합니다 (Critical, High, 중간 또는 낮음).
정책을 적용할 라이프사이클 단계를 빌드,배포 또는 런타임 에서 선택합니다. 하나 이상의 단계를 선택할 수 있습니다.
참고CI 시스템과 통합하기 위한 새 정책을 생성하는 경우 라이프사이클 단계로 빌드를 선택합니다.
- 빌드 시간 정책은 CVE 및 Dockerfile 명령과 같은 이미지 필드에 적용됩니다.
- 배포 시간 정책에는 모든 빌드 시간 정책 기준이 포함될 수 있습니다. 또한 권한 있는 모드에서 실행하거나 Docker 데몬 소켓 마운트와 같은 클러스터 구성의 데이터를 포함할 수 있습니다.
- 런타임 정책에는 모든 빌드 시간 및 배포 시간 정책 기준과 런타임 시 프로세스 실행에 대한 데이터가 포함될 수 있습니다.
- Description, Riatee , Remediation 필드에 정책에 대한 정보를 입력합니다. CI가 빌드를 검증하면 이러한 필드의 데이터가 표시됩니다. 정책에 대해 설명하는 모든 정보를 포함합니다.
- 카테고리 드롭다운 메뉴에서 카테고리 를 선택합니다.
이 정책에 대한 위반이 발생할 때 경고 알림을 수신하는 알림 드롭다운 메뉴에서 알림기를 선택합니다.
참고경고 알림을 받으려면 Webhook, Jira 또는 PagerDuty와 같은 알림 공급자와 Kubernetes용 Red Hat Advanced Cluster Security를 통합해야 합니다. 알림 관리자는 모든 알림 공급자를 Red Hat Advanced Cluster Security for Kubernetes와 통합한 경우에만 표시됩니다.
- Restrict to Scope 를 사용하여 특정 클러스터, 네임스페이스 또는 라벨에만 이 정책을 활성화합니다. 여러 범위를 추가하고 네임스페이스 및 레이블에 대해 RE2 Syntax에서 정규식을 사용할 수도 있습니다.
- 배포, 클러스터, 네임스페이스 및 라벨을 제외하려면 Scope별 Exclude 를 사용합니다. 이 필드는 정책이 지정한 엔터티에 적용되지 않음을 나타냅니다. 여러 범위를 추가하고 네임스페이스 및 레이블에 대해 RE2 Syntax에서 정규식을 사용할 수도 있습니다. 그러나 배포를 선택하는 데 정규식을 사용할 수 없습니다.
제외된 이미지(Build Lifecycle만 해당) 의 경우 정책 위반을 트리거하지 않으려는 목록에서 모든 이미지를 선택합니다.
참고제외된 이미지(빌드 라이프사이클만 해당) 설정은 지속적 통합 시스템(빌드 라이프사이클 단계)에서 이미지를 확인하는 경우에만 적용됩니다. 이 정책을 사용하여 실행 중인 배포(라이프사이클 배포 단계) 또는 런타임 활동(런타임 라이프사이클 단계)을 확인하는 경우에는 영향을 미치지 않습니다.
- Policy criteria 섹션에서 정책을 트리거할 속성을 구성합니다.
- 패널 헤더에서 다음을 선택합니다.
- 새 정책 패널에는 정책을 활성화하면 트리거되는 위반에 대한 프리뷰가 표시됩니다.
- 패널 헤더에서 다음을 선택합니다.
정책에 대한 시행 동작을 선택합니다. 적용 설정은 Lifecycle Stages 옵션으로 선택한 단계에서만 사용할 수 있습니다. 정책을 적용하고 위반을 보고하려면 ON 을 선택합니다. 해제 를 선택하여 위반만 보고합니다.
참고적용 동작은 라이프사이클 단계마다 다릅니다.
- 빌드 단계의 경우 Kubernetes용 Red Hat Advanced Cluster Security는 이미지가 정책 조건과 일치하면 CI 빌드에 실패합니다.
- Deploy 단계의 경우 Kubernetes용 Red Hat Advanced Cluster Security는 정책 조건과 일치하는 배포 생성을 차단합니다. 승인 컨트롤러가 적용되는 클러스터에서 Kubernetes 또는 OpenShift Container Platform API 서버는 모든 비호환 배포를 차단합니다. 다른 클러스터에서 Red Hat Advanced Cluster Security for Kubernetes는 비호환 배포를 편집하여 Pod를 예약하지 않도록 합니다.
- Runtime 단계의 경우 Kubernetes용 Red Hat Advanced Cluster Security는 정책 조건과 일치하는 모든 Pod를 중지합니다.
주의정책 시행은 실행 중인 애플리케이션 또는 개발 프로세스에 영향을 미칠 수 있습니다. 시행 옵션을 활성화하기 전에 모든 이해 관계자에게 알리고 자동화된 시행 조치에 대응하는 방법을 계획합니다.
2.2. 레지스트리 통합 구성
이미지를 스캔하려면 빌드 파이프라인에서 사용 중인 이미지 레지스트리에 액세스할 수 있는 Kubernetes용 Red Hat Advanced Cluster Security를 제공해야 합니다.
2.2.1. 기존 레지스트리 통합 확인
RHACS 포털을 사용하여 이미 레지스트리와 통합되었는지 확인할 수 있습니다.
절차
- RHACS 포털에서 플랫폼 구성 → 통합 으로 이동합니다.
- 이미지 통합 섹션에서 강조 표시된 레지스트리 타일을 찾습니다. 또한 타일은 해당 타일에 대해 이미 구성된 항목 수를 나열합니다.
레지스트리 타일 중 어느 것도 강조 표시되지 않는 경우 먼저 이미지 레지스트리와 통합해야 합니다.
2.2.1.1. 추가 리소스
2.3. 액세스 구성
Red Hat Advanced Cluster Security for Kubernetes는 CLI(명령줄 인터페이스) roxctl 을 제공하여 Kubernetes용 Red Hat Advanced Cluster Security 정책을 빌드 파이프라인에 쉽게 통합할 수 있습니다. roxctl CLI는 개발자가 컨테이너 라이프사이클의 초기 단계에서 높은 표준을 유지할 수 있도록 문제 및 해결 방법에 대한 자세한 정보를 출력합니다.
Kubernetes API 서버의 Red Hat Advanced Cluster Security를 안전하게 인증하려면 API 토큰을 생성해야 합니다.
2.3.1. 인증 토큰 내보내기 및 저장
절차
인증 토큰을 생성한 후 다음 명령을 입력하여
ROX_API_TOKEN변수로 내보냅니다.$ export ROX_API_TOKEN=<api_token>
(선택 사항): 다음 명령을 입력하여 토큰을 파일에 저장하고
--token-file옵션과 함께 사용할 수도 있습니다.$ roxctl central debug dump --token-file <token_file>
다음 지침을 참조하십시오.
-
-password(-p) 및--token-file옵션을 동시에 사용할 수 없습니다. -
ROX_API_TOKEN변수를 이미 설정하고--token-file옵션을 지정하는 경우roxctlCLI는 인증을 위해 지정된 토큰 파일을 사용합니다. -
ROX_API_TOKEN변수를 이미 설정하고--password옵션을 지정하는 경우roxctlCLI는 인증에 지정된 암호를 사용합니다.
2.3.2. 바이너리를 다운로드하여 roxctl CLI 설치
명령줄 인터페이스에서 roxctl CLI를 설치하여 Kubernetes용 Red Hat Advanced Cluster Security와 상호 작용할 수 있습니다. Linux, Windows 또는 macOS에 roxctl 을 설치할 수 있습니다.
2.3.2.1. Linux에서 roxctl CLI 설치
다음 절차에 따라 Linux에서 roxctl CLI 바이너리를 설치할 수 있습니다.
절차
최신 버전의
roxctlCLI를 다운로드합니다.$ curl -O https://mirror.openshift.com/pub/rhacs/assets/4.0.2/bin/Linux/roxctl
roxctl바이너리를 실행 가능하게 합니다.$ chmod +x roxctl
roxctl바이너리를PATH에 있는 디렉터리에 배치합니다.PATH를 확인하려면 다음 명령을 실행합니다.$ echo $PATH
검증
설치된
roxctl버전을 확인합니다.$ roxctl version
2.3.2.2. macOS에 roxctl CLI 설치
다음 절차에 따라 macOS에서 roxctl CLI 바이너리를 설치할 수 있습니다.
절차
최신 버전의
roxctlCLI를 다운로드합니다.$ curl -O https://mirror.openshift.com/pub/rhacs/assets/4.0.2/bin/Darwin/roxctl
바이너리에서 모든 확장 속성을 제거합니다.
$ xattr -c roxctl
roxctl바이너리를 실행 가능하게 합니다.$ chmod +x roxctl
roxctl바이너리를PATH에 있는 디렉터리에 배치합니다.PATH를 확인하려면 다음 명령을 실행합니다.$ echo $PATH
검증
설치된
roxctl버전을 확인합니다.$ roxctl version
2.3.2.3. Windows에 roxctl CLI 설치
다음 절차에 따라 Windows에서 roxctl CLI 바이너리를 설치할 수 있습니다.
절차
최신 버전의
roxctlCLI를 다운로드합니다.$ curl -O https://mirror.openshift.com/pub/rhacs/assets/4.0.2/bin/Windows/roxctl.exe
검증
설치된
roxctl버전을 확인합니다.$ roxctl version
2.3.3. 컨테이너에서 roxctl CLI 실행
roxctl 클라이언트는 Red Hat Advanced Cluster Security for Kubernetes roxctl 이미지의 기본 진입점입니다. 컨테이너 이미지에서 roxctl 클라이언트를 실행하려면 다음을 수행합니다.
사전 요구 사항
- 먼저 RHACS 포털에서 인증 토큰을 생성해야 합니다.
절차
registry.redhat.io레지스트리에 로그인합니다.$ docker login registry.redhat.io
roxctlCLI의 최신 컨테이너 이미지를 가져옵니다.$ docker pull registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8:4.0.2
CLI를 설치한 후 다음 명령을 사용하여 실행할 수 있습니다.
$ docker run -e ROX_API_TOKEN=$ROX_API_TOKEN \ -it registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8:4.0.2 \ -e $ROX_CENTRAL_ADDRESS <command>
Red Hat Advanced Cluster Security Cloud Service에서 중앙 주소가 필요한 roxctl 명령을 사용하는 경우 Red Hat Hybrid Cloud Console의 인스턴스 세부 정보 섹션에 표시된 Central 인스턴스 주소를 사용합니다. 예를 들어 acs-data-ABCD12345.acs.rhcloud.com 대신 acs-ABCD12345.acs.rhcloud.com 을 사용합니다.
검증
설치된
roxctl버전을 확인합니다.$ docker run -it registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8:4.0.2 version
2.4. CI 파이프라인과 통합
이러한 절차를 완료한 후 다음 단계는 CI 파이프라인과 통합하는 것입니다.
각 CI 시스템에는 약간 다른 구성이 필요할 수 있습니다.
2.4.1. Jenkins 사용
Jenkins와 통합하려면 StackRox 컨테이너 이미지 스캐너 Jenkins 플러그인을 사용합니다. 이 플러그인은 Jenkins freestyle 프로젝트 및 파이프라인 모두에서 사용할 수 있습니다.
2.4.2. CircleCI 사용
Red Hat Advanced Cluster Security for Kubernetes를 CircleCI와 통합할 수 있습니다.
Prerequisetes
-
Image리소스에 대한읽기및쓰기권한이 있는 토큰이 있습니다. - Docker Hub 계정에 대한 사용자 이름과 암호가 있습니다.
절차
- CircleCI에 로그인하고 기존 프로젝트를 열거나 새 프로젝트를 생성합니다.
- 프로젝트 설정을 클릭합니다.
- 환경 변수를 클릭합니다.
변수 추가를 클릭하고 다음 세 가지 환경 변수를 생성합니다.
- name :STACKROX_CENTRAL_HOST - 중앙의 DNS 이름 또는 IP 주소입니다.
- 이름:ROX_API_TOKEN - Kubernetes용 Red Hat Advanced Cluster Security에 액세스할 수 있는 API 토큰입니다.
- name:DOCKERHUB_PASSWORD - Docker Hub 계정의 암호입니다.
- name:DOCKERHUB_USER - Docker Hub 계정의 사용자 이름입니다.
-
CircleCI 구성 파일이 없는 경우 선택한 프로젝트의 로컬 코드 리포지토리의 루트 디렉터리에
.circleci라는 디렉터리를 생성합니다. .circleci디렉터리에 다음 행을 사용하여config.yml구성 파일을 만듭니다.version: 2 jobs: check-policy-compliance: docker: - image: 'circleci/node:latest' auth: username: $DOCKERHUB_USER password: $DOCKERHUB_PASSWORD steps: - checkout - run: name: Install roxctl command: | curl -H "Authorization: Bearer $ROX_API_TOKEN" https://$STACKROX_CENTRAL_HOST:443/api/cli/download/roxctl-linux -o roxctl && chmod +x ./roxctl - run: name: Scan images for policy deviations and vulnerabilities command: | ./roxctl image check --endpoint "$STACKROX_CENTRAL_HOST:443" --image "<your_registry/repo/image_name>" 1 - run: name: Scan deployment files for policy deviations command: | ./roxctl image check --endpoint "$STACKROX_CENTRAL_HOST:443" --image "<your_deployment_file>" 2 # Important note: This step assumes the YAML file you'd like to test is located in the project. workflows: version: 2 build_and_test: jobs: - check-policy-compliance참고리포지토리에 CircleCI의
config.yml파일이 이미 있는 경우 기존 구성 파일에 지정된 세부 정보가 포함된 새 jobs 섹션을 추가합니다.- 구성 파일을 리포지토리에 커밋한 후 CircleCI 대시보드의 작업 대기열로 이동하여 빌드 정책 적용을 확인합니다.
3장. PagerDuty와 통합
PagerDuty 를 사용하는 경우 Kubernetes용 Red Hat Advanced Cluster Security에서 PagerDuty로 경고를 전달할 수 있습니다.
다음 단계는 Red Hat Advanced Cluster Security for Kubernetes를 PagerDuty와 통합하는 고급 워크플로를 나타냅니다.
- PagerDuty에 새 API 서비스를 추가하고 통합 키를 가져옵니다.
- 통합 키를 사용하여 Red Hat Advanced Cluster Security for Kubernetes에서 알림을 설정합니다.
- 알림을 보낼 정책을 식별하고 해당 정책에 대한 알림 설정을 업데이트합니다.
3.1. PagerDuty 구성
새 서비스를 생성하고 통합 키를 가져와 PagerDuty와의 통합을 시작하십시오.
절차
- 구성 → 서비스로 이동합니다.
- 서비스 추가를 선택합니다.
- 일반 설정에서 이름 및 설명을 지정합니다.
- Integration Set 에서 Integration Type 드롭다운 메뉴에 대해 선택한 이벤트 v2 API 를 직접 사용하여 API 사용을 클릭합니다.
- 보안 사고 설정에서 에스컬레이션 정책을 선택하고 알림 설정 및 사고 시간 초과를 구성합니다.
- 보안 사고 및 경고 그룹화 에 대한 기본 설정을 수락하거나 필요에 따라 구성합니다.
- 서비스 추가를 클릭합니다.
- 서비스 세부 정보 페이지에서 통합 키 를 기록해 둡니다.
3.2. Red Hat Advanced Cluster Security for Kubernetes 구성
통합 키를 사용하여 Red Hat Advanced Cluster Security for Kubernetes에서 새 통합을 생성합니다.
절차
- RHACS 포털에서 플랫폼 구성 → 통합 으로 이동합니다.
- Notifier Integrations 섹션까지 아래로 스크롤하고 PagerDuty 를 선택합니다.
-
New Integration (새 통합
추가)을클릭합니다. - Integration Name 의 이름을 입력합니다.
- PagerDuty 통합 키 필드에 통합 키를 입력합니다.
-
테스트 (
확인표아이콘)를 클릭하여 PagerDuty와의 통합이 작동하는지 확인합니다. -
만들기 (
저장아이콘)를 클릭하여 구성을 생성합니다.
3.3. 정책 알림 구성
시스템 정책에 대한 경고 알림을 활성화합니다.
절차
- RHACS 포털에서 플랫폼 구성 → 정책 으로 이동합니다.
- 경고를 보낼 하나 이상의 정책을 선택합니다.
- Bulk actions 에서 알림 사용을 선택합니다.
알림 활성화 창에서 PagerDuty notifier를 선택합니다.
참고다른 통합을 구성하지 않은 경우 시스템에서 알림자가 구성되지 않은 메시지를 표시합니다.
- Enable 을 클릭합니다.
- Red Hat Advanced Cluster Security for Kubernetes는 옵트인으로 알림을 보냅니다. 알림을 받으려면 먼저 알림 프로그램을 정책에 할당해야 합니다.
- 알림은 지정된 경고에 대해 한 번만 전송됩니다. 정책에 알림기를 할당한 경우 위반 시 새 경고를 생성하지 않는 한 알림이 수신되지 않습니다.
Red Hat Advanced Cluster Security for Kubernetes는 다음 시나리오에 대한 새로운 경고를 생성합니다.
- 배포 시 정책 위반이 처음 발생합니다.
- 런타임 단계 정책 위반은 해당 배포의 정책에 대한 이전 런타임 경고를 해결한 후 배포에서 발생합니다.
4장. Slack과 통합
Slack을 사용하는 경우 Kubernetes용 Red Hat Advanced Cluster Security에서 Slack으로 경고를 전달할 수 있습니다.
다음 단계는 Kubernetes용 Red Hat Advanced Cluster Security를 Slack과 통합하는 고급 워크플로를 나타냅니다.
- 새 Slack 앱을 생성하고, 수신되는 Webhook를 활성화하고, Webhook URL을 가져옵니다.
- Webhook URL을 사용하여 Slack을 Red Hat Advanced Cluster Security for Kubernetes와 통합합니다.
- 알림을 보낼 정책을 식별하고 해당 정책에 대한 알림 설정을 업데이트합니다.
4.1. Slack 구성
새 Slack 앱을 생성하여 시작하고 웹 후크 URL을 가져옵니다.
사전 요구 사항
- Webhook를 생성할 수 있는 권한이 있는 관리자 계정 또는 사용자 계정이 필요합니다.
절차
새 Slack 앱을 생성합니다.
참고기존 Slack 앱을 사용하려면 https://api.slack.com/apps 으로 이동하여 앱을 선택합니다.
- https://api.slack.com/apps/new 으로 이동합니다.
- 앱 이름을 입력하고 앱을 설치할 개발 Slack Workspace 를 선택합니다.
- 앱 생성을 클릭합니다.
- 설정 페이지의 기본 정보 섹션에서 Incoming Webhooks 를 선택합니다( 기능 및 기능 추가).
- 활성 Incoming Webhooks 토글을 켭니다.
- Add New Webhook to Workspace 를 선택합니다.
- 앱이 게시할 채널을 선택한 다음 작성자를 선택합니다. 페이지가 새로 고쳐지고 앱 설정 페이지로 다시 전송됩니다.
- Workspace의 Webhook URL 섹션에 있는 Webhook URL을 복사합니다.
자세한 내용은 Slack 문서 주제인 Incoming Webhooks 시작하기 를 참조하십시오.
4.1.1. 다른 Slack 채널에 경고 전송
Kubernetes용 Red Hat Advanced Cluster Security를 구성하여 다양한 Slack 채널에 알림을 보내 올바른 팀으로 직접 이동할 수 있습니다.
절차
들어오는 Webhook를 구성한 후 배포 YAML 파일에 다음과 유사한 주석을 추가합니다.
example.com/slack-webhook: https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX
-
Kubernetes용 Red Hat Advanced Cluster Security를 구성할 때 Label/Annotation Key For Slack Webhook 필드에서 주석 키
example.com/slack-webhook를 사용합니다.
구성이 완료되면 배포에 YAML 파일에 구성한 주석이 있는 경우 Red Hat Advanced Cluster Security for Kubernetes는 해당 주석에 지정한 웹 후크 URL로 경고를 보냅니다. 그렇지 않으면 기본 웹 후크 URL로 경고를 보냅니다.
4.2. Red Hat Advanced Cluster Security for Kubernetes 구성
웹 후크 URL을 사용하여 Red Hat Advanced Cluster Security for Kubernetes에서 새 통합을 생성합니다.
절차
- RHACS 포털에서 플랫폼 구성 → 통합 으로 이동합니다.
- Notifier Integrations 섹션까지 아래로 스크롤하여 Slack 을 선택합니다.
-
New Integration (새 통합
추가)을클릭합니다. - Integration Name 의 이름을 입력합니다.
- Default Slack Webhook 필드에 생성된 Webhook URL을 입력합니다.
-
테스트 (
확인표아이콘)를 선택하여 Slack과의 통합이 작동하는지 테스트합니다. -
만들기 (
저장아이콘)를 선택하여 구성을 생성합니다.
4.3. 정책 알림 구성
시스템 정책에 대한 경고 알림을 활성화합니다.
절차
- RHACS 포털에서 플랫폼 구성 → 정책 으로 이동합니다.
- 경고를 보낼 하나 이상의 정책을 선택합니다.
- Bulk actions 에서 알림 사용을 선택합니다.
알림 활성화 창에서 Slack 알림기를 선택합니다.
참고다른 통합을 구성하지 않은 경우 시스템에서 알림자가 구성되지 않은 메시지를 표시합니다.
- Enable 을 클릭합니다.
- Red Hat Advanced Cluster Security for Kubernetes는 옵트인으로 알림을 보냅니다. 알림을 받으려면 먼저 알림 프로그램을 정책에 할당해야 합니다.
- 알림은 지정된 경고에 대해 한 번만 전송됩니다. 정책에 알림기를 할당한 경우 위반 시 새 경고를 생성하지 않는 한 알림이 수신되지 않습니다.
Red Hat Advanced Cluster Security for Kubernetes는 다음 시나리오에 대한 새로운 경고를 생성합니다.
- 배포 시 정책 위반이 처음 발생합니다.
- 런타임 단계 정책 위반은 해당 배포의 정책에 대한 이전 런타임 경고를 해결한 후 배포에서 발생합니다.
5장. 일반 Webhook를 사용하여 통합
Red Hat Advanced Cluster Security for Kubernetes를 사용하면 모든 웹 후크 수신자에게 JSON 메시지로 경고 알림을 보낼 수 있습니다. 위반이 발생하면 Red Hat Advanced Cluster Security for Kubernetes에서 구성된 URL에 HTTP POST 요청을 수행합니다. POST 요청 본문에는 경고에 대한 JSON 형식의 정보가 포함됩니다.
웹 후크 POST 요청의 JSON 데이터에는 다음 예와 같이 v1.Alert 오브젝트와 사용자가 구성하는 모든 사용자 지정 필드가 포함됩니다.
{
"alert": {
"id": "<id>",
"time": "<timestamp>",
"policy": {
"name": "<name>",
...
},
...
},
"<custom_field_1>": "<custom_value_1>"
}여러 개의 Webhook를 생성할 수 있습니다. 예를 들어 모든 감사 로그와 경고 알림을 위해 다른 Webhook를 수신하기 위해 하나의 Webhook를 생성할 수 있습니다.
Kubernetes용 Red Hat Advanced Cluster Security에서 모든 Webhook 수신자로 알림을 전달하려면 다음을 수행합니다.
- 경고를 수신하도록 Webhook URL을 설정합니다.
- Webhook URL을 사용하여 Kubernetes용 Red Hat Advanced Cluster Security에서 알림을 설정합니다.
- 알림을 보낼 정책을 식별하고 해당 정책에 대한 알림 설정을 업데이트합니다.
5.1. Webhook를 사용하여 통합 구성
웹 후크 URL을 사용하여 Red Hat Advanced Cluster Security for Kubernetes에서 새 통합을 생성합니다.
절차
- RHACS 포털에서 플랫폼 구성 → 통합 으로 이동합니다.
- Notifier Integrations 섹션까지 아래로 스크롤하여 Generic Webhook 를 선택합니다.
- New Integration을 클릭합니다.
- 통합 이름 의 이름을 입력합니다.
- 끝점 필드에 Webhook URL 을 입력합니다.
Webhook 수신자에서 신뢰할 수 없는 인증서를 사용하는 경우 CA 인증서 필드에 CA 인증서를 입력합니다. 그렇지 않으면 비워 두십시오.
참고Webhook 수신자가 사용하는 서버 인증서는 엔드포인트 DNS 이름에 유효해야 합니다. Skip TLS 확인을 클릭하여 이 검증을 무시할 수 있습니다. Red Hat은 TLS 확인을 끄는 것을 권장하지 않습니다. TLS를 확인하지 않으면 의도하지 않은 수신자가 데이터를 가로챌 수 있습니다.
선택 사항: 감사 로깅 사용을 클릭하여 Kubernetes용 Red Hat Advanced Cluster Security의 모든 변경 사항에 대한 알림을 수신합니다.
참고Red Hat은 경고 및 감사 로그에 별도의 Webhook를 사용하여 이러한 메시지를 다르게 처리하도록 제안합니다.
웹 후크 수신자로 인증하려면 다음 중 하나에 대한 세부 정보를 입력합니다.
- 기본 HTTP 인증을 위한 사용자 이름 및 암호
-
사용자 정의 헤더 (예:
Authorization: Bearer <access_token>)
-
Extra 필드 를 사용하여 Kubernetes용 Red Hat Advanced Cluster Security가 전송하는 JSON 오브젝트에 추가 키-값 쌍을 포함합니다. 예를 들어 Webhook 수신자가 여러 소스의 오브젝트를 허용하는 경우
"source": "rhacs"를 추가 필드로 추가하고 이 값을 필터링하여 Red Hat Advanced Cluster Security for Kubernetes의 모든 경고를 확인할 수 있습니다. - Test (테스트)를 선택하여 테스트 메시지를 보내 일반 웹 후크와 통합이 작동하는지 확인합니다.
- 저장 을 선택하여 구성을 만듭니다.
5.2. 정책 알림 구성
시스템 정책에 대한 경고 알림을 활성화합니다.
절차
- RHACS 포털에서 플랫폼 구성 → 정책 으로 이동합니다.
- 경고를 보낼 하나 이상의 정책을 선택합니다.
- Bulk actions 에서 알림 사용을 선택합니다.
Enable notification 창에서 webhook notifier를 선택합니다.
참고다른 통합을 구성하지 않은 경우 시스템에서 알림자가 구성되지 않은 메시지를 표시합니다.
- Enable 을 클릭합니다.
- Red Hat Advanced Cluster Security for Kubernetes는 옵트인으로 알림을 보냅니다. 알림을 받으려면 먼저 알림 프로그램을 정책에 할당해야 합니다.
- 알림은 지정된 경고에 대해 한 번만 전송됩니다. 정책에 알림기를 할당한 경우 위반 시 새 경고를 생성하지 않는 한 알림이 수신되지 않습니다.
Red Hat Advanced Cluster Security for Kubernetes는 다음 시나리오에 대한 새로운 경고를 생성합니다.
- 배포 시 정책 위반이 처음 발생합니다.
- 런타임 단계 정책 위반은 해당 배포의 정책에 대한 이전 런타임 경고를 해결한 후 배포에서 발생합니다.
6장. QRadar와 통합
RHACS에서 일반 웹 후크 통합을 구성하여 이벤트를 QRadar로 보내도록 Kubernetes용 Red Hat Advanced Cluster Security를 구성할 수 있습니다.
다음 단계는 RHACS를 QRadar와 통합하는 고급 워크플로를 나타냅니다.
RHACS에서:
일반 웹 후크를 구성합니다.
참고RHACS에서 엔드 포인트 필드에서 통합을 구성할 때 다음 예제를 가이드로 사용하십시오. <
URL to QRadar Box>:<Port of Integration> .- 알림을 보낼 정책을 식별하고 해당 정책에 대한 알림 설정을 업데이트합니다.
- QRadar가 로그 소스를 자동으로 감지하지 않는 경우 QRadar Console에 RHACS 로그 소스를 추가합니다. QRadar 및 RHACS 구성에 대한 자세한 내용은 Red Hat Advanced Cluster Security for Kubernetes IBM 리소스를 참조하십시오.
6.1. Webhook를 사용하여 통합 구성
웹 후크 URL을 사용하여 Red Hat Advanced Cluster Security for Kubernetes에서 새 통합을 생성합니다.
절차
- RHACS 포털에서 플랫폼 구성 → 통합 으로 이동합니다.
- Notifier Integrations 섹션까지 아래로 스크롤하여 Generic Webhook 를 선택합니다.
- New Integration을 클릭합니다.
- 통합 이름 의 이름을 입력합니다.
- 끝점 필드에 Webhook URL 을 입력합니다.
Webhook 수신자에서 신뢰할 수 없는 인증서를 사용하는 경우 CA 인증서 필드에 CA 인증서를 입력합니다. 그렇지 않으면 비워 두십시오.
참고Webhook 수신자가 사용하는 서버 인증서는 엔드포인트 DNS 이름에 유효해야 합니다. Skip TLS 확인을 클릭하여 이 검증을 무시할 수 있습니다. Red Hat은 TLS 확인을 끄는 것을 권장하지 않습니다. TLS를 확인하지 않으면 의도하지 않은 수신자가 데이터를 가로챌 수 있습니다.
선택 사항: 감사 로깅 사용을 클릭하여 Kubernetes용 Red Hat Advanced Cluster Security의 모든 변경 사항에 대한 알림을 수신합니다.
참고Red Hat은 경고 및 감사 로그에 별도의 Webhook를 사용하여 이러한 메시지를 다르게 처리하도록 제안합니다.
웹 후크 수신자로 인증하려면 다음 중 하나에 대한 세부 정보를 입력합니다.
- 기본 HTTP 인증을 위한 사용자 이름 및 암호
-
사용자 정의 헤더 (예:
Authorization: Bearer <access_token>)
-
Extra 필드 를 사용하여 Kubernetes용 Red Hat Advanced Cluster Security가 전송하는 JSON 오브젝트에 추가 키-값 쌍을 포함합니다. 예를 들어 Webhook 수신자가 여러 소스의 오브젝트를 허용하는 경우
"source": "rhacs"를 추가 필드로 추가하고 이 값을 필터링하여 Red Hat Advanced Cluster Security for Kubernetes의 모든 경고를 확인할 수 있습니다. - Test (테스트)를 선택하여 테스트 메시지를 보내 일반 웹 후크와 통합이 작동하는지 확인합니다.
- 저장 을 선택하여 구성을 만듭니다.
6.2. 정책 알림 구성
시스템 정책에 대한 경고 알림을 활성화합니다.
절차
- RHACS 포털에서 플랫폼 구성 → 정책 으로 이동합니다.
- 경고를 보낼 하나 이상의 정책을 선택합니다.
- Bulk actions 에서 알림 사용을 선택합니다.
Enable notification 창에서 webhook notifier를 선택합니다.
참고다른 통합을 구성하지 않은 경우 시스템에서 알림자가 구성되지 않은 메시지를 표시합니다.
- Enable 을 클릭합니다.
- Red Hat Advanced Cluster Security for Kubernetes는 옵트인으로 알림을 보냅니다. 알림을 받으려면 먼저 알림 프로그램을 정책에 할당해야 합니다.
- 알림은 지정된 경고에 대해 한 번만 전송됩니다. 정책에 알림기를 할당한 경우 위반 시 새 경고를 생성하지 않는 한 알림이 수신되지 않습니다.
Red Hat Advanced Cluster Security for Kubernetes는 다음 시나리오에 대한 새로운 경고를 생성합니다.
- 배포 시 정책 위반이 처음 발생합니다.
- 런타임 단계 정책 위반은 해당 배포의 정책에 대한 이전 런타임 경고를 해결한 후 배포에서 발생합니다.
7장. ServiceNow와 통합
RHACS에서 일반 웹 후크 통합을 구성하여 Kubernetes용 Red Hat Advanced Cluster Security를 ServiceNow에 보내도록 구성할 수 있습니다.
다음 단계는 RHACS를 ServiceNow와 통합하는 고급 워크플로를 나타냅니다.
- ServiceNow에서 RHACS에서 사용할 REST API 엔드포인트를 구성합니다. ServiceNow 구성에 대한 단계를 포함하는 자세한 내용은 How to integrate Red Hat Advanced Cluster Security for Kubernetes with ServiceNow 에서 참조하십시오.
RHACS에서:
- 일반 웹 후크를 구성합니다.
- 알림을 보낼 정책을 식별하고 해당 정책에 대한 알림 설정을 업데이트합니다.
7.1. Webhook를 사용하여 통합 구성
웹 후크 URL을 사용하여 Red Hat Advanced Cluster Security for Kubernetes에서 새 통합을 생성합니다.
절차
- RHACS 포털에서 플랫폼 구성 → 통합 으로 이동합니다.
- Notifier Integrations 섹션까지 아래로 스크롤하여 Generic Webhook 를 선택합니다.
- New Integration을 클릭합니다.
- 통합 이름 의 이름을 입력합니다.
- 끝점 필드에 Webhook URL 을 입력합니다.
Webhook 수신자에서 신뢰할 수 없는 인증서를 사용하는 경우 CA 인증서 필드에 CA 인증서를 입력합니다. 그렇지 않으면 비워 두십시오.
참고Webhook 수신자가 사용하는 서버 인증서는 엔드포인트 DNS 이름에 유효해야 합니다. Skip TLS 확인을 클릭하여 이 검증을 무시할 수 있습니다. Red Hat은 TLS 확인을 끄는 것을 권장하지 않습니다. TLS를 확인하지 않으면 의도하지 않은 수신자가 데이터를 가로챌 수 있습니다.
선택 사항: 감사 로깅 사용을 클릭하여 Kubernetes용 Red Hat Advanced Cluster Security의 모든 변경 사항에 대한 알림을 수신합니다.
참고Red Hat은 경고 및 감사 로그에 별도의 Webhook를 사용하여 이러한 메시지를 다르게 처리하도록 제안합니다.
웹 후크 수신자로 인증하려면 다음 중 하나에 대한 세부 정보를 입력합니다.
- 기본 HTTP 인증을 위한 사용자 이름 및 암호
-
사용자 정의 헤더 (예:
Authorization: Bearer <access_token>)
-
Extra 필드 를 사용하여 Kubernetes용 Red Hat Advanced Cluster Security가 전송하는 JSON 오브젝트에 추가 키-값 쌍을 포함합니다. 예를 들어 Webhook 수신자가 여러 소스의 오브젝트를 허용하는 경우
"source": "rhacs"를 추가 필드로 추가하고 이 값을 필터링하여 Red Hat Advanced Cluster Security for Kubernetes의 모든 경고를 확인할 수 있습니다. - Test (테스트)를 선택하여 테스트 메시지를 보내 일반 웹 후크와 통합이 작동하는지 확인합니다.
- 저장 을 선택하여 구성을 만듭니다.
7.2. 정책 알림 구성
시스템 정책에 대한 경고 알림을 활성화합니다.
절차
- RHACS 포털에서 플랫폼 구성 → 정책 으로 이동합니다.
- 경고를 보낼 하나 이상의 정책을 선택합니다.
- Bulk actions 에서 알림 사용을 선택합니다.
Enable notification 창에서 webhook notifier를 선택합니다.
참고다른 통합을 구성하지 않은 경우 시스템에서 알림자가 구성되지 않은 메시지를 표시합니다.
- Enable 을 클릭합니다.
- Red Hat Advanced Cluster Security for Kubernetes는 옵트인으로 알림을 보냅니다. 알림을 받으려면 먼저 알림 프로그램을 정책에 할당해야 합니다.
- 알림은 지정된 경고에 대해 한 번만 전송됩니다. 정책에 알림기를 할당한 경우 위반 시 새 경고를 생성하지 않는 한 알림이 수신되지 않습니다.
Red Hat Advanced Cluster Security for Kubernetes는 다음 시나리오에 대한 새로운 경고를 생성합니다.
- 배포 시 정책 위반이 처음 발생합니다.
- 런타임 단계 정책 위반은 해당 배포의 정책에 대한 이전 런타임 경고를 해결한 후 배포에서 발생합니다.
8장. Sumo Logic과 통합
Sumo Logic 을 사용하는 경우 Kubernetes용 Red Hat Advanced Cluster Security에서 Sumo Logic으로 경고를 전달할 수 있습니다.
다음 단계는 Kubernetes용 Red Hat Advanced Cluster Security를 Sumo Logic과 통합하는 고급 워크플로를 나타냅니다.
- Sumo Logic에 새 사용자 지정 앱을 추가하고, HTTP 소스를 설정하고, HTTP URL을 가져옵니다.
- HTTP URL을 사용하여 Sumo Logic을 Red Hat Advanced Cluster Security for Kubernetes와 통합합니다.
- 알림을 보낼 정책을 식별하고 해당 정책에 대한 알림 설정을 업데이트합니다.
8.1. Sumo Logic 구성
설정 마법사 를 사용하여 스트리밍 데이터를 설정하고 HTTP URL을 가져옵니다.
절차
- Sumo Logic Home 페이지에 로그인하고 설치 마법사 를 선택합니다.
- 커서를 Set Up Streaming Data 로 이동하고 시작을 선택합니다.
- 데이터 유형 선택 페이지에서 사용자 지정 앱을 선택합니다.On the Select Data Type page, select Your Custom App.
- Set Up Collection 페이지에서 HTTP Source 를 선택합니다.
-
소스 카테고리의 이름을 입력합니다. (예:
rhacs) 및 Continue 를 클릭합니다. - 생성된 URL을 복사합니다.
8.2. Red Hat Advanced Cluster Security for Kubernetes 구성
HTTP URL을 사용하여 Red Hat Advanced Cluster Security for Kubernetes에서 새 통합을 생성합니다.
절차
- RHACS 포털에서 플랫폼 구성 → 통합 으로 이동합니다.
- Notifier Integrations 섹션까지 아래로 스크롤하여 Sumo Logic 을 선택합니다.
-
New Integration (새 통합
추가)을클릭합니다. - Integration Name 의 이름을 입력합니다.
- HTTP 수집기 소스 주소 필드에 생성된 HTTP URL을 입력합니다.
-
테스트 (
Checkmarkicon)를 클릭하여 Sumo Logic과의 통합이 작동하는지 테스트합니다. -
만들기 (
저장아이콘)를 클릭하여 구성을 생성합니다.
8.3. 정책 알림 구성
시스템 정책에 대한 경고 알림을 활성화합니다.
절차
- RHACS 포털에서 플랫폼 구성 → 정책 으로 이동합니다.
- 경고를 보낼 하나 이상의 정책을 선택합니다.
- Bulk actions 에서 알림 사용을 선택합니다.
알림 활성화 창에서 Sumo Logic notifier를 선택합니다.
참고다른 통합을 구성하지 않은 경우 시스템에서 알림자가 구성되지 않은 메시지를 표시합니다.
- Enable 을 클릭합니다.
- Red Hat Advanced Cluster Security for Kubernetes는 옵트인으로 알림을 보냅니다. 알림을 받으려면 먼저 알림 프로그램을 정책에 할당해야 합니다.
- 알림은 지정된 경고에 대해 한 번만 전송됩니다. 정책에 알림기를 할당한 경우 위반 시 새 경고를 생성하지 않는 한 알림이 수신되지 않습니다.
Red Hat Advanced Cluster Security for Kubernetes는 다음 시나리오에 대한 새로운 경고를 생성합니다.
- 배포 시 정책 위반이 처음 발생합니다.
- 런타임 단계 정책 위반은 해당 배포의 정책에 대한 이전 런타임 경고를 해결한 후 배포에서 발생합니다.
8.4. Sumo Logic에서 경고 보기
Sumo Logic에서 Red Hat Advanced Cluster Security for Kubernetes의 경고를 볼 수 있습니다.
- Sumo Logic Home 페이지에 로그인하고 Log Search 를 클릭합니다.
-
검색 상자에
_sourceCategory=rhacs를 입력합니다. Sumo Logic을 구성하는 동안 입력한 동일한 소스 카테고리 이름을 사용해야 합니다. - 시간을 선택한 다음 시작을 클릭합니다.
9장. Google Cloud Storage와 통합
GCS(Google Cloud Storage) 와 통합하여 데이터 백업을 활성화할 수 있습니다. 인프라 재해 또는 데이터가 손상된 경우 데이터 복원에 이러한 백업을 사용할 수 있습니다. GCS와 통합하면 일별 또는 매주 백업을 예약하고 온 디맨드 백업을 수동으로 수행할 수 있습니다.
백업에는 모든 구성, 리소스, 이벤트 및 인증서를 포함하는 Kubernetes 전체 데이터베이스용 Red Hat Advanced Cluster Security가 포함됩니다. 백업이 안전하게 저장되었는지 확인합니다.
Red Hat Advanced Cluster Security for Kubernetes 버전 3.0.53 이상을 사용하는 경우 백업에 인증서가 포함되지 않습니다.
9.1. Red Hat Advanced Cluster Security for Kubernetes 구성
Google Cloud Storage(GCS)에서 데이터 백업을 구성하려면 Red Hat Advanced Cluster Security for Kubernetes에서 통합을 생성합니다.
사전 요구 사항
- 기존 버킷. 새 버킷을 생성하려면 공식 Google Cloud Storage 설명서 주제 에서 스토리지 버킷 생성 항목을 참조하십시오.
-
사용하려는
스토리지 버킷에서 스토리지 Object AdminIAM 역할이 있는 서비스 계정 입니다. Cloud IAM 권한을 사용하여 공식 Google Cloud Storage 설명서 항목을 참조하십시오. - 사용 중인 서비스 계정의 서비스 계정 키 파일 (JSON)입니다. 공식 Google Cloud 문서 주제 에서 서비스 계정 만들기 및 서비스 계정 만들기를 참조하십시오.
현재 Kubernetes용 Red Hat Advanced Cluster Security는 GCS 인증을 위해 워크로드 ID 를 사용하는 것을 지원하지 않습니다.
절차
- RHACS 포털에서 플랫폼 구성 → 통합 으로 이동합니다.
- 외부 백업 섹션까지 아래로 스크롤하여 Google Cloud Storage 를 선택합니다.
-
New Integration (새 통합
추가)을클릭합니다. - Integration Name 의 이름을 입력합니다.
- 백업 대상 상자에 보존할 백업 수를 입력합니다.Enter the number of backups to retain in the Backups To Retain box.
- Schedule 의 경우 백업 빈도(예: 또는 매주)와 백업 프로세스를 실행할 시간을 선택합니다.
- 백업을 저장할 Bucket 이름을 입력합니다.
- 서비스 계정 JSON 필드에 서비스 계정 키 파일의 내용을 입력합니다.
-
테스트 (
확인표아이콘)를 선택하여 GCS와의 통합이 작동하는지 확인합니다. -
만들기 (
저장아이콘)를 선택하여 구성을 생성합니다.
구성되면 Kubernetes용 Red Hat Advanced Cluster Security는 지정된 일정에 따라 모든 데이터를 자동으로 백업합니다.
9.1.1. Google Cloud Storage에서 온 디맨드 백업 수행
RHACS 포털을 사용하여 Google Cloud Storage에서 Kubernetes용 Red Hat Advanced Cluster Security의 수동 백업을 트리거합니다.
사전 요구 사항
- 이미 Google Cloud Storage와 Kubernetes용 Red Hat Advanced Cluster Security를 통합해야 합니다.
절차
- RHACS 포털에서 플랫폼 구성 → 통합 으로 이동합니다.
- 외부 백업 섹션에서 Google Cloud Storage 를 클릭합니다.
- 백업을 수행할 GCS 버킷의 통합 이름을 선택합니다.
- 트리거 백업 을 클릭합니다.
현재 Trigger 백업 옵션을 선택하면 알림이 없습니다. 그러나 Red Hat Advanced Cluster Security for Kubernetes는 백그라운드에서 백업 작업을 시작합니다.
9.1.1.1. 추가 리소스
10장. syslog 프로토콜을 사용하여 통합
syslog 는 애플리케이션이 데이터 보존 및 보안 조사를 위해 SIEM 또는 syslog 수집기와 같은 중앙 위치에 메시지를 보내는 데 사용하는 이벤트 로깅 프로토콜입니다. Red Hat Advanced Cluster Security for Kubernetes를 사용하면 syslog 프로토콜을 사용하여 경고 및 감사 이벤트를 보낼 수 있습니다.
- syslog 프로토콜을 사용하여 이벤트를 전달하려면 Kubernetes 버전 3.0.52 이상용 Red Hat Advanced Cluster Security가 필요합니다.
- syslog 통합을 사용하면 Kubernetes용 Red Hat Advanced Cluster Security는 구성 및 모든 감사 이벤트를 모두 전달합니다.
- 현재 Kubernetes용 Red Hat Advanced Cluster Security는 CEF (Common Event Format)만 지원합니다.
다음 단계는 Kubernetes용 Red Hat Advanced Cluster Security를 syslog 이벤트 수신자와 통합하는 고급 워크플로를 나타냅니다.
- 경고를 수신하도록 syslog 이벤트 수신자를 설정합니다.
- 수신자의 주소 및 포트 번호를 사용하여 Kubernetes용 Red Hat Advanced Cluster Security에 알림을 설정합니다.
구성 후 Red Hat Advanced Cluster Security for Kubernetes는 모든 위반 및 감사 이벤트를 구성된 syslog 수신자에 자동으로 보냅니다.
10.1. Kubernetes용 Red Hat Advanced Cluster Security로 syslog 통합 설정
RHACS(Red Hat Advanced Cluster Security for Kubernetes)에서 새 syslog 통합을 생성합니다.
절차
- RHACS 포털에서 플랫폼 구성 → 통합 으로 이동합니다.
- Notifier Integrations 섹션까지 아래로 스크롤하여 Syslog 를 선택합니다.
- New Integration (추가 아이콘)을 클릭합니다.
- Integration Name 의 이름을 입력합니다.
-
local0에서local7까지 Logging Facility 값을 선택합니다. - 수신자 호스트 주소와 수신자 포트 번호를 입력합니다.
- TLS를 사용하는 경우 Use TLS 토글을 켭니다.
- syslog 수신자에서 신뢰할 수 없는 인증서를 사용하는 경우 Disable TLS Certificate Validation(Insecure) 토글을 켭니다. 그렇지 않으면 이 토글을 비워 둡니다.
Add new extra field 를 클릭하여 필드를 추가합니다. 예를 들어 syslog 수신자가 여러 소스의 오브젝트를 허용하는 경우 Key 및 Value 필드에
source및rhacs를 입력합니다.syslog 수신자의 사용자 정의 값을 사용하여 필터링하여 RHACS의 모든 경고를 확인할 수 있습니다.
-
테스트 (
확인표아이콘)를 선택하여 테스트 메시지를 보내 일반 웹 후크와의 통합이 작동하는지 확인합니다. -
만들기 (
저장아이콘)를 선택하여 구성을 생성합니다.
11장. Amazon S3와 통합
Kubernetes용 Red Hat Advanced Cluster Security를 Amazon S3 와 통합하여 데이터 백업을 활성화할 수 있습니다. 인프라 재해 또는 손상된 데이터의 경우 이러한 백업을 데이터 복원에 사용할 수 있습니다. Amazon S3와 통합한 후에는 일별 또는 매주 백업을 예약하고 온 디맨드 백업을 수동으로 수행할 수 있습니다.
백업에는 모든 구성, 리소스, 이벤트 및 인증서를 포함하는 Kubernetes 데이터베이스용 전체 Red Hat Advanced Cluster Security가 포함됩니다. 백업이 안전하게 저장되었는지 확인합니다.
- Red Hat Advanced Cluster Security for Kubernetes 버전 3.0.53 이상을 사용하는 경우 백업에 인증서가 포함되지 않습니다.
- Amazon S3가 Air-gapped 환경의 일부인 경우 Red Hat Advanced Cluster Security for Kubernetes에서 AWS 루트 CA를 신뢰할 수 있는 인증 기관으로 추가해야 합니다.
11.1. Red Hat Advanced Cluster Security for Kubernetes에서 Amazon S3 통합 구성
Amazon S3 백업을 구성하려면 Red Hat Advanced Cluster Security for Kubernetes에서 새 통합을 생성합니다.
사전 요구 사항
- 기존 S3 버킷. 필수 권한으로 새 버킷을 생성하려면 Amazon 문서 주제 인 버킷 생성 을 참조하십시오.
-
S3 버킷, 액세스 키 ID 및 Secret 액세스 키에 대한 ,
쓰기및삭제권한을읽습니다. -
KIAM,kube2iam 또는 다른 프록시를 사용하는 경우
읽기,쓰기및삭제권한이 있는 IAM 역할 입니다.
절차
- RHACS 포털에서 플랫폼 구성 → 통합 으로 이동합니다.
- 외부 백업 섹션까지 아래로 스크롤하고 Amazon S3 를 선택합니다.
-
New Integration (새 통합
추가)을클릭합니다. - Integration Name 의 이름을 입력합니다.
- 백업 대상 상자에 보존할 백업 수를 입력합니다.Enter the number of backups to retain in the Backups To Retain box.
- 예약된 경우 백업 빈도를 일별 또는 매주 선택하고 백업 프로세스를 실행할 시간을 선택합니다.
- 백업을 저장할 Bucket 이름을 입력합니다.
- 필요한 경우 특정 폴더 구조에 백업을 저장하려면 개체 Prefix 를 입력합니다. 자세한 내용은 Amazon documentation topic Working with object metadata 를 참조하십시오.
- 공용이 아닌 S3 인스턴스를 사용하는 경우 버킷의 끝점을 입력하고, 그렇지 않으면 비워 둡니다.
- 버킷의 리전 을 입력합니다.
- Use Container IAM Role toggle를 설정하거나 Access Key ID 및 Secret Access Key 를 입력합니다.
-
테스트 (
확인표아이콘)를 선택하여 Amazon S3과의 통합이 작동하는지 확인합니다. -
만들기 (
저장아이콘)를 선택하여 구성을 생성합니다.
구성되면 Kubernetes용 Red Hat Advanced Cluster Security는 지정된 일정에 따라 모든 데이터를 자동으로 백업합니다.
11.2. Amazon S3에서 온 디맨드 백업 수행
RHACS 포털을 사용하여 Amazon S3에서 Kubernetes용 Red Hat Advanced Cluster Security의 수동 백업을 트리거합니다.
사전 요구 사항
- 이미 Amazon S3와 Kubernetes용 Red Hat Advanced Cluster Security를 통합해야 합니다.
절차
- RHACS 포털에서 플랫폼 구성 → 통합 으로 이동합니다.
- 외부 백업 섹션에서 Amazon S3 를 클릭합니다.
- 백업을 수행할 S3 버킷의 통합 이름을 선택합니다.
- 트리거 백업 을 클릭합니다.
현재 Trigger 백업 옵션을 선택하면 알림이 없습니다. 그러나 Red Hat Advanced Cluster Security for Kubernetes는 백그라운드에서 백업 작업을 시작합니다.
11.3. 추가 리소스
12장. Google Cloud Security Command Center와 통합
Google Cloud Security Command Center (Cloud SCC)를 사용하는 경우 Red Hat Advanced Cluster Security for Kubernetes에서 Cloud SCC로 경고를 전달할 수 있습니다. 이 가이드에서는 Red Hat Advanced Cluster Security for Kubernetes를 Cloud SCC와 통합하는 방법을 설명합니다.
다음 단계는 Kubernetes용 Red Hat Advanced Cluster Security를 Cloud SCC와 통합하는 고급 워크플로를 나타냅니다.
- Google Cloud에 새 보안 소스를 등록합니다.
- Red Hat Advanced Cluster Security for Kubernetes에 소스 ID 및 서비스 계정 키를 제공합니다.
- 알림을 보낼 정책을 식별하고 해당 정책에 대한 알림 설정을 업데이트합니다.
12.1. Configuring Google Cloud SCC
먼저 신뢰할 수 있는 Cloud SCC 소스로 Kubernetes용 Red Hat Advanced Cluster Security를 추가합니다.
절차
- Cloud Security Command Center에 취약점 및 위협 소스 추가 가이드를 확인하고 신뢰할 수 있는 Cloud SCC 소스로 Kubernetes용 Red Hat Advanced Cluster Security를 추가합니다. Red Hat Advanced Cluster Security for Kubernetes 통합을 위해 Google Cloud가 생성하는 소스 ID 를 기록해 두십시오. 등록 후 소스 ID가 표시되지 않으면 Cloud SCC 보안 소스 페이지에서 해당 ID를 찾을 수 있습니다.
- 이전 단계에서 생성한 서비스 계정 또는 기존 계정에 대한 키를 생성합니다. 자세한 내용은 서비스 계정 키 생성 및 관리에 대한 Google Cloud 가이드를 참조하십시오.
12.2. Google Cloud SCC와 통합하기 위해 Red Hat Advanced Cluster Security for Kubernetes 구성
소스 ID 및 서비스 계정 키 를 사용하여 Kubernetes용 Red Hat Advanced Cluster Security에서 새 Google Cloud SCC 통합을 만듭니다.
절차
- RHACS 포털에서 플랫폼 구성 → 통합 으로 이동합니다.
- Notifier Integrations 섹션까지 아래로 스크롤하여 Google Cloud SCC 를 선택합니다.
-
New Integration (새 통합
추가)을클릭합니다. - Integration Name 의 이름을 입력합니다.
- Cloud SCC 소스 ID 및 서비스 계정 키(JSON) 를 입력합니다.
-
만들기 (
저장아이콘)를 선택하여 구성을 생성합니다.
12.3. 정책 알림 구성
시스템 정책에 대한 경고 알림을 활성화합니다.
절차
- RHACS 포털에서 플랫폼 구성 → 정책 으로 이동합니다.
- 경고를 보낼 하나 이상의 정책을 선택합니다.
- Bulk actions 에서 알림 사용을 선택합니다.
알림 활성화 창에서 Google Cloud SCC 알림기를 선택합니다.
참고다른 통합을 구성하지 않은 경우 시스템에서 알림자가 구성되지 않은 메시지를 표시합니다.
- Enable 을 클릭합니다.
- Red Hat Advanced Cluster Security for Kubernetes는 옵트인으로 알림을 보냅니다. 알림을 받으려면 먼저 알림 프로그램을 정책에 할당해야 합니다.
- 알림은 지정된 경고에 대해 한 번만 전송됩니다. 정책에 알림기를 할당한 경우 위반 시 새 경고를 생성하지 않는 한 알림이 수신되지 않습니다.
Red Hat Advanced Cluster Security for Kubernetes는 다음 시나리오에 대한 새로운 경고를 생성합니다.
- 배포 시 정책 위반이 처음 발생합니다.
- 런타임 단계 정책 위반은 해당 배포의 정책에 대한 이전 런타임 경고를 해결한 후 배포에서 발생합니다.
13장. Splunk와 통합
Splunk 를 사용하는 경우 Red Hat Advanced Cluster Security for Kubernetes에서 Splunk로 경고를 전달하고 Splunk 내에서 위반, 취약점 탐지 및 컴플라이언스 관련 데이터를 볼 수 있습니다.
사용 사례에 따라 다음과 같은 방법으로 Kubernetes용 Red Hat Advanced Cluster Security를 Splunk와 통합할 수 있습니다.
Splunk에서 HTTP 이벤트 수집기를 사용하는 경우:
- 이벤트 수집기 옵션을 사용하여 경고 및 감사 로그 데이터를 전달합니다.
Red Hat Advanced Cluster Security for Kubernetes 애드온을 사용하여 다음을 수행합니다.
- 애드온을 사용하여 위반, 취약점 감지 및 규정 준수 데이터를 Splunk로 가져옵니다.
이러한 통합 옵션 중 하나 또는 두 가지를 사용하여 Kubernetes용 Red Hat Advanced Cluster Security를 Splunk와 통합할 수 있습니다.
13.1. HTTP 이벤트 수집기 사용
HTTP 이벤트 수집기를 사용하여 Red Hat Advanced Cluster Security for Kubernetes에서 Splunk로 경고를 전달할 수 있습니다.
HTTP 이벤트 수집기를 사용하여 Kubernetes용 Red Hat Advanced Cluster Security를 Splunk와 통합하려면 다음 단계를 따르십시오.
- Splunk에 새 HTTP 이벤트 수집기를 추가하고 토큰 값을 가져옵니다.
- Red Hat Advanced Cluster Security for Kubernetes에서 토큰 값을 사용하여 알림을 설정합니다.
- 알림을 보낼 정책을 식별하고 해당 정책에 대한 알림 설정을 업데이트합니다.
13.1.1. Splunk에서 HTTP 이벤트 수집기 추가
Splunk 인스턴스에 대한 새 HTTP 이벤트 수집기를 추가하고 토큰을 가져옵니다.
절차
- Splunk 대시보드에서 설정 → 데이터 추가로 이동합니다.
- Monitor 를 클릭합니다.
- 데이터 추가 페이지에서 HTTP 이벤트 수집기 를 클릭합니다.
- 이벤트 수집기 의 이름을 입력한 다음 다음 > 을 클릭합니다.
- 기본 입력 설정을 수락하고 검토 > 를 클릭합니다.
- 이벤트 수집기 속성을 검토하고 Submit >.
- 이벤트 수집기 의 토큰 값을 복사합니다. Kubernetes용 Red Hat Advanced Cluster Security에서 Splunk와의 통합을 구성하려면 이 토큰 값이 필요합니다.
13.1.1.1. HTTP 이벤트 수집기 활성화
이벤트를 받으려면 먼저 HTTP 이벤트 수집기 토큰을 활성화해야 합니다.
절차
- Splunk 대시보드에서 설정 → 데이터 입력 으로 이동합니다.
- HTTP 이벤트 수집기 를 클릭합니다.
- 글로벌 설정을 클릭합니다.
- 대화 상자가 열리면 활성화를 클릭한 다음 저장 을 클릭합니다.
13.1.2. Red Hat Advanced Cluster Security for Kubernetes에서 Splunk 통합 구성
토큰 값을 사용하여 Red Hat Advanced Cluster Security for Kubernetes에서 새 Splunk 통합을 생성합니다.
절차
- RHACS 포털에서 플랫폼 구성 → 통합 으로 이동합니다.
- Notifier Integrations 섹션까지 아래로 스크롤하여 Splunk 를 선택합니다.
-
New Integration (새 통합
추가)을클릭합니다. - Integration Name 의 이름을 입력합니다.
-
HTTP 이벤트 수집기 URL 필드에 Splunk URL 을 입력합니다. HTTPS의 경우
443이 아닌 경우 포트 번호를 지정해야 합니다. HTTP의 경우80입니다. URL 끝에 URL 경로/services/collector/event도 추가해야 합니다. 예를 들어https://<splunk-server-path>:8088/services/collector/event. HTTP 이벤트 수집기 토큰 필드에 토큰 을 입력합니다.
참고Red Hat Advanced Cluster Security for Kubernetes 버전 3.0.57 이상을 사용하는 경우 경고 이벤트에 대한 사용자 정의 소스 유형 및 감사 이벤트를 위한 소스 유형을 지정할 수 있습니다.
-
테스트 (
확인표아이콘)를 선택하여 테스트 메시지를 보내 Splunk과의 통합이 작동하는지 확인합니다. -
만들기 (
저장아이콘)를 선택하여 구성을 생성합니다.
13.1.3. 정책 알림 구성
시스템 정책에 대한 경고 알림을 활성화합니다.
절차
- RHACS 포털에서 플랫폼 구성 → 정책 으로 이동합니다.
- 경고를 보낼 하나 이상의 정책을 선택합니다.
- Bulk actions 에서 알림 사용을 선택합니다.
알림 활성화 창에서 Splunk 알림기를 선택합니다.
참고다른 통합을 구성하지 않은 경우 시스템에서 알림자가 구성되지 않은 메시지를 표시합니다.
- Enable 을 클릭합니다.
- Red Hat Advanced Cluster Security for Kubernetes는 옵트인으로 알림을 보냅니다. 알림을 받으려면 먼저 알림 프로그램을 정책에 할당해야 합니다.
- 알림은 지정된 경고에 대해 한 번만 전송됩니다. 정책에 알림기를 할당한 경우 위반 시 새 경고를 생성하지 않는 한 알림이 수신되지 않습니다.
Red Hat Advanced Cluster Security for Kubernetes는 다음 시나리오에 대한 새로운 경고를 생성합니다.
- 배포 시 정책 위반이 처음 발생합니다.
- 런타임 단계 정책 위반은 해당 배포의 정책에 대한 이전 런타임 경고를 해결한 후 배포에서 발생합니다.
13.2. Red Hat Advanced Cluster Security for Kubernetes 애드온 사용
Red Hat Advanced Cluster Security for Kubernetes 애드온을 사용하여 Red Hat Advanced Cluster Security for Kubernetes에서 Splunk로 취약점 탐지 및 컴플라이언스 관련 데이터를 전달할 수 있습니다.
Red Hat Advanced Cluster Security for Kubernetes의 모든 리소스에 대한 읽기 권한이 있는 API 토큰을 생성한 다음 해당 토큰을 사용하여 애드온을 설치하고 구성합니다.
13.2.1. Splunk 애드온 설치 및 구성
Splunk 인스턴스에서 Red Hat Advanced Cluster Security for Kubernetes 애드온을 설치할 수 있습니다.
StackRox Kubernetes Security Platform 애드온과의 역호환성을 유지하기 위해 구성된 입력에 대한 source_type 및 input_type 매개변수는 여전히 stackrox_ violations ,stackrox_violations, stackrox_vulnerability_management 라고 합니다.
사전 요구 사항
-
Red Hat Advanced Cluster Security for Kubernetes의 모든 리소스에 대한
읽기권한이 있는 API 토큰이 있어야 합니다. Analyst 시스템 역할을 할당하여 이 수준의 액세스 권한을 부여할 수 있습니다. Analyst 역할에는 모든 리소스에 대한 읽기 권한이 있습니다.
절차
- Splunkbase 에서 Red Hat Advanced Cluster Security for Kubernetes 애드온을 다운로드합니다.
- Splunk 인스턴스의 Splunk 홈 페이지로 이동합니다.
- 앱 → 앱 관리로 이동합니다.
- 파일에서 앱 설치를 선택합니다.
- Upload app 팝업 상자에서 Choose File 을 선택하고 Red Hat Advanced Cluster Security for Kubernetes 애드온 파일을 선택합니다.
- 업로드를 클릭합니다.
- Splunk 재시작 을 클릭하고 다시 시작하도록 확인합니다.
- Splunk를 다시 시작한 후 앱 메뉴에서 Red Hat Advanced Cluster Security for Kubernetes 를 선택합니다.
Configuration 으로 이동한 다음 애드온 설정을 클릭합니다.
-
중앙 끝점 의 경우 IP 주소 또는 중앙 인스턴스의 이름을 입력합니다. 예를 들면
central.custom:443입니다. - 애드온에 대해 생성한 API 토큰 을 입력합니다.
- 저장을 클릭합니다.
-
중앙 끝점 의 경우 IP 주소 또는 중앙 인스턴스의 이름을 입력합니다. 예를 들면
- 입력으로 이동합니다.
새 입력 만들기 를 클릭하고 다음 중 하나를 선택합니다.
- 규정 준수 데이터를 가져오기 위한 ACS 규정 준수.
- 위반 데이터를 가져오기 위한 ACS 위반 데이터입니다.
- 취약점 데이터를 가져오는 ACS 취약점 관리.
- 입력의 이름을 입력합니다.
- Red Hat Advanced Cluster Security for Kubernetes에서 데이터를 가져오려면 간격을 선택합니다. 예를 들어, 매일 14400초입니다.
- 데이터를 보낼 Splunk 인덱스 를 선택합니다.
- 중앙 끝점 의 경우 IP 주소 또는 중앙 인스턴스의 이름을 입력합니다.
- 애드온에 대해 생성한 API 토큰 을 입력합니다.
- 추가를 클릭합니다.
검증
Red Hat Advanced Cluster Security for Kubernetes 애드온 설치를 확인하려면 수신된 데이터를 쿼리합니다.
-
Splunk 인스턴스에서 쿼리로
index=* sourcetype="stackrox-*"를 검색 및 입력합니다. - Enter 를 누릅니다.
-
Splunk 인스턴스에서 쿼리로
구성된 소스가 검색 결과에 표시되는지 확인합니다.
13.2.2. StackRox Kubernetes Security Platform 애드온 업데이트
StackRox Kubernetes Security Platform 애드온을 사용하는 경우 새로운 Red Hat Advanced Cluster Security for Kubernetes 애드온으로 업그레이드해야 합니다.
왼쪽의 앱 목록에서 Splunk 홈페이지의 업데이트 알림을 확인할 수 있습니다. 또는 앱 → 앱 관리 페이지로 이동하여 업데이트 알림을 확인할 수도 있습니다.
사전 요구 사항
-
Red Hat Advanced Cluster Security for Kubernetes의 모든 리소스에 대한
읽기권한이 있는 API 토큰이 있어야 합니다. Analyst 시스템 역할을 할당하여 이 수준의 액세스 권한을 부여할 수 있습니다. Analyst 역할에는 모든 리소스에 대한 읽기 권한이 있습니다.
절차
- 업데이트 알림에서 업데이트를 클릭합니다.
- 사용 약관에 대한 확인란을 선택한 다음 Accept and Continue 를 클릭하여 업데이트를 설치합니다.
- 설치 후 앱 메뉴에서 Red Hat Advanced Cluster Security for Kubernetes 를 선택합니다.
Configuration 으로 이동한 다음 애드온 설정을 클릭합니다.
- 애드온에 대해 생성한 API 토큰 을 입력합니다.
- 저장을 클릭합니다.
13.2.3. Splunk 애드온 문제 해결
Red Hat Advanced Cluster Security for Kubernetes 애드온에서 이벤트 수신을 중지하는 경우 Splunk 애드온 디버그 로그에 오류가 있는지 확인합니다.
Splunk는 /opt/splunk/var/log/splunk 디렉터리에 구성된 모든 입력에 대한 디버그 로그 파일을 생성합니다. stackrox_<input>_<uid>.log 라는 파일을 찾습니다(예: stackrox_compliance_29a3e14798aa2363d.log ).
14장. 이미지 취약점 스캐너와 통합
RHACS(Advanced Cluster Security for Kubernetes)는 여러 취약점 스캐너와 통합되어 컨테이너 이미지를 가져와서 취약점을 조사할 수 있습니다.
지원되는 컨테이너 이미지 레지스트리
Red Hat은 다음 컨테이너 이미지 레지스트리를 지원합니다.
- Amazon Elastic Container Registry (ECR)
-
일반 Docker 레지스트리 (일반 Docker 또는 Open Container Initiative 호환 이미지 레지스트리 (예: DockerHub,
gcr.io,mcr.microsoft.com) - Google Container Registry
- Google Artifact Registry
- IBM Cloud Container Registry
- JFrog Artifactory
- Microsoft Azure Container Registry (ACR)
- Red Hat Quay
-
Red Hat 레지스트리 (
registry.redhat.io,registry.access.redhat.com) - Sonatype Nexus
이러한 향상된 지원을 통해 원하는 레지스트리에서 컨테이너 이미지를 관리할 때 더 큰 유연성과 선택을 할 수 있습니다.
지원되는 스캐너
다음 상용 컨테이너 이미지 취약점 스캐너에서 이미지 취약점 데이터를 가져오도록 RHACS를 설정할 수 있습니다.
- RHACS Scanner (권장)
- Clair
- Google 컨테이너 분석
- Red Hat Quay
RHACS 스캐너는 RHACS에서 사용하는 기본 이미지 취약점 스캐너입니다. RHACS 스캐너를 사용하여 컨테이너 이미지를 스캔하는 방법에 대한 자세한 내용은 이미지 검사를 참조하십시오.
DevOps 워크플로에서 이러한 제품 중 하나를 사용하는 경우 RHACS 포털을 사용하여 취약점 스캐너와의 통합을 구성할 수 있습니다. 통합 후 RHACS 포털에는 이미지 취약점이 표시되고 쉽게 분류할 수 있습니다.
14.1. Clair와 통합
이미지의 취약점에 대한 정적 분석을 위해 Red Hat Advanced Cluster Security for Kubernetes를 Clair와 통합할 수 있습니다.
- RHACS 3.74를 사용하면 Clair V4 스캐너와 통합할 수 있습니다. Red Hat은 Clair v4 통합을 위해 이전 CoreOS Clair 통합을 더 이상 사용되지 않습니다.
- 다음 RHACS 4.0 릴리스에서 Clair V4 통합에 대한 JWT 기반 인증 옵션에 대한 지원은 계획되지 않습니다.
절차
- RHACS 포털에서 플랫폼 구성 → 통합 으로 이동합니다.
- 이미지 통합 섹션에서 Clair v4 를 선택합니다.
- New Integration을 클릭합니다.
다음 필드에 대한 세부 정보를 입력합니다.
- 통합 이름: 통합의 이름입니다.
- Endpoint: 스캐너의 주소입니다.
- (선택 사항) 레지스트리에 연결할 때 TLS 인증서를 사용하지 않는 경우 Disable TLS certificate validation (비보안) 을 선택합니다.
- (선택 사항) 테스트를 클릭하여 선택한 레지스트리와 통합이 작동하는지 테스트합니다.
- 저장을 클릭합니다.
14.2. Google Container Registry와 통합
컨테이너 분석 및 취약점 검사를 위해 Red Hat Advanced Cluster Security for Kubernetes를 GCR(Google Container Registry)과 통합할 수 있습니다.
사전 요구 사항
- Google Container Registry의 서비스 계정 키가 있어야 합니다.
- 연결된 서비스 계정에는 레지스트리에 액세스할 수 있습니다. GCR 에 대한 사용자 및 기타 프로젝트 액세스 권한 부여에 대한 정보는 액세스 제어 구성을 참조하십시오.
GCR 컨테이너 분석을 사용하는 경우 서비스 계정에 다음 역할이 부여됩니다.
- 컨테이너 분석 노트 뷰어
- 컨테이너 분석 Occurrences Viewer
- 스토리지 오브젝트 뷰어
절차
- RHACS 포털에서 플랫폼 구성 → 통합 으로 이동합니다.
이미지 통합 섹션에서 Google Container Registry 를 선택합니다.
Configure image integration modal 상자가 열립니다.
- New Integration 을 클릭합니다.
다음 필드에 대한 세부 정보를 입력합니다.
- Integration Name: 통합의 이름입니다.
- 유형: 스캐너를 선택합니다.
- Registry Endpoint: 레지스트리의 주소입니다.
- 프로젝트: Google Cloud 프로젝트 이름입니다.
- 서비스 계정 키(JSON) 인증을 위한 서비스 계정 키입니다.
-
테스트 (
확인표아이콘)를 선택하여 선택한 레지스트리와 통합이 작동하는지 테스트합니다. -
만들기 (
저장아이콘)를 선택하여 구성을 생성합니다.
14.3. 이미지 스캔을 위해 Quay Container Registry와 통합
Kubernetes용 Red Hat Advanced Cluster Security를 Quay Container Registry와 통합하여 이미지를 스캔할 수 있습니다.
사전 요구 사항
- 이미지를 스캔하려면 Quay Container Registry와의 인증을 위해 OAuth 토큰이 있어야 합니다.
절차
- RHACS 포털에서 플랫폼 구성 → 통합 으로 이동합니다.
- Image Integrations 섹션에서 Red Hat Quay.io 를 선택합니다.
- New Integration을 클릭합니다.
- Integration 이름을 입력합니다.
유형 아래에서 스캐너를 선택합니다. (또한 레지스트리와 통합하려는 경우 scanner + Registry 를 선택합니다.) 다음 필드에 정보를 입력합니다.
- Endpoint: 레지스트리의 주소를 입력합니다.
- OAuth 토큰: RHACS가 API를 사용하여 인증하는 데 사용하는 OAuth 토큰을 입력합니다.
-
선택 사항: scanner + Registry 를 구성하고 Quay 로봇 계정을 사용하여 레지스트리에 액세스하는 경우 <
namespace>+<accountname> 형식으로 사용자 이름을입력합니다. - 선택 사항: scanner + Registry를 구성하고 Quay 로봇 계정을 사용하여 레지스트리에 액세스하는 경우 robot 계정 사용자 이름의 암호를 입력합니다.
- 선택 사항: 레지스트리에 연결할 때 TLS 인증서를 사용하지 않는 경우 Disable TLS 인증서 검증(비보안) 을 선택합니다.
- 선택 사항: 테스트 없이 통합을 생성하려면 테스트 없이 통합 생성을 선택합니다.
- 저장을 선택합니다.
Quay 통합을 편집 중이지만 자격 증명을 업데이트하지 않으려면 Update stored 자격 증명이 선택되어 있지 않은지 확인합니다.
15장. JIRA와 통합
Jira를 사용하는 경우 Kubernetes용 Red Hat Advanced Cluster Security에서 Jira로 경고를 전달할 수 있습니다.
다음 단계는 Red Hat Advanced Cluster Security for Kubernetes를 JIRA와 통합하는 고급 워크플로를 나타냅니다.
- JIRA에서 사용자를 설정합니다.
- Jira URL, 사용자 이름 및 암호를 사용하여 Jira와 Kubernetes용 Red Hat Advanced Cluster Security를 통합합니다.
- 알림을 보낼 정책을 식별하고 해당 정책에 대한 알림 설정을 업데이트합니다.
15.1. Jira 구성
새 사용자를 생성하여 시작하고 적절한 역할 및 권한을 할당합니다.
사전 요구 사항
- 통합 중인 프로젝트에서 문제를 생성하고 편집하려면 권한이 있는 Jira 계정이 필요합니다.
절차
문제를 생성하려는 프로젝트에 액세스할 수 있는 Jira에서 사용자를 생성합니다.
- 새 사용자를 생성하려면 Jira 문서 주제에서 사용자 생성, 편집 또는 제거를 참조하십시오.
프로젝트 역할 및 애플리케이션에 대한 액세스 권한을 부여하려면 Jira 문서 주제에서 그룹, 프로젝트 역할 및 애플리케이션에 사용자를 할당 하십시오.
참고Jira Software Cloud를 사용하는 경우 사용자를 생성한 후 사용자의 토큰을 생성해야 합니다.
- https://id.atlassian.com/manage/api-tokens 로 이동하여 새 토큰을 생성합니다.
- Kubernetes용 Red Hat Advanced Cluster Security를 구성할 때 토큰을 암호로 사용합니다.
15.2. Red Hat Advanced Cluster Security for Kubernetes 구성
Jira 서버 URL 및 사용자 인증 정보를 사용하여 Red Hat Advanced Cluster Security for Kubernetes에서 새 통합을 생성합니다.
절차
- RHACS 포털에서 플랫폼 구성 → 통합 으로 이동합니다.
- Notifier Integrations 섹션까지 아래로 스크롤하여 Jira Software 를 선택합니다.
- New Integration 을 클릭합니다.
- Integration Name 의 이름을 입력합니다.
- 사용자 이름 및 암호 또는 API 토큰 상자에 사용자 자격 증명을 입력합니다.
- Issue Type 의 경우 유효한 Jira Issue Type 을 입력합니다(예: 작업,Sub-task 또는 버그 ).
- Jira URL 상자에 Jira 서버 URL을 입력합니다.
- 기본 프로젝트 상자에 문제를 생성할 프로젝트 의 키를 입력합니다.
- Annotation Key For Project 상자를 사용하여 다른 Jira 프로젝트에서 문제를 생성할 수 있습니다.
- Jira 프로젝트에서 사용자 정의 우선순위를 사용하는 경우 Priority Mapping 토글을 사용하여 사용자 정의 우선순위를 구성합니다.
JIRA 프로젝트에서 필수 사용자 지정 필드를 사용하는 경우 기본 필드 JSON(필수 필드인 경우 필수 필드) 상자에 JSON 값으로 입력합니다. 예를 들면 다음과 같습니다.
{ "customfield_10004": 3, "customfield_20005": "Alerts", }-
테스트 (
확인표아이콘)를 선택하여 Jira와의 통합이 작동하는지 테스트합니다. -
만들기 (
저장아이콘)를 선택하여 구성을 생성합니다.
15.2.1. 다른 Jira 프로젝트에서 문제 생성
Kubernetes용 Red Hat Advanced Cluster Security를 구성하여 다른 Jira 프로젝트에서 문제를 만들어 올바른 팀으로 직접 이동할 수 있습니다.
사전 요구 사항
- 경고를 보낼 각 프로젝트에 액세스할 수 있는 계정이 있어야 합니다.
절차
배포 YAML 파일에서 다음과 유사한 주석을 추가합니다.
jira/project-key: <jira_project_key>
-
Kubernetes용 Red Hat Advanced Cluster Security를 구성할 때 Annotation Key For Project 필드에서 주석 키
jira/project-key를 사용합니다.
구성이 완료되면 배포에 YAML 파일에 주석이 있는 경우 Kubernetes용 Red Hat Advanced Cluster Security는 해당 주석에 지정된 프로젝트로 경고를 보냅니다. 그렇지 않으면 경고가 default 프로젝트로 전송됩니다.
15.2.2. Jira에서 사용자 정의 우선순위 구성
Jira 프로젝트에서 사용자 지정 우선순위를 사용하는 경우 Kubernetes용 Red Hat Advanced Cluster Security에서 사용자 지정 우선순위를 구성할 수 있습니다.
절차
- Kubernetes용 Red Hat Advanced Cluster Security에서 Jira 통합을 구성하는 동안 Priority Mapping 토글을 켭니다. Red Hat Advanced Cluster Security for Kubernetes는 JIRA 프로젝트 스키마를 가져와서 CRITICAL_SEVERITY,HIGH_SEVERITY,MEDIUM_SEVERITY, LOW_SEVERITY 필드의 값을 자동으로 채웁니다.
- JIRA 프로젝트 구성에 따라 우선순위 값을 확인하거나 업데이트합니다.
-
테스트 (
확인표아이콘)를 선택하여 Jira와의 통합이 작동하는지 테스트합니다. -
만들기 (
저장아이콘)를 선택하여 구성을 생성합니다.
오류가 발생하면 문제 해결 JIRA 통합 섹션의 지침을 따르십시오.
15.3. 정책 알림 구성
시스템 정책에 대한 경고 알림을 활성화합니다.
절차
- RHACS 포털에서 플랫폼 구성 → 정책 으로 이동합니다.
- 경고를 보낼 하나 이상의 정책을 선택합니다.
- Bulk actions 에서 알림 사용을 선택합니다.
알림 활성화 창에서 Jira 알림기를 선택합니다.
참고다른 통합을 구성하지 않은 경우 시스템에서 알림자가 구성되지 않은 메시지를 표시합니다.
- Enable 을 클릭합니다.
- Red Hat Advanced Cluster Security for Kubernetes는 옵트인으로 알림을 보냅니다. 알림을 받으려면 먼저 알림 프로그램을 정책에 할당해야 합니다.
- 알림은 지정된 경고에 대해 한 번만 전송됩니다. 정책에 알림기를 할당한 경우 위반 시 새 경고를 생성하지 않는 한 알림이 수신되지 않습니다.
Red Hat Advanced Cluster Security for Kubernetes는 다음 시나리오에 대한 새로운 경고를 생성합니다.
- 배포 시 정책 위반이 처음 발생합니다.
- 런타임 단계 정책 위반은 해당 배포의 정책에 대한 이전 런타임 경고를 해결한 후 배포에서 발생합니다.
15.4. 문제 해결 JIRA 통합
Jira 프로젝트에서 사용자 정의 우선순위 또는 필수 사용자 정의 필드를 사용하는 경우, Kubernetes용 Red Hat Advanced Cluster Security for Kubernetes를 Jira 소프트웨어와 통합하려고 할 때 오류가 발생할 수 있습니다. 이 오류는 심각도와 우선순위 필드 값 간의 불일치로 인해 발생할 수 있습니다.
JIRA 프로젝트의 사용자 정의 우선순위 값을 모르는 경우 roxctl CLI를 사용하여 JIRA 통합에 대한 디버그 로깅을 활성화합니다.
절차
JIRA 프로젝트에서 사용자 정의 우선순위 값을 가져오려면 다음 명령을 실행하여 JIRA 통합에 대한 디버그 로깅을 켭니다.
$ roxctl -e "$ROX_CENTRAL_ADDRESS" central debug log --level Debug --modules notifiers/jira
- Jira 통합을 위해 Red Hat Advanced Cluster Security for Kubernetes를 구성하려면 지침을 따르십시오. 통합 테스트가 실패하더라도 통합을 테스트할 때 생성된 로그에 JIRA 프로젝트 스키마 및 사용자 지정 우선순위가 포함됩니다.
디버깅 정보를 압축된
.zip파일로 저장하려면 다음 명령을 실행합니다.$ roxctl -e "$ROX_CENTRAL_ADDRESS" central debug dump
-
.zip파일의 압축을 풀고 JIRA 프로젝트에서 사용 중인 사용자 정의 우선 순위 값을 검색합니다. 디버그 로깅을 끄려면 다음 명령을 실행합니다.
$ roxctl -e "$ROX_CENTRAL_ADDRESS" central debug log --level Info
- Jira 통합을 위해 Kubernetes용 Red Hat Advanced Cluster Security를 다시 구성하고 우선순위 값을 사용하여 사용자 정의 우선순위를 설정합니다.
16장. 이메일과 통합
정책 위반에 대한 알림을 표준 이메일 공급자에게 전송하도록 RHACS(Advanced Cluster Security for Kubernetes)를 구성합니다.
RHACS에서 표준 이메일 공급자로 경고를 전달하여 이메일을 알림 방법으로 사용할 수 있습니다. RHACS 플랫폼에서 이메일 주소로 알림을 전달하려면 Default Recipient 필드를 사용하여 표준 및 중앙 집중식 팀에 이메일을 보내거나 배포 주석을 사용하여 알림 대상을 지정할 수 있습니다.
주석 키를 사용하면 배포 또는 네임스페이스와 관련된 정책 위반에 대해 알리는 대상을 정의할 수 있습니다. 배포에 주석이 있으면 주석의 값이 기본값을 덮어씁니다. 네임스페이스에 주석이 있으면 네임스페이스의 값이 기본값을 덮어씁니다.
- 배포에 주석 키와 정의된 대상 사용자가 있는 경우 키로 정의된 대상자에게 이메일이 전송됩니다.
- 배포에 주석 키가 없는 경우 네임스페이스에 주석 키를 확인하고 이메일이 정의된 대상자에게 전송됩니다.
- 주석 키가 없는 경우 통합에 정의된 기본 수신자로 이메일이 전송됩니다.
16.1. 이메일 플러그인 구성
RHACS 알림기는 통합에 지정된 수신자에게 이메일을 보내거나 주석을 사용하여 수신자를 결정할 수 있습니다.
주석을 사용하여 이메일 수신자를 동적으로 결정하려면 다음을 수행합니다.
배포 YAML 파일에 다음 예제와 유사한 주석을 추가합니다. 여기서
email은 이메일 통합에 지정하는주석 키입니다.annotations: email: <email_address>-
RHACS를 구성할 때 수신자 필드의 주석 키
이메일을사용합니다.
배포 또는 네임스페이스에 대한 주석을 생성할 수 있습니다.
주석으로 배포 또는 네임스페이스를 구성한 경우 RHACS 플랫폼은 주석에 지정된 이메일로 경고를 보냅니다. 그렇지 않으면 기본 수신자에게 경고를 보냅니다.
절차
- 플랫폼 구성 → 통합으로 이동합니다.
- Notifier Integrations 섹션에서 이메일을 선택합니다.
- New Integration 을 선택합니다.
- 통합 이름 필드에 이메일 통합의 이름을 입력합니다.
-
이메일 서버 필드에 이메일 서버의 주소를 입력합니다. 이메일 서버 주소에는 FQDN(정규화된 도메인 이름)과 포트 번호가 포함됩니다(예:
smtp.example.com:465). 선택 사항: 인증되지 않은 SMTP를 사용하는 경우 인증되지 않은 SMTP 활성화를 선택합니다. 이는 안전하지 않으며 권장되지는 않지만 일부 통합에는 필요할 수 있습니다. 예를 들어 인증이 필요하지 않은 알림에 내부 서버를 사용하는 경우 이 옵션을 활성화해야 할 수 있습니다.
참고인증되지 않은 SMTP를 활성화하기 위해 인증을 사용하는 기존 이메일 통합을 변경할 수 없습니다. 기존 통합을 삭제하고 인증되지 않은 SMTP 활성화를 사용하여 새 통합을 생성해야 합니다.
- 인증에 사용되는 서비스 계정의 사용자 이름 및 암호를 입력합니다.
-
선택 사항: From 필드에 이메일 알림의
FROM헤더에 표시할 이름을 입력합니다(예:보안 경고). -
보낸 사람 필드에서 이메일 알림의
SENDER헤더에 표시할 이메일 주소를 지정합니다. - Default recipient 필드에 알림을 수신할 이메일 주소를 지정합니다.
- 선택 사항: 수신자의 주석 키에 주석 키를 입력합니다. 주석을 제공하고 배포를 제공하거나 네임스페이스에 이 값이 있는 키가 있으면 주석의 이메일 주소로 알림이 전송됩니다. 그렇지 않으면 기본 수신자 필드에 지정된 이메일로 알림이 전송됩니다.
선택 사항: TLS 없이 이메일을 보낼 TLS 인증서 유효성 검사 비활성화(비보안) 를 선택합니다. StartTLS를 사용하지 않는 한 TLS를 비활성화해서는 안 됩니다.
참고이메일 알림에는 TLS를 사용합니다. TLS가 없으면 모든 이메일이 암호화되지 않은 상태로 전송됩니다.
선택 사항: StartTLS를 사용하려면 UseECDHETLS(비활성화할 TLS 필요) 드롭다운 메뉴에서 Login 또는 Plain 을 선택합니다.
중요StartTLS를 사용하면 세션 암호화가 설정되기 전에 인증 정보가 일반 텍스트로 이메일 서버로 전달됩니다.
-
Login 매개변수를 사용하여 StartTLS는
base64인코딩 문자열에서 인증 자격 증명을 보냅니다. - Plain 매개변수를 사용하여 StartTLS는 인증 자격 증명을 일반 텍스트로 메일 릴레이로 보냅니다.
-
Login 매개변수를 사용하여 StartTLS는
16.2. 정책 알림 구성
시스템 정책에 대한 경고 알림을 활성화합니다.
절차
- RHACS 포털에서 플랫폼 구성 → 정책 으로 이동합니다.
- 경고를 보낼 하나 이상의 정책을 선택합니다.
- Bulk actions 에서 알림 사용을 선택합니다.
알림 활성화 창에서 이메일 알림기를 선택합니다.
참고다른 통합을 구성하지 않은 경우 시스템에서 알림자가 구성되지 않은 메시지를 표시합니다.
- Enable 을 클릭합니다.
- Red Hat Advanced Cluster Security for Kubernetes는 옵트인으로 알림을 보냅니다. 알림을 받으려면 먼저 알림 프로그램을 정책에 할당해야 합니다.
- 알림은 지정된 경고에 대해 한 번만 전송됩니다. 정책에 알림기를 할당한 경우 위반 시 새 경고를 생성하지 않는 한 알림이 수신되지 않습니다.
Red Hat Advanced Cluster Security for Kubernetes는 다음 시나리오에 대한 새로운 경고를 생성합니다.
- 배포 시 정책 위반이 처음 발생합니다.
- 런타임 단계 정책 위반은 해당 배포의 정책에 대한 이전 런타임 경고를 해결한 후 배포에서 발생합니다.