다음을 통해 공유


Azure PaaS Services를 사용하여 스포크 가상 네트워크에 제로 트러스트 원칙 적용

이 문서에서는 다음과 같은 방법으로 Azure VNet(가상 네트워크) 및 프라이빗 엔드포인트를 사용하여 PaaS 워크로드에 제로 트러스트 보안 모델의 원칙을 적용하는 데 도움이 됩니다.

제로 트러스트 원칙 정의 Met by
명시적으로 확인 항상 사용 가능한 모든 데이터 포인트를 기반으로 인증하고 권한을 부여합니다. Azure Firewall 및 Azure 애플리케이션 Gateway에서 위협 탐지를 사용하여 트래픽의 유효성을 검사하고 트래픽이 허용되는지 확인합니다.
최소 권한 액세스 사용 JIT/JEA(Just-In-Time and Just-Enough-Access), 위험 기반 적응 정책 및 데이터 보호를 사용하여 사용자 액세스를 제한합니다. Azure 서비스에서 프라이빗 네트워킹으로의 수신 및 송신을 줄입니다. 네트워크 보안 그룹을 사용하여 VNet에서 특정 수신만 허용합니다. 중앙 Azure Firewall 인스턴스를 사용하여 비 VNet 트래픽 액세스 권한을 Azure 서비스에 부여합니다.
위반 가정 미치는 영향 및 세그먼트 액세스를 최소화합니다. 엔드투엔드 암호화를 확인하고, 분석을 사용하여 가시성을 확보하고, 위협 탐지를 추진하고, 방어를 향상시킵니다. 리소스 간의 불필요한 통신을 제한합니다. 네트워크 보안 그룹에서 로깅하고 비정상적인 트래픽에 대한 적절한 가시성이 있는지 확인합니다. 네트워크 보안 그룹의 변경 내용을 추적합니다.

Azure IaaS 환경에서 제로 트러스트 원칙을 적용하는 방법에 대한 자세한 내용은 Azure IaaS에 제로 트러스트 원칙 적용 개요를 참조하세요.

Azure PaaS 서비스에 대한 독립 실행형 또는 스포크 네트워크 제로 트러스트

많은 PaaS 서비스에는 자체 서비스 네이티브 수신 및 송신 제어 기능이 포함되어 있습니다. 이러한 컨트롤을 사용하여 VNet과 같은 인프라 없이 PaaS 서비스 리소스에 대한 네트워크 액세스를 보호할 수 있습니다. 예시:

  • Azure SQL Database에는 데이터베이스 서버에 액세스해야 하는 특정 클라이언트 IP 주소를 허용하는 데 사용할 수 있는 자체 방화벽이 있습니다.
  • Azure Storage 계정에는 특정 VNet의 연결을 허용하거나 공용 네트워크 액세스를 차단하는 구성 옵션이 있습니다.
  • Azure 앱 Service는 앱에 대한 네트워크 액세스를 제어하는 우선 순위가 지정된 허용/거부 목록을 정의하는 액세스 제한을 지원합니다.

그러나 제로 트러스트 구현의 경우 이러한 서비스 네이티브 액세스 제어가 충분하지 않는 경우가 많습니다. 이렇게 하면 관리 및 가시성을 줄일 수 있는 액세스 제어 및 로깅의 확산이 만들어집니다.

또한 PaaS 서비스는 서비스 유형에 대해 특정 지역의 공용 IP 주소 풀에서 할당된 동적으로 할당된 공용 IP 주소로 확인되는 FQDN(정규화된 도메인 이름)을 사용할 수 있습니다. 이 때문에 변경할 수 있는 공용 IP 주소를 사용하여 특정 PaaS 서비스로의 트래픽을 허용할 수 없습니다.

프라이빗 엔드포인트를 사용하는 것이 좋습니다. 프라이빗 엔드포인트는 VNet의 개인 IP 주소를 사용하는 VNet 인터페이스입니다. 프라이빗 엔드포인트는 Azure Private Link에서 제공하는 서비스에 비공개로 안전하게 연결합니다. 프라이빗 엔드포인트를 사용하도록 설정하면 서비스를 VNet으로 가져옵니다.

솔루션 시나리오에 따라 PaaS 서비스에 대한 퍼블릭 인바운드 액세스가 여전히 필요할 수 있습니다. 그러나 사용자가 하지 않는 한 잠재적인 보안 위험을 제거하기 위해 모든 트래픽을 비공개로 유지하는 것이 좋습니다.

이 가이드에서는 특정 참조 아키텍처에 대한 지침을 제공하지만 필요에 따라 원칙과 메서드를 다른 아키텍처에 적용할 수 있습니다.

참조 아키텍처

다음 다이어그램에서는 PaaS 기반 워크로드에 대한 일반적인 참조 아키텍처를 보여 줍니다.

PaaS 기반 워크로드에 대한 참조 아키텍처의 다이어그램.

이 다이어그램에서

  • 스포크 VNet에는 PaaS 애플리케이션을 지원하는 구성 요소가 포함되어 있습니다.
  • PaaS 애플리케이션은 웹앱/프런트 엔드용 Azure 애플리케이션 Services와 관계형 데이터베이스용 Azure SQL Database를 활용하는 2계층 애플리케이션입니다.
  • 각 계층은 전용 네트워크 보안 그룹을 사용하여 수신하기 위해 전용 서브넷 내에 포함됩니다.
  • 웹 계층에는 송신을 위한 전용 서브넷이 포함되어 있습니다.
  • 애플리케이션에 대한 액세스는 자체 서브넷에 포함된 Application Gateway를 통해 제공됩니다.

다음 다이어그램은 Azure 구독 내에서 이러한 구성 요소의 논리적 아키텍처를 보여 줍니다.

Azure 구독 내의 구성 요소 다이어그램

다이어그램에서 스포크 VNet의 모든 구성 요소는 전용 리소스 그룹에 포함됩니다.

  • 하나의 VNet
  • WAF(웹 애플리케이션 방화벽)를 포함한 하나의 Azure 애플리케이션 게이트웨이(App GW)
  • 데이터베이스, 애플리케이션 및 프런트 엔드 계층에 대한 세 개의 네트워크 보안 그룹(다이어그램에 "NSG"로 명명됨)
  • 두 애플리케이션 보안 그룹(다이어그램에서 "ASG"로 명명됨)
  • 두 개의 프라이빗 엔드포인트

또한 허브 VNet에 대한 리소스는 적절한 연결 구독에 배포됩니다.

이 문서의 내용

제로 트러스트 원칙은 테넌트 및 디렉터리 수준에서부터 VM을 애플리케이션 보안 그룹에 할당하는 것까지 아키텍처 전체에 적용됩니다. 다음 표에서는 이 아키텍처를 보호하기 위한 권장 사항을 설명합니다.

단계 작업
1 Microsoft Entra RBAC를 활용하거나 네트워킹 리소스에 대한 사용자 지정 역할을 설정합니다.
2 인프라를 자체 리소스 그룹으로 격리합니다.
3 각 서브넷에 대한 네트워크 보안 그룹을 만듭니다.
4 VNet 내에서 트래픽 및 리소스를 보호합니다.
  • 네트워크 보안 그룹에 대한 기준 거부 규칙을 배포합니다.
  • VNet에 대한 관리 트래픽을 계획합니다.
  • 네트워크 보안 그룹 흐름 로깅을 배포합니다.
5 Azure PaaS 서비스에 대한 수신 및 송신을 보호합니다.
6 VNet 및 애플리케이션에 대한 액세스를 보호합니다.
7 고급 위협 감지, 경고 및 보호를 사용하도록 설정합니다.

이 가이드에서는 자체 리소스 그룹에 Azure 애플리케이션 Service 및 Azure SQL Database가 이미 배포되어 있다고 가정합니다.

1단계: Microsoft Entra RBAC 활용 또는 네트워킹 리소스에 대한 사용자 지정 역할 설정

네트워크 참가자를 위해 Microsoft Entra RBAC 기본 제공 역할을 활용할 수 있습니다. 그러나 또 다른 방법은 사용자 지정 역할을 활용하는 것입니다. 스포크 VNet 네트워크 관리자는 Microsoft Entra RBAC 네트워크 기여자 역할에서 부여한 네트워킹 리소스에 대한 모든 권한이 필요하지 않지만 다른 일반적인 역할보다 더 많은 권한이 필요합니다. 사용자 지정 역할을 사용하여 필요한 것까지만 액세스 범위를 지정할 수 있습니다.

이를 구현하는 한 가지 쉬운 방법은 Azure 랜딩 존 참조 아키텍처에 있는 사용자 지정 역할을 배포하는 것입니다.

사용할 수 있는 특정 역할은 다음 권한이 있는 네트워크 관리 사용자 지정 역할입니다.

  • 범위에서 모두 읽기
  • 네트워크 공급자를 사용하여 모든 작업
  • 지원 공급자를 사용하여 모든 작업
  • 리소스 공급자를 사용하는 모든 작업

이 역할은 Azure 랜딩 존 참조 아키텍처 GitHub 리포지토리의 스크립트를 사용하여 만들거나 Azure 사용자 지정 역할이 있는 Microsoft Entra ID를 통해 만들 수 있습니다.

2단계: 자체 리소스 그룹으로 인프라 격리

컴퓨팅, 데이터 또는 스토리지 리소스에서 네트워크 리소스를 격리하면 사용 권한이 저하될 가능성을 줄일 수 있습니다. 또한 모든 관련 리소스가 하나의 리소스 그룹에 있는지 확인하여 하나의 보안 할당을 수행하고 이러한 리소스에 대한 로깅 및 모니터링을 더 효율적으로 관리할 수 있습니다.

공유 리소스 그룹의 여러 컨텍스트에서 스포크 네트워크 리소스를 사용할 수 있도록 하는 대신 전용 리소스 그룹을 만듭니다. 다음 아키텍처 다이어그램은 이 구성을 보여줍니다.

인프라를 자체 리소스 그룹으로 격리하는 다이어그램

다이어그램에서 참조 아키텍처의 리소스 및 구성 요소는 애플리케이션 서비스, Azure SQL 데이터베이스, 스토리지 계정, 허브 VNet 리소스 및 스포크 VNet 리소스에 대한 전용 리소스 그룹으로 나뉩니다.

전용 리소스 그룹을 사용하면 Azure Portal 자습서를 사용하여 사용자에게 Azure 리소스에 대한 액세스 권한 부여를 사용하여 사용자 지정 역할을 할당할 수 있습니다.

추가 권장 사항:

  • 명명된 개인 대신 역할에 대한 보안 그룹을 참조합니다.
  • 엔터프라이즈 ID 관리 방법을 통해 보안 그룹에 대한 액세스를 관리합니다.

리소스 그룹에 로그 전달을 적용하는 정책을 사용하지 않는 경우 리소스 그룹에 대한 활동 로그에서 이를 구성합니다.

  1. Azure Portal에서 리소스 그룹을 찾습니다.
  2. 활동 로그로 이동 - 활동 로그 내보내기 및 + 진단 설정 추가를 선택합니다>.
  3. 진단 설정 화면에서 모든 로그 범주(특히 보안)를 선택하고 적절한 로깅 원본(예: Log Analytics 작업 영역) 또는 장기 스토리지를 위한 스토리지 계정으로 보냅니다. 예를 들면 다음과 같습니다.

진단 설정의 스크린샷 예제입니다.

이러한 로그를 검토하고 경고하는 방법을 이해하려면 진단 설정을 참조하세요.

구독 민주화

네트워킹과 직접 관련이 없지만 비슷한 방식으로 구독 RBAC를 계획해야 합니다. 리소스 그룹별로 리소스를 논리적으로 격리하는 것 외에도 비즈니스 영역 및 포트폴리오 소유자에 따라 구독을 격리해야 합니다. 관리 단위로 구독의 범위를 좁혀야 합니다.

자세한 내용은 Azure 랜딩 존 디자인 원칙을 참조 하세요.

3단계: 각 서브넷에 대한 네트워크 보안 그룹 만들기

Azure 네트워크 보안 그룹은 Azure VNet의 Azure 리소스 간에 네트워크 트래픽을 필터링하는 데 사용됩니다. 각 서브넷에 네트워크 보안 그룹을 적용하는 것이 좋습니다. 이는 Azure 랜딩 존을 배포할 때 기본적으로 Azure 정책을 통해 적용됩니다. 네트워크 보안 그룹에는 여러 종류의 Azure 리소스에서 오는 인바운드 트래픽 또는 이러한 리소스로 나가는 아웃바운드 네트워크 트래픽을 허용하거나 거부하는 보안 규칙이 포함됩니다. 각 규칙에 대해 원본 및 대상 IP 주소, 프로토콜(예: TCP 또는 UDP) 및 포트를 지정할 수 있습니다.

다중 계층 애플리케이션의 경우 네트워킹 구성 요소를 호스트하는 각 서브넷에 대한 전용 네트워크 보안 그룹(다음 다이어그램의 "NSG")을 만드는 것이 좋습니다.

각 서브넷에 대한 전용 네트워크 보안 그룹의 다이어그램

이 다이어그램에서

  • 애플리케이션의 각 계층에는 전용 수신 서브넷(예: 웹 계층용 서브넷 및 데이터 계층에 대한 서브넷)이 있습니다.
  • Azure 애플리케이션 Services에는 특정 애플리케이션 서비스에 대한 전용 송신 서브넷이 있습니다.
  • 네트워크 보안 그룹은 이러한 각 서브넷에 대해 구성됩니다.

다이어그램과 다른 방식으로 네트워크 보안 그룹을 구성하면 일부 또는 모든 네트워크 보안 그룹의 구성이 잘못되어 문제 해결에 문제가 발생할 수 있습니다. 모니터링 및 로그를 어렵게 만들 수도 있습니다.

네트워크 보안 그룹의 설정을 관리하려면 Azure 네트워크 보안 그룹 만들기, 변경 또는 삭제를 참조하세요.

네트워크 보안 그룹을 사용하여 환경을 보호하는 방법을 알아보려면 네트워크 보안 그룹에 대해 자세히 알아보세요.

4단계: VNet 내에서 트래픽 및 리소스 보호

이 섹션에서는 다음 권장 사항을 설명합니다.

  • 네트워크 보안 그룹에 대한 기준 거부 규칙 배포
  • 애플리케이션별 규칙 배포
  • VNet에서 관리 트래픽 계획
  • 네트워크 보안 그룹 흐름 로깅 배포

네트워크 보안 그룹에 대한 기준 거부 규칙 배포

제로 트러스트 핵심 요소는 필요한 최소 수준의 액세스를 사용하는 것입니다. 기본적으로 네트워크 보안 그룹에는 허용 규칙이 있습니다. 거부 규칙의 기준을 추가하여 최소한의 액세스 수준을 적용할 수 있습니다. 프로비전되면 우선 순위가 4096인 각 인바운드 및 아웃바운드 규칙에서 모든 거부 규칙을 만듭니다. 이는 사용 가능한 마지막 사용자 지정 우선 순위입니다. 즉, 허용 작업을 구성할 수 있는 나머지 범위가 남아 있습니다.

이렇게 하려면 네트워크 보안 그룹에서 아웃바운드 보안 규칙으로 이동하여 추가를 선택합니다. 다음을 입력합니다.

  • 원본: 모두
  • 원본 포트 범위: *
  • 대상: 모두
  • 서비스: 사용자 지정
  • 대상 포트 범위: *
  • 프로토콜: 모두
  • 작업: Deny
  • 우선 순위: 4096
  • 이름: DenyAllOutbound
  • 설명: 특별히 허용되지 않는 한 모든 아웃바운드 트래픽을 거부합니다.

예제는 다음과 같습니다.

아웃바운드 보안 규칙의 예제 스크린샷

인바운드 규칙으로 이 프로세스를 반복하여 이름과 설명을 적절하게 조정합니다.

인바운드 보안 규칙 탭은 규칙에 경고 기호를 표시합니다. 예제는 다음과 같습니다.

인바운드 보안 규칙의 예제 스크린샷

규칙을 클릭하고 아래쪽으로 스크롤하여 자세한 내용을 확인합니다. 예를 들면 다음과 같습니다.

규칙 세부 정보의 스크린샷 예제입니다.

이 메시지는 다음과 같은 두 가지 경고를 제공합니다.

  • Azure Load Balancer는 기본적으로 이 네트워크 보안 그룹을 사용하여 리소스에 액세스할 수 없습니다.
  • 이 VNet의 다른 리소스는 기본적으로 이 네트워크 보안 그룹을 사용하여 리소스에 액세스할 수 없습니다.

제로 트러스트 우리의 목적을 위해, 이것은 어떻게해야한다. 즉, 이 VNet에 무언가가 있다고 해서 리소스에 즉시 액세스할 수 있는 것은 아닙니다. 각 트래픽 패턴에 대해 명시적으로 허용하는 규칙을 만들고 최소한의 권한으로 규칙을 만들어야 합니다.

AD DS(Active Directory 도메인 Services) 도메인 컨트롤러, 프라이빗 DNS VM 또는 특정 외부 웹 사이트와 같은 관리를 위한 특정 아웃바운드 연결이 있는 경우 여기에서 제어해야 합니다.

대체 거부 규칙

참고 항목

이 섹션의 권장 사항은 웹 송신 서브넷에만 적용됩니다.

Azure Firewall을 사용하여 아웃바운드 연결을 관리하는 경우 거부 아웃바운드를 수행하는 대신 아웃바운드 연결에 대한 대체 규칙을 만들 수 있습니다. Azure Firewall 구현의 일부로 기본 경로(0.0.0.0/0) 트래픽을 방화벽으로 보내는 경로 테이블을 설정합니다. VNet 외부의 트래픽을 처리합니다.

그런 다음 모든 VNet 아웃바운드 규칙을 거부하거나 모든 아웃바운드 규칙을 허용하지만 인바운드 규칙을 사용하여 항목을 보호할 수 있습니다.

환경의 보안을 강화하는 데 사용할 수 있는 방법을 이해하려면 Azure Firewall경로 테이블을 참조하세요.

애플리케이션별 규칙 배포

사용 권한이 가장 적고 명시적으로 허용된 경로를 따르는 트래픽 패턴을 정의합니다. 서브넷을 원본으로 사용하여 네트워크 보안 그룹에서 네트워킹 패턴을 정의합니다. 예제는 다음과 같습니다.

네트워크 보안 그룹의 네트워킹 패턴 다이어그램

네트워크 보안 그룹 관리: 네트워크 보안 그룹에 규칙을 추가하는 보안 규칙 프로세스를 만듭니다.

이 시나리오를 보호하려면 다음 규칙을 추가합니다.

서브넷에 대한 네트워크 보안 그룹 방향 Source 원본 세부 정보 원본 포트 대상 대상 세부 정보 서비스 네트워크 보안 그룹 이름 네트워크 보안 그룹 설명
App Service 서브넷 인바운드 IP 주소 Application Gateway 서브넷의 개인 IP 주소 범위 443 IP 주소 App Service 프라이빗 엔드포인트의 명시적 IP 주소 MS SQL AllowGWtoAppInbound Application Gateway에서 App Service에 대한 인바운드 액세스를 허용합니다.
App Service 통합 서브넷 아웃바운드 IP 주소 App Service 통합 서브넷의 IP 주소 범위 1433 IP 주소 SQL DB 프라이빗 엔드포인트의 명시적 IP 주소 MS SQL AllowApptoSQLDBOutbound App Service 통합 서브넷에서 SQL 프라이빗 엔드포인트에 대한 아웃바운드 액세스를 허용합니다.
Azure SQL 서브넷 인바운드 IP 주소 App Service 통합 서브넷의 IP 주소 범위 1433 IP 주소 SQL DB 프라이빗 엔드포인트의 명시적 IP 주소 MS SQL AllowApptoSQLDBInbound App Service 통합 서브넷에서 SQL 프라이빗 엔드포인트에 대한 인바운드 액세스를 허용합니다.

참고 항목

경우에 따라 원본 트래픽이 다른 포트에서 올 수 있으며 이 패턴이 발생하는 경우 원본 포트 범위를 "*"에 추가하여 원본 포트를 허용할 수 있습니다. 대상 포트가 더 중요하며 원본 포트에 항상 "*"를 사용하는 것이 좋습니다.

참고 항목

우선 순위는 100에서 4000 사이의 값을 사용합니다. 105에서 시작할 수 있습니다.

Application Gateway 서브넷의 네트워크 보안 그룹 규칙에 추가됩니다.

이러한 규칙을 사용하여 단일 애플리케이션 계층에 대한 제로 트러스트 연결 패턴을 정의했습니다. 추가 흐름에 필요한 대로 이 프로세스를 반복할 수 있습니다.

VNet에서 관리 트래픽 계획

애플리케이션별 트래픽 외에도 관리 트래픽을 계획합니다. 그러나 관리 트래픽은 일반적으로 스포크 VNet 외부에서 발생하므로 더 많은 규칙이 필요합니다. 먼저 관리 트래픽이 들어오는 특정 포트 및 원본을 이해합니다. 일반적으로 모든 관리 트래픽은 스포크에 대한 허브 네트워크에 있는 방화벽 또는 기타 NVA(네트워크 가상 어플라이언스)에서 전달되어야 합니다.

전체 참조 아키텍처는 Azure IaaS에 제로 트러스트 원칙 적용 개요를 참조하세요.

구성은 특정 관리 요구 사항에 따라 달라집니다. 그러나 네트워크 보안 그룹의 방화벽 어플라이언스 및 규칙에 대한 규칙을 사용하여 플랫폼 네트워킹 및 워크로드 네트워킹 쪽 모두에서 연결을 명시적으로 허용해야 합니다.

배포 계획

애플리케이션 서비스 및 데이터베이스는 이제 프라이빗 네트워킹을 사용하고 있으므로 이러한 리소스에 코드 및 데이터를 배포하는 방법을 계획합니다. 프라이빗 빌드 서버가 이러한 엔드포인트에 액세스할 수 있도록 하는 규칙을 추가합니다.

네트워크 보안 그룹 흐름 로깅 배포

네트워크 보안 그룹이 불필요한 트래픽을 차단한다고 해서 목표가 충족되는 것은 아닙니다. 공격을 감지하려면 명시적 패턴 외부에서 발생하는 트래픽을 관찰해야 합니다.

프라이빗 엔드포인트에 대한 트래픽은 기록되지 않지만 나중에 다른 서비스가 서브넷에 배포되는 경우 이 로그는 활동을 검색하는 데 도움이 됩니다.

네트워크 보안 그룹 흐름 로깅 을 사용하도록 설정하려면 자습서: 프라이빗 엔드포인트에 대한 기존 네트워크 보안 그룹에 대한 가상 머신 간 네트워크 트래픽 흐름을 기록합니다.

참고 항목

다음 권장 사항에 유의하세요.

  • 필요에 따라 로그에 대한 액세스를 제한해야 합니다.

  • 로그는 필요에 따라 Log Analytics 및 Microsoft Sentinel로 전달되어야 합니다.

5단계: Azure PaaS 서비스에 대한 수신 및 송신 보안

이 섹션에는 PaaS 서비스에 대한 수신 및 송신을 보호하는 데 필요한 두 단계가 포함되어 있습니다.

  • 서비스에 수신할 프라이빗 엔드포인트를 배포합니다.
  • VNet 통합을 배포하여 Application Service가 VNet과 통신할 수 있도록 합니다.

또한 이름 확인을 허용하도록 DNS 구성도 고려해야 합니다.

수신을 위한 프라이빗 엔드포인트 배포

많은 서비스를 통해 Azure Portal의 리소스별 블레이드에서 프라이빗 엔드포인트를 만들 수 있지만, 보다 일관된 환경은 자체 리소스 생성에서 프라이빗 엔드포인트를 만드는 것입니다. 이렇게 하려면 리소스를 이미 배포해야 합니다. 배포되면 프라이빗 엔드포인트를 만들 수 있습니다.

프라이빗 엔드포인트를 배포할 때 다음과 같이 구성합니다.

  • 부모 리소스를 보관하는 특정 리소스 그룹에 배치하여 리소스를 비슷한 수명 주기로 유지하고 중앙 액세스를 제공합니다.
  • 역할에 따라 VNet의 적절한 서브넷에 배치합니다.
  • Azure 애플리케이션 서비스의 경우 일반 프런트 엔드와 배포 및 관리에 사용되는 SCM 엔드포인트 모두에 대해 프라이빗 엔드포인트를 구성할 수 있습니다.

또한 이 배포의 일부로 서비스별 방화벽이 인바운드 트래픽을 거부하도록 설정되어 있는지 확인해야 합니다. 이렇게 하면 공용 수신 시도가 거부됩니다.

Azure SQL 데이터베이스 의 경우 서버 수준 IP 방화벽 규칙을 관리합니다. 공용 네트워크 액세스가 Azure Portal의 네트워킹 패널에서 사용 안 함으로 설정되어 있는지 확인합니다.

Azure 애플리케이션 서비스의 경우 프라이빗 엔드포인트를 추가하면 기본적으로 인바운드 액세스를 차단하도록 서비스 수준 방화벽이 설정됩니다. 자세한 내용은 App Service 앱에 프라이빗 엔드포인트 사용을 참조 하세요.

송신을 위한 VNet 통합 배포

수신을 위한 프라이빗 엔드포인트 외에도 VNet 통합을 사용하도록 설정합니다. 각 App Service 계획은 VNet 통합을 사용하도록 설정할 수 있으며, 이렇게 하면 App Service에 대한 전체 서브넷이 할당됩니다. 자세한 내용은 Azure VNet과 앱 통합을 참조하세요.

App Service를 구성하려면 Azure 앱 Service에서 VNet 통합 사용을 참조하세요. 송신을 위해 지정된 서브넷에 배치하고 있는지 확인합니다.

DNS 고려 사항

프라이빗 엔드포인트를 사용하는 과정의 일환으로 리소스의 FQDN을 새 개인 IP 주소로 DNS 확인하도록 설정합니다. 다양한 방법으로 구현하는 지침은 프라이빗 엔드포인트 DNS 구성을 참조하세요.

참고 항목

DNS 확인은 모든 트래픽에 적용해야 합니다. 동일한 VNet의 리소스는 올바른 DNS 영역을 사용하지 않는 한 해결할 수 없습니다.

6단계: VNet 및 애플리케이션에 대한 보안 액세스

VNet 및 애플리케이션에 대한 액세스 보안은 다음과 같습니다.

  • 애플리케이션에 대한 Azure 환경 내의 트래픽 보호
  • 애플리케이션에 대한 사용자 액세스를 위해 MFA(다단계 인증) 및 조건부 액세스 정책 사용

다음 다이어그램에서는 참조 아키텍처의 액세스 모드를 모두 보여 줍니다.

참조 아키텍처의 액세스 모드 다이어그램

VNet 및 애플리케이션에 대한 Azure 환경 내에서 트래픽 보호

Azure 환경 내에서 보안 트래픽의 대부분의 작업이 이미 완료되었습니다. 스토리지 리소스와 VM 간의 보안 연결을 구성하려면 Azure Storage에 제로 트러스트 원칙 적용을 참조하세요.

허브 리소스에서 VNet으로의 액세스를 보호하려면 Azure의 허브 VNet에 제로 트러스트 원칙 적용을 참조하세요.

애플리케이션에 대한 사용자 액세스에 MFA 및 조건부 액세스 정책 사용

가상 머신에 제로 트러스트 적용 원칙 문서는 MFA 및 조건부 액세스를 사용하여 VM에 대한 액세스 요청을 직접 보호하는 방법을 권장합니다. 이러한 요청은 관리자 및 개발자가 요청할 가능성이 높습니다. 다음 단계는 MFA 및 조건부 액세스를 사용하여 애플리케이션에 대한 액세스를 보호하는 것입니다. 이는 애플리케이션에 액세스하는 모든 사용자에게 적용됩니다.

먼저 애플리케이션이 Microsoft Entra ID와 아직 통합되지 않은 경우 Microsoft ID 플랫폼 애플리케이션 유형을 참조하세요.

다음으로, ID 및 디바이스 액세스 정책의 범위에 애플리케이션을 추가합니다.

조건부 액세스 및 관련 정책을 사용하여 MFA를 구성할 때 제로 트러스트 권장되는 정책 집합을 가이드로 사용합니다. 여기에는 디바이스를 관리할 필요가 없는 시작 지점 정책이 포함됩니다. 이상적으로는 VM에 액세스하는 디바이스가 관리되며 엔터프라이즈 수준을 구현 할 수 있으며 제로 트러스트 권장됩니다. 자세한 내용은 공통 제로 트러스트 ID 및 디바이스 액세스 정책을 참조하세요.

다음 다이어그램에서는 제로 트러스트 권장되는 정책을 보여 있습니다.

제로 트러스트 권장 ID 및 디바이스 액세스 정책 다이어그램

7단계: 고급 위협 탐지 및 보호 사용

Azure 또는 온-프레미스에서 실행되는 IT 비즈니스 환경의 다른 리소스도 보호될 수 있으므로 Azure에서 빌드된 스포크 VNet은 클라우드용 Microsoft Defender 의해 보호될 수 있습니다.

이 시리즈의 다른 문서에서 설명한 것처럼 클라우드용 Defender 클라우드 보안 여정을 진행하는 데 도움이 되는 적응형 네트워크 강화와 같은 보안 권장 사항, 경고 및 고급 기능을 제공하는 CSPM(클라우드 보안 상태 관리) 및 CWP(클라우드 워크로드 보호) 도구입니다.

이 문서에서는 클라우드용 Defender 자세히 설명하지는 않지만 클라우드용 Defender Log Analytics 작업 영역에서 수집된 Azure 정책 및 로그를 기반으로 작동한다는 것을 이해하는 것이 중요합니다. 스포크 VNet 및 연결된 리소스를 사용하여 구독에서 사용하도록 설정되면 보안 상태를 개선하기 위한 권장 사항을 볼 수 있습니다. MITRE 전술, 리소스 그룹 등을 통해 이러한 권장 사항을 추가로 필터링할 수 있습니다. 조직의 보안 점수에 더 큰 영향을 주는 권장 사항을 해결하기 위해 우선 순위를 지정하는 것이 좋습니다. 예제는 다음과 같습니다.

클라우드용 Microsoft Defender 권장 사항의 스크린샷 예제입니다.

기존 네트워크 보안 그룹 규칙을 개선하기 위한 적응형 네트워크 강화 권장 사항을 포함하는 고급 워크로드 보호를 제공하는 클라우드용 Defender 계획이 있습니다. 예제는 다음과 같습니다.

네트워크 강화 권장 사항의 스크린샷 예제입니다.

새 네트워크 보안 그룹 규칙을 만들거나 기존 규칙을 수정하는 적용을 선택하여 권장 사항을 수락할 수 있습니다.

다음 단계

Azure에 제로 트러스트 원칙을 적용하려면 다음 추가 문서를 참조하세요.

참조