이 페이지에는 Adaptive Protection 구성에 대한 정보가 포함되어 있습니다. Adaptive Protection을 구성하기 전에 Adaptive Protection 개요 및 Adaptive Protection 사용 사례의 정보를 숙지해야 합니다.
시작하기 전에
다음 섹션에서는 Google Cloud Armor 보안 정책을 구성하는 데 필요한 모든 Identity and Access Management(IAM) 역할 및 권한을 설명합니다. 이 문서의 사용 사례에서는 compute.securityPolicies.update
권한만 필요합니다.
Google Cloud Armor 보안 정책의 IAM 권한 설정
다음 작업에는 Identity and Access Management(IAM) Compute 보안 관리자 역할(roles/compute.securityAdmin
)이 필요합니다.
- Google Cloud Armor 보안 정책 구성, 수정, 업데이트, 삭제
- 다음 API 메서드 사용:
SecurityPolicies insert
SecurityPolicies delete
SecurityPolicies patch
SecurityPolicies addRule
SecurityPolicies patchRule
SecurityPolicies removeRule
Compute 네트워크 관리자 역할(roles/compute.networkAdmin
)이 있는 사용자는 다음 작업을 수행할 수 있습니다.
- 백엔드 서비스의 Google Cloud Armor 보안 정책 설정
- 다음 API 메서드 사용:
BackendServices setSecurityPolicy
BackendServices list
(gcloud
만)
보안 관리자 역할(roles/iam.securityAdmin
) 및 Compute 네트워크 관리자 역할이 있는 사용자는 SecurityPolicies
API 메서드 get
, list
, getRule
을 사용하여 Google Cloud Armor 보안 정책을 볼 수 있습니다.
커스텀 역할에 대한 IAM 권한 설정
다음 표에는 IAM 역할의 기본 권한과 관련 API 메서드가 나와 있습니다.
IAM 권한 | API 메서드 |
---|---|
compute.securityPolicies.create |
SecurityPolicies insert |
compute.securityPolicies.delete |
SecurityPolicies delete |
compute.securityPolicies.get |
SecurityPolicies get SecurityPolicies getRule |
compute.securityPolicies.list |
SecurityPolicies list |
compute.securityPolicies.use |
BackendServices setSecurityPolicy |
compute.securityPolicies.update |
SecurityPolicies patch SecurityPolicies addRule SecurityPolicies patchRule SecurityPolicies removeRule |
compute.backendServices.setSecurityPolicy |
BackendServices setSecurityPolicy |
Adaptive Protection 사용 설정
다음 단계에 따라 보안 정책에 Adaptive Protection을 사용 설정합니다. Adaptive Protection은 각 보안 정책에 개별적으로 적용됩니다.
콘솔
보안 정책에 대해 Adaptive Protection을 활성화하려면 다음 안내를 따르세요.
Google Cloud 콘솔에서 네트워크 보안 페이지로 이동합니다.
정책 페이지에서 보안 정책의 이름을 클릭합니다.
수정을 클릭합니다.
Adaptive Protection에서 사용 설정을 선택합니다.
업데이트를 클릭합니다.
보안 정책에 대해 Adaptive Protection을 비활성화하려면 다음 안내를 따르세요.
Google Cloud 콘솔에서 네트워크 보안 페이지로 이동합니다.
정책 페이지에서 보안 정책의 이름을 클릭합니다.
수정을 클릭합니다.
Adaptive Protection에서 사용 설정을 선택 해제합니다.
업데이트를 클릭합니다.
gcloud
보안 정책에 대해 Adaptive Protection을 활성화하려면 다음 안내를 따르세요.
gcloud compute security-policies update MY-SECURITY-POLICY \ --enable-layer7-ddos-defense
보안 정책에 대해 Adaptive Protection을 비활성화하려면 다음 안내를 따르세요.
gcloud compute security-policies update MY-SECURITY-POLICY \ --no-enable-layer7-ddos-defense
세분화된 모델 구성
세분화된 모델 기능을 사용하면 특정 호스트 또는 경로를 Adaptive Protection에서 분석하는 세분화된 단위로 구성할 수 있습니다. 다음 예시에서는 각 호스트에 대해 세분화된 트래픽 단위를 만들고, 세분화된 트래픽 단위를 맞춤설정하고, 트래픽이 기준 초당 쿼리 수(QPS)를 초과할 경우 조치를 취하도록 Adaptive Protection을 구성합니다. 세분화된 모델에 대한 자세한 내용은 Adaptive Protection 개요를 참조하세요.
세분화된 트래픽 단위 구성
이 섹션의 예시에서는 add-layer7-ddos-defense-threshold-config
명령어를 다음 플래그 중 일부 또는 전부와 함께 사용합니다.
플래그 | 설명 |
---|---|
--threshold-config-name |
기준 구성의 이름입니다. |
--traffic-granularity-configs |
지정된 서비스 세분성으로 작동하도록 Adaptive Protection을 사용 설정하는 구성 옵션입니다. |
--auto-deploy-impacted-baseline-threshold |
Adaptive Protection이 감지된 공격에 대한 제안된 완화 규칙의 기준 트래픽에 미치는 예상 효과에 대한 기준입니다. 기준을 초과하지 않는 경우에만 자동 방어 기능이 적용됩니다. |
--auto-deploy-expiration-sec |
자동 배포가 수행하는 작업(있는 경우)의 지속 시간입니다. |
--detection-load-threshold |
백엔드 서비스 부하에 따른 감지 기준입니다. |
--detection-absolute-qps |
절대 QPS에 따른 감지 기준입니다. |
--detection-relative-to-baseline-qps |
기준 트래픽의 평균의 상대 QPS에 따른 감지 기준입니다. |
첫 번째 예시에서는 기본 기준을 재정의하지 않고 백엔드 서비스 뒤에 있는 각 호스트에 대한 공격을 감지하고 독립적인 완화 조치를 제안하도록 Adaptive Protection을 구성합니다.
gcloud
POLICY_NAME
이름의 보안 정책을 만들거나 기존 보안 정책을 사용합니다.- Adaptive Protection이 아직 사용 설정되지 않은 경우 다음 명령어를 사용하여 정책에 Adaptive Protection을 사용 설정합니다.
gcloud compute security-policies update POLICY_NAME
--enable-layer7-ddos-defense - 여러 호스트가 있는 백엔드 서비스에 보안 정책을 적용합니다.
- 다음
add-layer7-ddos-defense-threshold-config
명령어를--traffic-granularity-configs
플래그와 함께 사용하여 세분화된 트래픽 단위를 구성합니다.gcloud compute security-policies add-layer7-ddos-defense-threshold-config POLICY_NAME
--threshold-config-name=per-host-config
--traffic-granularity-configs=type=HTTP_HEADER_HOST;enableEachUniqueValue=true
두 번째 예시에서는 첫 번째 예시에서 구성한 세분화된 트래픽 단위 중 일부 또는 전부에 대해 다른 자동 배포 및 감지 기준을 구성합니다.
gcloud
- Adaptive Protection 자동 배포가 아직 사용 설정되지 않은 경우 자리표시자 규칙을 만듭니다.
- 다음 명령어는
HTTP_HEADER_HOST
가HOST
이고HTTP_PATH
가PATH
인 세분화된 트래픽 단위의 자동 배포 기준을 맞춤설정합니다. 맞춤설정하려는 세분화된 트래픽 단위마다 이 명령어를 사용하여 필요에 따라 각 호스트 및 URL 경로의 변수를 바꿉니다.gcloud compute security-policies add-layer7-ddos-defense-threshold-config
POLICY_NAME
--threshold-config-name=my-host-config
--auto-deploy-impacted-baseline-threshold=0.01
--auto-deploy-expiration-sec=3600
--traffic-granularity-configs=type=HTTP_HEADER_HOST;value=HOST
,type=HTTP_PATH;value=PATH
공격 볼륨이 기준 평균 QPS를 초과하는 경우 감지
다음 예시에서는 공격 볼륨이 기준 평균 QPS의 50%를 초과할 때와 백엔드 서비스 부하가 해당 용량의 90%를 초과할 때만 공격을 감지하도록 Adaptive Protection을 구성합니다.
gcloud
POLICY_NAME
이름의 보안 정책을 만들거나 기존 보안 정책을 사용합니다.Adaptive Protection이 아직 사용 설정되지 않은 경우 다음 명령어를 사용하여 정책에 Adaptive Protection을 사용 설정합니다.
gcloud compute security-policies update POLICY_NAME \ --enable-layer7-ddos-defense
백엔드 서비스에 보안 정책을 적용합니다.
다음 명령어를 사용하여 맞춤설정된 감지 기준으로 Adaptive Protection을 구성합니다.
gcloud compute security-policies add-layer7-ddos-defense-threshold-config POLICY_NAME \ --threshold-config-name=my-customized-thresholds \ --detection-load-threshold=0.9 \ --detection-relative-to-baseline-qps=1.5