연습 - Azure Firewall을 통해 네트워크 트래픽 라우팅

완료됨

이전 연습에서 Azure Firewall을 배포했습니다. 이제 방화벽을 통해 모든 네트워크 트래픽을 라우팅하고, 방화벽 규칙을 사용하여 트래픽을 필터링해야 합니다. 완료되면 Azure Firewall에서 Azure Virtual Desktop에 대한 아웃바운드 네트워크 트래픽을 보호합니다.

방화벽을 통해 모든 트래픽 라우팅

호스트 풀에서 사용하는 서브넷의 경우 방화벽을 통과하도록 아웃바운드 기본 경로를 구성합니다. 다음 세 단계를 완료합니다.

  1. 경로 테이블을 호스트 풀 VM 및 방화벽과 동일한 리소스 그룹에 만듭니다.
  2. 경로 테이블을 호스트 풀 VM에서 사용하는 서브넷에 연결합니다.
  3. 경로 테이블에서 방화벽에 대한 경로를 추가합니다.

이러한 단계를 완료하면 모든 트래픽이 Azure Firewall로 라우팅됩니다.

경로 테이블 만들기

먼저 firewall-route라는 경로 테이블을 만듭니다.

  1. Azure Portal에서 경로 테이블을 검색하여 선택합니다.

  2. + 만들기를 선택합니다.

  3. 다음 값을 사용합니다.

    필드
    구독 구독
    Resource group learn-firewall-rg
    지역 이전에 사용한 것과 동일한 위치를 선택합니다.
    Name firewall-route

    Screenshot that shows the information to include when creating a route table.

  4. 검토 + 만들기>만들기를 차례로 선택합니다.

  5. 배포가 완료되면 리소스로 이동을 선택합니다.

경로 테이블을 워크로드의 서브넷에 연결

이제 firewall-route를 호스트 풀의 서브넷에 연결합니다.

  1. firewall-route설정 아래에서 서브넷을 선택합니다. Screenshot that shows the subnet option under settings for the firewall route.

  2. + 연결을 선택합니다.

  3. 다음 값을 선택합니다.

    필드
    가상 네트워크 hostVNet
    서브넷 hostSubnet
  4. 확인을 선택하고 연결이 추가될 때까지 기다립니다.

경로 테이블에 경로 추가

마지막 단계는 경로 테이블에서 Azure Firewall에 대한 경로를 추가하는 것입니다. 이 단계를 완료하면 호스트 풀 가상 네트워크의 모든 네트워크 트래픽이 Azure Firewall을 통해 라우팅됩니다.

  1. 설정 아래에서 경로를 선택합니다.

    Screenshot that shows the routes option under settings on the firewall route table.

  2. + 추가를 선택합니다.

  3. 다음 값을 입력합니다.

    필드
    경로 이름 fw-rt
    대상 형식 IP 주소
    대상 IP 주소/CIDR 범위 0.0.0.0/0
    다음 홉 유형 가상 어플라이언스
    다음 홉 주소 이전 연습 단원의 방화벽 개인 IP 주소를 붙여넣습니다. 방화벽 프라이빗 IP로 나열된 방화벽 페이지에서 찾을 수 있습니다.

    Screenshot that shows the information to include when adding a route.

  4. 추가를 선택합니다.

애플리케이션 규칙 컬렉션 만들기

기본적으로 방화벽은 모든 항목에 대한 액세스를 거부하므로 방화벽을 통해 트래픽이 허용되는 조건을 구성해야 합니다.

Azure Virtual Desktop에서 여러 FQDN(정규화된 도메인 이름)에 액세스할 수 있도록 허용하는 규칙을 사용하여 애플리케이션 규칙 컬렉션을 만듭니다.

  1. Azure Portal에서 방화벽을 검색하여 선택합니다.

  2. learn-fw 방화벽을 선택합니다.

  3. 설정아래에서 규칙(클래식)을 선택합니다. Screenshot that shows the rules classic option under settings in the firewall.

  4. 애플리케이션 규칙 컬렉션 탭을 선택하고, 애플리케이션 규칙 컬렉션 추가를 선택합니다. Screenshot that shows the application rule collection tab with the add application rule collection option.

  5. 다음 정보를 입력합니다.

    필드
    속성 app-coll01
    우선 순위 200
    작업 허용
  6. 규칙 아래의 FQDN 태그 섹션에서 다음 정보를 입력합니다.

    필드
    Name allow-virtual-desktop
    소스 형식 IP 주소
    원본 hostVNet에 대한 주소 공간(예: 10.0.0.0/16)
    FQDN 태그 Windows Virtual Desktop
  7. 규칙 아래의 대상 FQDN 섹션에서 다음 정보를 입력합니다.

    필드
    Name allow-storage-service-bus-accounts
    소스 형식 IP 주소
    원본 hostVNet에 대한 주소 공간(예: 10.0.0.0/16)
    프로토콜:포트 https
    대상 FQDN *xt.blob.core.windows.net, , *eh.servicebus.windows.net*xt.table.core.windows.net
  8. 완료되면 이 양식은 다음 이미지와 같습니다. Screenshot that shows the application rule collection form filled out.

  9. 추가를 선택합니다.

네트워크 규칙 컬렉션 만들기

시나리오에서 Microsoft Entra Domain Services(Microsoft Entra Domain Services)를 사용하므로 DNS를 허용하기 위한 네트워크 규칙을 만들 필요가 없다고 가정해 보겠습니다. 그러나 Azure Virtual Desktop VM에서 Windows 활성화 서비스로의 트래픽을 허용하는 규칙을 만들어야 합니다. KMS(키 관리 서비스)를 허용하는 네트워크 규칙의 경우 Azure 글로벌 클라우드에 대한 KMS 서버의 대상 IP 주소를 사용합니다.

  1. learn-fw>규칙(클래식)에서 네트워크 규칙 컬렉션을 선택합니다.

  2. 네트워크 규칙 컬렉션 탭을 선택한 다음, 네트워크 규칙 컬렉션 추가를 선택합니다. Screenshot that shows the network rule collection tab with the add network rule collection option.

  3. 다음 정보를 입력합니다.

    필드
    속성 net-coll01
    우선 순위 200
    작업 허용
  4. 규칙 아래의 IP 주소 섹션에서 다음 정보를 입력합니다.

    필드
    Name allow-kms
    프로토콜 TCP
    소스 형식 IP 주소
    원본 hostVNet에 대한 주소 공간(예: 10.0.0.0/16)
    대상 형식 IP 주소
    대상 주소 23.102.135.246
    대상 포트 1688
  5. 완료되면 이 양식은 다음 이미지와 같습니다. Screenshot that shows the network rule collection form filled out.

  6. 추가를 선택합니다.

작업 확인

이 시점에서 방화벽을 통해 Azure Virtual Desktop에 대한 모든 네트워크 트래픽을 라우팅했습니다. 방화벽이 예상대로 작동하는지 확인해 보겠습니다. 호스트 풀에 대한 아웃바운드 네트워크 트래픽은 방화벽을 통해 Azure Virtual Desktop 서비스로 필터링되어야 합니다. 서비스 구성 요소의 상태를 확인하여 방화벽에서 서비스로의 트래픽을 허용하는지 확인할 수 있습니다.

  1. Azure Cloud Shell에서 다음 명령을 실행합니다.

    "rdgateway", "rdbroker","rdweb"|% `
    {Invoke-RestMethod -Method:Get `
    -Uri https://$_.wvd.microsoft.com/api/health}|ft `
    -Property Health,TimeStamp,ClusterUrl
    
  2. 세 가지 구성 요소 서비스가 모두 정상으로 나열되는 다음과 같은 결과가 표시됩니다.

    Health               TimeStamp           ClusterUrl
    ------               ---------           ----------
    RDGateway is Healthy 7/2/2021 6:00:00 PM https://rdgateway-c101-cac-r1.wvd.microsoft.com/
    RDBroker is Healthy  7/2/2021 6:00:00 PM https://rdbroker-c100-cac-r1.wvd.microsoft.com/
    RDWeb is Healthy     7/2/2021 6:00:00 PM https://rdweb-c100-cac-r1.wvd.microsoft.com/
    

    하나 이상의 구성 요소가 정상이 아닌 경우 방화벽이 예상대로 작동하지 않는 것입니다.