Azure Virtual Network Manager의 보안 관리자 규칙
이 문서에서는 Azure Virtual Network Manager의 보안 관리자 규칙에 대해 알아봅니다. 보안 관리자 규칙은 네트워크 그룹 내의 모든 가상 네트워크에 적용되는 전역 네트워크 보안 규칙을 정의하는 데 사용됩니다. 보안 관리자 규칙의 정의, 작동 방식 및 사용해야 하는 경우에 대해 알아봅니다.
보안 관리자 규칙이란?
보안 관리자 규칙은 가상 네트워크의 규칙 컬렉션에 정의된 보안 정책을 적용하는 전역 네트워크 보안 규칙입니다. 이러한 규칙은 대상 네트워크 그룹 내의 가상 네트워크에서 트래픽을 허용, 항상 허용 또는 거부하는 데 사용할 수 있습니다. 이러한 네트워크 그룹은 가상 네트워크 관리자 인스턴스의 범위 내에서 가상 네트워크로만 구성됩니다. 보안 관리자 규칙은 가상 네트워크 관리자가 관리하지 않는 가상 네트워크에 적용할 수 없습니다.
다음은 보안 관리자 규칙을 사용할 수 있는 몇 가지 시나리오입니다.
시나리오 | 설명 |
---|---|
고위험 네트워크 포트에 대한 액세스 제한 | 보안 관리자 규칙은 RDP(원격 데스크톱 프로토콜)용 포트 3389 또는 SSH(Secure Shell)용 포트 22와 같이 일반적으로 공격자의 대상이 되는 특정 포트의 트래픽을 차단하는 데 사용할 수 있습니다. |
규정 준수 요구 사항 적용 | 보안 관리자 규칙을 사용하여 규정 준수 요구 사항을 적용할 수 있습니다. 예를 들어 특정 IP 주소 또는 네트워크 블록의 트래픽을 차단합니다. |
중요한 데이터 보호 | 보안 관리자 규칙을 사용하여 특정 IP 주소 또는 서브넷의 트래픽을 차단하여 중요한 데이터에 대한 액세스를 제한할 수 있습니다. |
네트워크 구분 적용 | 보안 관리자 규칙을 사용하여 가상 네트워크 또는 서브넷 간의 트래픽을 차단하여 네트워크 구분을 적용할 수 있습니다. |
응용 프로그램 수준 보안 적용 | 보안 관리자 규칙을 사용하여 특정 애플리케이션 또는 서비스 간 트래픽을 차단하여 애플리케이션 수준 보안을 적용할 수 있습니다. |
Azure Virtual Network Manager를 사용하면 보안 관리자 규칙을 관리하는 중앙 집중식 위치가 있습니다. 중앙 집중화를 사용하면 대규모 보안 정책을 정의하고 한 번에 여러 가상 네트워크에 적용할 수 있습니다.
참고 항목
현재 보안 관리자 규칙은 관리되는 가상 네트워크의 범위에 속하는 프라이빗 엔드포인트에는 적용되지 않습니다.
보안 관리자 규칙은 어떤 방식으로 작동할까요?
보안 관리자 규칙은 지정된 방향으로 특정 포트, 프로토콜 및 원본/대상 IP 접두사에 대한 트래픽을 허용하거나 거부합니다. 보안 관리자 규칙을 정의할 때 다음 조건을 지정합니다.
- 규칙의 우선 순위
- 수행할 작업(허용, 거부 또는 항상 허용)
- 트래픽 방향(인바운드 또는 아웃바운드)
- 사용할 프로토콜
여러 가상 네트워크에 보안 정책을 적용하려면 보안 관리자 구성을 만들고 배포합니다. 이 구성에는 규칙 컬렉션 집합이 포함되며 각 규칙 컬렉션에는 하나 이상의 보안 관리자 규칙이 포함됩니다. 이 구성이 만들어지면 규칙 컬렉션을 보안 관리자 규칙이 필요한 네트워크 그룹과 연결합니다. 그러면 구성이 배포될 때 네트워크 그룹에 포함된 모든 가상 네트워크에 규칙이 적용됩니다. 단일 구성은 여러 가상 네트워크에서 보안 정책을 중앙 집중화하고 확장 가능한 적용을 제공합니다.
Important
한 지역에 하나의 보안 관리자 구성만 배포할 수 있습니다. 그러나 한 지역에는 여러 연결 구성이 있을 수 있습니다. 지역에 여러 보안 관리자 구성을 배포하려면 대신 보안 구성에 여러 규칙 컬렉션을 만들 수 있습니다.
보안 관리자 규칙 및 NSG(네트워크 보안 그룹)를 평가하는 방법
보안 관리자 규칙 및 NSG(네트워크 보안 그룹)를 사용하여 Azure에서 네트워크 보안 정책을 적용할 수 있습니다. 그러나 범위와 우선 순위가 다릅니다.#
보안 관리자 규칙은 중앙 거버넌스 팀의 네트워크 관리자가 사용하도록 되어 있으므로 필요에 따라 보안을 추가로 지정하기 위해 개별 애플리케이션 또는 서비스 팀에 NSG 규칙을 위임합니다. 보안 관리자 규칙은 NSG보다 우선 순위가 높으며 NSG 규칙보다 먼저 평가됩니다.
반면 NSG는 개별 서브넷 또는 네트워크 인터페이스에서 네트워크 트래픽을 필터링하는 데 사용됩니다. 개별 애플리케이션 또는 서비스 팀에서 필요에 따라 보안을 추가로 지정하는 데 사용됩니다. NSG는 보안 관리자 규칙보다 우선 순위가 낮으며 보안 관리자 규칙 후에 평가됩니다.
보안 관리자 규칙은 현재 가상 네트워크 수준에서 적용되는 반면, 네트워크 보안 그룹은 서브넷 및 NIC 수준에서 연결할 수 있습니다. 다음 표에서는 이러한 차이점과 유사점을 보여줍니다.
규칙 유형. | 대상 사용자 | 적용 대상 | 계산 순서 | 동작 유형 | 매개 변수 |
---|---|---|---|---|---|
보안 관리자 규칙 | 네트워크 관리자, 중앙 거버넌스 팀 | 가상 네트워크 | 높은 우선 순위 | 허용, 거부, 항상 허용 | 우선 순위, 프로토콜, 작업, 원본, 대상 |
네트워크 보안 그룹 규칙 | 개별 팀 | 서브넷, NIC | 낮은 우선 순위(보안 관리자 규칙 이후) | 허용, 거부 | 우선 순위, 프로토콜, 작업, 원본, 대상 |
보안 관리자 규칙은 트래픽에 대해 허용, 항상 허용 및 거부의 세 가지 작업을 수행할 수 있습니다. 만들어지면 허용 규칙이 먼저 평가되고 네트워크 보안 그룹 규칙이 다음으로 평가됩니다. 이 작업을 사용하면 필요한 경우 네트워크 보안 그룹 규칙이 트래픽을 다르게 처리할 수 있습니다.
항상 허용 또는 거부 규칙을 만들면 보안 관리자 규칙이 평가된 후 트래픽 평가가 종료됩니다. 항상 허용 규칙을 사용하면 트래픽이 리소스로 직접 이동하고 NSG 규칙에 의해 추가(및 충돌 가능성이 있는) 평가를 종료합니다. 이 작업은 트래픽을 적용하고 네트워크 보안 그룹 규칙에 의한 거부를 방지하는 데 유용할 수 있습니다. 거부 규칙을 사용하면 트래픽이 대상에 전달되지 않고 중지됩니다. 보안 관리자 규칙은 NSG를 사용하지 않으므로 고유한 기본 보안 규칙을 만드는 데 사용할 수 있습니다.
보안 관리자 규칙과 NSG를 함께 사용하면 전역 및 개별 수준에서 네트워크 보안 정책을 적용하여 가상 네트워크가 안전하고 조직의 보안 정책을 준수하도록 할 수 있습니다.
Important
보안 관리자 규칙이 배포되면 최종 일관성 모델이 사용됩니다. 즉, 보안 관리자 규칙이 결국에는 짧은 지연 후에 가상 네트워크에 포함된 리소스에 적용됩니다. 이미 보안 관리자 규칙이 적용된 가상 네트워크에 추가된 리소스도 결국 이러한 지연 후에 동일한 보안 관리자 규칙을 받게 됩니다.
보안 관리자 규칙의 이점
보안 관리자 규칙은 조직의 리소스를 보호하는 데 많은 이점을 제공합니다. 보안 관리자 규칙을 사용하면 허용된 트래픽을 적용하고 네트워크 보안 그룹 규칙과 충돌로 인한 거부를 방지할 수 있습니다. NSG를 사용하지 않는 기본 보안 관리자 규칙을 만들 수도 있습니다. 이러한 기본 규칙은 애플리케이션 소유자가 NSG를 잘못 구성하거나 설정하는 것을 잊은 경우에 특히 유용할 수 있습니다. 또한 보안 관리자 규칙은 대규모로 보안을 관리하는 방법을 제공하여 점점 더 많은 네트워크 리소스와 함께 발생하는 운영 오버헤드를 줄입니다.
고위험 포트 보호
업계 연구 및 Microsoft의 제안에 따라 고객은 이 고위험 포트 목록에 대한 보안 관리자 규칙을 사용하여 외부로부터의 트래픽을 제한하는 것이 좋습니다. 이러한 포트는 리소스 관리 또는 비보안/암호화되지 않은 데이터 전송에 사용되는 경우가 많으며, 인터넷에 노출되어서는 안 됩니다. 그러나 특정 가상 네트워크 및 해당 리소스에서 관리 또는 기타 프로세스에 대한 트래픽을 허용해야 하는 경우가 있습니다. 필요한 경우 예외를 만들 수 있습니다. 이러한 유형의 시나리오에서 예외가 있는 고위험 포트를 차단하는 방법을 알아봅니다.
포트 | 프로토콜 | 설명 |
---|---|---|
20 | TCP | 암호화되지 않은 FTP 트래픽 |
21 | TCP | 암호화되지 않은 FTP 트래픽 |
22 | TCP | SSH. 잠재적 무차별 암호 대입 공격(brute force attack) |
23 | TCP | TFTP는 인증되지 않거나 암호화되지 않은 트래픽을 허용합니다. |
69 | UDP | TFTP는 인증되지 않거나 암호화되지 않은 트래픽을 허용합니다. |
111 | TCP/UDP | RPC. 암호화되지 않은 인증이 허용됩니다. |
119 | TCP | 암호화되지 않은 인증을 위한 NNTP |
135 | TCP/UDP | 엔드포인트 매퍼, 여러 원격 관리 서비스 |
161 | TCP | 비보안/미인증을 위한 SNMP |
162 | TCP/UDP | 비보안/미인증을 위한 SNMP 트랩 |
445 | TCP | SMB - 잘 알려진 공격 벡터 |
512 | TCP | Rexec on Linux - 암호화 인증이 없는 원격 명령 |
514 | TCP | 원격 셸 - 인증 또는 암호화가 없는 원격 명령 |
593 | TCP/UDP | HTTP RPC EPMAP - 암호화되지 않은 원격 프로시저 호출 |
873 | TCP | Rsync - 암호화되지 않은 파일 전송 |
2049 | TCP/UDP | 네트워크 파일 시스템 |
3389 | TCP | RDP - 일반적인 무차별 암호 대입 공격(brute force attack) 포트 |
5800 | TCP | HTTP를 통한 VNC 원격 프레임 버퍼 |
5900 | TCP | HTTP를 통한 VNC 원격 프레임 버퍼 |
11211 | UDP | Memcached |
대규모 관리
Azure Virtual Network Manager는 보안 관리자 규칙을 사용하여 보안 정책을 규모에 맞게 관리하는 방법을 제공합니다. 네트워크 그룹에 보안 관리자 구성을 적용하면 네트워크 그룹 범위의 모든 가상 네트워크 및 해당 네트워크에 포함된 리소스는 정책의 보안 관리자 규칙을 받습니다.
새 리소스는 기존 리소스와 함께 보호됩니다. 예를 들어 보안 관리자 규칙 범위에서 새 VM을 가상 네트워크에 추가하는 경우 이러한 VM도 자동으로 보호됩니다. 이러한 VM을 배포한 직후 보안 관리자 규칙이 적용되어 보호됩니다.
새 보안 위험이 식별되면 새 위험으로부터 보호하기 위한 보안 관리자 규칙을 만들고 이를 네트워크 그룹에 적용하여 규모에 맞게 배포할 수 있습니다. 이 새 규칙이 배포되면 네트워크 그룹 범위의 모든 리소스가 현재와 미래에 보호됩니다.
보안 관리자 규칙의 미적용
대부분의 경우 보안 관리자 규칙은 네트워크 그룹의 적용된 보안 구성 범위 내에 있는 모든 가상 네트워크 및 서브넷에 적용됩니다. 그러나 서비스의 네트워크 요구 사항으로 인해 보안 관리자 규칙을 적용하지 않는 일부 서비스가 있습니다. 서비스의 네트워크 의도 정책은 이러한 요구 사항을 적용합니다.
가상 네트워크 수준에서 보안 관리자 규칙 미적용
기본적으로 보안 관리자 규칙은 다음 서비스를 포함하는 가상 네트워크에 적용되지 않습니다.
- Azure SQL Managed Instance
- Azure Databricks
가상 네트워크에 이러한 서비스가 포함된 경우 보안 관리자 규칙은 이 가상 네트워크를 건너뜁니다. 이 가상 네트워크에 허용 규칙을 적용하려면 securityConfiguration.properties.applyOnNetworkIntentPolicyBasedServices .NET 클래스에 설정된 AllowRulesOnly
필드를 사용하여 보안 구성을 만듭니다. 설정된 경우 보안 구성의 허용 규칙만 이 가상 네트워크에 적용됩니다. 거부 규칙은 이 가상 네트워크에 적용되지 않습니다. 이러한 서비스가 없는 가상 네트워크는 허용 및 거부 규칙을 계속 사용할 수 있습니다.
허용 규칙만 사용하여 보안 구성을 만들고 Azure PowerShell 및 Azure CLI를 사용하여 가상 네트워크에 배포할 수 있습니다.
참고 항목
여러 Azure Virtual Network Manager 인스턴스가 동일한 가상 네트워크에 securityConfiguration.properties.applyOnNetworkIntentPolicyBasedServices
클래스의 다른 설정을 적용하는 경우 범위가 가장 높은 네트워크 관리자 인스턴스의 설정이 사용됩니다.
두 개의 가상 네트워크 관리자가 있다고 가정해 보겠습니다. 첫 번째 네트워크 관리자에는 루트 관리 그룹으로 범위가 지정되며 securityConfiguration.properties.applyOnNetworkIntentPolicyBasedServices
클래스에서 AllowRulesOnly로 설정된 보안 구성이 있습니다. 두 번째 가상 네트워크 관리자에는 루트 관리 그룹에 구독으로 범위가 지정되며 보안 구성에서 없음 기본 필드를 사용합니다. 두 구성 모두 동일한 가상 네트워크에 보안 관리자 규칙을 적용하면 AllowRulesOnly 설정이 가상 네트워크에 적용됩니다.
서브넷 수준에서 보안 관리자 규칙 미적용
마찬가지로 일부 서비스는 서브넷의 가상 네트워크가 보안 관리자 구성의 범위 내에 있는 경우 서브넷 수준에서 보안 관리자 규칙을 적용하지 않습니다. 서비스 포함 사항:
- Azure Application Gateway
- Azure Bastion
- Azure Firewall
- Azure Route Server
- Azure VPN Gateway
- Azure Virtual WAN
- Azure ExpressRoute 게이트웨이
이 경우 보안 관리자 규칙은 이러한 서비스를 사용하는 서브넷의 리소스에 영향을 주지 않습니다. 그러나 동일한 가상 네트워크 내의 다른 서브넷에는 보안 관리자 규칙이 적용됩니다.
참고 항목
Azure Application Gateway를 포함하는 서브넷에 보안 관리자 규칙을 적용하려면 각 서브넷에 네트워크 격리를 사용하도록 설정된 상태로 프로비전된 게이트웨이만 포함되어 있는지 확인합니다. 서브넷에 네트워크 격리가 없는 Azure Application Gateway가 포함된 경우 보안 관리자 규칙이 이 서브넷에 적용되지 않습니다.
보안 관리자 필드
보안 관리자 규칙을 정의할 때는 필수 필드 및 선택적 필드가 있습니다.
필수 필드
우선 순위
보안 관리자 규칙의 우선 순위는 1에서 4096 사이의 정수입니다. 값이 낮을수록 규칙의 우선 순위가 높아집니다. 예를 들어 우선 순위가 10인 거부 규칙은 우선 순위가 20인 허용 규칙보다 우선합니다.
Action
보안 규칙에 대한 세 가지 작업 중 하나를 정의할 수 있습니다.
작업 | 설명 |
---|---|
허용 | 지정된 방향에서 특정 포트, 프로토콜 및 원본/대상 IP 접두사에 대한 트래픽을 허용합니다. |
Deny | 지정된 방향에서 특정 포트, 프로토콜 및 원본/대상 IP 접두사에 대한 트래픽을 차단합니다. |
항상 허용 | 우선 순위가 낮은 다른 규칙이나 사용자 정의 네트워크 보안 그룹에 관계없이 지정된 방향의 지정된 포트, 프로토콜 및 원본/대상 IP 접두사에 대한 트래픽을 허용합니다. |
방향
규칙이 적용되는 트래픽의 방향을 지정할 수 있습니다. 인바운드 또는 아웃바운드를 정의할 수 있습니다.
프로토콜
현재 보안 관리자 규칙에서 지원되는 프로토콜은 다음과 같습니다.
- TCP
- UDP
- ICMP
- ESP
- AH
- 모든 프로토콜
선택 필드
원본 및 대상 유형
- IP 주소: CIDR 표기법으로 IPv4 또는 IPv6 주소 또는 주소 블록을 제공할 수 있습니다. 여러 IP 주소를 나열하려면 각 IP 주소를 쉼표로 구분합니다.
- 서비스 태그: 지역 또는 전체 서비스에 따라 특정 서비스 태그를 정의할 수 있습니다. 지원되는 태그 목록은 사용 가능한 서비스 태그를 참조하세요.
원본 및 대상 포트
원본 또는 대상에서 차단할 특정 공통 포트를 정의할 수 있습니다. 일반적인 TCP 포트 목록은 다음과 같습니다.
Ports | 서비스 이름 |
---|---|
20, 21 | FTP |
22 | SSH |
23 | 텔넷 |
25 | SMTP |
53 | DNS |
80 | HTTP |
443 | HTTPS |
3389 | RDP |
1433 | SQL |
다음 단계
보안 관리자 구성을 사용하여 네트워크 트래픽을 차단하는 방법에 대해 알아봅니다.