자습서: Azure Portal을 사용하여 Azure Firewall과 정책 배포 및 구성

아웃바운드 네트워크 액세스 제어는 전체 네트워크 보안 계획에서 중요한 부분입니다. 예를 들어 웹 사이트에 대한 액세스를 제한할 수 있습니다. 또는 액세스 가능한 아웃바운드 IP 주소 및 포트를 제한할 수 있습니다.

Azure 서브넷에서 아웃바운드 네트워크로의 액세스를 제어하는 한 가지 방법은 Azure Firewall 및 Firewall Policy를 사용하는 것입니다. Azure Firewall 및 Firewall Policy를 사용하여 다음을 구성할 수 있습니다.

  • 서브넷에서 액세스할 수 있는 FQDN(정규화된 도메인 이름)을 정의하는 애플리케이션 규칙.
  • 원본 주소, 프로토콜, 대상 포트 및 대상 주소를 정의하는 네트워크 규칙.

네트워크 트래픽은 서브넷 기본 게이트웨이처럼 방화벽에 네트워크 트래픽을 라우팅할 경우 구성된 방화벽 규칙에 종속됩니다.

이 자습서에서는 배포가 용이하도록 두 개의 서브넷을 사용하여 간소화된 단일 VNet을 만듭니다.

  • AzureFirewallSubnet - 방화벽은 이 서브넷에 있습니다.
  • 워크로드-SN - 워크로드 서버는 이 서브넷에 있습니다. 이 서브넷의 네트워크 트래픽은 방화벽을 통해 이동합니다.

Tutorial network infrastructure

프로덕션 배포의 경우 허브 및 스포크 모델이 권장되며 방화벽은 자체 VNet에 있습니다. 워크로드 서버는 하나 이상의 서브넷이 있는 동일한 지역에서 피어링된 VNet에 있습니다.

이 자습서에서는 다음을 하는 방법을 알아볼 수 있습니다.

  • 테스트 네트워크 환경 설정
  • 방화벽 및 방화벽 정책 배포
  • 기본 경로 만들기
  • www.google.com에 대한 액세스를 허용하도록 애플리케이션 규칙 구성
  • 외부 DNS 서버 액세스를 허용하도록 네트워크 규칙 구성
  • 테스트 서버에 대한 원격 데스크톱을 허용하도록 NAT 규칙 구성
  • 방화벽 테스트

원하는 경우 Azure PowerShell을 사용하여 이 절차를 완료할 수 있습니다.

필수 조건

Azure 구독이 없는 경우 시작하기 전에 체험 계정을 만듭니다.

네트워크 설정

먼저 방화벽 배포에 필요한 리소스를 포함하는 리소스 그룹을 만듭니다. 그런 다음, VNet, 서브넷 및 테스트 서버를 만듭니다.

리소스 그룹 만들기

리소스 그룹에는 자습서의 모든 리소스가 포함되어 있습니다.

  1. Azure Portal에 로그인합니다.

  2. Azure Portal 메뉴에서 리소스 그룹을 선택하거나 어느 페이지에서나 리소스 그룹을 검색하고 선택한 다음, 추가를 선택합니다. 다음 값을 입력하거나 선택합니다.

    설정
    Subscription Azure 구독을 선택합니다.
    Resource group Test-FW-RG를 입력합니다.
    지역 지역을 선택합니다. 만드는 다른 모든 리소스는 동일한 지역에 있어야 합니다.
  3. 검토 + 만들기를 선택합니다.

  4. 만들기를 선택합니다.

VNet 만들기

이 VNet에는 두 개의 서브넷이 있습니다.

참고 항목

AzureFirewallSubnet 서브넷의 크기는 /26입니다. 서브넷 크기에 대한 자세한 내용은 Azure Firewall FAQ를 참조하세요.

  1. Azure Portal 메뉴 또는 페이지에서 리소스 만들기를 선택합니다.

  2. 네트워킹을 선택합니다.

  3. 가상 네트워크를 검색하고 선택합니다.

  4. 만들기를 선택한 후 다음 값을 입력하거나 선택합니다.

    설정
    Subscription Azure 구독을 선택합니다.
    Resource group Test-FW-RG를 선택합니다.
    이름 Test-FW-VN을 입력합니다.
    지역 이전에 사용한 것과 동일한 위치를 선택합니다.
  5. 다음: IP 주소를 선택합니다.

  6. IPv4 주소 공간의 경우 기본값 10.0.0.0/16을 적용합니다.

  7. 서브넷 아래에서 기본값을 선택합니다.

  8. 서브넷 이름의 경우 이름을 AzureFirewallSubnet으로 변경합니다. 방화벽은 이 서브넷에 있고 해당 서브넷 이름은 AzureFirewallSubnet이 되어야 합니다.

  9. 주소 범위10.0.1.0/26을 입력합니다.

  10. 저장을 선택합니다.

    다음으로, 워크로드 서버용 서브넷을 만듭니다.

  11. 서브넷 추가를 선택합니다.

  12. 서브넷 이름워크로드-SN을 입력합니다.

  13. 서브넷 주소 범위에 대해 10.0.2.0/24를 입력합니다.

  14. 추가를 선택합니다.

  15. 검토 + 만들기를 선택합니다.

  16. 만들기를 선택합니다.

가상 머신 만들기

이제 워크로드 가상 머신을 만들어 워크로드-SN 서브넷에 배치합니다.

  1. Azure Portal 메뉴 또는 페이지에서 리소스 만들기를 선택합니다.

  2. Windows Server 2019 Datacenter를 선택합니다.

  3. 가상 머신에 대해 다음 값을 입력하거나 선택합니다.

    설정
    Subscription Azure 구독을 선택합니다.
    Resource group Test-FW-RG를 선택합니다.
    가상 머신 이름 Srv-Work를 입력합니다.
    지역 이전에 사용한 것과 동일한 위치를 선택합니다.
    사용자 이름 사용자 이름을 입력합니다.
    암호 암호를 입력합니다.
  4. 인바운드 포트 규칙, 퍼블릭 인바운드 포트에서 없음을 선택합니다.

  5. 나머지는 기본값으로 두고 다음: 디스크를 선택합니다.

  6. 디스크 기본값을 수락하고 다음: 네트워킹을 선택합니다.

  7. 가상 네트워크에 Test-FW-VN이 선택되고 서브넷이 워크로드-SN인지 확인합니다.

  8. 공용 IP에 대해 없음을 선택합니다.

  9. 나머지는 기본값으로 두고 다음: 관리를 선택합니다.

  10. 사용 안 함을 선택하여 부팅 진단을 비활성화합니다. 나머지는 기본값으로 두고 검토 + 만들기를 선택합니다.

  11. 요약 페이지에서 설정을 검토한 다음, 만들기를 선택합니다.

  12. 배포가 완료되면 Srv-Work 리소스를 선택하고 나중에 사용할 개인 IP 주소를 기록해 둡니다.

방화벽 및 정책 배포

VNet에 방화벽을 배포합니다.

  1. Azure Portal 메뉴 또는 페이지에서 리소스 만들기를 선택합니다.

  2. 검색 상자에 방화벽을 입력하고 Enter 키를 누릅니다.

  3. 방화벽을 선택하고 만들기를 선택합니다.

  4. 방화벽 만들기 페이지에서 다음 표를 사용하여 방화벽을 구성합니다.

    설정
    Subscription Azure 구독을 선택합니다.
    Resource group Test-FW-RG를 선택합니다.
    이름 Test-FW01을 입력합니다.
    지역 이전에 사용한 것과 동일한 위치를 선택합니다.
    방화벽 관리 방화벽 정책을 사용하여 이 방화벽 관리를 선택합니다.
    방화벽 정책 새로 추가를 선택하고 fw-test-pol을 입력합니다.
    이전에 사용한 것과 동일한 지역을 선택합니다.
    가상 네트워크 선택 기존 항목 사용을 선택한 다음, Test-FW-VN을 선택합니다.
    공용 IP 주소 새로 추가를 선택하고 이름fw-pip를 입력합니다.
  5. 다른 기본값을 적용한 다음, 검토 + 만들기를 선택합니다.

  6. 요약을 검토한 다음, 만들기를 선택하여 방화벽을 만듭니다.

    이 설정은 배포하는 데 몇 분 정도 걸립니다.

  7. 배포가 완료되면 Test-FW-RG 리소스 그룹으로 이동하고 Test-FW01 방화벽을 선택합니다.

  8. 방화벽 개인 및 공용 IP 주소를 확인합니다. 나중에 이러한 주소를 사용합니다.

기본 경로 만들기

Workload-SN 서브넷의 경우 방화벽을 통과하도록 아웃바운드 기본 경로를 구성합니다.

  1. Azure Portal 메뉴에서 모든 서비스를 선택하거나 검색하여 어느 페이지에서든 모든 서비스를 선택합니다.

  2. 네트워킹 아래에서 경로 테이블을 선택합니다.

  3. 만들기를 선택한 후 다음 값을 입력하거나 선택합니다.

    설정
    Subscription Azure 구독을 선택합니다.
    Resource group Test-FW-RG를 선택합니다.
    지역 이전에 사용한 것과 동일한 위치를 선택합니다.
    이름 Firewall-route를 입력합니다.
  4. 검토 + 만들기를 선택합니다.

  5. 만들기를 선택합니다.

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

  1. 방화벽 경로 페이지에서 서브넷을 선택한 다음, 연결을 선택합니다.
  2. 가상 네트워크>Test-FW-VN을 선택합니다.
  3. 서브넷에 대해 Workload-SN을 선택합니다. 이 경로에 대해 Workload-SN 서브넷만 선택해야 합니다. 그렇지 않으면 방화벽이 제대로 작동하지 않습니다.
  4. 확인을 선택합니다.
  5. 경로를 선택한 다음, 추가를 선택합니다.
  6. 경로 이름fw-dg를 입력합니다.
  7. 주소 접두사0.0.0.0/0을 입력합니다.
  8. 다음 홉 형식의 경우 가상 어플라이언스를 선택합니다. Azure Firewall은 실제로 관리되는 서비스이지만 가상 어플라이언스는 이 상황에서 작동합니다.
  9. 다음 홉 주소에 이전에 적어 둔 방화벽의 개인 IP 주소를 입력합니다.
  10. 확인을 선택합니다.

애플리케이션 규칙 구성

이는 www.google.com에 대한 아웃바운드 액세스를 허용하는 애플리케이션 규칙입니다.

  1. Test-FW-RG 리소스 그룹을 열고 fw-test-pol 방화벽 정책을 선택합니다.
  2. 애플리케이션 규칙을 선택합니다.
  3. 규칙 컬렉션 추가를 선택합니다.
  4. 이름App-Coll01을 입력합니다.
  5. 우선 순위200을 입력합니다.
  6. 규칙 컬렉션 작업에 대해 허용을 선택합니다.
  7. 규칙 아래에서 이름Allow-Google을 입력합니다.
  8. 원본 유형에 대해 IP 주소를 선택합니다.
  9. 원본10.0.2.0/24를 입력합니다.
  10. Protocol:porthttp, https를 입력합니다.
  11. 대상 유형에 대해 FQDN을 선택합니다.
  12. 대상www.google.com을 입력합니다.
  13. 추가를 선택합니다.

Azure Firewall은 기본적으로 허용되는 인프라 FQDN에 대한 기본 제공 규칙 컬렉션을 포함합니다. 이러한 FQDN은 플랫폼에 대해 특정적이며 다른 용도로 사용할 수 없습니다. 자세한 내용은 인프라 FQDN을 참조하세요.

네트워크 규칙 구성

포트 53(DNS)에서 두 IP 주소에 대한 아웃바운드 액세스를 허용하는 네트워크 규칙입니다.

  1. 네트워크 규칙을 선택합니다.
  2. 규칙 컬렉션 추가를 선택합니다.
  3. 이름Net-Coll01을 입력합니다.
  4. 우선 순위200을 입력합니다.
  5. 규칙 컬렉션 작업에 대해 허용을 선택합니다.
  6. 규칙 컬렉션 그룹에 대해 DefaultNetworkRuleCollectionGroup을 선택합니다.
  7. 규칙 아래에서 이름Allow-DNS를 입력합니다.
  8. 원본 유형에 대해 IP 주소를 선택합니다.
  9. 원본10.0.2.0/24를 입력합니다.
  10. 프로토콜UDP를 선택합니다.
  11. 대상 포트53을 입력합니다.
  12. 대상 유형에 대해 IP 주소를 선택합니다.
  13. 대상209.244.0.3,209.244.0.4를 입력합니다.
    이것들은 CenturyLink에서 작동하는 공용 DNS 서버입니다.
  14. 추가를 선택합니다.

DNAT 규칙 구성

이 규칙을 사용하면 방화벽을 통해 원격 데스크톱을 Srv-Work 가상 머신에 연결할 수 있습니다.

  1. DNAT 규칙을 선택합니다.
  2. 규칙 컬렉션 추가를 선택합니다.
  3. 이름rdp를 입력합니다.
  4. 우선 순위200을 입력합니다.
  5. 규칙 컬렉션 그룹에 대해 DefaultDnatRuleCollectionGroup을 선택합니다.
  6. 규칙 아래에서 이름rdp-nat를 입력합니다.
  7. 원본 유형에 대해 IP 주소를 선택합니다.
  8. 원본*를 입력합니다.
  9. 프로토콜의 경우 TCP를 선택합니다.
  10. 대상 포트에 대해 3389를 입력합니다.
  11. 대상 유형에 대해 IP 주소를 선택합니다.
  12. 대상에 방화벽 공용 IP 주소를 입력합니다.
  13. 변환 주소Srv-work 개인 IP 주소를 입력합니다.
  14. 변역된 포트에 대해 3389를 입력합니다.
  15. 추가를 선택합니다.

Srv-Work 네트워크 인터페이스에 대해 기본 및 보조 DNS 주소 변경

이 자습서에서는 테스트 목적으로 서버의 기본 및 보조 DNS 주소를 구성할 수 있습니다. 일반적인 Azure Firewall 요구 사항이 아닙니다.

  1. Azure Portal 메뉴에서 리소스 그룹을 선택하거나 검색하여 어느 페이지에서든 리소스 그룹을 선택합니다. Test-FW-RG 리소스 그룹을 선택합니다.
  2. Srv-Work 가상 머신에 대해 네트워크 인터페이스를 선택합니다.
  3. 설정 아래에서 DNS 서버를 선택합니다.
  4. DNS 서버 아래에서 사용자 지정을 선택합니다.
  5. DNS 서버 추가 텍스트 상자에 209.244.0.3을 입력하고 다음 텍스트 상자에 209.244.0.4를 입력합니다.
  6. 저장을 선택합니다.
  7. Srv-Work 가상 머신을 다시 시작합니다.

방화벽 테스트

이제 방화벽이 예상대로 작동하는지 테스트합니다.

  1. 원격 데스크톱을 방화벽 공용 IP 주소에 연결하고 Srv-Work 가상 머신에 로그인합니다.

  2. Internet Explorer를 열고 https://www.google.com으로 이동합니다.

  3. Internet Explorer 보안 경고에서 확인>닫기를 선택합니다.

    Google 홈 페이지가 나타납니다.

  4. https://www.microsoft.com 으로 이동합니다.

    방화벽에서 차단해야 합니다.

이제 방화벽 규칙이 작동하는지 확인했습니다.

  • 다른 모든 FQDN이 아닌 허용된 FQDN 하나만 찾아볼 수 있습니다.
  • 구성된 외부 DNS 서버를 사용하여 DNS 이름을 확인할 수 있습니다.

리소스 정리

다음 자습서를 위해 방화벽 리소스를 그대로 두어도 되고, 더 이상 필요하지 않은 경우 Test-FW-RG 리소스 그룹을 삭제하여 모든 방화벽 관련 리소스를 삭제해도 됩니다.

다음 단계