Private Link 사용(미리 보기)
이 문서에서는 Private Link를 사용하여 구독의 리소스 관리에 대한 액세스를 제한하는 방법을 설명합니다. 프라이빗 링크를 사용하면 가상 네트워크의 프라이빗 엔드포인트를 통해 Azure 서비스에 액세스할 수 있습니다. 이렇게 하면 공용 인터넷에 서비스가 노출되지 않습니다.
이 문서에서는 Azure Portal을 사용하는 Private Link 설정 프로세스에 대해 설명합니다.
Important
계층에서 이 기능을 사용하도록 설정할 수 있으며 추가 요금이 부과됩니다.
참고 항목
Azure Notification Hubs에서 프라이빗 링크를 사용하는 기능은 현재 미리 보기로 제공됩니다. 이 기능을 사용하는 데 관심이 있는 경우 Microsoft의 고객 성공 관리자에게 문의하거나 Azure 지원 티켓을 만듭니다.
포털에서 새 알림 허브와 함께 프라이빗 엔드포인트 만들기
다음 절차에서는 Azure Portal을 사용하여 새 알림 허브와 함께 프라이빗 엔드포인트를 만듭니다.
새 알림 허브를 만들고 네트워킹 탭을 선택합니다.
프라이빗 액세스를 선택한 다음, 만들기를 선택합니다.
새 프라이빗 엔드포인트에 대한 구독, 리소스 그룹, 위치, 이름을 입력합니다. 가상 네트워크와 서브넷을 선택합니다. 프라이빗 DNS 영역과 통합에서 예를 선택하고 프라이빗 DNS 영역 상자에 privatelink.notificationhubs.windows.net을 입력합니다.
확인을 선택하여 프라이빗 엔드포인트를 사용하는 네임스페이스 및 허브 만들기를 확인합니다.
만들기를 선택하여 프라이빗 엔드포인트 연결을 사용하여 알림 허브를 만듭니다.
포털에서 기존 알림 허브에 대한 프라이빗 엔드포인트 만들기
포털의 왼쪽에 있는 보안 + 네트워킹 섹션 아래에서 Notification Hubs를 선택한 다음, 네트워킹을 선택합니다.
프라이빗 액세스 탭을 선택합니다.
새 프라이빗 엔드포인트에 대한 구독, 리소스 그룹, 위치, 이름을 입력합니다. 가상 네트워크 및 서브넷을 선택합니다. 만들기를 실행합니다.
CLI를 사용하여 프라이빗 엔드포인트 만들기
Azure CLI에 로그인하고 구독을 설정합니다.
az login az account set --subscription <azure_subscription_id>
새 리소스 그룹 만들기:
az group create -n <resource_group_name> -l <azure_region>
Microsoft.NotificationHubs를 공급자로 등록합니다.
az provider register -n Microsoft.NotificationHubs
다음과 같이 Notification Hubs 네임스페이스 및 허브를 만듭니다.
az notification-hub namespace create --name <namespace_name> --resource-group <resource_group_name> --location <azure_region> --sku "Standard" az notification-hub create --name <notification_hub_name> --namespace-name <namespace_name> --resource-group <resource_group_name> --location <azure_region>
다음과 같이 서브넷을 사용하여 가상 네트워크를 만듭니다.
az network vnet create --resource-group <resource_group_name> --name <vNet name> --location <azure_region> az network vnet subnet create --resource-group <resource_group_name> --vnet-name <vNet_name> --name <subnet_name> --address-prefixes <address_prefix>
다음과 같이 Virtual Network 정책을 사용하지 않도록 설정합니다.
az network vnet subnet update --name <subnet_name> --resource-group <resource_group_name> --vnet-name <vNet_name> --disable-private-endpoint-network-policies true
다음과 같이 프라이빗 DNS 영역을 추가하고 가상 네트워크에 연결합니다.
az network private-dns zone create --resource-group <resource_group_name> --name privatelink.servicebus.windows.net az network private-dns zone create --resource-group <resource_group_name> --name privatelink.notoficationhub.windows.net az network private-dns link vnet create --resource-group <resource_group_name> --virtual-network <vNet_name> --zone-name privatelink.servicebus.windows.net --name <dns_zone_link_name> --registration-enabled true az network private-dns link vnet create --resource-group <resource_group_name> --virtual-network <vNet_name> --zone-name privatelink.notificationhub.windows.net --name <dns_zone_link_name> --registration-enabled true
다음과 같이 프라이빗 엔드포인트를 만듭니다(자동으로 승인).
az network private-endpoint create --resource-group <resource_group_name> --vnet-name <vNet_name> --subnet <subnet_name> --name <private_endpoint_name> --private-connection-resource-id "/subscriptions/<azure_subscription_id>/resourceGroups/<resource_group_name>/providers/Microsoft.NotificationHubs/namespaces/<namespace_name>" --group-ids namespace --connection-name <private_link_connection_name> --location <azure-region>
다음과 같이 프라이빗 엔드포인트를 만듭니다(수동으로 승인 요청).
az network private-endpoint create --resource-group <resource_group_name> --vnet-name <vnet_name> --subnet <subnet_name> --name <private_endpoint_name> --private-connection-resource-id "/subscriptions/<azure_subscription_id>/resourceGroups/<resource_group_name>/providers/Microsoft.NotificationHubs/namespaces/<namespace_name>" --group-ids namespace --connection-name <private_link_connection_name> --location <azure-region> --manual-request
다음과 같이 연결 상태를 표시합니다.
az network private-endpoint show --resource-group <resource_group_name> --name <private_endpoint_name>
포털을 사용하여 프라이빗 엔드포인트 관리
프라이빗 엔드포인트를 만들 때 연결이 승인되어야 합니다. 프라이빗 엔드포인트를 만드는 리소스가 디렉터리에 있는 경우 충분한 사용 권한이 있다면 연결 요청을 승인할 수 있습니다. 다른 디렉터리의 Azure 리소스에 연결하는 경우 해당 리소스의 소유자가 연결 요청을 승인할 때까지 기다려야 합니다.
다음 네 가지 프로비저닝 상태가 있습니다.
서비스 작업 | 서비스 소비자 프라이빗 엔드포인트 상태 | 설명 |
---|---|---|
None | 보류 중 | 연결이 수동으로 만들어지고, 프라이빗 링크 리소스 소유자의 승인이 보류 중입니다. |
승인 | 승인됨 | 연결이 자동 또는 수동으로 승인되었으며, 사용할 준비가 되었습니다. |
거부 | 거부됨 | Private Link 리소스 소유자가 연결을 거부했습니다. |
제거 | 연결 끊김 | 프라이빗 링크 리소스 소유자가 연결을 거부했습니다. 프라이빗 엔드포인트는 정보형으로 지정되며 정리를 위해 삭제해야 합니다. |
프라이빗 엔드포인트 연결 승인, 거부 또는 제거
- Azure Portal에 로그인합니다.
- 검색 창에 Notification Hubs를 입력합니다.
- 관리하려는 네임스페이스를 선택합니다.
- 네트워킹 탭을 선택합니다.
- 승인, 거부 또는 제거하려는 작업에 따라 해당 섹션으로 이동합니다.
프라이빗 엔드포인트 연결 승인
보류 중인 연결이 있으면 프로비전 상태가 보류 중인 연결이 표시됩니다.
승인하려는 프라이빗 엔드포인트를 선택합니다.
승인을 선택합니다.
연결 승인 페이지에서 선택적으로 주석을 입력하고 예를 선택합니다. 아니요를 선택하면 아무 작업도 수행되지 않습니다.
목록에서 연결의 상태가 승인됨으로 변경되어 있어야 합니다.
프라이빗 엔드포인트 연결 거부
이전에 승인된 기존 연결이든 아니면 보류 중인 요청이든지 거부하려는 프라이빗 엔드포인트 연결이 있는 경우 엔드포인트 연결을 선택하고 거부를 선택합니다.
연결 거부 페이지에서 선택적으로 주석을 입력하고 예를 선택합니다. 아니요를 선택하면 아무 작업도 수행되지 않습니다.
목록에서 연결의 상태가 거부됨으로 변경되어 있어야 합니다.
프라이빗 엔드포인트 연결 제거
프라이빗 엔드포인트 연결을 제거하려면 목록에서 해당 연결을 선택하고 도구 모음에서 제거를 선택합니다.
연결 삭제 페이지에서 예를 선택하여 프라이빗 엔드포인트의 삭제를 확인합니다. 아니요를 선택하면 아무 작업도 수행되지 않습니다.
목록에서 연결의 상태가 연결 끊김으로 변경되어 있어야 합니다. 그러면 목록에서 엔드포인트가 사라집니다.
프라이빗 링크 연결이 작동하는지 확인
프라이빗 엔드포인트의 가상 네트워크 내에 있는 리소스가 개인 IP 주소를 통해 Notification Hubs 네임스페이스에 연결되고 올바른 프라이빗 DNS 영역 통합이 있는지 확인해야 합니다.
먼저 Azure Portal에서 Windows 가상 머신 만들기의 단계에 따라 가상 머신을 만듭니다.
네트워킹 탭에서 다음을 수행합니다.
- 가상 네트워크 및 서브넷을 지정합니다. 프라이빗 엔드포인트를 배포한 가상 네트워크를 선택해야 합니다.
- 공용 IP 리소스를 지정합니다.
- NIC 네트워크 보안 그룹은 없음을 선택합니다.
- 부하 분산은 아니요를 선택합니다.
VM에 연결하고 명령줄을 열어 다음 명령을 실행합니다.
Resolve-DnsName <namespace_name>.privatelink.servicebus.windows.net
VM에서 명령을 실행하면 프라이빗 엔드포인트 연결의 IP 주소가 반환됩니다. 외부 네트워크에서 실행되면 Notification Hubs 클러스터 중 하나의 공용 IP 주소를 반환합니다.
제한 사항 및 디자인 고려 사항
제한 사항: 이 기능은 모든 Azure 공개 지역에서 사용할 수 있습니다. Hubs 네임스페이스당 최대 프라이빗 엔드포인트 수: 200
자세한 내용은 Azure Private Link 서비스: 제한 사항을 참조하세요.