인그레스 및 이그레스 트래픽 제어

이 페이지에서는 VPN 터널의 인그레스 및 이그레스 트래픽을 구성하는 방법을 설명합니다.

프로젝트별로 VPN 터널의 이그레스 및 인그레스 트래픽을 제어합니다.

  • 기본적으로 모든 프로젝트는 VPN 터널에서 수신되는 트래픽을 거부합니다.
  • 기본적으로 데이터 유출 방지가 사용 설정된 프로젝트는 VPN 터널로의 아웃바운드 트래픽을 거부합니다.

다음 안내에 따라 프로젝트의 기본 VPN 트래픽 송신 및 수신 규칙을 변경하세요.

시작하기 전에

VPN 터널의 수신 및 송신 트래픽을 구성하려면 다음이 필요합니다.

  • 기존 VPN 터널입니다. 자세한 내용은 VPN 터널 만들기를 참고하세요.
  • 필요한 ID 및 액세스 역할:

    • VPN 관리자: 모든 VPN 관련 리소스에 대한 읽기 및 쓰기 권한이 있습니다. 조직 IAM 관리자에게 VPN 관리자 (vpn-admin) 역할을 부여해 달라고 요청하세요.
    • VPN 뷰어: 모든 VPN 관련 리소스에 대한 읽기 권한이 있습니다. 조직 IAM 관리자에게 VPN 뷰어 (vpn-viewer) 역할을 부여해 달라고 요청하세요.
    • 프로젝트 NetworkPolicy 관리자: 프로젝트 네임스페이스에서 프로젝트 네트워크 정책을 관리합니다. 조직 IAM 관리자에게 프로젝트 NetworkPolicy 관리자 (project-networkpolicy-admin) 역할을 부여해 달라고 요청합니다.
    • 자세한 내용은 역할 정의를 참고하세요.

인그레스 트래픽 구성

기본적으로 모든 프로젝트는 VPN 터널에서 수신되는 트래픽을 거부합니다. 프로젝트에서 VPN 터널의 트래픽을 허용하도록 하려면 VPN 터널에서 사용되는 경계 게이트웨이 프로토콜 (BGP) 세션을 통해 수신된 경로를 타겟팅하는 ProjectNetworkPolicy 객체를 사용하세요.

프로젝트에서 VPN 터널의 트래픽을 허용하도록 설정하려면 다음 단계를 따르세요.

  1. VPNBGPPeer 상태에서 수신된 모든 경로를 가져옵니다.

    kubectl --kubeconfig MANAGEMENT_API_SERVER get -n platform vpnbgppeer VPN_BGP_PEER_NAME -ojson | jq '.status.received'
    

    다음을 바꿉니다.

    • MANAGEMENT_API_SERVER: 영역 API 서버의 kubeconfig 경로입니다. 타겟 영역의 API 서버에 대한 kubeconfig 파일을 아직 생성하지 않은 경우 로그인을 참고하세요.
    • VPN_BGP_PEER_NAME: VPN BGP 세션의 이름입니다.

    자세한 내용은 VPN BGP 세션 만들기를 참고하세요.

    출력은 다음 예시와 같이 표시됩니다.

    [
      {
        "prefix": "192.168.100.0/24"
      },
      {
        "prefix": "192.168.101.0/24"
      }
    ]
    
  2. VPNBGPPeer 상태에서 수신된 모든 경로를 프로젝트의 네임스페이스에 있는 ProjectNetworkPolicy 객체에 추가합니다.

    kubectl --kubeconfig GLOBAL_API_SERVER create -n PROJECT_NAME -f - <<EOF
    apiVersion: networking.global.gdc.goog/v1
    kind: ProjectNetworkPolicy
    metadata:
      name: allow-ingress-vpn-traffic
    spec:
      policyType: Ingress
      subject:
        subjectType: UserWorkload
      ingress:
      - from:
        - ipBlocks:
          - cidr: 192.168.100.0/24
          - cidr: 192.168.101.0/24
    EOF
    

    다음을 바꿉니다.

    • GLOBAL_API_SERVER: 전역 API 서버의 kubeconfig 경로입니다. 자세한 내용은 글로벌 API 서버 리소스를 참고하세요.
    • PROJECT_NAME: GDC 프로젝트의 이름입니다.

이그레스 트래픽 구성

기본적으로 데이터 유출 방지가 사용 설정된 프로젝트는 VPN으로 트래픽 전송을 거부합니다.

프로젝트의 데이터 무단 반출 보호를 사용 중지하여 프로젝트가 VPN 터널로 트래픽을 전송하도록 허용할 수 있습니다. 자세한 내용은 데이터 무단 반출 방지를 참고하세요.

다음 단계