이 페이지에서는 인프라 운영자 (IO)가 조직의 트래픽을 관리하고 고객 워크로드 트래픽에 침입 감지 및 방지 시스템 (IDPS)을 사용 설정하기 위해 보안 정책 규칙을 만들고 구성하는 방법을 설명합니다. 방화벽 API를 통해 SecurityPolicyRule 커스텀 리소스를 사용하여 보안 정책 규칙을 구성할 수 있습니다.
시작하기 전에
계속하기 전에 다음 사항을 확인하세요.
kustomization.yaml파일이 있는iac저장소- 보안 정책 규칙이 포함된 파일을 저장하는
security-policy-rule폴더
모든 주소에서 조직에 액세스하도록 허용
보안 정책 규칙을 만드는 방법에는 두 가지가 있습니다.
IP 주소 범위 또는 IP 주소 마스크로 보안 정책 규칙 만들기
AddressGroup리소스의 YAML 파일을 만듭니다.AddressGroup에는SecurityPolicyRule에서 사용할 수 있는 IP 주소 범위 또는 IP 주소 마스크가 포함됩니다.다음 콘텐츠를 추가하여
AddressGroup커스텀 리소스를 만듭니다.apiVersion: firewall.private.gdc.goog/v1alpha2 kind: AddressGroup metadata: labels: firewall.private.gdc.goog/type: idps name: SOURCE_AG_OBJECT_NAME namespace: NAMESPACE spec: addressGroupName: SOURCE_ADDRESS_GROUP firewallVirtualSystemRef: name: FIREWALL_VIRTUAL_SYSTEM_NAME members: - name: SOURCE_MEMBER_NAME type: SOURCE_MEMBER_TYPE value: SOURCE_MEMBER_VALUE --- apiVersion: firewall.private.gdc.goog/v1alpha2 kind: AddressGroup metadata: labels: firewall.private.gdc.goog/type: idps name: DESTINATION_AG_OBJECT_NAME namespace: NAMESPACE spec: addressGroupName: DESTINATION_ADDRESS_GROUP firewallVirtualSystemRef: name: FIREWALL_VIRTUAL_SYSTEM_NAME members: - name: DESTINATION_MEMBER_NAME type: DESTINATION_MEMBER_TYPE value: DESTINATION_MEMBER_VALUEsecurity-policy-rule폴더에 주소 그룹을 저장합니다.다음 내용을 추가하여
SecurityPolicyRule맞춤 리소스를 만듭니다.apiVersion: firewall.private.gdc.goog/v1alpha2 kind: SecurityPolicyRule metadata: labels: firewall.private.gdc.goog/policy-type: idps name: RULE_NAME namespace: NAMESPACE spec: firewallVirtualSystemRef: name: FIREWALL_VIRTUAL_SYSTEM_NAME priority: PRIORITY source: zones: - SOURCE_ZONE addresses: - SOURCE_ADDRESS_GROUP destination: zones: - DESTINATION_ZONE addresses: - DESTINATION_ADDRESS_GROUP action: ACTION service: option: OPTION ports: - protocol: PROTOCOL ports: "PORT" profile: type: PROFILE_TYPE다음 변수를 바꿉니다.
변수 설명 SOURCE_AG_OBJECT_NAME 주소 그룹 객체의 이름입니다. 예를 들면 vsys2-org-1-org-infra-group입니다.NAMESPACE 네임스페이스는 조직 이름과 일치해야 합니다. 예를 들면 org-1입니다.SOURCE_ADDRESS_GROUP 소스 IP 주소가 포함된 주소 그룹의 이름입니다. 예를 들면 org-infra-group입니다.FIREWALL_VIRTUAL_SYSTEM_NAME 조직과 연결된 방화벽 가상 시스템의 이름입니다. 예를 들면 vsys2-org-1입니다.kubectl get firewallvirtualsystems -A를 사용하여 모든 vsys 이름을 나열합니다.SOURCE_MEMBER_NAME 주소 그룹의 구성원 이름입니다. 예를 들면 org-infra-group-0입니다. 구성원은 여러 명일 수 있으며 각 구성원에게는 고유한 이름이 있습니다.SOURCE_MEMBER_TYPE 주소 그룹의 회원 유형입니다. 사용 가능한 값은 IPRange,IPNetmask입니다.SOURCE_MEMBER_VALUE 구성원의 IP 주소입니다. 예를 들어 회원 유형이 IPNetmask이면 값은169.254.0.0/21일 수 있습니다. 구성원 유형이IPrange이면 값은192.168.1.1-192.168.1.10일 수 있습니다.DESTINATION_AG_OBJECT_NAME 주소 그룹 객체의 이름입니다. 예를 들면 vsys2-org-1-org-data-external-all-group입니다.DESTINATION_ADDRESS_GROUP 소스 IP 주소가 포함된 주소 그룹의 이름입니다. 예를 들면 org-data-external-all-group입니다.DESTINATION_MEMBER_NAME 주소 그룹의 구성원 이름입니다. 예를 들면 org-data-external-all-group-0입니다. 구성원은 여러 명일 수 있으며 각 구성원에게는 고유한 이름이 있습니다.DESTINATION_MEMBER_TYPE 주소 그룹의 회원 유형입니다. 사용 가능한 값은 IPRange,IPNetmask입니다.DESTINATION_MEMBER_VALUE 구성원의 IP 주소입니다. 예를 들어 회원 유형이 IPNetmask이면 값은169.254.0.0/21일 수 있습니다. 구성원 유형이IPrange이면 값은192.168.1.1-192.168.1.10일 수 있습니다.RULE_NAME 규칙의 이름 예를 들면 allow-ingress-org-1입니다.PRIORITY 우선순위 수준을 정의하는 1000~60000사이의 정수입니다. 가장 높은 우선순위는1000이고 가장 낮은 우선순위는60000입니다. 이 예에서는 가장 높은 우선순위 수준인1000를 사용합니다.SOURCE_ZONE 트래픽의 소스인 방화벽 영역입니다. 예를 들면 vsys2-oc입니다.DESTINATION_ZONE 트래픽의 대상인 방화벽 영역입니다. 예를 들면 vsys2-gpc입니다.ACTION 트래픽을 허용할지 거부할지를 정의하는 작업입니다. 예를 들어 allow작업을 사용합니다.OPTION 서비스를 설정하는 옵션입니다. 서비스를 설정하는 선택적 값은 다음과 같습니다. any: 모든 포트 사용을 정의합니다.application-default: 애플리케이션의 표준 포트입니다.selected: 선택한 프로토콜 및 포트입니다.
PROTOCOL 정의한 네트워크 프로토콜입니다. 예를 들어 TCP또는UDP과 같은 프로토콜PORT 포트 번호입니다. 예를 들면 1234입니다.PROFILE_TYPE 프로필 유형입니다(예: none,group,profiles).보안 정책 규칙을
security-policy-rule폴더에 저장합니다.iac저장소로 이동하여 보안 정책 규칙을main브랜치에 커밋합니다.ls IAC_REPO_PATH/iac/infrastructure/global/orgs/root/kustomization.yaml파일이 없으면 IAC로 조직 만들기의 8~12단계를 따르세요.
런북 FW-G0003의 3단계 방화벽 전체 구성 교체 트리거에 따라 방화벽 구성 교체를 처리합니다.
특정 IP 주소로 보안 정책 규칙 만들기
SecurityPolicyRule리소스의 YAML 파일을 만듭니다.다음 콘텐츠를 추가하여
SecurityPolicyRule커스텀 리소스를 만듭니다.apiVersion: firewall.private.gdc.goog/v1alpha2 kind: SecurityPolicyRule metadata: labels: firewall.private.gdc.goog/policy-type: idps name: RULE_NAME namespace: NAMESPACE spec: firewallVirtualSystemRef: name: FIREWALL_VIRTUAL_SYSTEM_NAME priority: PRIORITY source: zones: - SOURCE_ZONE addresses: - SOURCE_IP_ADDRESS destination: zones: - DESTINATION_ZONE addresses: - DESTINATION_IP_ADDRESS action: ACTION service: option: OPTION ports: - protocol: PROTOCOL ports: "PORT" profile: type: PROFILE_TYPE다음 변수를 바꿉니다.
변수 설명 RULE_NAME 규칙의 이름 예를 들면 allow-ingress-org-1입니다.NAMESPACE 네임스페이스는 조직 이름과 일치해야 합니다. 예를 들면 org-1입니다.FIREWALL_VIRTUAL_SYSTEM_NAME 방화벽의 이름입니다. 예를 들면 vsys2-org1입니다.PRIORITY 우선순위 수준을 정의하는 1000~60000사이의 정수입니다. 가장 높은 우선순위는1000이고 가장 낮은 우선순위는60000입니다. 예를 들어 규칙에 가장 높은 우선순위 수준이 필요한 경우1000를 사용합니다.SOURCE_ZONE 트래픽의 소스인 방화벽 영역입니다. 예를 들면 vsys2-oc입니다.SOURCE_IP_ADDRESS 트래픽을 허용할 IP 주소입니다. IP 주소 형식은 단일 IP 주소 10.250.10.1, 클래스 없는 도메인 간 라우팅 (CIDR)10.250.10.0/27, IP 주소 범위10.250.10.1-10.250.10.8또는any일 수 있습니다.
예를 들어172.21.0.0/20은172.21.0.0/20CIDR 내의 모든 소스 IP 주소가 이 규칙과 일치함을 나타냅니다.DESTINATION_ZONE 트래픽의 대상인 방화벽 영역입니다. 예를 들면 vsys2-gpc입니다.DESTINATION_IP_ADDRESS 트래픽을 허용할 IP 주소입니다. IP 주소 형식은 단일 IP 주소 10.250.10.1, 클래스 없는 도메인 간 라우팅 (CIDR)10.250.10.0/27, IP 주소 범위10.250.10.1-10.250.10.8또는any일 수 있습니다.
예를 들어 값any은 모든 대상 IP 주소가 규칙과 일치함을 나타냅니다.ACTION 트래픽을 allow할지deny할지를 정의하는 작업입니다. 예를 들어allow는 트래픽을 허용합니다.OPTION 서비스를 설정하는 옵션입니다. 서비스를 설정하는 선택적 값은 다음과 같습니다. 자세한 내용은 API 참조를 확인하세요.any: 모든 포트 사용을 정의합니다.application-default: 애플리케이션의 표준 포트입니다.selected: 선택한 프로토콜 및 포트입니다.
PROTOCOL 정의한 네트워크 프로토콜입니다. 예를 들어 전송 제어 프로토콜의 경우 TCP입니다.PORT 포트 번호입니다. 예를 들면 443입니다.PROFILE_TYPE 프로필 유형입니다(예: none,group,profiles). 예를 들어 프로필 유형none를 사용하면 IDPS가 적용되지 않습니다.보안 정책 규칙을
security-policy-rule폴더에 저장합니다.iac저장소로 이동하여 보안 정책 규칙을main브랜치에 커밋합니다.ls IAC_REPO_PATH/iac/infrastructure/global/orgs/root/kustomization.yaml파일이 없으면 IAC로 조직 만들기의 8~12단계를 따르세요.
런북 FW-G0003의 3단계 방화벽 전체 구성 교체 트리거에 따라 방화벽 구성 교체를 처리합니다.