보안 하이브리드 네트워크 구현

Azure Firewall
Azure Load Balancer
Azure Virtual Machines
Azure Virtual Network

이 참조 아키텍처는 온-프레미스 네트워크를 Azure로 확장하는 보안 하이브리드 네트워크를 보여줍니다. 이 아키텍처는 온-프레미스 네트워크와 Azure 가상 네트워크 간의 DMZ라고도 하는 경계 네트워크를 구현합니다. 모든 인바운드 트래픽 및 아웃바운드 트래픽은 Azure Firewall을 통해 전달됩니다.

아키텍처

Diagram that shows the secure hybrid network architecture.

이 아키텍처의 Visio 파일을 다운로드합니다.

구성 요소

이 아키텍처는 다음과 같은 측면으로 구성됩니다.

  • 온-프레미스 네트워크. 조직에서 구현되는 프라이빗 로컬 영역 네트워크입니다.

  • Azure 가상 네트워크. 이 가상 네트워크는 솔루션 구성 요소와 Azure에서 실행되는 다른 리소스를 호스트합니다.

    가상 네트워크 경로는 Azure 가상 네트워크 내에서 IP 트래픽의 흐름을 정의합니다. 다이어그램에는 2개의 사용자 정의 경로 테이블이 있습니다.

    게이트웨이 서브넷에서 트래픽은 Azure Firewall 인스턴스를 통해 라우팅됩니다.

    참고

    VPN 연결의 요구 사항에 따라 BGP(경계 게이트웨이 프로토콜) 경로를 구성하여 온-프레미스 네트워크를 통해 트래픽을 다시 전달하는 전달 규칙을 구현할 수 있습니다.

  • 게이트웨이. 게이트웨이는 온-프레미스 네트워크와 가상 네트워크의 라우터 간에 연결을 제공합니다. 게이트웨이는 자체 서브넷에 배치됩니다.

  • Azure Firewall. Azure Firewall은 서비스로서의 관리형 방화벽입니다. 방화벽 인스턴스는 자체 서브넷에 배치됩니다.

  • 네트워크 보안 그룹. 보안 그룹을 사용하여 가상 네트워크 내에서 네트워크 트래픽을 제한합니다.

  • Azure Bastion. Azure Bastion을 사용하면 VM(가상 머신)을 인터넷에 직접 노출하지 않고도 SSH 또는 RDP(원격 데스크톱 프로토콜)를 통해 가상 네트워크의 VM에 로그인할 수 있습니다. Bastion을 사용하여 가상 네트워크의 VM을 관리합니다.

    Bastion에는 AzureBastionSubnet이라는 전용 서브넷이 필요합니다.

잠재적인 사용 사례

이 아키텍처는 VPN Gateway 또는 ExpressRoute 연결을 사용하여 온-프레미스 데이터 센터에 연결해야 합니다. 이 아키텍처의 일반적인 용도는 다음과 같습니다.

  • 작업이 부분적으로 온-프레미스 및 부분적으로 Azure에서 실행되는 하이브리드 애플리케이션
  • 온-프레미스 데이터 센터에서 Azure 가상 네트워크를 입력하는 트래픽을 통해 세부적으로 제어해야 하는 인프라입니다.
  • 나가는 트래픽을 감사해야 하는 애플리케이션 감사는 여러 상용 시스템의 규제 요구 사항인 경우가 많으며 프라이빗 정보를 공개하지 않도록 방지하는 데 도움이 됩니다.

권장 사항

대부분의 시나리오의 경우 다음 권장 사항을 적용합니다. 이러한 권장 사항을 재정의하라는 특정 요구 사항이 있는 경우가 아니면 따릅니다.

액세스 제어 권장 사항

Azure RBAC(Azure 역할 기반 액세스 제어)를 사용하여 애플리케이션에서 리소스를 관리합니다. 다음 사용자 정의 역할을 만드는 것이 좋습니다.

  • 애플리케이션에서 인프라를 관리하는 사용 권한이 있는 DevOps 역할은 애플리케이션 구성 요소를 배포하고 VM을 모니터링하고 다시 시작합니다.

  • 네트워크 리소스를 관리하고 모니터링하는 중앙 집중식 IT 관리자 역할

  • 방화벽과 같은 보안 네트워크 리소스를 관리하는 보안 IT 관리자 역할입니다.

IT 관리자 역할에는 방화벽 리소스에 대한 액세스 권한이 없어야 합니다. 액세스 권한은 보안 IT 관리자 역할로 제한되어야 합니다.

리소스 그룹 권장 사항

VM, 가상 네트워크 및 부하 분산 장치와 같은 Azure 리소스는 리소스 그룹으로 함께 그룹화하여 쉽게 관리될 수 있습니다. Azure 역할을 각 리소스 그룹을 할당하여 액세스를 제한합니다.

다음과 같은 리소스 그룹을 만드는 것이 좋습니다.

  • 온-프레미스 네트워크에 연결하는 가상 네트워크(VM 제외), NSG 및 게이트웨이 리소스를 포함하는 리소스 그룹입니다. 이 리소스 그룹에 중앙 집중식 IT 관리자 역할을 할당합니다.
  • Azure Firewall 인스턴스의 VM 및 게이트웨이 서브넷에 대한 사용자 정의 경로를 포함하는 리소스 그룹입니다. 이 리소스 그룹에 보안 IT 관리자 역할을 할당합니다.
  • 부하 분산 장치 및 VM을 포함하는 각 스포크 가상 네트워크의 별도 리소스 그룹

네트워킹 권장 사항

인터넷에서 인바운드 트래픽을 허용하려면 DNAT(대상 네트워크 주소 변환) 규칙을 Azure Firewall에 추가합니다.

  • 대상 주소 = 방화벽 인스턴스의 공용 IP 주소입니다.
  • 변환된 주소 = 가상 네트워크 내의 개인 IP 주소입니다.

사이트 간 VPN 터널을 사용하는 온-프레미스 네트워크를 통한 모든 아웃바운드 인터넷 트래픽 및 NAT(네트워크 주소 변환)를 사용하는 인터넷에 대한 경로를 강제 터널링합니다. 이 디자인을 사용하면 모든 기밀 정보가 실수로 누출되지 않도록 방지하고 모든 나가는 트래픽을 조사 및 감사할 수 있습니다.

스포크 네트워크 서브넷의 리소스에서 인터넷 트래픽을 완전히 차단하지 마세요. 트래픽을 차단하면 이러한 리소스에서 VM 진단 로깅, VM 확장 및 기타 기능 다운로드 등 공용 IP 주소에 의존하는 Azure PaaS 서비스 사용이 방해됩니다. 또한 Azure 진단에서는 구성 요소가 Azure Storage 계정에 읽고 쓸 수 있어야 합니다.

아웃바운드 인터넷 트래픽이 올바르게 강제 터널링되었는지 확인합니다. 온-프레미스 서버에서 라우팅 및 원격 액세스 서비스를 사용하여 VPN 연결을 사용하는 경우 WireShark와 같은 도구를 사용합니다.

SSL 종료에 Application Gateway 또는 Azure Front Door를 사용하는 것이 좋습니다.

고려 사항

이러한 고려 사항은 워크로드의 품질을 향상시키는 데 사용할 수 있는 일단의 지침 원칙인 Azure Well-Architected Framework의 핵심 요소를 구현합니다. 자세한 내용은 Microsoft Azure Well-Architected Framework를 참조하세요.

성능 효율성

성능 효율성은 사용자가 배치된 요구 사항을 효율적인 방식으로 충족하기 위해 워크로드의 크기를 조정할 수 있는 기능입니다. 자세한 내용은 성능 효율성 핵심 요소 개요를 참조하세요.

VPN Gateway의 대역폭 제한에 대한 자세한 내용은 게이트웨이 SKU를 참조하세요. 높은 대역폭의 경우 ExpressRoute 게이트웨이로 업그레이드하는 것이 좋습니다. ExpressRoute는 VPN 연결보다 대기 시간이 낮은 최대 10Gbps 대역폭을 제공합니다.

Azure 게이트웨이의 확장성에 대한 자세한 내용은 확장성 고려 사항 섹션을 참조하세요.

대규모 가상 네트워크 및 NSG 관리에 대한 자세한 내용은 AVNM(Azure Virtual Network Manager): 보안 허브 및 스포크 네트워크 만들기를 참조하여 연결 및 NSG 규칙의 중앙 관리를 위한 새로운(및 온보딩) 허브 및 스포크 가상 네트워크 토폴로지를 만듭니다.

안정성

안정성은 애플리케이션이 고객에 대한 약속을 충족할 수 있도록 합니다. 자세한 내용은 안정성 핵심 요소 개요를 참조하세요.

가상 네트워크와 온-프레미스 네트워크 간의 연결을 제공하는 데 Azure ExpressRoute를 사용하는 경우 ExpressRoute 연결을 사용할 수 없게 되면 장애 조치(failover)를 제공하는 VPN Gateway를 구성합니다.

VPN 및 ExpressRoute 연결을 위한 가용성 유지에 대한 자세한 내용은 가용성 고려 사항을 참조하세요.

운영 우수성

운영 우수성은 애플리케이션을 배포하고 프로덕션에서 계속 실행하는 운영 프로세스를 다룹니다. 자세한 내용은 운영 우수성 핵심 요소 개요를 참조하세요.

온-프레미스 네트워크에서 Azure로의 게이트웨이 연결이 다운된 경우에도 Azure Bastion을 통해 Azure 가상 네트워크의 VM에 계속 연결할 수 있습니다.

참조 아키텍처에서 각 계층의 서브넷은 NSG 규칙에 의해 보호됩니다. Windows VM에서 RDP(원격 데스크톱 프로토콜) 액세스의 경우 포트 3389 또는 Linux VM에서 SSH(Secure Shell) 액세스의 경우 포트 22를 여는 규칙을 만들어야 합니다. 다른 관리 및 모니터링 도구에는 추가 포트를 여는 규칙이 필요할 수 있습니다.

ExpressRoute를 사용하여 온-프레미스 데이터 센터와 Azure 간의 연결을 제공하는 경우 AzureCT(Azure 연결 도구 키트)를 사용하여 연결 문제를 모니터링하고 해결합니다.

VPN 및 ExpressRoute 연결을 모니터링하고 관리하는 방법에 대한 추가 정보는 Azure 및 온-프레미스 VPN을 사용하여 하이브리드 네트워크 아키텍처 구현 문서에서 찾을 수 있습니다.

보안

우수한 보안은 중요한 데이터 및 시스템에 대한 고의적인 공격과 악용을 방어합니다. 자세한 내용은 보안 요소의 개요를 참조하세요.

이 참조 아키텍처는 여러 수준의 보안을 구현합니다.

Azure Firewall을 통해 모든 온-프레미스 사용자 요청 라우팅

게이트웨이 서브넷의 사용자 정의 경로는 온-프레미스에서 수신된 요청을 제외한 모든 사용자 요청을 차단합니다. 경로는 허용된 요청을 방화벽으로 전달합니다. 요청은 방화벽 규칙에 따라 허용되는 경우 스포크 가상 네트워크의 리소스로 전달됩니다. 다른 경로를 추가할 수 있지만 방화벽을 실수로 우회하거나 관리 서브넷에 전달하려는 관리 트래픽을 차단하지 않도록 해야 합니다.

NSG를 사용하여 스포크 가상 네트워크 서브넷에 대해 트래픽 차단/전달

스포크 가상 네트워크에서 리소스 서브넷에 대한 트래픽은 NSG를 사용하여 제한됩니다. 이러한 리소스에 대한 광범위한 액세스를 허용하기 위해 NSG 규칙을 확장해야 하는 경우 보안 위험에 비하여 이러한 요구 사항을 평가합니다. 새로운 인바운드 경로는 각각 우발적 또는 고의적 데이터 유출 또는 애플리케이션 손상이 발생할 가능성을 나타냅니다.

DDoS 보호

애플리케이션 설계 모범 사례와 결합된 Azure DDoS Protection은 향상된 DDoS 완화 기능을 제공하여 DDoS 공격에 대한 방어력을 높입니다. 경계 가상 네트워크에서 Azure DDOS Protection을 사용하도록 설정해야 합니다.

AVNM을 사용하여 기준 보안 관리 규칙 만들기

AVNM을 사용하면 네트워크 보안 그룹 규칙보다 우선 순위를 지정할 수 있는 보안 규칙의 기준을 만들 수 있습니다. 보안 관리자 규칙은 NSG 규칙보다 먼저 평가되며 우선 순위 지정, 서비스 태그 및 L3-L4 프로토콜을 지원하는 NSG와 동일한 특성을 갖습니다. AVNM을 사용하면 중앙 IT에서 보안 규칙의 기준을 적용하는 동시에 스포크 가상 네트워크 소유자가 추가 NSG 규칙을 강제로 적용할 수 있습니다. 보안 규칙 변경 내용의 제어된 롤아웃을 용이하게 하기 위해 AVNM의 배포 기능을 사용하면 허브 및 스포크 환경에 대한 이러한 구성의 호환성이 손상되는 변경 내용을 안전하게 릴리스할 수 있습니다.

DevOps 액세스

Azure RBAC를 사용하여 DevOps가 각 계층에서 수행할 수 있는 작업을 제한합니다. 사용 권한을 부여할 때 최소 권한의 원칙을 사용합니다. 모든 관리 작업을 기록하고 정기 감사를 수행하여 구성 변경을 계획했는지 확인합니다.

비용 최적화

비용 최적화는 불필요한 비용을 줄이고 운영 효율성을 높이는 방법을 찾는 것입니다. 자세한 내용은 비용 최적화 핵심 요소 개요를 참조하세요.

Azure 가격 계산기를 사용하여 비용을 예측합니다. 기타 고려 사항은 Microsoft Azure Well-Architected Framework의 비용 최적화 섹션에 설명되어 있습니다.

이 아키텍처에 사용되는 서비스에 대한 비용 고려 사항은 다음과 같습니다.

Azure Firewall

이 아키텍처에서 Azure Firewall은 가상 네트워크에 배포되어 게이트웨이의 서브넷과 스포크 가상 네트워크의 리소스 간의 트래픽을 제어합니다. 이러한 방식으로 Azure Firewall은 여러 워크로드에서 사용하는 공유 솔루션으로 사용되므로 비용 효율적입니다. Azure Firewall 가격 책정 모델은 다음과 같습니다.

  • 배포 시간당 고정 속도입니다.
  • 자동 크기 조정을 지원하기 위해 GB당 처리되는 데이터입니다.

NVA(네트워크 가상 어플라이언스)와 비교할 때 Azure Firewall을 사용하면 최대 30~50%를 절약할 수 있습니다. 자세한 내용은 Azure Firewall과 NVA 비교를 참조하세요.

Azure Bastion

Azure Bastion은 가상 머신에서 공용 IP를 구성할 필요 없이 RDP 및 SSH를 통해 가상 머신에 안전하게 연결합니다.

Bastion 청구는 점프 상자로 구성된 기본 하위 수준 가상 머신과 비슷합니다. Bastion은 기본 제공되는 보안 기능을 포함하므로 점프 상자보다 더 비용 효율적이고 스토리지 추가 비용과 별도 서버 관리가 필요하지 않습니다.

Azure Virtual Network

Azure Virtual Network는 무료입니다. 모든 구독은 모든 지역에서 최대 50개의 가상 네트워크를 만들 수 있습니다. 가상 네트워크의 경계 내에서 발생하는 모든 트래픽은 무료입니다. 예를 들어 서로 통신하는 가상 머신의 VM은 네트워크 트래픽 요금이 발생하지 않습니다.

내부 부하 분산 장치

동일한 가상 네트워크에 상주하는 가상 머신 간의 기본 부하 분산은 무료입니다.

이 아키텍처에서 내부 부하 분산 장치는 가상 네트워크 내부의 트래픽 부하를 분산하는 데 사용됩니다.

시나리오 배포

이 배포는 두 개의 리소스 그룹을 만듭니다. 첫 번째는 모의 온-프레미스 네트워크를 보유하고 두 번째는 허브 및 스포크 네트워크 세트를 보유합니다. 모의 온-프레미스 네트워크와 허브 네트워크는 Azure Virtual Network 게이트웨이를 사용하여 사이트 간의 연결을 형성합니다. 이 구성은 온-프레미스 데이터 센터를 Azure에 연결하는 방법과 매우 유사합니다.

이 배포를 완료하는데 최대 45분이 소요될 수 있습니다. 권장되는 배포 방법은 아래에 있는 포털 옵션을 사용하는 것입니다.

다음 단추를 사용하여 Azure Portal을 통해 참조를 배포합니다.

Deploy to Azure

배포가 완료되면 새로 만든 연결 리소스를 확인하여 사이트 간 연결을 확인합니다. Azure Portal에서 '연결'을 검색하고 각 연결의 상태를 확인합니다.

Screenshot showing the status of connections.

스포크 네트워크에 있는 IIS 인스턴스는 모의 온-프레미스 네트워크에 있는 가상 머신에서 액세스할 수 있습니다. 포함된 Azure Bastion 호스트를 사용하여 가상 머신에 대한 연결을 만들고, 웹 브라우저를 열고, 애플리케이션의 네트워크 부하 분산 장치 주소로 이동합니다.

자세한 내용 및 추가 배포 옵션은 보안 하이브리드 네트워크 솔루션 배포에 사용되는 ARM(Azure Resource Manager) 템플릿을 참조하세요.

다음 단계