Application Gateway용 Web Application Firewall 정책 만들기

WAF 정책을 수신기와 연결하면 단일 WAF 뒤에 있는 여러 사이트가 다른 정책으로 보호될 수 있습니다. 예를 들어 WAF 뒤에 5개의 사이트가 있는 경우 5개의 개별 WAF 정책(각 수신기에 대해 하나)을 사용하여 다른 4개에 영향을 주지 않고 하나의 사이트에 대한 제외, 사용자 지정 규칙, 관리 규칙 집합을 사용자 지정할 수 있습니다. 단일 정책을 모든 사이트에 적용하려면 정책을 개별 수신기가 아닌 Application Gateway와 연결하여 전역적으로 적용할 수 있습니다. 경로 기반 라우팅 규칙에 정책을 적용할 수도 있습니다.

원하는 만큼 정책을 만들 수 있습니다. 정책을 만든 후에는 적용하려면 Application Gateway에 연결해야 하지만 Application Gateway 및 수신기의 조합과 연결할 수 있습니다.

Application Gateway에 연결된 정책이 있고 다른 정책을 해당 Application Gateway의 수신기에 연결하는 경우 수신기의 정책은 할당된 수신기에만 적용됩니다. Application Gateway 정책은 할당된 특정 정책이 없는 다른 모든 수신기에도 계속 적용됩니다.

참고 항목

방화벽 정책이 WAF에 연결되면 항상 해당 WAF에 연결된 정책이 있어야 합니다. 해당 정책을 덮어쓸 수 있지만 WAF에서 정책을 완전히 분리하는 것은 지원되지 않습니다.

모든 새 Web Application Firewall의 WAF 설정(사용자 지정 규칙, 관리형 규칙 집합 구성, 제외 등)이 WAF 정책 내에 존재합니다. 기존 WAF가 있는 경우 이러한 설정은 WAF 구성에 여전히 존재할 수 있습니다. 새 WAF 정책으로 이동하는 방법에 대한 단계는 이 문서의 뒷부분에 있는 WAF 정책으로 WAF 구성 업그레이드를 참조하세요.

정책 만들기

먼저 Azure Portal을 사용하여 관리형 DRS(기본 규칙 집합)를 사용하여 기본 WAF 정책을 만듭니다.

  1. 포털의 왼쪽 위에서 리소스 만들기를 선택합니다. WAF를 검색하여 Web Application Firewall을 선택한 다음, 만들기를 선택합니다.

  2. WAF 정책 만들기 페이지의 기본 탭에서 다음 정보를 입력하고 나머지 설정은 기본값을 적용합니다.

    설정
    에 대한 정책 지역 WAF(Application Gateway)
    구독 구독 이름 선택
    Resource group 리소스 그룹 선택
    정책 이름 WAF 정책의 고유한 이름을 입력합니다.
  3. 연결 탭에서 다음 설정 연결 추가를 선택한 후, 다음 설정 중 하나를 선택합니다.

    설정
    Application Gateway 애플리케이션 게이트웨이를 선택한 다음, 추가를 선택합니다.
    HTTP 수신기 애플리케이션 게이트웨이를 선택하고 수신기를 선택한 다음, 추가를 선택합니다.
    라우팅 경로 애플리케이션 게이트웨이를 선택하고, 수신기를 선택하고, 라우팅 규칙을 선택한 다음, 추가를 선택합니다.

    참고 항목

    이미 정책이 있는 Application Gateway(또는 수신기)에 정책을 할당하면 원래 정책을 덮어쓰고 새 정책으로 바꿉니다.

  4. 검토 + 생성를 선택한 다음, 생성를 선택합니다.

    WAF policy basics

WAF 규칙 구성(선택 사항)

WAF 정책을 만들 때 기본적으로 검색 모드에 있습니다. 검색 모드에서 WAF는 요청을 차단하지 않습니다. 대신 일치하는 WAF 규칙이 WAF 로그에 기록됩니다. 작동 중인 WAF를 보려면 모드 설정을 방지변경할 수 있습니다. 방지 모드에서 선택한 Microsoft 관리 규칙 집합에 정의된 일치 규칙은 WAF 로그에 차단 및/또는 기록됩니다.

관리 규칙

Azure 관리형 OWASP 규칙은 기본적으로 사용하도록 설정됩니다. 규칙 그룹 내에 있는 개별 규칙을 사용하지 않도록 설정하려면 해당 규칙 그룹 내에서 규칙을 확장하고 규칙 번호 앞의 확인란을 선택한 다음, 위의 탭에서 사용 안 함을 선택합니다.

Managed rules

사용자 지정 규칙

사용자 지정 규칙을 만들려면 사용자 지정 규칙 탭에서 사용자 지정 규칙 추가를 선택합니다. 그러면 사용자 지정 규칙 구성 페이지가 열립니다. 다음 스크린샷에서는 쿼리 문자열에 blockme 텍스트가 포함된 경우 요청을 차단하도록 구성된 예제 사용자 지정 규칙을 보여 줍니다.

Edit custom rule

WAF 구성을 WAF 정책으로 업그레이드

기존 WAF가 있는 경우 포털에서 일부 변경 내용을 발견했을 수 있습니다. 먼저 WAF에서 사용하도록 설정한 정책 종류를 식별해야 합니다. 다음과 같은 세 가지 잠재적 상태가 있습니다.

  1. WAF 정책 없음
  2. 사용자 지정 규칙 전용 정책
  3. WAF 정책

포털에서 WAF를 확인하여 WAF의 상태를 확인할 수 있습니다. WAF 설정이 표시되고 Application Gateway 보기에서 변경할 수 있는 경우 WAF는 상태 1입니다.

WAF configuration

Web Application Firewall을 선택하고 연결된 정책을 표시하는 경우 WAF는 상태 2 또는 상태 3입니다. 정책으로 이동한 후 사용자 지정 규칙 및 연결된 Application Gateway만 표시되면 사용자 지정 규칙 전용 정책입니다.

WAF custom rules

정책 설정 및 관리되는 규칙도 표시되면 전체 웹 애플리케이션 방화벽 정책입니다.

WAF policy settings

WAF 정책으로 업그레이드

사용자 지정 규칙만 WAF 정책인 경우 새 WAF 정책으로 이동할 수 있습니다. 앞으로 방화벽 정책은 WAF 정책 설정, 관리되는 규칙 집합, 제외 및 비활성화된 규칙 그룹을 지원합니다. 기본적으로 Application Gateway 내에서 이전에 수행된 모든 WAF 구성은 이제 WAF 정책을 통해 수행됩니다.

사용자 지정 규칙에 대한 편집은 WAF 정책만 사용할 수 없습니다. 규칙 사용 안 함, 제외 추가 등과 같은 WAF 설정을 편집하려면 새 최상위 방화벽 정책 리소스로 업그레이드해야 합니다.

이렇게 하려면 웹 애플리케이션 방화벽 정책을 만들고 선택한 Application Gateway 및 수신기에 연결합니다. 이 새 정책은 현재 WAF 구성의 경우와 동일해야 합니다. 즉, 모든 사용자 지정 규칙, 제외, 사용하지 않는 규칙 등은 사용자가 만드는 새 정책에 복사해야 합니다. Application Gateway와 연결된 정책이 있으면 WAF 규칙 및 설정을 계속 변경할 수 있습니다. Azure PowerShell을 사용하여 이 작업을 수행할 수도 있습니다. 자세한 내용은 기존 Application Gateway에 WAF 정책 연결을 참조하세요.

필요에 따라 마이그레이션 스크립트를 사용하여 WAF 정책으로 업그레이드할 수 있습니다. 자세한 내용은 Azure PowerShell을 사용하여 웹 애플리케이션 방화벽 정책 업그레이드를 참조하세요.

강제 모드

모든 항목을 현재 구성과 정확히 동일한 정책으로 복사하지 않으려면 WAF를 "강제" 모드로 설정할 수 있습니다. 다음 Azure PowerShell 코드를 실행하여 WAF를 강제 모드로 전환합니다. 그런 다음 구성과 정확히 동일한 설정이 없더라도 WAF 정책을 WAF에 연결할 수 있습니다.

$appgw = Get-AzApplicationGateway -Name <your Application Gateway name> -ResourceGroupName <your Resource Group name>
$appgw.ForceFirewallPolicyAssociation = $true

그런 다음, 애플리케이션 게이트웨이에 WAF 정책을 연결하는 단계를 진행합니다. 자세한 내용은 기존 Application Gateway에 WAF 정책 연결을 참조하세요.

다음 단계

웹 애플리케이션 방화벽 CRS 규칙 그룹 및 규칙에 대해 자세히 알아봅니다.