다음을 통해 공유


Azure의 스포크 가상 네트워크에 제로 트러스트 원칙 적용

요약: Azure의 스포크 가상 네트워크에 제로 트러스트 원칙을 적용하려면 RBAC(역할 기반 액세스 제어)를 활용하고, 서브넷 및 가상 머신(리소스 그룹, 네트워크 보안 그룹 및 애플리케이션 보안 그룹)을 격리하고, VNet 및 가상 머신 애플리케이션 내에서 트래픽 및 리소스를 보호하고, 고급 위협 탐지, 경고 및 보호를 사용하도록 설정해야 합니다.

이 문서는 다음과 같은 방법으로 Azure의 IaaS 워크로드용 스포크 VNet(가상 네트워크)에 제로 트러스트 원칙을 적용하는 데 도움이 됩니다.

제로 트러스트 원칙 정의 Met by
명시적으로 확인 항상 사용 가능한 모든 데이터 포인트를 기반으로 인증하고 권한을 부여합니다. 애플리케이션 보안 그룹을 사용하여 개별 NIC에 특정 채널을 통해 통신할 수 있는 권한이 있는지 확인합니다.
최소 권한 액세스 사용 JIT/JEA(Just-In-Time and Just-Enough-Access), 위험 기반 적응 정책 및 데이터 보호를 사용하여 사용자 액세스를 제한합니다. 모든 채널에서 기본적으로 3389/RDP 액세스를 사용하도록 설정하지 마세요. 스포크 컨텍스트에 대해 올바른 역할 권한을 사용합니다.
위반 가정 미치는 영향 및 세그먼트 액세스를 최소화합니다. 엔드투엔드 암호화를 확인하고, 분석을 사용하여 가시성을 확보하고, 위협 탐지를 추진하고, 방어를 향상시킵니다. 리소스 간의 불필요한 통신을 제한합니다. 네트워크 보안 그룹에 로그인할 수 있고 비정상적인 트래픽에 대한 적절한 가시성이 있는지 확인합니다. 네트워크 보안 그룹의 변경 내용을 추적합니다.

이 문서는 가상 머신 기반 워크로드를 호스팅하는 스포크 VNet을 포함하는 Azure 환경에서 제로 트러스트 원칙을 적용하는 방법을 보여 주는 일련의 문서의 일부입니다. 자세한 내용은 Azure IaaS에 제로 트러스트 원칙 적용 개요를 참조하세요.

참조 아키텍처

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

Azure 스포크 VNet의 가상 머신에서 실행되는 일반적인 3계층 애플리케이션의 구성 요소에 대한 참조 아키텍처 다이어그램.

이 다이어그램에서

  • 스포크 VNet에는 가상 머신으로 구성된 IaaS 애플리케이션을 지원하는 구성 요소가 포함되어 있습니다.
  • IaaS 애플리케이션은 각 계층에 대해 프런트 엔드, 애플리케이션 및 데이터라는 두 개의 가상 머신으로 구성된 3계층 애플리케이션입니다.
  • 각 계층은 전용 네트워크 보안 그룹이 있는 전용 서브넷 내에 포함됩니다.
  • 각 가상 머신 역할은 해당 역할에 해당하는 애플리케이션 보안 그룹에 할당됩니다.
  • 애플리케이션에 대한 액세스는 자체 서브넷에 포함된 Application Gateway를 통해 제공됩니다.

참조 아키텍처에 표시된 애플리케이션은 N 계층 아키텍처 스타일을 따릅니다 .

다음 다이어그램에서는 허브 VNet에 대한 구독과 별도로 Azure 구독의 스포크 VNet에 대한 리소스 그룹의 구성 요소를 보여 줍니다.

Microsoft Entra ID 테넌트 내의 구독, 리소스 그룹 및 Azure 구성 요소를 보여 주는 Azure 스포크 VNet에 제로 트러스트 적용하기 위한 논리 아키텍처 다이어그램.

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

  • 하나의 VNet
  • WAF(웹 애플리케이션 방화벽)를 포함한 하나의 Azure 애플리케이션 게이트웨이(App GW)
  • 각 애플리케이션 계층에 대해 하나씩 세 개의 네트워크 보안 그룹
  • 각 애플리케이션 계층에 대해 하나씩 세 개의 애플리케이션 보안 그룹

이 문서의 내용

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

Step 작업 적용된 제로 트러스트 원칙
1 Microsoft Entra RBAC(역할 기반 액세스 제어)를 사용하거나 네트워킹 리소스에 대한 사용자 지정 역할을 설정합니다. 최소 권한 액세스 사용
2 인프라를 자체 리소스 그룹으로 격리합니다. 위반 가정
3 각 서브넷에 대한 네트워크 보안 그룹을 만듭니다. 최소 권한 액세스 사용
위반 가정
4 각 가상 머신 역할에 대한 애플리케이션 보안 그룹을 만듭니다. 명시적으로 확인
최소 권한 액세스 사용
위반 가정
5 VNet 내에서 트래픽 및 리소스를 보호합니다.
  • 네트워크 보안 그룹에 대한 기준 거부 규칙 배포
  • 애플리케이션 보안 그룹에 대한 애플리케이션별 규칙 배포
  • VNet으로의 관리 트래픽 계획
  • 네트워크 보안 그룹 흐름 로깅 배포
  • IDPS를 사용하여 인바운드 웹 트래픽 보호
  • 명시적으로 확인
    최소 권한 액세스 사용
    위반 가정
    6 VNet 및 애플리케이션에 대한 액세스를 보호합니다. 최소 권한 액세스 사용
    위반 가정
    7 고급 위협 감지, 경고 및 보호를 사용하도록 설정합니다. 위반 가정

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

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

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

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

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

    사용자 지정 역할에 대한 스크립트를 사용하거나 Azure 사용자 지정 역할인 Azure RBAC설명된 프로세스를 사용하여 Microsoft Entra ID를 통해 이 역할을 만들 수 있습니다.

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

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

    공유 리소스 그룹의 여러 컨텍스트에서 스포크 네트워크 리소스를 사용할 수 있도록 하는 대신 전용 리소스 그룹을 만듭니다. 이 문서에서 지원하는 참조 아키텍처는 이 개념을 보여 줍니다.

    제로 트러스트 원칙이 적용된 스포크 VNet에 대한 전용 리소스 그룹 및 해당 구성 요소를 보여 주는 논리 아키텍처의 다이어그램.

    그림에서 참조 아키텍처의 리소스 및 구성 요소는 가상 머신, 스토리지 계정, 허브 VNet 리소스 및 스포크 VNet 리소스에 대한 전용 리소스 그룹으로 나뉩니다.

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

    추가 권장 사항:

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

    리소스 그룹에 로그 전달을 적용하는 정책을 사용하지 않는 경우 리소스 그룹에 대한 활동 로그에서 이를 구성합니다. 활동 로그 내보내기 활동 로그 > 로 이동한 다음 + 진단 설정 추가를 선택합니다.

    진단 설정 화면에서 모든 로그 범주(특히 보안)를 선택하고 적절한 로깅 원본(예: Log Analytics 작업 영역) 또는 장기 스토리지를 위한 스토리지 계정으로 보냅니다.

    구독 민주화

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

    구독 민주화에 대한 자세한 내용은 Azure 랜딩 존 디자인 원칙인 클라우드 채택 프레임워크 참조하세요.

    다음과 같이 Azure Monitor에서 진단 설정보안 범주에서 진단을 구성합니다.

    Azure Monitor의 보안에 대한 진단 설정 스크린샷

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

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

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

    다중 계층 가상 머신 기반 애플리케이션의 경우 가상 머신 역할을 호스트하는 각 서브넷에 대한 전용 네트워크 보안 그룹(다음 그림의 NSG)을 만드는 것이 좋습니다.

    가상 머신 역할을 호스트하는 각 서브넷에 대한 전용 네트워크 보안 그룹에 대한 예제 참조 아키텍처의 다이어그램.

    이 다이어그램에서

    • 애플리케이션의 각 계층은 프런트 엔드 계층, 앱 계층 및 데이터 계층과 같은 전용 서브넷에서 호스트됩니다.
    • 네트워크 보안 그룹은 이러한 각 서브넷에 대해 구성됩니다.

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

    다음 프로세스를 사용하여 네트워크 보안 그룹 만들기, 변경 또는 삭제

    네트워크 보안 그룹을 참조하여 환경을 보호하는 데 사용할 수 있는 방법을 이해합니다.

    4단계: 각 가상 머신 역할에 대한 애플리케이션 보안 그룹 만들기

    애플리케이션 보안 그룹을 사용하면 네트워크 보안을 애플리케이션 구조의 자연 확장으로 구성하여 가상 머신을 그룹화하고 해당 그룹에 따라 네트워크 보안 정책을 정의할 수 있습니다. 명시적 IP 주소를 수동으로 유지 관리하지 않고 대규모 보안 정책을 재사용할 수 있습니다. 플랫폼은 명시적 IP 주소 및 여러 규칙 집합의 복잡성을 처리하여 비즈니스 논리에 집중할 수 있도록 합니다.

    워크로드 내에서 특정 가상 머신 역할을 식별합니다. 그런 다음 각 역할에 대한 애플리케이션 보안 그룹을 빌드합니다. 참조 아키텍처에서 세 개의 애플리케이션 보안 그룹이 표시됩니다.

    서로 다른 가상 머신 역할에 대한 별도의 애플리케이션 보안 그룹에 대한 예제 참조 아키텍처의 다이어그램

    이 다이어그램에서

    • 이 앱을 지원하기 위해 프런트 엔드, 앱, 데이터 등 각 계층에 하나씩 세 개의 애플리케이션 보안 그룹이 만들어집니다.
    • 각 가상 머신은 해당 역할에 대해 해당 애플리케이션 보안 그룹에 할당됩니다(다이어그램의 빨간색 텍스트).

    애플리케이션 보안 그룹 및 가상 머신에 할당하는 방법에 대한 자세한 내용은 Azure 애플리케이션 보안 그룹 개요를 참조하세요.

    참고 항목

    부하 분산 장치를 사용하는 경우 애플리케이션 보안 그룹이 부하 분산 장치의 범위를 지정할 수 없으므로 네트워크 보안 그룹에서 부하 분산 장치의 IP 주소를 사용해야 합니다.

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

    이 섹션에서는 다음 권장 사항을 다룹니다.

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

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

    제로 트러스트 핵심 요소는 필요한 최소 수준의 액세스를 사용하는 것입니다. 기본적으로 네트워크 보안 그룹에는 규칙이 허용됩니다. 거부 규칙의 기준을 추가하여 최소한의 액세스 수준을 적용할 수 있습니다.

    프로비전되면 우선 순위가 4096인 각 인바운드 및 아웃바운드 규칙에서 모든 거부 규칙을 만듭니다. 이는 사용 가능한 마지막 사용자 지정 우선 순위입니다. 즉, 허용 작업을 구성할 수 있는 나머지 범위가 남아 있습니다.

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

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

    예를 들어 다음과 같습니다.

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

    인바운드 규칙으로 이 프로세스를 반복하여 이름과 설명을 적절하게 조정합니다. 여기에 표시된 것처럼 인바운드 보안 규칙 탭에 규칙에 경고 기호가 있음을 알 수 있습니다.

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

    규칙을 클릭하고 아래쪽으로 스크롤하면 여기에 표시된 대로 자세한 내용이 표시됩니다.

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

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

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

    제로 트러스트 우리의 목적을 위해, 이것은 어떻게해야한다. 즉, 이 VNet에 무언가가 있다고 해서 리소스에 즉시 액세스할 수 있는 것은 아닙니다. 각 트래픽 패턴에 대해 명시적으로 허용하는 규칙을 만들어야 하며 최소한의 권한으로 규칙을 만들어야 합니다. 따라서 AD DS(Active Directory 도메인 Services) 도메인 컨트롤러, 프라이빗 DNS 가상 머신 또는 특정 외부 웹 사이트와 같은 관리를 위한 특정 아웃바운드 연결이 있는 경우 여기에서 제어해야 합니다.

    대체 거부 규칙

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

    그런 다음 모든 VNet 아웃바운드 거부를 만들거나 대신 모든 아웃바운드를 허용할 수 있습니다(하지만 인바운드 규칙이 있는 보안 항목).

    Azure Firewall경로 테이블에 대해 자세히 알아보고 이를 사용하여 환경의 보안을 강화하는 방법을 알아보세요.

    가상 머신 관리 규칙

    Microsoft Entra 로그인, 맬웨어 방지 및 자동 업데이트를 사용하도록 설정하여 가상 머신을 구성하려면 다음 아웃바운드 연결을 허용해야 합니다. 이 중 대부분은 FQDN에 의해 발생합니다. 즉, FQDN 규칙에 Azure Firewall이 필요하거나 더 복잡한 계획을 세일 것입니다. Azure Firewall을 사용하는 것이 좋습니다.

    아웃바운드 연결은 다음과 같습니다.

    • 포트 443에서:
      • enterpriseregistration.windows.net
      • settings-win.data.microsoft.com
      • sls.update.microsoft.com
      • v10.events.data.microsoft.com
      • login.microsoftonline.com
      • pas.windows.net
      • 169.254.169.254
    • 포트 80에서:
    • 포트 123에서:
      • time.windows.com
    • 포트 1688에서:
      • Azkms.core.windows.net

    애플리케이션 보안 그룹에 대한 애플리케이션별 규칙 배포

    사용 권한이 가장 적고 명시적으로 허용된 경로를 따르는 트래픽 패턴을 정의합니다. 다음은 애플리케이션 보안 그룹을 사용하여 허브 VNet과 함께 사용되는 스포크 VNet에 대한 네트워크 보안 그룹의 네트워크 트래픽 패턴을 정의하는 예제 다이어그램입니다. 권장되는 구성입니다.

    허브-스포크 구성의 3계층 웹 애플리케이션에 대한 네트워킹 패턴의 권장 구성 다이어그램.

    또 다른 예로, 웹 애플리케이션 방화벽이 스포크 VNet의 Application Gateway 서브넷에 배치되는 독립 실행형 스포크 VNet에 대한 구성은 다음과 같습니다.

    독립 실행형 스포크 구성에서 3계층 웹 애플리케이션에 대한 네트워킹 패턴의 권장 구성 다이어그램

    다음 네트워크 보안 그룹 규칙이 필요합니다.

    1. APP GW 서브넷으로 인터넷 트래픽 허용(HTTPS 443).
    2. APP GW 서브넷에서 프런트 엔드 계층 가상 머신으로의 트래픽 허용(HTTPS 433).
    3. 프런트 엔드 계층 가상 머신에서 앱 계층 부하 분산 장치(HTTPS 443)로의 트래픽 허용
    4. 앱 계층 부하 분산 장치에서 앱 계층 가상 머신으로의 트래픽 허용(HTTPS 443).
    5. 앱 계층 가상 머신에서 데이터 계층 부하 분산 장치로의 트래픽 허용(SQL 1433).
    6. 데이터 계층 부하 분산 장치에서 데이터 계층 가상 머신으로의 트래픽 허용(SQL 1433).
    7. 데이터 계층 가상 머신 간의 트래픽 허용(SQL 1433)

    먼저 SQL 패턴을 구성한 다음 나머지 계층으로 프로세스를 반복합니다. 다음 섹션은 단일 애플리케이션 계층에 대한 네트워크 트래픽을 제한하는 규칙에 대한 구성입니다.

    규칙 5 - 앱 계층 가상 머신에서 데이터 계층 부하 분산 장치로 트래픽 허용(SQL 1433)

    앱 계층 서브넷에 대한 네트워크 보안 그룹에서 인바운드 보안 규칙으로 이동하고 추가를 선택합니다. 목록을 다음으로 채웁다.

    • 원본: 애플리케이션 보안 그룹
    • 원본 애플리케이션 보안 그룹: 비즈니스 계층 애플리케이션 보안 그룹 선택
    • 원본 포트 범위: 1433(경우에 따라 원본 트래픽이 다른 포트에서 가져올 수 있으며 이 패턴이 발생하는 경우 원본 포트 범위를 *에 추가하여 원본 포트를 허용할 수 있습니다. 대상 포트가 더 중요하며 일부 권장 사항은 항상 원본 포트에 *를 사용하는 것입니다.
    • 대상: IP 주소
    • 대상 IP 주소/CIDR 범위: 부하 분산 장치의 명시적 IP
      • 부하 분산 장치를 애플리케이션 보안 그룹과 연결할 수 없으므로 여기서 명시적 IP를 사용해야 합니다.
      • IP 스키마를 계획하거나 부하 분산 장치를 배포하고 할당된 IP를 참조할 수 있습니다.
    • 서비스: MS SQL
    • 대상 포트 범위: 포트 1433에 대해 자동으로 채워집니다.
    • 프로토콜: TCP에 대해 자동으로 선택됩니다.
    • 작업: 허용
    • 우선 순위: 100에서 4096 사이의 값입니다. 105부터 시작할 수 있습니다.
    • 이름: Allow-App-Tier-to-Data-LB-Inbound
    • 설명: 데이터 계층 부하 분산 장치에서 앱 계층 가상 머신으로의 인바운드 액세스를 허용합니다.

    완료 후에 규칙에 대한 정보 경고에 대한 파란색 아이콘이 있음을 알 수 있습니다. 규칙을 클릭하면 다음과 같은 메시지가 표시됩니다.

    • "애플리케이션 보안 그룹을 사용하는 규칙은 애플리케이션 보안 그룹이 동일한 가상 네트워크의 네트워크 인터페이스와 연결된 경우에만 적용될 수 있습니다."

    예를 들어 다음과 같습니다.

    예제 정보 경고의 스크린샷.

    이 규칙은 이 애플리케이션 보안 그룹이 이 네트워크에서 사용되는 경우에만 적용됩니다.

    마지막으로 동일한 네트워크 보안 그룹에서 아웃바운드 보안 규칙으로 이동하고 추가선택합니다. 인바운드를 아웃바운드로 변경하여 예제와 유사한 목록을 채웁다.

    규칙 6 - 데이터 계층 부하 분산 장치에서 데이터 계층 가상 머신으로의 트래픽 허용(SQL 1433)

    데이터 계층 서브넷에 대한 네트워크 보안 그룹에서 인바운드 보안 규칙으로 이동하고 추가를 선택합니다. 목록을 다음으로 채웁다.

    • 원본: IP 주소
    • 원본 IP 주소: 부하 분산 장치의 IP 주소
    • 원본 포트 범위: 1433
    • 대상: 애플리케이션 보안 그룹
    • 대상 애플리케이션 보안 그룹: 데이터 계층 애플리케이션 보안 그룹 선택
    • 서비스: MS SQL
    • 대상 포트 범위: 포트 1433에 대해 자동으로 채워집니다.
    • 프로토콜: TCP에 대해 자동으로 선택됩니다.
    • 작업: 허용
    • 우선 순위: 100에서 4096 사이의 값입니다. 105부터 시작할 수 있습니다.
    • 이름: Allow-SQL-LB-to-SQL-VMs-Inbound
    • 설명: 데이터 계층 부하 분산 장치에서 SQL 기반 데이터 계층 가상 머신에 대한 인바운드 액세스를 허용합니다.

    동일한 네트워크 보안 그룹에서 아웃바운드 보안 규칙으로 이동하고 추가를 선택합니다. 이 예제에서 수행한 대로 목록을 채우고 인바운드를 아웃바운드변경합니다.

    규칙 7 - 데이터 계층 가상 머신 간의 트래픽 허용(SQL 1433)

    데이터 계층 서브넷에 대한 네트워크 보안 그룹에서 인바운드 보안 규칙으로 이동하고 추가를 선택합니다. 목록을 다음으로 채웁다.

    • 원본: 애플리케이션 보안 그룹
    • 대상 애플리케이션 보안 그룹: 데이터 계층 애플리케이션 보안 그룹 선택
    • 원본 포트 범위: 1433
    • 대상: 애플리케이션 보안 그룹
    • 대상 애플리케이션 보안 그룹: 데이터 계층 애플리케이션 보안 그룹 선택
    • 서비스: MS SQL
    • 대상 포트 범위: 포트 1433에 대해 자동으로 채워집니다.
    • 프로토콜: TCP에 대해 자동으로 선택됩니다.
    • 작업: 허용
    • 우선 순위: 100에서 4096 사이의 값입니다. 105부터 시작할 수 있습니다.
    • 이름: Allow-SQL-VM-to-SQL-VM-Inbound
    • 설명: SQL 기반 데이터 계층 가상 머신 간의 인바운드 액세스를 허용합니다.

    동일한 네트워크 보안 그룹에서 아웃바운드 보안 규칙으로 이동하고 추가를 선택합니다. 목록을 이전 목록으로 채우고 인바운드를 아웃바운드변경합니다.

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

    VNet에서 관리 트래픽 계획

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

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

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

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

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

    네트워크 보안 그룹 흐름 로깅을 사용하도록 설정하려면 자습서: 생성된 기존 네트워크 보안 그룹에 대해 가상 머신 을 오가는 네트워크 트래픽 흐름을 기록합니다.

    참고 항목

    • 스토리지 계정은 제로 트러스트 스토리지 계정 지침을 따라야 합니다.
    • 필요에 따라 로그에 대한 액세스를 제한해야 합니다.
    • 또한 필요에 따라 Log Analytics 및 Sentinel로 전달되어야 합니다.

    IDPS를 사용하여 인바운드 웹 트래픽 보호

    스포크 가상 네트워크의 컨트롤 외에도 추가 검사를 적용하기 위해 Azure Firewall을 사용할 수도 있습니다. Azure Front Door 및 Application Gateway에 대한 웹 애플리케이션 방화벽 함수는 일반적인 웹 공격에 대한 트래픽을 검사하지만, Azure Firewall을 사용하면 더 심층적인 수준의 검사를 제공할 수 있습니다.

    사용 가능한 모든 신호를 사용하고 네트워크 트래픽에 대한 중앙 가시성을 유지하려면 Application Gateway에서 Azure Firewall로 트래픽을 라우팅하는 것이 좋습니다. 그런 다음 트래픽에서 추가 신호를 검사하고 로그에서 동작을 캡처할 수 있습니다. 이 구성에 대한 자세한 내용은 Azure Firewall 및 Application Gateway를 사용하는 웹 애플리케이션에 대한 제로 트러스트 네트워크 문서에서 확인할 수 있습니다. 이 동작을 설정하는 방법에 대한 자세한 내용은 제로 트러스트 대한 Azure Firewall Premium 구성을 참조하세요.

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

    VNet 및 애플리케이션에 대한 액세스 보안에는 다음이 포함됩니다.

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

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

    스포크 VNet에서 액세스를 보호하는 방법을 보여 주는 참조 아키텍처의 다이어그램.

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

    Azure 환경 내에서 보안 트래픽의 대부분의 작업이 이미 완료되었습니다. 스토리지 리소스와 가상 머신 간의 보안 연결은 Azure Storage에 제로 트러스트 원칙 적용에서 구성됩니다.

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

    애플리케이션에 대한 사용자 액세스에 다단계 인증 및 조건부 액세스 정책 사용

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

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

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

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

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

    세 가지 보호 수준인 시작 지점, 엔터프라이즈 및 특수 보안에 대한 제로 트러스트 ID 및 디바이스 액세스 정책 다이어그램

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

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

    이 시리즈의 다른 문서에서 설명한 것처럼 클라우드용 Microsoft Defender CSPM(Cloud Security Posture Management) 및 CWP(클라우드 워크로드 보호) 도구로, 클라우드 보안 경험에서 진행하는 데 도움이 되는 적응형 네트워크 강화와 같은 보안 권장 사항, 경고 및 고급 기능을 제공합니다. 클라우드용 Defender 더 큰 Microsoft 보안 환경으로 적합한 위치를 더 잘 시각화하려면 Microsoft 사이버 보안 참조 아키텍처를 참조하세요.

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

    다음은 클라우드용 Microsoft Defender 포털의 예입니다.

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

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

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

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

    기술 일러스트레이션

    이러한 일러스트레이션은 이러한 문서에 있는 참조 일러스트레이션의 복제본입니다. 사용자 고유의 조직 및 고객을 위해 다운로드하고 사용자 지정합니다. Contoso 로고를 사용자 고유의 로고로 바꿉다.

    항목 설명
    썸네일 그림 1Visio 다운로드
    업데이트 날짜: 2024년 10월
    Azure IaaS에 제로 트러스트 원칙 적용
    다음 문서와 함께 다음 그림을 사용합니다.
    - 개요
    - Azure Storage
    - 가상 머신
    - Azure 스포크 가상 네트워크
    - Azure 허브 가상 네트워크
    썸네일 그림 2Visio 다운로드
    업데이트 날짜: 2024년 10월
    Azure IaaS에 제로 트러스트 원칙 적용 - 한 페이지 포스터
    Azure IaaS 환경에 제로 트러스트 원칙을 적용하는 프로세스의 한 페이지 개요입니다.

    추가 기술 일러스트레이션은 IT 설계자 및 구현자에 대한 제로 트러스트 일러스트레이션을 참조하세요.

    Azure의 보안에 대한 자세한 내용은 Microsoft 카탈로그에서 다음 리소스를 참조하세요.
    Azure의 보안 | Microsoft Learn

    다음 단계

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

    참조