mirror of
https://github.com/HackTricks-wiki/hacktricks-cloud.git
synced 2026-03-12 21:22:57 -07:00
Translated ['', 'src/pentesting-cloud/azure-security/az-services/vms/az-
This commit is contained in:
@@ -4,25 +4,25 @@
|
||||
|
||||
## 기본 정보
|
||||
|
||||
Azure는 사용자가 Azure 클라우드 내에서 **격리된** **네트워크**를 생성할 수 있도록 하는 **가상 네트워크(VNet)**를 제공합니다. 이러한 VNet 내에서 가상 머신, 애플리케이션, 데이터베이스와 같은 리소스를 안전하게 호스팅하고 관리할 수 있습니다. Azure의 네트워킹은 클라우드 내의 통신(Azure 서비스 간)과 외부 네트워크 및 인터넷과의 연결을 지원합니다.\
|
||||
또한, VNet을 다른 VNet 및 온프레미스 네트워크와 **연결**할 수 있습니다.
|
||||
Azure는 **virtual networks (VNet)**를 제공하여 사용자가 Azure 클라우드 내에 **격리된** **네트워크**를 생성할 수 있게 합니다. 이러한 VNet 내에서는 가상 머신, 애플리케이션, 데이터베이스 등 리소스를 안전하게 호스팅하고 관리할 수 있습니다. Azure의 네트워킹은 클라우드 내부(예: Azure 서비스 간) 통신과 외부 네트워크 및 인터넷과의 연결을 모두 지원합니다.\
|
||||
또한, VNets를 다른 VNet이나 온프레미스 네트워크와 **연결**하는 것도 가능합니다.
|
||||
|
||||
## 가상 네트워크(VNET) 및 서브넷
|
||||
## Virtual Network (VNET) & 서브넷
|
||||
|
||||
Azure 가상 네트워크(VNet)는 클라우드에서 귀하의 네트워크를 나타내며, 귀하의 구독에 전념하는 Azure 환경 내에서 **논리적 격리**를 제공합니다. VNet은 Azure에서 가상 사설 네트워크(VPN)를 프로비저닝하고 관리할 수 있게 하며, 가상 머신(VM), 데이터베이스 및 애플리케이션 서비스와 같은 리소스를 호스팅합니다. 이들은 IP 주소 범위, 서브넷 생성, 라우트 테이블 및 네트워크 게이트웨이를 포함한 **네트워크 설정에 대한 완전한 제어**를 제공합니다.
|
||||
An Azure Virtual Network (VNet)은 클라우드에서 자신의 네트워크를 표현한 것으로, 구독 전용의 Azure 환경 내에서 **논리적 격리(logical isolation)**를 제공합니다. VNets를 통해 Azure에서 virtual private networks (VPNs)을 프로비저닝하고 관리할 수 있으며, Virtual Machines (VMs), 데이터베이스, 애플리케이션 서비스 같은 리소스를 호스팅할 수 있습니다. 또한 IP 주소 범위, 서브넷 생성, 라우트 테이블, 네트워크 게이트웨이 등 네트워크 설정에 대한 **완전한 제어(full control over network settings)**를 제공합니다.
|
||||
|
||||
**서브넷**은 특정 **IP 주소 범위**로 정의된 VNet 내의 세분화입니다. VNet을 여러 서브넷으로 분할함으로써 네트워크 아키텍처에 따라 리소스를 조직하고 보호할 수 있습니다.\
|
||||
기본적으로 동일한 Azure 가상 네트워크(VNet) 내의 모든 서브넷은 **서로 통신할 수 있습니다**.
|
||||
**서브넷**은 VNet 내의 세분화된 영역으로, 특정 **IP address ranges**로 정의됩니다. VNet을 여러 서브넷으로 분할하면 네트워크 아키텍처에 따라 리소스를 구성하고 보호할 수 있습니다.\
|
||||
기본적으로 동일한 Azure Virtual Network (VNet) 내의 모든 서브넷은 **서로 통신할 수 있습니다** 제약 없이.
|
||||
|
||||
**예시:**
|
||||
|
||||
- `MyVNet`의 IP 주소 범위는 10.0.0.0/16입니다.
|
||||
- **서브넷-1:** 웹 서버용 10.0.0.0/24.
|
||||
- **서브넷-2:** 데이터베이스 서버용 10.0.1.0/24.
|
||||
- `MyVNet` with an IP address range of 10.0.0.0/16.
|
||||
- **Subnet-1:** 10.0.0.0/24 웹 서버용.
|
||||
- **Subnet-2:** 10.0.1.0/24 데이터베이스 서버용.
|
||||
|
||||
### 열거
|
||||
|
||||
Azure 계정의 모든 VNet 및 서브넷을 나열하려면 Azure 명령줄 인터페이스(CLI)를 사용할 수 있습니다. 다음은 단계입니다:
|
||||
Azure 계정의 모든 VNet과 서브넷을 나열하려면 Azure Command-Line Interface (CLI)를 사용할 수 있습니다. 단계는 다음과 같습니다:
|
||||
|
||||
{{#tabs }}
|
||||
{{#tab name="az cli" }}
|
||||
@@ -47,18 +47,20 @@ Select-Object Name, AddressPrefix
|
||||
{{#endtab }}
|
||||
{{#endtabs }}
|
||||
|
||||
## 네트워크 보안 그룹 (NSG)
|
||||
## Network Security Groups (NSG)
|
||||
|
||||
**네트워크 보안 그룹 (NSG)**는 Azure 가상 네트워크 (VNet) 내의 Azure 리소스에 대한 네트워크 트래픽을 필터링합니다. 이는 **인바운드 및 아웃바운드 트래픽**을 위해 **열어야 할 포트**를 소스 포트, 소스 IP, 포트 목적지에 따라 지정할 수 있는 **보안 규칙** 세트를 포함하고 있으며, 우선 순위를 할당할 수 있습니다 (우선 순위 번호가 낮을수록 우선 순위가 높습니다).
|
||||
**Network Security Group (NSG)**는 Azure Virtual Network (VNet) 내의 Azure 리소스에 대한 들어오고 나가는 네트워크 트래픽을 필터링합니다.
|
||||
|
||||
NSG는 **서브넷 및 NIC**에 연결될 수 있습니다.
|
||||
이는 출발 포트, 출발 IP, 목적지 포트별로 인바운드 및 아웃바운드 트래픽에 대해 열어야 할 포트를 지정할 수 있는 **보안 규칙** 집합을 포함하며, 우선순위(숫자가 낮을수록 우선순위가 높음)를 지정할 수 있습니다.
|
||||
|
||||
NSG가 연결될 수 있는 대상은 **서브넷 및 NICs.**
|
||||
|
||||
**규칙 예시:**
|
||||
|
||||
- 모든 소스에서 웹 서버로의 HTTP 트래픽 (포트 80)을 허용하는 인바운드 규칙.
|
||||
- 특정 목적지 IP 주소 범위로의 SQL 트래픽 (포트 1433)만 허용하는 아웃바운드 규칙.
|
||||
- 모든 소스에서 웹 서버로의 HTTP 트래픽 (port 80)을 허용하는 인바운드 규칙.
|
||||
- 특정 목적지 IP 주소 범위로의 SQL 트래픽 (port 1433)만 허용하는 아웃바운드 규칙.
|
||||
|
||||
### 열거
|
||||
### Enumeration
|
||||
|
||||
{{#tabs }}
|
||||
{{#tab name="az cli" }}
|
||||
@@ -71,7 +73,7 @@ az network nsg show --name <nsg-name>
|
||||
az network nsg rule list --nsg-name <NSGName> --resource-group <ResourceGroupName> --query "[].{name:name, priority:priority, direction:direction, access:access, protocol:protocol, sourceAddressPrefix:sourceAddressPrefix, destinationAddressPrefix:destinationAddressPrefix, sourcePortRange:sourcePortRange, destinationPortRange:destinationPortRange}" -o table
|
||||
|
||||
# Get NICs and subnets using this NSG
|
||||
az network nsg show --name MyLowCostVM-nsg --resource-group Resource_Group_1 --query "{subnets: subnets, networkInterfaces: networkInterfaces}"
|
||||
az network nsg show --name <NSGName> --resource-group <ResourceGroupName> --query "{subnets: subnets, networkInterfaces: networkInterfaces}"
|
||||
```
|
||||
{{#endtab }}
|
||||
{{#tab name="PowerShell" }}
|
||||
@@ -81,32 +83,35 @@ Get-AzNetworkSecurityGroup | Select-Object Name, Location
|
||||
Get-AzNetworkSecurityGroup -Name <NSGName> -ResourceGroupName <ResourceGroupName>
|
||||
|
||||
# Get NSG rules
|
||||
(Get-AzNetworkSecurityGroup -ResourceGroupName <NSGName> -Name <ResourceGroupName>).SecurityRules
|
||||
Get-AzNetworkSecurityGroup -Name <NSGName> -ResourceGroupName <ResourceGroupName> |
|
||||
Select-Object -ExpandProperty SecurityRules |
|
||||
Select-Object Name, Priority, Direction, Access, Protocol, SourceAddressPrefix, DestinationAddressPrefix, SourcePortRange, DestinationPortRange
|
||||
|
||||
# Get NICs and subnets using this NSG
|
||||
(Get-AzNetworkSecurityGroup -Name <NSGName> -ResourceGroupName <ResourceGroupName>).Subnets
|
||||
(Get-AzNetworkSecurityGroup -Name <NSGName> -ResourceGroupName <ResourceGroupName>).NetworkInterfaces
|
||||
```
|
||||
{{#endtab }}
|
||||
{{#endtabs }}
|
||||
|
||||
## Azure Firewall
|
||||
|
||||
Azure Firewall는 클라우드 리소스를 보호하기 위해 트래픽을 검사하고 제어하는 **관리형 네트워크 보안 서비스**입니다. 이는 **상태 저장 방화벽**으로, Layer 3에서 7까지의 규칙에 따라 트래픽을 필터링하며, **Azure 내**(동서 트래픽) 및 **외부 네트워크와의 통신**(남북 트래픽)을 지원합니다. **가상 네트워크(VNet) 수준**에 배포되어 VNet의 모든 서브넷에 대한 중앙 집중식 보호를 제공합니다. Azure Firewall은 트래픽 수요에 맞게 자동으로 확장되며, 수동 설정 없이 높은 가용성을 보장합니다.
|
||||
Azure Firewall는 트래픽(L3–L7)을 east-west 및 north-south 흐름에 대해 필터링하는 **관리형, 상태 저장 방화벽**입니다. **VNet 레벨**에 배포되어 모든 서브넷에 대한 검사를 중앙화하고 가용성을 위해 자동으로 확장됩니다.
|
||||
|
||||
세 가지 SKU—**Basic**, **Standard**, **Premium**—로 제공되며, 각각 특정 고객 요구에 맞춰 조정됩니다:
|
||||
사용 가능한 SKUs: **Basic**, **Standard**, and **Premium**:
|
||||
|
||||
| Criteria/Feature | Option 1 | Option 2 | Option 3 |
|
||||
| ------------------------------ | ------------------------------------------------- | ------------------------------------------- | --------------------------------------------------------- |
|
||||
| **추천 사용 사례** | 제한된 요구를 가진 중소기업(SMB) | 일반 기업 사용, Layer 3–7 필터링 | 매우 민감한 환경(예: 결제 처리) |
|
||||
| **성능** | 최대 250 Mbps 처리량 | 최대 30 Gbps 처리량 | 최대 100 Gbps 처리량 |
|
||||
| **위협 인텔리전스** | 경고만 제공 | 경고 및 차단(악성 IP/도메인) | 경고 및 차단(고급 위협 인텔리전스) |
|
||||
| **L3–L7 필터링** | 기본 필터링 | 프로토콜 전반에 걸친 상태 저장 필터링 | 고급 검사를 통한 상태 저장 필터링 |
|
||||
| **고급 위협 보호** | 사용 불가 | 위협 인텔리전스 기반 필터링 | 침입 탐지 및 방지 시스템(IDPS) 포함 |
|
||||
| **TLS 검사** | 사용 불가 | 사용 불가 | 인바운드/아웃바운드 TLS 종료 지원 |
|
||||
| **가용성** | 고정 백엔드(2 VMs) | 자동 확장 | 자동 확장 |
|
||||
| **관리 용이성** | 기본 제어 | 방화벽 관리자 통해 관리 | 방화벽 관리자 통해 관리 |
|
||||
| **권장 사용 사례** | 요구 사항이 제한된 중소기업(SMBs) | 일반 기업용, Layer 3–7 필터링 | 매우 민감한 환경(예: 결제 처리) |
|
||||
| **성능** | 최대 250 Mbps 처리량 | 최대 30 Gbps 처리량 | 최대 100 Gbps 처리량 |
|
||||
| **위협 인텔리전스** | 경고만 | 경고 및 차단(악성 IP/도메인) | 경고 및 차단(고급 위협 인텔리전스) |
|
||||
| **L3–L7 필터링** | 기본 필터링 | 프로토콜 전반에 걸친 상태 저장 필터링 | 고급 검사 기능이 있는 상태 저장 필터링 |
|
||||
| **고급 위협 보호** | 사용 불가 | 위협 인텔리전스 기반 필터링 | 침입 탐지 및 방지 시스템(IDPS) 포함 |
|
||||
| **TLS 검사** | 사용 불가 | 사용 불가 | 인바운드/아웃바운드 TLS 종료 지원 |
|
||||
| **가용성** | 고정 백엔드(2 VMs) | 자동 확장 | 자동 확장 |
|
||||
| **관리 용이성** | 기본 제어 | Firewall Manager로 관리 | Firewall Manager로 관리 |
|
||||
|
||||
### Enumeration
|
||||
### 열거
|
||||
|
||||
{{#tabs }}
|
||||
{{#tab name="az cli" }}
|
||||
@@ -143,9 +148,14 @@ Get-AzFirewall
|
||||
|
||||
## Azure Route Tables
|
||||
|
||||
Azure **Route Tables**는 서브넷 내에서 네트워크 트래픽의 라우팅을 제어하는 데 사용됩니다. 이들은 패킷이 Azure 리소스, 인터넷 또는 Virtual Appliance나 Azure Firewall과 같은 특정 다음 홉으로 전달되는 방법을 지정하는 규칙을 정의합니다. 라우트 테이블을 **서브넷**과 연결할 수 있으며, 해당 서브넷 내의 모든 리소스는 테이블의 경로를 따릅니다.
|
||||
Azure **Route Tables (UDR)** 은 목적지 프리픽스(예: `10.0.0.0/16` 또는 `0.0.0.0/0`)와 next hop(예: Virtual Network, Internet, Virtual Network Gateway, Virtual Appliance)을 정의해 기본 라우팅을 재정의할 수 있게 합니다.
|
||||
|
||||
**예:** 서브넷이 검사를 위해 Network Virtual Appliance (NVA)를 통해 아웃바운드 트래픽을 라우팅해야 하는 리소스를 호스팅하는 경우, 라우트 테이블에 **라우트**를 생성하여 모든 트래픽(예: `0.0.0.0/0`)을 NVA의 개인 IP 주소로 다음 홉으로 리디렉션할 수 있습니다.
|
||||
> 라우트는 서브넷 수준에 적용됩니다; 해당 서브넷의 모든 VMs가 이 테이블을 따릅니다.
|
||||
|
||||
**예시:**
|
||||
|
||||
- 인터넷으로 향하는 트래픽은 기본 `0.0.0.0/0`을 사용하고 next hop으로 **Internet**을 지정합니다.
|
||||
- 아웃바운드 트래픽을 검사하려면 `0.0.0.0/0`을 Network Virtual Appliance (NVA) IP로 라우트합니다.
|
||||
|
||||
### **Enumeration**
|
||||
|
||||
@@ -155,8 +165,11 @@ Azure **Route Tables**는 서브넷 내에서 네트워크 트래픽의 라우
|
||||
# List Route Tables
|
||||
az network route-table list --query "[].{name:name, resourceGroup:resourceGroup, location:location}" -o table
|
||||
|
||||
# List routes for a table
|
||||
az network route-table route list --route-table-name <RouteTableName> --resource-group <ResourceGroupName> --query "[].{name:name, addressPrefix:addressPrefix, nextHopType:nextHopType, nextHopIpAddress:nextHopIpAddress}" -o table
|
||||
# List routes for a table (summary)
|
||||
az network route-table route list --resource-group <ResourceGroupName> --route-table-name <RouteTableName> --query "[].{name:name, addressPrefix:addressPrefix, nextHopType:nextHopType, nextHopIpAddress:nextHopIpAddress}" -o table
|
||||
|
||||
# List routes for a table (full)
|
||||
az network route-table route list --resource-group <ResourceGroupName> --route-table-name <RouteTableName>
|
||||
```
|
||||
{{#endtab }}
|
||||
{{#tab name="PowerShell" }}
|
||||
@@ -172,16 +185,16 @@ Get-AzRouteTable
|
||||
|
||||
## Azure Private Link
|
||||
|
||||
Azure Private Link는 **Azure 서비스에 대한 비공식적인 접근을 가능하게 하는 Azure의 서비스**로, **Azure 가상 네트워크(VNet)와 서비스 간의 트래픽이 Microsoft의 Azure 백본 네트워크 내에서 완전히 이동하도록 보장합니다**. 이 설정은 서비스를 VNet으로 가져옵니다. 이로 인해 데이터가 공용 인터넷에 노출되지 않아 보안이 강화됩니다.
|
||||
Azure Private Link는 Azure의 서비스로, **Azure 서비스에 대한 프라이빗 액세스를 가능하게** 하며 이는 **Azure 가상 네트워크(VNet)와 서비스 간의 트래픽이 Microsoft의 Azure 백본 네트워크 내에서만 이동하도록 보장**함으로써 구현됩니다. 이는 서비스를 VNet 내부로 가져오는 것과 같으며, 데이터를 공용 인터넷에 노출하지 않아 보안을 강화합니다.
|
||||
|
||||
Private Link는 Azure Storage, Azure SQL Database 및 Private Link를 통해 공유되는 사용자 정의 서비스와 같은 다양한 Azure 서비스와 함께 사용할 수 있습니다. 이는 자신의 VNet 내에서 또는 다른 Azure 구독에서 서비스를 안전하게 소비할 수 있는 방법을 제공합니다.
|
||||
Private Link는 Azure Storage, Azure SQL Database 같은 다양한 Azure 서비스나 Private Link를 통해 공유되는 커스텀 서비스와 함께 사용할 수 있습니다. 이는 자체 VNet 내부 또는 다른 Azure 구독으로부터 서비스에 안전하게 접근할 수 있는 방법을 제공합니다.
|
||||
|
||||
> [!CAUTION]
|
||||
> NSG는 개인 엔드포인트에 적용되지 않으므로, Private Link를 포함하는 서브넷에 NSG를 연결하는 것은 효과가 없습니다.
|
||||
> NSGs는 private endpoints에 적용되지 않습니다. 따라서 Private Link를 포함하는 서브넷에 NSG를 연결해도 아무런 효과가 없습니다.
|
||||
|
||||
**예시:**
|
||||
**예제:**
|
||||
|
||||
**VNet에서 Azure SQL Database에 안전하게 접근하고자 하는 시나리오를 고려해 보십시오**. 일반적으로 이는 공용 인터넷을 통해 이동해야 할 수 있습니다. Private Link를 사용하면 **VNet 내에 Azure SQL Database 서비스에 직접 연결되는 개인 엔드포인트를 생성할 수 있습니다**. 이 엔드포인트는 데이터베이스가 자신의 VNet의 일부인 것처럼 보이게 하며, 개인 IP 주소를 통해 접근할 수 있도록 하여 안전하고 비공식적인 접근을 보장합니다.
|
||||
예를 들어 VNet에서 안전하게 액세스하려는 **Azure SQL Database**가 있다고 가정해 보겠습니다. 일반적으로는 공용 인터넷을 거쳐야 할 수 있습니다. Private Link를 사용하면 VNet에 **프라이빗 엔드포인트(private endpoint)**를 생성하여 Azure SQL Database 서비스에 직접 연결할 수 있습니다. 이 엔드포인트는 데이터베이스를 마치 자체 VNet의 일부인 것처럼 보이게 하여 프라이빗 IP 주소를 통해 접근 가능하게 하고, 따라서 안전하고 비공개적인 액세스를 보장합니다.
|
||||
|
||||
### **Enumeration**
|
||||
|
||||
@@ -206,15 +219,62 @@ Get-AzPrivateEndpoint | Select-Object Name, Location, ResourceGroupName, Private
|
||||
{{#endtab }}
|
||||
{{#endtabs }}
|
||||
|
||||
### DNS OverDoS via service Private DNS zone links
|
||||
|
||||
When a VNet has a **Virtual Network Link** to a **service Private DNS zone** (e.g., `privatelink.blob.core.windows.net`), Azure **forces hostname resolution** for Private Link registered resources of that service type through the zone. If the zone **lacks the required `A` record** for a resource that workloads still access via its public endpoint, DNS resolution returns **NXDOMAIN** and clients never reach the public IP, causing an **availability DoS** without touching the resource itself.
|
||||
|
||||
**Abuse flow (control-plane DoS):**
|
||||
|
||||
1. Gain RBAC that allows creating **Private Endpoints** or modifying **Private DNS zone links**.
|
||||
2. Create a Private Endpoint for the same service type in another VNet (Azure auto-creates the service Private DNS zone and links it to that VNet).
|
||||
3. Link that **service Private DNS zone** to the victim VNet.
|
||||
4. Because the victim VNet now **forces resolution via the Private DNS zone** and no `A` record exists for the target resource in that zone, name resolution fails and the workload cannot reach the (still-public) endpoint. This applies to any Private Link–supported service (storage, Key Vault, ACR, Cosmos DB, Function Apps, OpenAI, etc.).
|
||||
|
||||
**대규모 탐색 (Azure Resource Graph):**
|
||||
|
||||
- VNETs linked to the blob Private DNS zone (forced resolution for PL-registered blob endpoints):
|
||||
```kusto
|
||||
resources
|
||||
| where type == "microsoft.network/privatednszones/virtualnetworklinks"
|
||||
| extend
|
||||
zone = tostring(split(id, "/virtualNetworkLinks")[0]),
|
||||
vnetId = tostring(properties.virtualNetwork.id)
|
||||
| join kind=inner (
|
||||
resources
|
||||
| where type == "microsoft.network/privatednszones"
|
||||
| where name == "privatelink.blob.core.windows.net"
|
||||
| project zoneId = id
|
||||
) on $left.zone == $right.zoneId
|
||||
| project vnetId
|
||||
```
|
||||
- Storage accounts가 public endpoint를 통해 접근할 수 있지만 **없는** Private Endpoint 연결 (위 링크가 추가되면 깨질 수 있음):
|
||||
```kusto
|
||||
Resources
|
||||
| where type == "microsoft.storage/storageaccounts"
|
||||
| extend publicNetworkAccess = properties.publicNetworkAccess
|
||||
| extend defaultAction = properties.networkAcls.defaultAction
|
||||
| extend vnetRules = properties.networkAcls.virtualNetworkRules
|
||||
| extend ipRules = properties.networkAcls.ipRules
|
||||
| extend privateEndpoints = properties.privateEndpointConnections
|
||||
| where publicNetworkAccess == "Enabled"
|
||||
| where defaultAction == "Deny"
|
||||
| where (isnull(privateEndpoints) or array_length(privateEndpoints) == 0)
|
||||
| extend allowedVnets = iif(isnull(vnetRules), 0, array_length(vnetRules))
|
||||
| extend allowedIps = iif(isnull(ipRules), 0, array_length(ipRules))
|
||||
| where allowedVnets > 0 or allowedIps > 0
|
||||
| project id, name, vnetRules, ipRules
|
||||
```
|
||||
## Azure Service Endpoints
|
||||
|
||||
Azure Service Endpoints는 가상 네트워크의 개인 주소 공간과 VNet의 ID를 Azure 서비스에 직접 연결하여 확장합니다. 서비스 엔드포인트를 활성화하면, **VNet의 리소스가 Azure의 백본 네트워크를 사용하여 Azure 서비스에 안전하게 연결할 수 있습니다**. 이는 **VNet에서 Azure 서비스로의 트래픽이 Azure 네트워크 내에 유지되도록 하여**, 보다 안전하고 신뢰할 수 있는 경로를 제공합니다.
|
||||
Azure Service Endpoints는 가상 네트워크의 private 주소 공간과 VNet의 식별(ID)을 Azure 서비스에 대한 직접 연결을 통해 확장합니다. Service endpoints를 활성화하면, **VNet 내 리소스가 Azure Storage나 Azure SQL Database 같은 Azure 서비스에 Azure backbone 네트워크를 통해 안전하게 연결할 수 있습니다.** 이는 Network Security Groups (NSGs)와 결합해 세분화된 트래픽 제어를 할 때 특히 유용합니다.
|
||||
|
||||
**예시:**
|
||||
**예:**
|
||||
|
||||
예를 들어, **Azure Storage** 계정은 기본적으로 공용 인터넷을 통해 접근할 수 있습니다. **VNet 내에서 Azure Storage에 대한 서비스 엔드포인트를 활성화하면**, VNet의 트래픽만이 스토리지 계정에 접근할 수 있도록 보장할 수 있습니다. 그런 다음 스토리지 계정 방화벽을 구성하여 VNet에서만 트래픽을 수락하도록 설정할 수 있습니다.
|
||||
- **Storage** Account와 VNET에 Service Endpoint가 **활성화**된 경우, storage account 방화벽에서 **오직 VNet으로부터의 인바운드 트래픽만 허용**하도록 설정할 수 있어, 스토리지 서비스에 대한 공용 IP 액세스 없이도 **보안 연결**을 강제할 수 있습니다.
|
||||
|
||||
### **Enumeration**
|
||||
Service Endpoints는 서비스에 대해 **private IP addresses를 요구하지 않으며**, 대신 보안 연결을 위해 Azure backbone에 의존합니다. Private Links와 비교하면 설정이 **더 쉬우나**, Private Links가 제공하는 동일한 수준의 격리와 세분성은 **제공하지 않습니다.**
|
||||
|
||||
### **열거**
|
||||
|
||||
{{#tabs }}
|
||||
{{#tab name="az cli" }}
|
||||
@@ -223,7 +283,10 @@ Azure Service Endpoints는 가상 네트워크의 개인 주소 공간과 VNet
|
||||
az network vnet list --query "[].{name:name, location:location, serviceEndpoints:serviceEndpoints}" -o table
|
||||
|
||||
# List Subnets with Service Endpoints
|
||||
az network vnet subnet list --resource-group <ResourceGroupName> --vnet-name <VNetName> --query "[].{name:name, serviceEndpoints:serviceEndpoints}" -o table
|
||||
az network vnet subnet list --resource-group <ResourceGroupName> --vnet-name <VNetName> --query "[].{name:name, serviceEndpoints:serviceEndpoints}"
|
||||
|
||||
# List Service Endpoints for a Subnet
|
||||
az network vnet subnet show --resource-group <ResourceGroupName> --vnet-name <VNetName> --name <SubnetName> --query "serviceEndpoints"
|
||||
```
|
||||
{{#endtab }}
|
||||
{{#tab name="PowerShell" }}
|
||||
@@ -237,73 +300,87 @@ Get-AzVirtualNetwork
|
||||
{{#endtab }}
|
||||
{{#endtabs }}
|
||||
|
||||
### 서비스 엔드포인트와 프라이빗 링크의 차이
|
||||
### Service Endpoints와 Private Links의 차이점
|
||||
|
||||
Microsoft는 [**문서**](https://learn.microsoft.com/en-us/azure/virtual-network/vnet-integration-for-azure-services#compare-private-endpoints-and-service-endpoints)에서 프라이빗 링크 사용을 권장합니다:
|
||||
Microsoft는 [**docs**](https://learn.microsoft.com/en-us/azure/virtual-network/vnet-integration-for-azure-services#compare-private-endpoints-and-service-endpoints)에서 Private Links 사용을 권장합니다:
|
||||
|
||||
<figure><img src="../../../../images/image (25).png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
**서비스 엔드포인트:**
|
||||
**Service Endpoints:**
|
||||
|
||||
- VNet에서 Azure 서비스로의 트래픽은 Microsoft Azure 백본 네트워크를 통해 공용 인터넷을 우회하여 이동합니다.
|
||||
- 엔드포인트는 Azure 서비스에 대한 직접 연결이며 VNet 내에서 서비스에 대한 프라이빗 IP를 제공하지 않습니다.
|
||||
- 서비스 자체는 VNet 외부에서 공용 엔드포인트를 통해 여전히 접근할 수 있으며, 서비스 방화벽을 구성하여 이러한 트래픽을 차단하지 않는 한 접근이 가능합니다.
|
||||
- 서브넷과 Azure 서비스 간의 일대일 관계입니다.
|
||||
- 프라이빗 링크보다 비용이 저렴합니다.
|
||||
- VNet에서 Azure 서비스로 가는 트래픽은 공용 인터넷을 우회하여 Microsoft Azure 백본 네트워크를 통해 이동합니다.
|
||||
- 엔드포인트는 Azure 서비스로의 직접 연결이며 VNet 내에서 서비스에 대한 프라이빗 IP를 제공하지 않습니다.
|
||||
- 서비스 자체는 서비스 방화벽에서 해당 트래픽을 차단하도록 구성하지 않는 한 VNet 외부에서 퍼블릭 엔드포인트를 통해 여전히 접근 가능합니다.
|
||||
- 서브넷과 Azure 서비스 간에는 일대일 관계입니다.
|
||||
- Private Links보다 비용이 적게 듭니다.
|
||||
|
||||
**프라이빗 링크:**
|
||||
**Private Links:**
|
||||
|
||||
- 프라이빗 링크는 Azure 서비스를 VNet 내의 프라이빗 엔드포인트를 통해 매핑하며, 이는 VNet 내의 프라이빗 IP 주소를 가진 네트워크 인터페이스입니다.
|
||||
- Azure 서비스는 이 프라이빗 IP 주소를 사용하여 접근되며, 마치 네트워크의 일부인 것처럼 보입니다.
|
||||
- 프라이빗 링크를 통해 연결된 서비스는 VNet 또는 연결된 네트워크에서만 접근할 수 있으며, 서비스에 대한 공용 인터넷 접근은 없습니다.
|
||||
- Azure 서비스 또는 Azure에 호스팅된 자체 서비스에 대한 안전한 연결을 가능하게 하며, 다른 사람이 공유하는 서비스에 대한 연결도 제공합니다.
|
||||
- 서비스 엔드포인트와 달리 VNet 내의 프라이빗 엔드포인트를 통해 더 세분화된 접근 제어를 제공합니다.
|
||||
- Private Link은 프라이빗 엔드포인트를 통해 Azure 서비스를 VNet으로 매핑합니다. 프라이빗 엔드포인트는 VNet 내의 프라이빗 IP를 가진 네트워크 인터페이스입니다.
|
||||
- 이 프라이빗 IP 주소를 사용해 Azure 서비스에 접근하므로 해당 서비스가 마치 네트워크의 일부인 것처럼 보입니다.
|
||||
- Private Link로 연결된 서비스는 귀하의 VNet 또는 연결된 네트워크에서만 접근할 수 있으며, 서비스에 대한 공용 인터넷 접근은 없습니다.
|
||||
- Azure 서비스 또는 Azure에 호스팅된 자체 서비스에 대한 보안 연결과 타인이 공유한 서비스로의 연결을 가능하게 합니다.
|
||||
- 서브넷 수준의 광범위한 접근 제어와 달리, VNet 내 프라이빗 엔드포인트를 통해 더 세분화된 접근 제어를 제공합니다.
|
||||
|
||||
요약하자면, 서비스 엔드포인트와 프라이빗 링크 모두 Azure 서비스에 대한 안전한 연결을 제공하지만, **프라이빗 링크는 서비스를 공용 인터넷에 노출하지 않고 프라이빗하게 접근하도록 보장함으로써 더 높은 수준의 격리와 보안을 제공합니다**. 반면 서비스 엔드포인트는 VNet 내에서 프라이빗 IP가 필요 없는 일반적인 경우에 Azure 서비스에 대한 간단하고 안전한 접근을 설정하기가 더 쉽습니다.
|
||||
요약하면, Service Endpoints와 Private Links 둘 다 Azure 서비스에 대한 보안 연결을 제공하지만, **Private Links는 서비스를 공용 인터넷에 노출하지 않고 프라이빗하게 접근되도록 보장하여 더 높은 수준의 격리와 보안을 제공합니다**. 반면 Service Endpoints는 VNet 내에서 프라이빗 IP가 필요하지 않은 일반적인 경우에 Azure 서비스에 대한 간단하고 안전한 접근을 설정하는 데 더 쉽습니다.
|
||||
|
||||
## Azure Front Door (AFD) 및 AFD WAF
|
||||
## Azure Front Door (AFD) & AFD WAF
|
||||
|
||||
**Azure Front Door**는 **전 세계 웹 애플리케이션의 빠른 배포**를 위한 확장 가능하고 안전한 진입점입니다. 이는 **글로벌 로드 밸런싱, 사이트 가속화, SSL 오프로드 및 웹 애플리케이션 방화벽(WAF)** 기능과 같은 다양한 서비스를 하나의 서비스로 **결합**합니다. Azure Front Door는 **사용자에게 가장 가까운 엣지 위치**에 기반한 지능형 라우팅을 제공하여 최적의 성능과 신뢰성을 보장합니다. 또한 URL 기반 라우팅, 다중 사이트 호스팅, 세션 친화성 및 애플리케이션 계층 보안을 제공합니다.
|
||||
**Azure Front Door**는 글로벌 웹 애플리케이션의 빠른 전달을 위한 확장 가능하고 보안적인 진입점입니다. 애플리케이션 가속, SSL offloading, 애플리케이션 레이어 보안(through Web Application Firewall - WAF)과 같은 다양한 서비스를 **결합**합니다. 전 세계의 엣지 POP(Point of Presence) 위치 개념 위에 구축되어 애플리케이션을 사용자에게 더 가깝게 제공합니다.
|
||||
|
||||
**Azure Front Door WAF**는 **웹 기반 공격으로부터 웹 애플리케이션을 보호**하도록 설계되었으며, 백엔드 코드를 수정할 필요가 없습니다. SQL 인젝션, 크로스 사이트 스크립팅 및 기타 일반적인 공격과 같은 위협으로부터 보호하기 위해 사용자 정의 규칙 및 관리 규칙 세트를 포함합니다.
|
||||
> Azure Front Door는 전 세계에 분산된 엣지 위치 네트워크를 제공하여 웹 애플리케이션(Azure 또는 다른 곳에 있는)에 대한 들어오는 트래픽을 **라우팅 및 가속(route and accelerate)**하고 성능을 향상시키며 보안을 강화합니다.
|
||||
|
||||
**예시:**
|
||||
|
||||
전 세계에 사용자들이 있는 글로벌 분산 애플리케이션이 있다고 가정해 보십시오. Azure Front Door를 사용하여 **사용자 요청을 애플리케이션을 호스팅하는 가장 가까운 지역 데이터 센터로 라우팅**할 수 있어 지연 시간을 줄이고 사용자 경험을 개선하며 **WAF 기능으로 웹 공격으로부터 방어할 수 있습니다**. 특정 지역에서 다운타임이 발생하면 Azure Front Door는 자동으로 트래픽을 다음 최적의 위치로 재라우팅하여 높은 가용성을 보장합니다.
|
||||
- 전 세계 사용자 기반을 가진 글로벌 이커머스 플랫폼의 경우, **Azure Front Door는 엣지 위치에서 정적 콘텐츠를 캐시할 수 있으며** **SSL offloading**을 제공해 지연 시간을 줄이고 더 반응성이 높은 사용자 경험을 제공합니다. 또한 일반적인 웹 취약점(SQL injection이나 XSS와 같은)으로부터 애플리케이션을 보호하기 위해 **WAF**를 제공합니다.
|
||||
|
||||
### 열거
|
||||
Azure Front Door는 헬스 프로브와 지연 시간을 기반으로 가장 가까운 사용 가능한 백엔드로 트래픽을 라우팅하여 **스마트 로드 밸런싱**을 제공하고 일관된 성능 및 가용성을 보장합니다. **WAF**와 통합함으로써 일반적인 웹 위협으로부터 보호하는 데 도움을 줍니다.
|
||||
|
||||
### **Enumeration**
|
||||
|
||||
{{#tabs }}
|
||||
{{#tab name="az cli" }}
|
||||
```bash
|
||||
# List Azure Front Door Instances
|
||||
# List Azure Front Door profiles
|
||||
az afd profile list --query "[].{name:name, location:location, resourceGroup:resourceGroup}" -o table
|
||||
|
||||
# List AFD endpoints
|
||||
az afd endpoint list --profile-name <ProfileName> --resource-group <ResourceGroupName> --query "[].{name:name, hostName:hostName, state:resourceState}" -o table
|
||||
|
||||
# Classic Azure Front Door (v1) profiles
|
||||
az network front-door list --query "[].{name:name, resourceGroup:resourceGroup, location:location}" -o table
|
||||
|
||||
# List Front Door WAF Policies
|
||||
# Classic Azure Front Door WAF policies
|
||||
az network front-door waf-policy list --query "[].{name:name, resourceGroup:resourceGroup, location:location}" -o table
|
||||
```
|
||||
{{#endtab }}
|
||||
{{#tab name="PowerShell" }}
|
||||
```bash
|
||||
# List Azure Front Door Instances
|
||||
# List Azure Front Door profiles
|
||||
Get-AzFrontDoorCdnProfile | Select-Object Name, Location, ResourceGroupName
|
||||
|
||||
# List AFD endpoints
|
||||
Get-AzFrontDoorCdnEndpoint -ProfileName <ProfileName> -ResourceGroupName <ResourceGroupName> | Select-Object Name, HostName, ResourceState
|
||||
|
||||
# Classic Azure Front Door (v1) profiles
|
||||
Get-AzFrontDoor
|
||||
|
||||
# List Front Door WAF Policies
|
||||
# Classic Azure Front Door WAF policies
|
||||
Get-AzFrontDoorWafPolicy -Name <policyName> -ResourceGroupName <resourceGroupName>
|
||||
```
|
||||
{{#endtab }}
|
||||
{{#endtabs }}
|
||||
|
||||
## Azure Application Gateway 및 Azure Application Gateway WAF
|
||||
## Azure Application Gateway and Azure Application Gateway WAF
|
||||
|
||||
Azure Application Gateway는 **웹 트래픽 로드 밸런서**로, **웹** 애플리케이션에 대한 트래픽을 관리할 수 있게 해줍니다. 이는 **Layer 7 로드 밸런싱, SSL 종료 및 웹 애플리케이션 방화벽(WAF) 기능**을 서비스로 제공하는 Application Delivery Controller(ADC)입니다. 주요 기능으로는 URL 기반 라우팅, 쿠키 기반 세션 친화성 및 보안 소켓 계층(SSL) 오프로드가 있으며, 이는 글로벌 라우팅 및 경로 기반 라우팅과 같은 복잡한 로드 밸런싱 기능이 필요한 애플리케이션에 중요합니다.
|
||||
Azure Application Gateway는 **웹 트래픽 로드 밸런서**로서 **웹** 애플리케이션으로의 트래픽을 관리할 수 있게 해줍니다. 이는 서비스형 Application Delivery Controller (ADC)에서 **Layer 7 load balancing, SSL termination, 및 web application firewall (WAF) 기능**을 제공합니다. 주요 기능으로는 URL 기반 라우팅, 쿠키 기반 세션 고정, 그리고 secure sockets layer (SSL) 오프로딩이 있으며, 이는 global routing 및 path-based routing과 같은 복잡한 로드밸런싱 기능이 필요한 애플리케이션에 중요합니다.
|
||||
|
||||
**예시:**
|
||||
**Example:**
|
||||
|
||||
사용자 계정 및 결제 처리와 같은 다양한 기능을 위한 여러 하위 도메인을 포함하는 전자 상거래 웹사이트가 있다고 가정해 보십시오. Azure Application Gateway는 **URL 경로에 따라 적절한 웹 서버로 트래픽을 라우팅**할 수 있습니다. 예를 들어, `example.com/accounts`로의 트래픽은 사용자 계정 서비스로, `example.com/pay`로의 트래픽은 결제 처리 서비스로 라우팅될 수 있습니다.\
|
||||
그리고 **WAF 기능을 사용하여 웹사이트를 공격으로부터 보호합니다.**
|
||||
사용자 계정, 결제 처리 등 기능별로 여러 서브도메인을 포함하는 이커머스 웹사이트가 있다고 가정해보세요. Azure Application Gateway는 **URL 경로에 따라 적절한 웹 서버로 트래픽을 라우팅할 수 있습니다**. 예를 들어 `example.com/accounts`로 오는 트래픽은 사용자 계정 서비스로, `example.com/pay`로 오는 트래픽은 결제 처리 서비스로 전달될 수 있습니다.\
|
||||
And **protect your website from attacks using the WAF capabilities.**
|
||||
|
||||
### **열거**
|
||||
### **Enumeration**
|
||||
|
||||
{{#tabs }}
|
||||
{{#tab name="az cli" }}
|
||||
@@ -320,20 +397,20 @@ az network application-gateway waf-config list --gateway-name <AppGatewayName> -
|
||||
{{#endtab }}
|
||||
{{#endtabs }}
|
||||
|
||||
## Azure Hub, Spoke & VNet Peering
|
||||
## VNet Peering & HUB and Spoke topologies
|
||||
|
||||
**VNet Peering**는 Azure의 네트워킹 기능으로 **서로 다른 가상 네트워크(VNet)를 직접적이고 원활하게 연결할 수 있게 해줍니다**. VNet 피어링을 통해 한 VNet의 리소스는 **마치 같은 네트워크에 있는 것처럼** 다른 VNet의 리소스와 개인 IP 주소를 사용하여 통신할 수 있습니다.\
|
||||
**VNet Peering은 온프레미스 네트워크와도 사용할 수 있으며**, 사이트 간 VPN 또는 Azure ExpressRoute를 설정하여 가능합니다.
|
||||
### VNet Peering
|
||||
|
||||
**Azure Hub and Spoke**는 Azure에서 네트워크 트래픽을 관리하고 조직하는 데 사용되는 네트워크 토폴로지입니다. **"허브"는 서로 다른 "스포크" 간의 트래픽을 제어하고 라우팅하는 중앙 지점입니다**. 허브는 일반적으로 네트워크 가상 장치(NVA), Azure VPN Gateway, Azure Firewall 또는 Azure Bastion과 같은 공유 서비스를 포함합니다. **"스포크"는 워크로드를 호스팅하고 VNet 피어링을 사용하여 허브에 연결되는 VNet입니다**, 이를 통해 허브 내의 공유 서비스를 활용할 수 있습니다. 이 모델은 여러 VNet에 걸쳐 있는 여러 워크로드가 사용할 수 있는 공통 서비스를 중앙 집중화하여 복잡성을 줄이고 깔끔한 네트워크 레이아웃을 촉진합니다.
|
||||
**VNet Peering**는 Azure의 기능으로, **서로 다른 Virtual Networks (VNets)를 직접적이고 원활하게 연결할 수 있도록 합니다**. VNet peering을 통해 한 VNet의 리소스는 사설 IP 주소를 사용하여 다른 VNet의 리소스와 통신할 수 있으며, **마치 동일한 네트워크에 있는 것처럼** 동작합니다.\\
|
||||
**VNet Peering은 온프레미스 네트워크와도 사용할 수 있습니다** — site-to-site VPN 또는 Azure ExpressRoute를 설정하여.
|
||||
|
||||
> [!CAUTION] > **Azure에서 VNET 피어링은 비전이적입니다**, 즉 스포크 1이 스포크 2에 연결되고 스포크 2가 스포크 3에 연결되어 있더라도 스포크 1은 스포크 3과 직접 통신할 수 없습니다.
|
||||
**Azure Hub and Spoke**는 VNet peering을 활용해 중앙의 **Hub VNet**을 생성하고 이를 여러 **Spoke VNets**에 연결하는 네트워크 아키텍처입니다. Hub에는 일반적으로 방화벽, DNS, Active Directory와 같은 공유 서비스가 포함되고, Spoke에는 애플리케이션 워크로드가 호스팅됩니다. 이 설계는 관리 단순화, 중앙화된 제어를 통한 보안 강화, 중복성 감소를 제공합니다.
|
||||
|
||||
**예시:**
|
||||
**Example:**
|
||||
|
||||
판매, 인사 및 개발과 같은 별도의 부서를 가진 회사를 상상해 보십시오. **각 부서는 자체 VNet(스포크)을 가지고 있습니다**. 이러한 VNet은 **중앙 데이터베이스, 방화벽 및 인터넷 게이트웨이와 같은 공유 리소스에 대한 접근이 필요합니다**, 이 모든 것은 **다른 VNet(허브)에 위치해 있습니다**. Hub and Spoke 모델을 사용함으로써 각 부서는 **공유 리소스를 허브 VNet을 통해 안전하게 연결할 수 있으며, 이러한 리소스를 공용 인터넷에 노출시키거나 수많은 연결로 복잡한 네트워크 구조를 만들 필요가 없습니다**.
|
||||
여러 부서(Finance, HR, IT)를 가진 대기업은 방화벽과 DNS 서버와 같은 공유 서비스를 제공하는 **Hub VNet with shared services**를 생성할 수 있습니다. 각 부서는 peering을 통해 Hub에 연결되는 자체 Spoke VNet을 가질 수 있습니다. 이를 통해 부서들은 리소스를 퍼블릭 인터넷에 노출하지 않고도 안전하게 통신하고 공유 서비스를 이용할 수 있습니다.
|
||||
|
||||
### Enumeration
|
||||
### **Enumeration**
|
||||
|
||||
{{#tabs }}
|
||||
{{#tab name="az cli" }}
|
||||
@@ -341,8 +418,8 @@ az network application-gateway waf-config list --gateway-name <AppGatewayName> -
|
||||
# List all VNets in your subscription
|
||||
az network vnet list --query "[].{name:name, location:location, addressSpace:addressSpace}" -o table
|
||||
|
||||
# List VNet peering connections for a given VNet
|
||||
az network vnet peering list --resource-group <ResourceGroupName> --vnet-name <VNetName> --query "[].{name:name, peeringState:peeringState, remoteVnetId:remoteVnetId}" -o table
|
||||
# List VNet Peerings
|
||||
az network vnet peering list --resource-group <ResourceGroupName> --vnet-name <VNetName> --query "[].{name:name, remoteVnetId:remoteVirtualNetwork.id, allowForwardedTraffic:allowForwardedTraffic, allowGatewayTransit:allowGatewayTransit}"
|
||||
|
||||
# List Shared Resources (e.g., Azure Firewall) in the Hub
|
||||
az network firewall list --query "[].{name:name, location:location, resourceGroup:resourceGroup}" -o table
|
||||
@@ -353,8 +430,8 @@ az network firewall list --query "[].{name:name, location:location, resourceGrou
|
||||
# List all VNets in your subscription
|
||||
Get-AzVirtualNetwork
|
||||
|
||||
# List VNet peering connections for a given VNet
|
||||
(Get-AzVirtualNetwork -ResourceGroupName <ResourceGroupName> -Name <VNetName>).VirtualNetworkPeerings
|
||||
# List VNet Peerings
|
||||
Get-AzVirtualNetworkPeering -ResourceGroupName <ResourceGroupName> -VirtualNetworkName <VNetName>
|
||||
|
||||
# List Shared Resources (e.g., Azure Firewall) in the Hub
|
||||
Get-AzFirewall
|
||||
@@ -364,11 +441,11 @@ Get-AzFirewall
|
||||
|
||||
## Site-to-Site VPN
|
||||
|
||||
Azure의 Site-to-Site VPN은 **온프레미스 네트워크를 Azure 가상 네트워크(VNet)에 연결**할 수 있게 해주며, Azure 내의 VM과 같은 리소스가 로컬 네트워크에 있는 것처럼 보이게 합니다. 이 연결은 **두 네트워크 간의 트래픽을 암호화하는 VPN 게이트웨이를 통해 설정됩니다.**
|
||||
Azure의 **Site-to-Site VPN**은 온프레미스 네트워크와 Azure Virtual Network (VNet) 간에 안전하고 **지속적인 연결을 설정**하여, Azure 내의 VMs 같은 리소스가 마치 로컬 네트워크에 있는 것처럼 보이게 합니다. 이 연결은 두 네트워크 간의 트래픽을 암호화하는 **VPN gateway**를 통해 설정됩니다.
|
||||
|
||||
**예시:**
|
||||
**예:**
|
||||
|
||||
뉴욕에 본사가 있는 한 기업은 Azure에서 가상화된 워크로드를 호스팅하는 VNet에 안전하게 연결해야 하는 온프레미스 데이터 센터를 가지고 있습니다. **Site-to-Site VPN을 설정함으로써, 회사는 온프레미스 서버와 Azure VM 간의 암호화된 연결을 보장할 수 있으며**, 두 환경 모두에서 리소스에 안전하게 접근할 수 있도록 하여 마치 동일한 로컬 네트워크에 있는 것처럼 만듭니다.
|
||||
뉴욕에 본사가 있는 한 기업은 온프레미스 데이터 센터를 보유하고 있으며, 가상화된 워크로드를 호스팅하는 Azure의 VNet에 안전하게 연결해야 합니다. **Site-to-Site VPN을 설정함으로써, 회사는 온프레미스 서버와 Azure VMs 간의 암호화된 연결을 보장할 수 있으며**, 두 환경의 리소스에 마치 동일한 로컬 네트워크에 있는 것처럼 안전하게 접근할 수 있습니다.
|
||||
|
||||
### **Enumeration**
|
||||
|
||||
@@ -395,13 +472,13 @@ Get-AzVirtualNetworkGatewayConnection -ResourceGroupName <ResourceGroupName>
|
||||
|
||||
## Azure ExpressRoute
|
||||
|
||||
Azure ExpressRoute는 **온프레미스 인프라와 Azure 데이터 센터 간의 개인적이고 전용의 고속 연결을 제공하는 서비스**입니다. 이 연결은 연결 제공자를 통해 이루어지며, 공용 인터넷을 우회하여 일반 인터넷 연결보다 더 높은 신뢰성, 더 빠른 속도, 더 낮은 대기 시간 및 더 높은 보안을 제공합니다.
|
||||
Azure ExpressRoute는 온프레미스 인프라와 Azure 데이터 센터 간의 **프라이빗하고 전용의 고속 연결**을 제공하는 서비스입니다. 이 연결은 커넥티비티 제공업체를 통해 이루어지며, 공용 인터넷을 우회하여 일반적인 인터넷 연결보다 더 높은 신뢰성, 빠른 속도, 낮은 지연 및 향상된 보안을 제공합니다.
|
||||
|
||||
**예시:**
|
||||
|
||||
다국적 기업은 **데이터의 높은 양과 높은 처리량의 필요성으로 인해 Azure 서비스에 대한 일관되고 신뢰할 수 있는 연결**이 필요합니다. 이 회사는 Azure ExpressRoute를 선택하여 온프레미스 데이터 센터를 Azure에 직접 연결하여 일일 백업 및 실시간 데이터 분석과 같은 대규모 데이터 전송을 촉진하며, 향상된 개인 정보 보호 및 속도를 제공합니다.
|
||||
다국적 기업은 데이터 양이 많고 높은 처리량이 필요하기 때문에 Azure 서비스에 대해 **일관되고 신뢰할 수 있는 연결**이 필요합니다. 회사는 Azure ExpressRoute를 선택하여 온프레미스 데이터 센터를 Azure에 직접 연결하고, 일일 백업 및 실시간 데이터 분석과 같은 대규모 데이터 전송을 더 높은 프라이버시와 속도로 수행합니다.
|
||||
|
||||
### **Enumeration**
|
||||
### **열거**
|
||||
|
||||
{{#tabs }}
|
||||
{{#tab name="az cli" }}
|
||||
@@ -418,4 +495,10 @@ Get-AzExpressRouteCircuit
|
||||
{{#endtab }}
|
||||
{{#endtabs }}
|
||||
|
||||
## 참고 자료
|
||||
|
||||
- [DNS OverDoS: Private Endpoints는 너무 폐쇄적인가?](https://unit42.paloaltonetworks.com/dos-attacks-and-azure-private-endpoint/)
|
||||
- [Azure Private Endpoint DNS 구성](https://learn.microsoft.com/en-us/azure/private-link/private-endpoint-dns)
|
||||
- [Private DNS의 인터넷 폴백](https://learn.microsoft.com/en-us/azure/dns/private-dns-fallback)
|
||||
|
||||
{{#include ../../../../banners/hacktricks-training.md}}
|
||||
|
||||
Reference in New Issue
Block a user