Szybki start: tworzenie prywatnego punktu końcowego przy użyciu interfejsu wiersza polecenia platformy Azure
Rozpocznij pracę z usługą Azure Private Link, tworząc prywatny punkt końcowy i używając go do bezpiecznego łączenia się z aplikacją internetową platformy Azure.
W tym przewodniku Szybki start utwórz prywatny punkt końcowy dla aplikacji internetowej usługi aplikacja systemu Azure Services, a następnie utwórz i wdróż maszynę wirtualną w celu przetestowania połączenia prywatnego.
Prywatne punkty końcowe można tworzyć dla różnych usług platformy Azure, takich jak Azure SQL i Azure Storage.
Wymagania wstępne
Konto platformy Azure z aktywną subskrypcją. Jeśli nie masz jeszcze konta platformy Azure, utwórz bezpłatne konto.
Aplikacja internetowa platformy Azure z planem usługi App Service w warstwie PremiumV2 lub wyższym wdrożona w ramach subskrypcji platformy Azure.
Aby uzyskać więcej informacji i przykład, zobacz Szybki start: tworzenie aplikacji internetowej ASP.NET Core na platformie Azure.
Przykładowa aplikacja internetowa w tym artykule nosi nazwę webapp-1. Zastąp przykład nazwą swojej aplikacji internetowej.
Użyj środowiska powłoki Bash w usłudze Azure Cloud Shell. Aby uzyskać więcej informacji, zobacz Szybki start dotyczący powłoki Bash w usłudze Azure Cloud Shell.
Jeśli wolisz uruchamiać polecenia referencyjne interfejsu wiersza polecenia lokalnie, zainstaluj interfejs wiersza polecenia platformy Azure. Jeśli korzystasz z systemu Windows lub macOS, rozważ uruchomienie interfejsu wiersza polecenia platformy Azure w kontenerze Docker. Aby uzyskać więcej informacji, zobacz Jak uruchomić interfejs wiersza polecenia platformy Azure w kontenerze platformy Docker.
Jeśli korzystasz z instalacji lokalnej, zaloguj się do interfejsu wiersza polecenia platformy Azure za pomocą polecenia az login. Aby ukończyć proces uwierzytelniania, wykonaj kroki wyświetlane w terminalu. Aby uzyskać inne opcje logowania, zobacz Logowanie się przy użyciu interfejsu wiersza polecenia platformy Azure.
Po wyświetleniu monitu zainstaluj rozszerzenie interfejsu wiersza polecenia platformy Azure podczas pierwszego użycia. Aby uzyskać więcej informacji na temat rozszerzeń, zobacz Korzystanie z rozszerzeń w interfejsie wiersza polecenia platformy Azure.
Uruchom polecenie az version, aby znaleźć zainstalowane wersje i biblioteki zależne. Aby uaktualnić do najnowszej wersji, uruchom polecenie az upgrade.
Tworzenie grupy zasobów
Grupa zasobów platformy Azure to logiczny kontener, w którym zasoby platformy Azure są wdrażane i zarządzane.
Najpierw utwórz grupę zasobów przy użyciu polecenia az group create:
az group create \
--name test-rg \
--location eastus2
Tworzenie sieci wirtualnej i hosta bastionu
Sieć wirtualna i podsieć są wymagane do hostowania prywatnego adresu IP dla prywatnego punktu końcowego. Utworzysz hosta bastionu, aby bezpiecznie nawiązać połączenie z maszyną wirtualną w celu przetestowania prywatnego punktu końcowego. Maszyna wirtualna zostanie utworzona w późniejszej sekcji.
Uwaga
Ceny godzinowe zaczynają się od momentu wdrożenia usługi Bastion, niezależnie od użycia danych wychodzących. Aby uzyskać więcej informacji, zobacz Cennik i jednostki SKU. Jeśli wdrażasz usługę Bastion w ramach samouczka lub testu, zalecamy usunięcie tego zasobu po zakończeniu korzystania z niego.
Utwórz sieć wirtualną za pomocą polecenia az network vnet create.
az network vnet create \
--resource-group test-rg \
--location eastus2 \
--name vnet-1 \
--address-prefixes 10.0.0.0/16 \
--subnet-name subnet-1 \
--subnet-prefixes 10.0.0.0/24
Utwórz podsieć bastionu za pomocą polecenia az network vnet subnet create.
az network vnet subnet create \
--resource-group test-rg \
--name AzureBastionSubnet \
--vnet-name vnet-1 \
--address-prefixes 10.0.1.0/26
Utwórz publiczny adres IP hosta bastionu za pomocą polecenia az network public-ip create.
az network public-ip create \
--resource-group test-rg \
--name public-ip \
--sku Standard \
--zone 1 2 3
Utwórz hosta bastionu za pomocą polecenia az network bastion create.
az network bastion create \
--resource-group test-rg \
--name bastion \
--public-ip-address public-ip \
--vnet-name vnet-1 \
--location eastus2
Wdrożenie hosta usługi Azure Bastion może potrwać kilka minut.
Tworzenie prywatnego punktu końcowego
Usługa platformy Azure, która obsługuje prywatne punkty końcowe, jest wymagana do skonfigurowania prywatnego punktu końcowego i połączenia z siecią wirtualną. W przykładach w tym artykule użyj aplikacji internetowej platformy Azure z wymagań wstępnych. Aby uzyskać więcej informacji na temat usług platformy Azure, które obsługują prywatny punkt końcowy, zobacz Dostępność usługi Azure Private Link.
Prywatny punkt końcowy może mieć statyczny lub dynamicznie przypisany adres IP.
Ważne
Aby wykonać kroki opisane w tym artykule, musisz mieć wcześniej wdrożony aplikację internetową usług aplikacja systemu Azure Services. Aby uzyskać więcej informacji, zobacz Wymagania wstępne.
Umieść identyfikator zasobu aplikacji internetowej utworzonej wcześniej w zmiennej powłoki za pomocą polecenia az webapp list. Utwórz prywatny punkt końcowy za pomocą polecenia az network private-endpoint create.
id=$(az webapp list \
--resource-group test-rg \
--query '[].[id]' \
--output tsv)
az network private-endpoint create \
--connection-name connection-1 \
--name private-endpoint \
--private-connection-resource-id $id \
--resource-group test-rg \
--subnet subnet-1 \
--group-id sites \
--vnet-name vnet-1
Konfigurowanie prywatnej strefy DNS
Prywatna strefa DNS służy do rozpoznawania nazwy DNS prywatnego punktu końcowego w sieci wirtualnej. W tym przykładzie używamy informacji DNS dla usługi Azure WebApp, aby uzyskać więcej informacji na temat konfiguracji DNS prywatnych punktów końcowych, zobacz Konfiguracja dns prywatnego punktu końcowego platformy Azure.
Utwórz nową prywatną strefę DNS platformy Azure za pomocą polecenia az network private-dns zone create.
az network private-dns zone create \
--resource-group test-rg \
--name "privatelink.azurewebsites.net"
Połącz strefę DNS z utworzoną wcześniej siecią wirtualną za pomocą polecenia az network private-dns link vnet create.
az network private-dns link vnet create \
--resource-group test-rg \
--zone-name "privatelink.azurewebsites.net" \
--name dns-link \
--virtual-network vnet-1 \
--registration-enabled false
Utwórz grupę stref DNS za pomocą polecenia az network private-endpoint dns-zone-group create.
az network private-endpoint dns-zone-group create \
--resource-group test-rg \
--endpoint-name private-endpoint \
--name zone-group \
--private-dns-zone "privatelink.azurewebsites.net" \
--zone-name webapp
Tworzenie testowej maszyny wirtualnej
Aby sprawdzić statyczny adres IP i funkcjonalność prywatnego punktu końcowego, wymagana jest testowa maszyna wirtualna połączona z siecią wirtualną.
Utwórz maszynę wirtualną za pomocą polecenia az vm create.
az vm create \
--resource-group test-rg \
--name vm-1 \
--image Win2022Datacenter \
--public-ip-address "" \
--vnet-name vnet-1 \
--subnet subnet-1 \
--admin-username azureuser
Uwaga
Maszyny wirtualne w sieci wirtualnej z hostem bastionu nie wymagają publicznych adresów IP. Usługa Bastion udostępnia publiczny adres IP, a maszyny wirtualne używają prywatnych adresów IP do komunikacji w sieci. Publiczne adresy IP można usunąć ze wszystkich maszyn wirtualnych w sieciach wirtualnych hostowanych w bastionie. Aby uzyskać więcej informacji, zobacz Usuwanie skojarzenia publicznego adresu IP z maszyny wirtualnej platformy Azure.
Uwaga
Platforma Azure udostępnia domyślny adres IP dostępu wychodzącego dla maszyn wirtualnych, które nie są przypisane do publicznego adresu IP lub znajdują się w puli zaplecza wewnętrznego podstawowego modułu równoważenia obciążenia platformy Azure. Domyślny mechanizm adresów IP dostępu wychodzącego zapewnia wychodzący adres IP, który nie jest konfigurowalny.
Domyślny adres IP dostępu wychodzącego jest wyłączony, gdy wystąpi jedno z następujących zdarzeń:
- Publiczny adres IP jest przypisywany do maszyny wirtualnej.
- Maszyna wirtualna jest umieszczana w puli zaplecza standardowego modułu równoważenia obciążenia z regułami ruchu wychodzącego lub bez tych reguł.
- Zasób usługi Azure NAT Gateway jest przypisywany do podsieci maszyny wirtualnej.
Maszyny wirtualne tworzone przy użyciu zestawów skalowania maszyn wirtualnych w trybie elastycznej aranżacji nie mają domyślnego dostępu wychodzącego.
Aby uzyskać więcej informacji na temat połączeń wychodzących na platformie Azure, zobacz Domyślny dostęp wychodzący na platformie Azure i Używanie źródłowego tłumaczenia adresów sieciowych (SNAT) dla połączeń wychodzących.
Testowanie łączności z prywatnym punktem końcowym
Użyj utworzonej wcześniej maszyny wirtualnej, aby nawiązać połączenie z aplikacją internetową w prywatnym punkcie końcowym.
W polu wyszukiwania w górnej części portalu wprowadź ciąg Maszyna wirtualna. Wybierz pozycję Maszyny wirtualne.
Wybierz pozycję vm-1.
Na stronie przeglądu maszyny wirtualnej VM-1 wybierz pozycję Połącz, a następnie wybierz kartę Bastion .
Wybierz pozycję Użyj usługi Bastion.
Wprowadź nazwę użytkownika i hasło użyte podczas tworzenia maszyny wirtualnej.
Wybierz pozycję Połącz.
Po nawiązaniu połączenia otwórz program PowerShell na serwerze.
Wprowadź
nslookup webapp-1.azurewebsites.net
. Zostanie wyświetlony komunikat podobny do następującego przykładu:Server: UnKnown Address: 168.63.129.16 Non-authoritative answer: Name: webapp-1.privatelink.azurewebsites.net Address: 10.0.0.10 Aliases: webapp-1.azurewebsites.net
Prywatny adres IP 10.0.0.10 jest zwracany dla nazwy aplikacji internetowej, jeśli w poprzednich krokach wybrano statyczny adres IP. Ten adres znajduje się w podsieci utworzonej wcześniej sieci wirtualnej.
W połączeniu bastionu z maszyną wirtualną-1 otwórz przeglądarkę internetową.
Wprowadź adres URL aplikacji internetowej.
https://webapp-1.azurewebsites.net
Jeśli aplikacja internetowa nie została wdrożona, zostanie wyświetlona następująca domyślna strona aplikacji internetowej:
Zamknij połączenie z maszyną wirtualną VM-1.
Czyszczenie zasobów
Gdy grupa zasobów, usługa private link, moduł równoważenia obciążenia i wszystkie powiązane zasoby nie będą już potrzebne, użyj polecenia az group delete .
az group delete \
--name test-rg
Następne kroki
Aby uzyskać więcej informacji na temat usług obsługujących prywatne punkty końcowe, zobacz: