Cloud Armor 보안 정책 관리

이 페이지에서는 Google Cloud Armor 보안 정책을 관리하여 애플리케이션으로 들어오는 트래픽을 필터링하는 방법을 설명합니다. Cloud Armor 보안 정책은 DDoS 공격과 인터넷의 기타 위협으로부터 웹 애플리케이션과 서비스를 보호하는 데 도움이 됩니다. 강력한 보안 상황을 적용하려면 업데이트, 테스트, 백엔드 서비스에 연결, 내보내기 또는 가져오기를 통해 보안 정책을 관리해야 합니다.

보안 정책을 만들거나 보려면 Cloud Armor 보안 정책 만들기 및 보기를 참조하세요. 보안 정책 내에서 규칙을 관리하려면 Cloud Armor 보안 정책 규칙 관리를 참조하세요.

보안 정책 관리

다음 섹션에서는 보안 정책을 업데이트, 삭제 또는 테스트하는 방법을 설명합니다.

보안 정책 업데이트

이 섹션의 단계에서는 Cloud Armor 보안 정책을 업데이트하는 방법을 설명합니다. 정책 설명을 수정하거나, 기본 규칙을 수정하거나, 대상 백엔드 서비스를 변경하거나, 규칙을 추가할 수 있습니다.

콘솔

  1. Google Cloud 콘솔에서 Cloud Armor 정책 페이지로 이동합니다.

    Cloud Armor 정책으로 이동

  2. 정책 목록에서 업데이트할 정책의 이름을 찾고 해당 정책의 메뉴를 클릭합니다.

    • 설명 또는 기본 규칙 작업을 업데이트하려면 수정을 선택하고 변경한 후 업데이트를 클릭합니다.
    • 규칙을 추가하려면 규칙 추가를 선택한 후 보안 정책에 규칙 추가의 단계를 따릅니다.
    • 대상 백엔드 서비스를 바꾸려면 대상에 정책 적용을 선택한 후 대상 추가를 클릭한 다음 대상을 선택한 후 추가를 클릭합니다.

gcloud

보안 정책을 업데이트하려면 다음 Google Cloud CLI 단계를 따르세요.

보안 정책 삭제

이 섹션에서는 Cloud Armor 보안 정책을 삭제하는 방법을 설명합니다. 삭제하려면 먼저 정책에서 모든 백엔드 서비스를 삭제해야 합니다.

콘솔

  1. Google Cloud 콘솔에서 Cloud Armor 정책 페이지로 이동합니다.

    Cloud Armor 정책으로 이동

  2. 삭제할 정책 옆에 있는 체크박스를 선택합니다.

  3. 페이지 오른쪽 상단에서 삭제를 클릭합니다.

gcloud

gcloud compute security-policies delete NAME을 사용합니다. NAME을 보안 정책 이름으로 바꿉니다.

gcloud compute security-policies delete NAME

보안 정책 테스트

모든 새 규칙을 미리보기 모드로 배포한 후 요청 로그를 검토하여 정책과 규칙이 예상대로 작동하는지 확인하는 것이 좋습니다.

보안 정책 연결 및 삭제

다음 섹션에서는 보안 정책을 연결하고 삭제하는 방법을 설명합니다.

백엔드 서비스에 보안 정책 연결

이 섹션의 단계에 따라 Cloud Armor 보안 정책을 백엔드 서비스에 연결합니다. 보안 정책을 백엔드 서비스 두 개 이상에 연결할 수 있지만 백엔드 서비스에는 각 유형의 보안 정책 하나만 연결될 수 있습니다.

콘솔

  1. Google Cloud 콘솔에서 Cloud Armor 정책 페이지로 이동합니다.

    Cloud Armor 정책으로 이동

  2. 보안 정책 이름을 클릭하여 정책 세부정보 페이지를 엽니다.

  3. 페이지 중간에 있는 대상 탭을 클릭합니다.

  4. 새 대상에 정책 적용을 클릭합니다.

  5. 대상 추가를 클릭합니다.

  6. 대상 목록에서 대상을 선택한 다음 추가를 클릭합니다.

gcloud

백엔드 보안 정책을 백엔드 서비스에 연결할 때 gcloud compute backend-services 명령어와 --security-policy 플래그를 사용합니다.

gcloud compute backend-services update my-backend \
    --security-policy my-policy

백엔드 서비스에 에지 보안 정책을 연결할 때 gcloud compute backend-services 명령어와 --edge-security-policy 플래그를 사용합니다.

gcloud compute backend-services update my-backend \
    --edge-security-policy my-policy

백엔드 서비스에서 보안 정책 삭제

이 섹션의 단계에 따라 백엔드 서비스에서 Cloud Armor 보안 정책을 삭제합니다.

콘솔

  1. Google Cloud 콘솔에서 Cloud Armor 정책 페이지로 이동합니다.

    Cloud Armor 정책으로 이동

  2. 보안 정책 이름을 클릭하여 정책 세부정보 페이지를 엽니다.

  3. 페이지 중간에 있는 대상 탭을 클릭합니다.

  4. 정책을 삭제할 대상 백엔드 서비스를 선택합니다.

  5. 삭제를 클릭합니다.

  6. 대상 삭제 메시지에서 삭제를 클릭합니다.

gcloud

백엔드 보안 정책을 삭제할 때 gcloud compute backend-services 명령어와 --security-policy 플래그를 사용합니다.

gcloud compute backend-services update my-backend \
    --security-policy ""

에지 보안 정책을 삭제할 때 gcloud compute backend-services 명령어와 --edge-security-policy 플래그를 사용합니다.

gcloud compute backend-services update my-backend \
    --edge-security-policy ""

백엔드 버킷에 보안 정책 연결

이 섹션의 단계에 따라 Cloud Armor 에지 보안 정책을 백엔드 버킷에 연결합니다. 에지 보안 정책을 여러 백엔드 버킷에 연결할 수 있습니다.

콘솔

  1. Google Cloud 콘솔에서 Cloud Armor 정책 페이지로 이동합니다.

    Cloud Armor 정책으로 이동

  2. 보안 정책 이름을 클릭하여 정책 세부정보 페이지를 엽니다.

  3. 페이지 중간에 있는 대상 탭을 클릭합니다.

  4. 새 대상에 정책 적용을 클릭합니다.

  5. 대상 추가를 클릭합니다.

  6. 대상 목록에서 대상을 선택한 다음 추가를 클릭합니다.

gcloud

백엔드 버킷에 에지 보안 정책을 연결할 때 cloud compute backend-buckets 명령어와 --edge-security-policy 플래그를 사용합니다.

gcloud compute backend-services update my-bucket \
    --edge-security-policy my-edge-policy

백엔드 버킷에서 보안 정책 삭제

이 섹션의 단계에 따라 백엔드 버킷에서 Cloud Armor 에지 보안 정책을 삭제합니다.

콘솔

  1. Google Cloud 콘솔에서 Cloud Armor 정책 페이지로 이동합니다.

    Cloud Armor 정책으로 이동

  2. 보안 정책 이름을 클릭하여 정책 세부정보 페이지를 엽니다.

  3. 페이지 중간에 있는 대상 탭을 클릭합니다.

  4. 정책을 삭제할 대상 백엔드 서비스를 선택합니다.

  5. 삭제를 클릭합니다.

  6. 대상 삭제 메시지에서 삭제를 클릭합니다.

gcloud

백엔드 버킷에서 에지 보안 정책을 삭제할 때 cloud compute backend-buckets 명령어와 --edge-security-policy 플래그를 사용합니다.

gcloud compute backend-services update my-bucket \
    --edge-security-policy ""

보안 정책 가져오기 및 내보내기

다음 섹션에서는 보안 정책을 가져오고 내보내는 방법을 설명합니다.

보안 정책 내보내기

Google Cloud CLI를 사용하여 Cloud Armor 보안 정책을 YAML 또는 JSON 파일로 내보낼 수 있습니다. 이 기능은 다음과 같은 이점이 있습니다.

  • 버전 제어 또는 백업을 위해 사본 저장: 내보내기를 통해 정책의 로컬 사본을 제공합니다. 이 사본을 소스 제어 시스템에 백업으로 저장하거나 변경사항을 추적할 수 있습니다. 필요한 경우 나중에 다시 가져와 이전 버전을 복원할 수 있습니다.

  • 로컬에서 정책 수정 및 업데이트: 텍스트 편집기를 사용하여 내보낸 정책을 오프라인으로 수정합니다. 변경한 후 업데이트된 정책을 다시 가져와 Cloud Armor에 수정사항을 적용합니다.

gcloud

  1. 다음 명령어에서 NAME은 보안 정책의 이름입니다. 유효한 파일 형식은 YAML 및 JSON입니다. 파일 형식을 지정하지 않으면 Cloud Armor는 YAML을 사용합니다.

    gcloud compute security-policies export NAME \
        --file-name FILE_NAME  \
        --file-format FILE_FORMAT
    

    다음 예시에서는 my-policy 보안 정책을 YAML 형식의 my-file 파일로 내보내는 명령어를 보여줍니다.

    gcloud compute security-policies export my-policy \
        --file-name my-file \
        --file-format yaml
     

    다음 예시에서는 내보낸 보안 정책을 보여줍니다.

    description: my description
    fingerprint: PWfLGDWQDLY=
    id: '123'
    name: my-policy
    rules:
    - action: allow
      description: default rule
      match:
          config:
            srcIpRanges:
            - '*'
          versionedExpr: SRC_IPS_V1
        preview: false
        priority: 2147483647
      selfLink: https://www.googleapis.com/compute/v1/projects/my-project/global/securityPolicies/my-policy
      
  2. 텍스트 편집기를 사용하여 내보낸 파일을 수정한 후 import 명령어를 사용하여 파일을 Google Cloud 로 다시 가져옵니다.

보안 정책 가져오기

Google Cloud CLI를 사용하여 YAML 또는 JSON 파일에서 Cloud Armor 보안 정책을 가져옵니다. import 명령어를 사용하여 기존 정책의 규칙을 업데이트할 수 없습니다. 대신 보안 정책의 단일 규칙 업데이트 절차를 사용하여 규칙을 개별적으로 업데이트하거나 보안 정책의 여러 규칙을 원자적으로 업데이트 절차를 사용하여 한 번에 업데이트합니다.

gcloud

보안 정책을 가져오려면 다음 gcloud compute security-policies import NAME 명령어를 사용합니다.

gcloud compute security-policies import NAME \
    --file-name FILE_NAME  \
   [--file-format FILE_FORMAT]

예를 들어 다음 명령어는 my-file 파일을 가져와 my-policy 정책을 업데이트합니다.

gcloud compute security-policies import my-policy \
    --file-name my-file \
    --file-format json

NAME을 보안 정책 이름으로 바꿉니다. 파일 형식을 제공하지 않으면 파일 구조에 따라 올바른 형식이 추정됩니다. 구조가 유효하지 않으면 gcloud CLI가 오류 메시지를 반환합니다.

정책을 가져올 때 정책의 디지털 지문이 오래되면 Cloud Armor에서 오류를 반환합니다. 이는 마지막으로 내보낸 이후에 정책이 수정되었음을 의미합니다. 이 문제를 해결하려면 정책에서 describe 명령어를 사용하여 최신 디지털 지문을 가져옵니다. --format=yaml 또는 --format=json를 describe 명령어와 함께 사용하여 더 쉽게 비교할 수 있습니다. describe 출력의 rules 섹션을 정책 파일의 rules 섹션과 비교하고 차이점을 병합한 후 파일의 오래된 디지털 지문을 describe 출력의 최신 디지털 지문으로 바꿉니다.

다음 단계