Краткое руководство. Создание шлюза NAT с помощью Azure CLI

Из этого краткого руководства вы узнаете, как создать шлюз NAT с помощью Azure CLI. Служба шлюза NAT обеспечивает исходящее подключение для виртуальных машин в Azure.

Diagram of resources created in nat gateway quickstart.

Если у вас еще нет подписки Azure, создайте бесплатную учетную запись Azure, прежде чем начинать работу.

Необходимые компоненты

  • Используйте среду Bash в Azure Cloud Shell. Дополнительные сведения см . в кратком руководстве по Bash в Azure Cloud Shell.

  • Если вы предпочитаете выполнять справочные команды CLI локально, установите Azure CLI. Если вы работаете в Windows или macOS, Azure CLI можно запустить в контейнере Docker. Дополнительные сведения см. в статье Как запустить Azure CLI в контейнере Docker.

    • Если вы используете локальную установку, выполните вход в Azure CLI с помощью команды az login. Чтобы выполнить аутентификацию, следуйте инструкциям в окне терминала. Сведения о других возможностях, доступных при входе, см. в статье Вход с помощью Azure CLI.

    • Установите расширение Azure CLI при первом использовании, когда появится соответствующий запрос. Дополнительные сведения о расширениях см. в статье Использование расширений с Azure CLI.

    • Выполните команду az version, чтобы узнать установленную версию и зависимые библиотеки. Чтобы обновиться до последней версии, выполните команду az upgrade.

Создание или изменение группы ресурсов

Создайте группу ресурсов с помощью команды az group create. Группа ресурсов Azure является логическим контейнером, в котором происходит развертывание ресурсов Azure и управление ими.

az group create \
    --name test-rg \
    --location eastus2

Создание шлюза NAT

В этом разделе описано, как создать шлюз NAT и вспомогательные ресурсы.

Создание общедоступного IP-адреса

Для доступа к Интернету требуется один или несколько общедоступных IP-адресов для шлюза NAT. Чтобы создать ресурс общедоступного IP-адреса, воспользуйтесь командой az network public-ip create.

az network public-ip create \
    --resource-group test-rg \
    --name public-ip-nat \
    --sku Standard \
    --location eastus2 \
    --zone 1 2 3

Создание ресурса шлюза NAT

Создайте шлюз Azure NAT с помощью az network nat gateway create. В результате этой команды создается ресурс шлюза, использующий общедоступный IP-адрес, определенный на предыдущем шаге. Установите время ожидания простоя на 10 минут.

az network nat gateway create \
    --resource-group test-rg \
    --name nat-gateway \
    --public-ip-addresses public-ip-nat \
    --idle-timeout 10 \
    --location eastus2

Создание виртуальной сети

Создайте виртуальную сеть с подсетью при помощи команды az network vnet create. Диапазон IP-адресов для виртуальной сети: 10.0.0.0/16. Подсеть в виртуальной сети: 10.0.0.0/24.

az network vnet create \
    --name vnet-1 \
    --resource-group test-rg \
    --address-prefix 10.0.0.0/16 \
    --subnet-name subnet-1 \
    --subnet-prefixes 10.0.0.0/24 \
    --location eastus2

Создание подсети узла-бастиона

Создайте узел Бастиона Azure, чтобы организовать доступ к виртуальной машине.

Используйте az network vnet subnet create для создания подсети Бастиона Azure.

az network vnet subnet create \
    --name AzureBastionSubnet \
    --resource-group test-rg \
    --vnet-name vnet-1 \
    --address-prefix 10.0.1.0/26

Создание общедоступного IP-адреса для узла бастиона

Создайте общедоступный IP-адрес для узла-бастиона с помощью команды az network public-ip create.

az network public-ip create \
    --resource-group test-rg \
    --name public-ip \
    --sku Standard \
    --location eastus2 \
    --zone 1 2 3

Создание узла-бастиона

Воспользуйтесь командой az network bastion create, чтобы создать узел бастиона.

Почасовая цена начинается с момента развертывания Бастиона независимо от использования исходящих данных. Дополнительные сведения см. в разделе "Цены и номера SKU". Если вы развертываете Бастион в рамках руководства или теста, рекомендуется удалить этот ресурс после завершения работы с ним. Дополнительные сведения о Бастионе Azure см. в статье Бастион Azure.

az network bastion create \
    --name bastion \
    --public-ip-address public-ip \
    --resource-group test-rg \
    --vnet-name vnet-1 \
    --location eastus2

Узел бастиона может занять несколько минут. Дождитесь развертывания узла бастиона, прежде чем перейти к следующему разделу.

Настройка NAT для исходной подсети

Настройте исходную подсеть в виртуальной сети, чтобы использовать конкретный ресурс шлюза NAT в команде az network vnet subnet update. Эта команда активирует службу NAT в указанной подсети.

az network vnet subnet update \
    --name subnet-1 \
    --resource-group test-rg \
    --vnet-name vnet-1 \
    --nat-gateway nat-gateway

Шлюз NAT теперь используется для всего исходящего трафика для назначений в Интернете. Нет необходимости настраивать UDR.

Создать виртуальную машину

Создайте виртуальную машину для тестирования шлюза NAT и проверки общедоступного IP-адреса исходящего подключения.

Создайте виртуальную машину с помощью команды az vm create:

az vm create \
    --resource-group test-rg \
    --name vm-1 \
    --image Ubuntu2204 \
    --public-ip-address "" \
    --vnet-name vnet-1 \
    --subnet subnet-1 \
    --admin-username azureuser \
    --authentication-type password

Прежде чем перейти к следующему разделу, дождитесь завершения создания виртуальной машины.

Тестирование шлюза NAT

В этом разделе описано, как протестировать шлюз NAT. Сначала вы обнаружите общедоступный IP-адрес шлюза NAT. Затем подключитесь к тестовой виртуальной машине и проверьте исходящее подключение через шлюз NAT.

  1. Войдите на портал Azure.

  2. В поле поиска в верхней части портала введите Общедоступный IP-адрес. В результатах поиска выберите элемент Общедоступный IP-адрес.

  3. Выберите public-ip-nat.

  4. Запишите общедоступный IP-адрес:

    Discover public IP address of NAT gateway

  5. В поле поиска в верхней части портала введите Виртуальная машина. В результатах поиска выберите Виртуальные машины.

  6. Выберите vm-1.

  7. На странице "Обзор" выберите Подключение, а затем перейдите на вкладку Бастион.

  8. Выберите Использовать бастион.

  9. Введите имя пользователя и пароль, введенные в процессе создания виртуальной машины. Нажмите Подключиться.

  10. В командной строке bash введите следующую команду:

    curl ifconfig.me
    
  11. Убедитесь, что IP-адрес, возвращенный командой, соответствует общедоступному IP-адресу шлюза NAT.

    azureuser@vm-1:~$ curl ifconfig.me
    20.7.200.36
    

Очистка ресурсов

Если вы не собираетесь далее использовать это приложение, удалите виртуальную сеть, виртуальную машину и шлюз NAT, выполнив следующую команду CLI:

  az group delete \
    --name test-rg

Следующие шаги

Дополнительные сведения о шлюзе Azure NAT см. в следующем разделе: