Azure Firewall 설계 및 구현

완료됨

Azure Firewall은 Azure Virtual Network 리소스를 보호하는 관리되는 클라우드 기반 네트워크 보안 서비스입니다. 고가용성 및 무제한 클라우드 확장성이 내장되어 있는 서비스 형태의 완전한 상태 저장 방화벽입니다.

Azure 방화벽 구성 다이어그램.

Azure Firewall 기능

Azure Firewall에는 다음 기능이 포함되어 있습니다.

  • 기본 제공되는 고가용성. 고가용성이 기본 제공되므로 부하 분산 장치가 추가로 필요하지 않으며 아무것도 구성할 필요가 없습니다.

  • 제약 없는 클라우드 스케일링 성능. Azure Firewall은 변화하는 네트워크 트래픽 흐름을 수용하기 위해 필요한 만큼 스케일 아웃이 가능하기 때문에 최대 트래픽에 대한 예산을 마련할 필요가 없습니다.

  • 애플리케이션 FQDN 필터링 규칙. 아웃바운드 HTTP/S 트래픽 또는 Azure SQL 트래픽을 와일드 카드를 포함한 FQDN(정규화된 도메인 이름) 목록으로 제한할 수 있습니다. 이 기능에는 TLS 종료가 필요하지 않습니다.

  • 네트워크 트래픽 필터링 규칙. 원본 및 대상 IP 주소, 포트 및 프로토콜별로 네트워크 필터링 규칙을 중앙에서 만들거나 허용하거나 거부할 수 있습니다. Azure Firewall은 상태를 완전히 저장하기 때문에 다양한 유형의 연결에서 올바른 패킷을 구별할 수 있습니다. 여러 구독 및 가상 네트워크 전반에 규칙이 적용되고 기록됩니다.

  • FQDN 태그. 이러한 태그를 활용하면 방화벽을 통해 잘 알려진 Azure 서비스 네트워크 트래픽을 쉽게 허용할 수 있습니다. 방화벽을 통해 Windows 업데이트 네트워크 트래픽을 허용하려는 경우를 예로 들어 보겠습니다. 이렇게 하려면 애플리케이션 규칙을 만들고 Windows 업데이트 태그를 포함합니다. 그러면 Windows 업데이트의 네트워크 트래픽이 방화벽을 통해 이동할 수 있습니다.

  • 서비스 태그. 서비스 태그는 보안 규칙 생성에 대한 복잡성을 최소화할 수 있는 IP 주소 접두사의 그룹을 나타냅니다. 사용자 고유의 서비스 태그를 직접 만들 수 없거나 태그 내에 포함할 IP 주소를 지정할 수 없습니다. Microsoft는 서비스 태그에 포함된 주소 접두사를 관리하고 주소가 변경되면 서비스 태그를 자동으로 업데이트합니다.

  • 위협 인텔리전스 방화벽에서 위협 인텔리전스 기반 필터링(IDPS)을 사용하면 알려진 악성 IP 주소와 도메인에서 전송/수신되는 트래픽을 거부하고 경고를 보낼 수 있습니다. IP 주소 및 도메인은 Microsoft 위협 인텔리전스 피드에서 제공됩니다.

  • TLS 검사. 이 방화벽은 아웃바운드 트래픽의 암호를 해독하고 데이터를 처리한 후 데이터를 암호화하고 대상으로 보냅니다.

  • 아웃바운드 SNAT 지원. 모든 아웃바운드 가상 네트워크 트래픽 IP 주소는 Azure Firewall 공용 IP (SNAT(Source Network Address Translation))로 변환됩니다. 가상 네트워크에서 발생하는 트래픽을 식별하여 원격 인터넷 대상으로 허용할 수 있습니다.

  • 인바운드 DNAT 지원. 방화벽 공용 IP 주소로의 인바운드 인터넷 네트워크 트래픽이 변환되고(Destination Network Address Translation), 가상 네트워크의 개인 IP 주소로 필터링됩니다.

  • 여러 공용 IP 주소. 여러 공용 IP 주소(최대 250개)를 방화벽과 연결하여 특정 DNAT 및 SNAT 시나리오를 사용하도록 설정할 수 있습니다.

  • Azure Monitor 로깅. 모든 이벤트는 Azure Monitor와 통합되므로 스토리지 계정에 로그를 보관하거나 이벤트를 Event Hubs로 스트리밍하거나 Azure Monitor 로그로 보낼 수 있습니다.

  • 강제 터널링. 모든 인터넷 바인딩된 트래픽을 인터넷으로 직접 이동하는 대신 지정된 다음 홉으로 라우팅하도록 Azure Firewall을 구성할 수 있습니다. 예를 들어 온-프레미스 에지 방화벽이나 기타 NVA(네트워크 가상 어플라이언스)를 통해 인터넷 네트워크 트래픽을 처리할 수 있습니다.

  • 웹 범주. 웹 범주를 사용하면 관리자가 도박 웹 사이트, 소셜 미디어 웹 사이트 등의 웹 사이트 범주에 대한 사용자 액세스를 허용하거나 거부할 수 있습니다. 웹 범주는 Azure Firewall 표준에 포함되어 있지만, Azure Firewall 프리미엄 미리 보기에서 더 세밀하게 조정됩니다. FQDN을 기반으로 범주가 일치하는지 확인하는 표준 SKU의 웹 범주 기능과 달리, 프리미엄 SKU에서는 전체 URL에 따라 HTTP와 HTTPS 트래픽의 범주가 일치하는지 확인합니다.

  • 인증서. Azure Firewall은 PCI(결제 카드 산업), SOC(서비스 조직 컨트롤), ISO(국제 표준화 기구) 및 ICSA Labs 규격을 준수합니다.

Azure Firewall에서 규칙 처리

Azure Firewall에서 NAT 규칙, 네트워크 규칙 및 애플리케이션 규칙을 구성할 수 있습니다. 트래픽을 허용하도록 규칙을 수동으로 구성할 때까지 Azure Firewall은 기본적으로 모든 트래픽을 거부합니다.

클래식 규칙을 사용하여 규칙 처리

클래식 규칙에서는 규칙 유형에 따라 낮은 숫자(100)에서 높은 숫자(65,000)로 우선 순위에 맞게 규칙 컬렉션이 처리됩니다. 규칙 컬렉션 이름에는 문자, 숫자, 밑줄, 마침표 또는 하이픈만 포함할 수 있습니다. 문자나 숫자로 시작하고 문자, 숫자 또는 밑줄로 끝나야 합니다. 최대 이름 길이는 80자입니다. 처음에는 규칙 컬렉션 우선 순위 번호의 간격을 100씩 늘리는 것이 가장 좋습니다. 증분은 필요할 때 규칙 컬렉션을 더 추가할 수 있는 공간을 제공합니다.

방화벽 정책을 통해 규칙 처리

방화벽 정책에서 규칙은 규칙 컬렉션 그룹에 포함된 규칙 컬렉션 내에 구성됩니다. 규칙 컬렉션은 다음 유형 중 하나일 수 있습니다.

  • DNAT(Destination Network Address Translation)
  • 네트워크
  • 애플리케이션

단일 규칙 컬렉션 그룹 내에서 여러 규칙 컬렉션 형식을 정의할 수 있습니다. 규칙 컬렉션에서 0개 이상의 규칙을 정의할 수 있지만, 규칙 컬렉션 내의 규칙은 모두 동일한 형식이어야 합니다.

방화벽 정책에서 규칙은 규칙 컬렉션 그룹 우선 순위 및 규칙 컬렉션 우선 순위에 따라 처리됩니다. 우선 순위는 100(가장 높은 우선 순위)에서 65,000(가장 낮은 우선 순위) 사이의 숫자입니다. 우선 순위가 가장 높은 규칙 컬렉션 그룹이 먼저 처리되고, 규칙 컬렉션 그룹 내에서 우선 순위가 가장 높은 규칙 컬렉션이 먼저 처리됩니다.

규칙 컬렉션 그룹 또는 규칙 컬렉션 우선 순위 및 정책 상속과 상관없이 애플리케이션 규칙은 항상 네트워크 규칙 후에 처리되며, 네트워크 규칙은 항상 DNAT 규칙 후에 처리됩니다.

Azure Firewall 배포 및 구성

Azure Firewall을 배포할 때 다음과 같은 요소를 고려하세요.

  • 방화벽은 구독 및 가상 네트워크 전반에 걸쳐 애플리케이션 및 네트워크 연결 정책을 중앙에서 만들고, 적용하고, 기록할 수 있습니다.
  • 방화벽은 가상 네트워크 리소스에 고정 공용 IP 주소를 사용합니다.
  • 방화벽은 로깅 및 분석을 위해 Azure 모니터와 완전히 통합됩니다.

Azure Firewall을 배포하고 구성하는 주요 단계는 다음과 같습니다.

  1. 리소스 그룹을 만듭니다.
  2. 가상 네트워크 및 서브넷을 만듭니다.
  3. 서브넷에 워크로드 VM을 만듭니다.
  4. 가상 네트워크에 방화벽 및 정책을 배포합니다.
  5. 기본 아웃바운드 경로를 만듭니다.
  6. 애플리케이션 규칙을 구성합니다.
  7. 네트워크 규칙을 구성합니다.
  8. DNAT(대상 NAT) 규칙을 구성합니다.
  9. 방화벽을 테스트합니다.

지식 점검

1.

Azure Firewall이 지원하는 트래픽 방향 필터링은 무엇인가요?

2.

보안 규칙에서 가장 높은 우선 순위 수준은 무엇인가요?