Microsoft AZ-500: 네트워크 보안 아키텍처 — 학습 가이드
다음의 일부입니다: Microsoft Azure Security Engineer Associate AZ-500 — 학습 가이드. 검증된 답안으로 연습하기: Microsoft 시험 허브, 또는 다음에서 시간 제한 모의고사 풀기: ExamRoll.io.
개요
Azure 네트워크 보안 아키텍처는 최소 권한 연결을 강제하고, 침해를 가정하며, 지속적인 모니터링을 구축합니다. 이 아키텍처는 가상 네트워크 내 마이크로 세분화, 동서(east-west) 및 이그레스(egress) 트래픽에 대한 상태 저장 제어 플레인, 인터넷 연결 엔드포인트에 대한 에지 보호, PaaS에 대한 프라이빗 액세스를 결합합니다. 잘 설계된 아키텍처는 강력한 네트워크 경계, 명시적 라우팅, 검증 가능한 원격 분석(telemetry)을 유지하면서 애플리케이션 계층에서 ID 인식 액세스를 우선적으로 처리합니다.
가상 네트워크 제어 및 세분화
서브넷은 첫 번째 세분화 경계입니다. 신뢰도, 수명 주기, 정책이 유사한 워크로드는 동일한 서브넷에 배치하고, 계층(웹, 앱, 데이터)을 분리하여 독립적인 정책과 경로를 적용할 수 있도록 하십시오. 관리 도구, 점프 호스트, 비즈니스 워크로드가 혼재된 플랫한 “공유” 서브넷은 피해야 합니다. 이는 정책을 복잡하게 만들고 영향 반경을 넓힙니다.
Network Security Group(NSG)은 서브넷별 또는 NIC별로 상태 저장 L3–L4 필터링을 적용합니다. 인바운드 및 아웃바운드 규칙은 우선순위(낮은 숫자가 먼저)에 따라 평가되며, 마지막에는 암시적인 DenyAll이 있습니다. NSG는 상태를 저장하므로(stateful), 허용된 흐름에 대한 응답은 자동으로 허용되어 임시 포트 규칙이 거의 필요하지 않습니다. 운영 관점에서는 광범위한 제어를 위해 NSG를 서브넷에 바인딩한 다음, 중요한 NIC에 대해 세부적으로 조정하십시오. “임시” 허용 규칙에 대해서는 항상 소유자, 목적, 만료일을 문서화해야 합니다.
Application Security Group(ASG)을 사용하면 IP 대신 이름으로 VM 그룹을 참조할 수 있으므로, 규칙이 스케일링 및 IP 변경에도 유지됩니다. VM을 역할 기반 ASG(예: asg-web, asg-app)로 태그하고 “asg-web → asg-app TCP 443"과 같은 정책을 표현할 수 있습니다. 이를 통해 규칙 확산과 운영 드리프트를 줄일 수 있습니다.
유효 보안 규칙은 NIC와 해당 서브넷 모두에 적용된 NSG를 병합한 결과입니다. (우선순위에 따라) 가장 구체적으로 일치하는 허용/거부 규칙이 적용됩니다. 배포 기간 전에 충돌하는 항목을 찾아내려면 포털의 “유효 보안 규칙” 또는 Network Watcher IP 흐름 확인을 통해 검증하십시오.
서비스 태그(예: AzureLoadBalancer, Storage, Sql, Internet, VirtualNetwork)는 Microsoft에서 유지 관리하며, 크고 동적인 IP 공간을 안정적인 규칙 대상으로 축약합니다. 서비스 IP 순환으로 인한 중단을 피하려면 수동 IP 목록보다 서비스 태그를 사용하는 것이 좋습니다. 예를 들어, 광범위한 인터넷 액세스는 거부하면서 이그레스 트래픽을 Storage 및 Sql로 제한할 수 있습니다.
마이크로 세분화 및 제로 트러스트는 다음을 통해 실현됩니다.
- 기본 거부(deny-by-default) NSG를 적용하고 명시적이고 최소한의 경로만 엽니다.
- ASG를 사용하여 워크로드 의도를 인코딩합니다.
- Azure Firewall을 통해 서비스 태그 또는 FQDN 기반 필터링으로 이그레스 트래픽을 제한합니다.
- “서버에 공용 IP 없음” 정책을 시행하고 모든 이그레스 트래픽을 통제된 검사 지점을 통해 라우팅합니다.
예시: ASG를 사용하여 웹에서 앱으로의 TLS 통신을 허용하는 NSG 규칙을 만들고, 의도를 문서화하기 위해 암시적 거부보다 높은 우선순위에서 다른 모든 것을 명시적으로 거부합니다.
az network nsg rule create \
--resource-group rg-sec \
--nsg-name nsg-app \
--name allow-web-to-app-443 \
--priority 200 \
--direction Inbound \
--access Allow \
--protocol Tcp \
--source-asgs asg-web \
--destination-asgs asg-app \
--destination-port-ranges 443
네트워크 보안 서비스 및 에지 보호
Azure Firewall은 중앙 정책을 갖춘 완전한 상태 저장, 고가용성 방화벽입니다. 다음과 같은 경우에 사용하십시오.
- NSG만으로 부족할 때(도메인 이름, TLS 검사) 동서(east-west) 및 이그레스(egress) 제어.
- Application Gateway가 적합하지 않을 때 제한된 인바운드 노출을 위한 DNAT.
- 중앙 로깅 및 위협 인텔리전스.
규칙 컬렉션 그룹은 규칙 컬렉션(네트워크, 애플리케이션, NAT)을 포함하며, 우선순위에 따라 평가 순서가 정의됩니다. 그룹 내에서는 우선순위가 낮은 컬렉션이 먼저 평가되고, 규칙은 가장 구체적인 기준에 따라 일치됩니다. 인바운드 트래픽을 결정적으로 처리하려면 DNAT 규칙을 가장 높은 평가 우선순위를 가진 별도의 그룹에 유지하십시오.
- 네트워크 규칙은 5-튜플(IP/포트/프로토콜)로 필터링합니다.
- 애플리케이션 규칙은 FQDN, URL 범주(Premium)로 필터링하며 FQDN 태그를 사용할 수 있습니다.
- NAT 규칙은 인바운드 시나리오를 위해 공용 주소/포트를 개인 주소/포트로 변환합니다.
위협 인텔리전스 기반 필터링은 알려진 악성 IP/도메인을 차단합니다. 초기 기준 설정 중에는 ‘경고(Alert)’ 모드로 실행한 다음, 오탐(false positive)이 해결되면 ‘거부(Deny)’ 모드로 전환하십시오.
Premium 기능은 다음을 추가합니다.
- 아웃바운드 및 인바운드 암호 해독을 통한 TLS 검사로 L7 가시성 및 IDPS 활성화.
- 시그니처 및 취약점 우선순위 지정을 갖춘 침입 탐지 및 방지 시스템(IDPS).
- 세분화된 이그레스 제어를 위한 URL 필터링 및 웹 범주.
- 고급 인증서 및 TLS 정책 제어.
운영 관점에서는 방화벽을 전용 서브넷(AzureFirewallSubnet)에 격리하고, 모든 인터넷 바운드 트래픽을 UDR을 사용하여 방화벽으로 라우팅하며, Availability Zones를 활성화하십시오. 확장 가능한 관리, 상속, 공유 기본 정책을 사용한 개발/테스트 환경 분기를 위해서는 (클래식 규칙이 아닌) Firewall Policy를 사용하십시오.
웹 애플리케이션 방화벽(WAF)은 L7 공격(SQLi, XSS)을 완화합니다.
- Application Gateway의 WAF는 종단 간 TLS 및 사이트별 정책으로 지역 앱을 보호합니다. 클라이언트 TLS를 종료하고 선택적으로 백엔드로 재암호화합니다.
- Azure Front Door의 WAF는 통합 CDN, 봇 보호, 지역 제어를 통해 에지에서 전역적으로 분산된 앱을 보호합니다.
WAF 정책을 생성하여 게이트웨이, 리스너 또는 경로에 연결합니다. 처음에는 조정을 위해 탐지(Detection) 모드를 선택한 다음, 차단을 위해 방지(Prevention) 모드로 전환합니다. 관리형 규칙 집합(OWASP 3.x)을 사용하고 속도 제한 또는 IP 범위에 대한 사용자 지정 규칙을 추가합니다. 전체적인 보호를 약화시키지 않으면서 오탐을 줄이려면 제외(예: 특정 JSON 필드 또는 헤더)를 구성하십시오.
분산 서비스 거부(DDoS):
- Basic은 항상 켜져 있는 플랫폼 보호 기능이지만, 리소스별 원격 분석(telemetry)이나 완화 조정 기능은 제공하지 않습니다.
- DDoS Protection: Network Protection은 공용 IP별 적응형 튜닝, 자동 완화, 공격 분석, 경고, 비용 보호 크레딧, DDoS 신속 대응팀(Rapid Response) 액세스를 추가합니다.
공용 IP(Standard SKU)를 호스팅하는 VNet에서 Network Protection을 활성화하십시오. 메트릭, 진단 로그와 같은 원격 분석 데이터를 사용하여 공격 벡터, 완화 수명 주기 및 효율성을 관찰하십시오. 대규모 트래픽 부하를 흡수하고 직접적인 공용 노출을 최소화하기 위해 보호 대상 리소스를 부하 분산 장치 또는 Application Gateway 뒤에 설계하십시오. 계층화된 방어를 위해 WAF와 DDoS를 결합하십시오.
프라이빗 액세스, 하이브리드 연결 및 라우팅
Private Link와 private endpoint는 VNet에서 PaaS 서비스로의 프라이빗 IP 액세스를 제공합니다. private endpoint는 서브넷에 있는 NIC로, PaaS 리소스에 매핑됩니다. 트래픽은 Microsoft 백본 네트워크에 유지됩니다. 운영 단계:
- 우회를 방지하기 위해 PaaS 리소스에서 퍼블릭 네트워크 액세스를 비활성화합니다.
- 원활한 이름 확인을 위해 private DNS zone(예:
undefined
)을 배포하고 VNet에 연결합니다.
- 승인을 중앙에서 관리하고, 수동 승인 워크플로를 통해 구독/테넌트 격리를 고려합니다.
서비스 엔드포인트는 서브넷 ID를 퍼블릭 IP를 통해 PaaS 리소스로 확장하여, PaaS 방화벽이 특정 서브넷으로 액세스를 제한할 수 있게 합니다. 프라이빗 IP를 생성하지 않으므로, 이그레스(egress) 트래픽은 퍼블릭 엣지를 통과하지만 Microsoft 네트워크 내에 유지됩니다. 서비스 엔드포인트 정책을 사용하여 승인된 스토리지 계정만 허용합니다. IaaS VM의 컨테이너화된 워크로드의 경우, 파드/컨테이너 IP가 서브넷에서 할당되도록 Azure CNI를 사용해야 합니다. 그렇지 않으면 서비스 엔드포인트가 소스를 인식하지 못해 액세스가 실패할 수 있습니다.
DNS 확인 전략:
- Private Link의 경우, DNS 경로가 PaaS FQDN을 private endpoint로 확인하도록 해야 합니다. 하이브리드 전달을 위해 Azure Private DNS zone, 온프레미스 DNS의 조건부 전달자 또는 Azure DNS Private Resolver를 사용합니다.
- 간헐적인 퍼블릭 확인을 피하기 위해 신뢰할 수 있는(authoritative) split-horizon 매핑을 명확하게 유지합니다.
하이브리드 연결:
- VPN Gateway: 사이트 대 사이트 연결의 경우, IKEv2와 강력한 암호화를 사용하는 경로 기반 VPN을 사용합니다. BGP를 사용하여 동적으로 경로를 교환하면 확장 및 장애 조치가 단순화됩니다. 주소 공간이 겹치는 경우 VPN NAT를 적용합니다. 강제 터널링(forced tunneling)의 경우, BGP를 통해 온프레미스에서 0.0.0.0/0을 보급하거나, 0/0을 가상 어플라이언스로 보내는 UDR을 적용합니다. 필요에 따라 PaaS 프라이빗 범위에 대한 예외 경로를 확보해야 합니다.
- ExpressRoute: 프라이빗 연결을 제공하지만, 암호화는 기본적으로 제공되지 않습니다. 기밀성을 위해 MACsec(ExpressRoute Direct용)을 사용하거나 ER을 통해 IPsec을 실행합니다. Microsoft 피어링에는 BGP 커뮤니티와 경로 필터를 사용합니다. 복원력을 위해 회선 간 ECMP를 사용하는 액티브-액티브 구성을 지원합니다. 강제 터널링의 경우, 온프레미스에서 기본 경로를 수락하고, 충돌하는 UDR이 인터넷 경로를 블랙홀(blackhole)하지 않도록 해야 합니다.
사용자 정의 경로(UDR), NVA 및 우선순위:
- 경로 선택은 가장 긴 접두사 일치(longest prefix match)를 사용하며, 그 다음은 소스에 따라 UDR > BGP > 시스템 순서입니다. 잘못 적용된 0/0 UDR은 반환 경로를 블랙홀할 수 있으므로, Network Watcher의 다음 홉(next-hop) 기능으로 확인해야 합니다.
- NVA의 경우, NIC에서 IP 전달을 활성화하고 로드 밸런서 또는 Gateway Load Balancer 뒤에 배치하여 투명하고 확장 가능한 삽입을 구현합니다. 관리형 시나리오에서는 Azure Firewall을 사용하는 것이 좋습니다. 특정 벤더 기능이 필요한 경우, 여러 가용성 영역과 상태 프로브(health-probed) 로드 밸런싱을 사용하여 고가용성(HA)을 설계합니다.
보안 관리, 모니터링 및 원격 측정
안전한 관리 연결:
- Azure Bastion은 포털 또는 네이티브 클라이언트에서 TLS를 통해 RDP/SSH를 제공하여 VM 공용 IP를 노출하지 않습니다. 확장성, IP 기반 연결, 공유 가능 링크를 위해 Standard SKU를 사용하세요. RBAC 및 Just-in-Time으로 Bastion 액세스를 제한하세요.
- Just-in-Time VM 액세스(Defender for Cloud)는 NSG의 관리 포트를 닫고, 승인 및 소스 IP 제한이 있는 시간 제한 요청 시에만 엽니다. 공용 IP가 없는 환경(no-public-IP posture)과 정밀한 감사 추적을 위해 Bastion과 결합하여 사용하세요.
Network Watcher는 운영 검증 및 포렌식 기능을 제공합니다:
- NSG 흐름 로그(v2)는 스토리지에 기록되며, Log Analytics의 Traffic Analytics로 전송하여 상위 통신자(top talkers), 허용/거부된 흐름, 지리적 위치에 대한 인사이트를 얻을 수 있습니다.
- 연결 문제 해결(Connection troubleshoot)은 엔드투엔드 연결을 능동적으로 테스트하고 경로가 차단된 위치(NSG, UDR, DNS, 방화벽)를 보고합니다.
- 패킷 캡처는 온디맨드 또는 경고에 의해 트리거될 수 있습니다. 링 버퍼를 사용하여 스토리지를 줄이고 관련 포트만 캡처하세요.
- 유효 경로(Effective routes) 및 IP 흐름 확인(IP flow verify)은 UDR, BGP, NSG 전반의 런타임 결정을 매핑하여 확인합니다. CI/CD 사전 검사(preflight)에서 이러한 검사를 자동화하세요.
NSG 흐름 로그 및 분석을 빠르게 활성화하기:
az network watcher flow-log configure \
--resource-group rg-sec \
--nsg nsg-app \
--enabled true \
--traffic-analytics true \
--storage-account saflowlogs \
--workspace /subscriptions/<sub>/resourceGroups/rg-la/providers/Microsoft.OperationalInsights/workspaces/la-workspace
실용적인 문제 시나리오
Starbucks는 주문 관리 플랫폼을 Azure로 현대화하고 있습니다. 보안 목표는 앱/데이터 계층에 공용 IP를 사용하지 않고, 엄격한 이그레스(egress) 제어, 글로벌 웹 보호, 운영 가시성을 확보하는 것입니다.
- 지역별로 웹, 앱, 데이터 3개의 서브넷을 생성하고, 각 서브넷에 자체 NSG와 역할에 맞는 ASG를 할당합니다.
근거: ASG를 사용한 서브넷 기반 마이크로 세분화는 최소 권한 흐름(웹→앱 443, 앱→데이터 1433)을 구현하고 장애 영향 반경(blast radius)을 줄입니다. 계층별로 NSG를 분리하면 의도치 않은 정책 결합을 방지할 수 있습니다.
- OWASP 3.x와 속도 제한 및 지역 제한을 위한 사용자 지정 규칙을 사용하여 예방(Prevention) 모드의 WAF 정책과 함께 Azure Front Door Standard/Premium을 배포합니다.
근거: 글로벌 에지 보호는 대규모 트래픽을 흡수하고, 일반적인 L7 공격이 지역에 도달하기 전에 차단하며, 애니캐스트(anycast)를 통해 지연 시간을 줄입니다. 에지의 WAF 정책은 여러 지역에 걸쳐 일관된 정책을 적용합니다.
- 각 지역의 웹 계층 앞에 WAF v2가 포함된 Application Gateway를 배치합니다. App Gateway에서 TLS를 종료하고 백엔드로 다시 암호화합니다.
근거: 지역별 L7 라우팅 및 WAF는 Front Door를 보완하여, 검사 기능을 유지하면서 백엔드에 대한 앱별 mTLS, 쿠키 기반 선호도(affinity), 블루/그린 배포를 가능하게 합니다.
- DDoS Protection 활성화: Application Gateway 공용 IP가 포함된 VNet에 Network Protection을 적용합니다.
근거: IP별 적응형 완화, 원격 측정 및 비용 보호는 지역 진입점을 대상으로 하는 대규모 공격의 위험을 줄입니다. VNet 범위 지정은 리소스별 구성 없이 현재 및 미래의 모든 공용 IP를 보호합니다.
- 보안 허브에 Azure Firewall Premium을 배포하고, UDR을 사용하여 앱 및 데이터 서브넷의 모든 이그레스(egress) 트래픽을 이 방화벽으로 라우팅합니다. 아웃바운드 트래픽에 대해 TLS 검사 및 IDPS를 활성화하고, 필요한 FQDN만 허용하도록 애플리케이션 규칙을 구성합니다.
근거: 암호 해독 및 서명 기반 탐지를 통한 중앙 집중식 이그레스 제어는 C&C(command-and-control) 및 데이터 유출을 방지합니다. 애플리케이션 규칙은 IP 기반 규칙에 비해 유지 관리를 줄이고 Zero Trust 이그레스 원칙에 부합합니다.
- Azure SQL 및 Storage에 Private Link를 사용하고, 공용 네트워크 액세스를 비활성화하며, 모든 VNet에 연결된 프라이빗 DNS 영역을 구성합니다. 컨테이너화된 워크로드의 경우 Azure CNI를 사용합니다.
근거: 프라이빗 엔드포인트는 데이터 경로를 백본에 유지하고 공용 노출을 제거합니다. 프라이빗 DNS는 원활한 이름 확인을 보장합니다. Azure CNI는 파드(pod) IP가 서브넷에서 나오도록 보장하여 Private Link 및 서비스 엔드포인트가 올바르게 작동하도록 합니다.
- 활성-활성(active-active) 구성의 이중 회선으로 ExpressRoute를 구축하고 BGP를 통해 온프레미스 경로를 보급합니다. 민감한 트래픽에는 ER을 통한 IPsec을 활성화합니다. 처음에는 0/0 경로를 보급하지 말고, 스테이징 서브넷에서 먼저 강제 터널링을 시험(pilot)합니다.
근거: ER은 예측 가능하고 프라이빗한 연결을 제공하며, 계층화된 암호화는 고도로 민감한 흐름을 보호합니다. 강제 터널링의 통제된 롤아웃은 우발적인 인터넷 단절(internet blackholing)을 방지하고 예외 경로를 검증합니다.
- Azure Bastion을 통해 관리 액세스를 제공하고 모든 VM에 Just-in-Time을 강제 적용합니다. 서버에서 모든 공용 IP를 제거합니다.
근거: 최소 권한 원칙에 따라 감사 가능하고 시간 제한이 있는 액세스를 유지하면서 노출된 관리 표면을 제거합니다.
- NSG 흐름 로그와 Traffic Analytics를 켜고, Firewall 및 WAF 진단을 Log Analytics로 보내도록 구성하며, DDoS 완화 및 WAF 차단 급증에 대한 경고를 설정합니다.
근거: 통합된 원격 측정은 사전 예방적 탐지, 용량 계획, 신속한 인시던트 대응을 가능하게 합니다. 이상 패턴에 대한 경고는 공격과 잘못된 구성을 조기에 발견합니다.
- Azure Policy를 구현하여 NIC의 공용 IP를 거부하고, 모든 서브넷에 NSG를 요구하며, DDoS가 활성화되지 않은 VNet을 감사합니다. 정책 검사를 CI/CD에 통합합니다.
근거: 구성 변경(drift)을 방지하고, 대규모로 가드레일을 강제하며, 향후 워크로드를 위해 안전한 기본 설정을 반복 가능하게 만듭니다.
← ID 및 액세스 관리 · 모든 도메인 · 컴퓨팅 →
이 문제 연습하기 → · ExamRoll.io에서 시간 제한 연습 →
Pass the whole exam — not just this question
You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.
시험 합격하기 →