Поделиться через


Управление правилами брандмауэра для гибкого сервера Базы данных Azure для MySQL с помощью Azure CLI

ОБЛАСТЬ ПРИМЕНЕНИЯ: База данных Azure для MySQL — гибкий сервер

База данных Azure для MySQL гибкий сервер поддерживает два взаимоисключающих метода сетевого подключения для подключения к гибкому серверу. Эти два варианта указаны ниже:

  • Открытый доступ (разрешенные IP-адреса)
  • Закрытый доступ (интеграция виртуальной сети)

В этой статье мы рассмотрим создание гибкого экземпляра сервера База данных Azure для MySQL с общедоступным доступом (разрешенными IP-адресами) с помощью Azure CLI. В этой статье представлен обзор команд Azure CLI, которые можно использовать для создания, обновления, удаления, удаления, отображения правил брандмауэра после создания сервера. С общедоступным доступом (разрешенными IP-адресами) подключения к База данных Azure для MySQL гибкому экземпляру сервера ограничены только разрешенными IP-адресами. IP-адреса клиента должны быть разрешены в правилах брандмауэра. Дополнительные сведения см. в разделе Открытый доступ (разрешенные IP-адреса). Правила брандмауэра могут быть определены во время создания сервера (рекомендуется), но их также можно добавить позже.

Запуск Azure Cloud Shell

Azure Cloud Shell — это бесплатная интерактивная оболочка, с помощью которой можно выполнять действия, описанные в этой статье. Она включает предварительно установленные общие инструменты Azure и настроена для использования с вашей учетной записью.

Чтобы открыть Cloud Shell, просто выберите Попробовать в правом верхнем углу блока кода. Кроме того, Cloud Shell можно открыть в отдельной вкладке браузера. Для этого перейдите на страницу https://shell.azure.com/bash. Нажмите кнопку Копировать, чтобы скопировать блоки кода. Вставьте код в Cloud Shell и нажмите клавишу ВВОД, чтобы выполнить его.

Если вы решили установить и использовать CLI локально, для выполнения инструкций, приведенных в этом кратком руководстве, вам потребуется Azure CLI 2.0 или более поздней версии. Чтобы узнать версию, выполните команду az --version. Если вам необходимо выполнить установку или обновление, см. статью Установка Azure CLI 2.0.

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

Необходимо войти в учетную запись с помощью команды az login . Обратите внимание на свойство ID, которое ссылается на Идентификатор подписки для вашей учетной записи Azure.

az login

Выберите определенную подписку в учетной записи с помощью команды az account set . Обратите внимание на значение идентификатора из выходных данных az login , которое будет использоваться в качестве значения аргумента подписки в команде. Если вы используете несколько подписок, выберите соответствующую, в которой за ресурс будет взиматься плата. Чтобы отобразить все свои подписки, воспользуйтесь командой az account list.

az account set --subscription <subscription id>

Создание правила брандмауэра во время гибкого сервера с помощью Azure CLI

С помощью az mysql flexible-server --public access команды можно создать База данных Azure для MySQL гибкий экземпляр сервера с общедоступным доступом (разрешенными IP-адресами) и настроить правила брандмауэра при создании сервера. Вы можете использовать переключатель --public-access для предоставления разрешенных IP-адресов, которые могут подключаться к серверу. Можно указать один IP-адрес или диапазон IP-адресов, которые будут включаться в список разрешенных IP-адресов. Диапазон IP-адресов должен быть разделен дефисом и не содержит пробелов. Существуют различные варианты создания База данных Azure для MySQL гибкого экземпляра сервера с помощью Azure CLI, как показано в следующих примерах.

Полный список настраиваемых параметров CLI см. в справочной документации по Azure CLI. Например, можно дополнительно указать группу ресурсов в следующих командах.

  • Создайте База данных Azure для MySQL гибкий экземпляр сервера с общедоступным доступом и добавьте IP-адрес клиента для доступа к серверу.

    az mysql flexible-server create --public-access <my_client_ip>
    
  • Создайте База данных Azure для MySQL гибкий экземпляр сервера с открытым доступом и добавьте диапазон IP-адресов для доступа к этому серверу.

    az mysql flexible-server create --public-access <start_ip_address-end_ip_address>
    
  • Создайте База данных Azure для MySQL гибкий экземпляр сервера с общедоступным доступом и разрешите приложениям из IP-адресов Azure подключаться к серверу.

    az mysql flexible-server create --public-access 0.0.0.0
    

    Внимание

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

  • Создайте База данных Azure для MySQL гибкий экземпляр сервера с общедоступным доступом и разрешите все IP-адреса.

    az mysql flexible-server create --public-access all
    

    Примечание.

    Приведенная выше команда создает правило брандмауэра с начальным IP-адресом=0.0.0.0, конечный IP-адрес=255.255.255.255 и IP-адреса не блокируются. Любой узел в Интернете может получить доступ к этому серверу. Настоятельно рекомендуется использовать это правило только временно и только на тестовых серверах, которые не содержат конфиденциальные данные.

  • Создайте База данных Azure для MySQL гибкий экземпляр сервера с общедоступным доступом и без IP-адреса.

    az mysql flexible-server create --public-access none
    

    Примечание.

    Не рекомендуется создавать сервер без правил брандмауэра. Если вы не добавляете правила брандмауэра, ни один клиент не сможет подключиться к серверу.

Создание правила брандмауэра после создания сервера и управление ими

Команда Azure CLI az postgres flexible-server firewall-rule используется для создания, удаления, вывода списка, отображения и обновления правил брандмауэра.

Команды:

  • create: создайте гибкое правило брандмауэра сервера База данных Azure для MySQL.
  • Список правил брандмауэра База данных Azure для MySQL гибкого сервера.
  • обновление. Обновите правило брандмауэра База данных Azure для MySQL гибкого сервера.
  • show: отображение сведений о правиле брандмауэра База данных Azure для MySQL гибкого сервера.
  • delete: удалите правило брандмауэра гибкого сервера База данных Azure для MySQL.

Полный список настраиваемых параметров CLI см. в справочной документации по Azure CLI. Например, в следующих командах можно дополнительно указать группу ресурсов.

Создание правила брандмауэра

Используйте команду az mysql flexible-server firewall-rule create, чтобы создать новое правило брандмауэра на сервере. Чтобы разрешить доступ к диапазону IP-адресов, укажите IP-адрес как начальные и конечные IP-адреса, как в этом примере.

az mysql flexible-server firewall-rule create --resource-group testGroup --name mydemoserver --start-ip-address 13.83.152.0 --end-ip-address 13.83.152.15

Чтобы разрешить доступ к одному IP-адресу, укажите один IP-адрес, как в этом примере.

az mysql flexible-server firewall-rule create --resource-group testGroup --name mydemoserver --start-ip-address 1.1.1.1

Чтобы разрешить приложениям из IP-адресов Azure подключаться к вашему База данных Azure для MySQL гибкому экземпляру сервера, укажите IP-адрес 0.0.0.0 в качестве начального IP-адреса, как в этом примере.

az mysql flexible-server firewall-rule create --resource-group testGroup --name mydemoserver --start-ip-address 0.0.0.0

Внимание

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

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

Вывод списка правил брандмауэра.

Используйте команду az mysql flexible-server firewall-rule list для вывода списка существующих правил брандмауэра сервера. Обратите внимание, что атрибут имени сервера указан в параметре --name.

az mysql flexible-server firewall-rule list --name mydemoserver

Выходные данные будут содержать правила, если они имеются, в формате JSON (по умолчанию). Параметр --output table позволяет вывести результаты в более удобном для чтения табличном формате.

az mysql flexible-server firewall-rule list --name mydemoserver --output table

Обновление правила брандмауэра

Используйте команду az mysql flexible-server firewall-rule update, чтобы обновить существующее правило брандмауэра на сервере. Укажите имя существующего правила брандмауэра в качестве входных данных, а также начальный IP-адрес и атрибуты конечного IP-адреса для обновления.

az mysql flexible-server firewall-rule update --name mydemoserver --rule-name FirewallRule1 --start-ip-address 13.83.152.0 --end-ip-address 13.83.152.1

При успешном выполнении команда выводит сведения о правиле брандмауэра, которое вы обновили в формате JSON (по умолчанию). Если произошел сбой, выходные данные отображают текст сообщения об ошибке.

Примечание.

Если правило брандмауэра не существует, команда обновления создает правило.

Отображение сведений о правиле брандмауэра

Используйте команду az mysql flexible-server firewall-rule show, чтобы отобразить сведения о существующем на сервере правиле брандмауэра. Укажите имя существующего правила брандмауэра в качестве входных данных.

az mysql flexible-server firewall-rule show --name mydemoserver --rule-name FirewallRule1

При успешном выполнении команда выводит сведения о правиле брандмауэра, заданном в формате JSON (по умолчанию). Если произошел сбой, выходные данные отображают текст сообщения об ошибке.

Удаление правила брандмауэра

Используйте команду az mysql flexible-server firewall-rule delete, чтобы удалить существующее правило брандмауэра на сервере. Укажите имя текущего правила брандмауэра.

az mysql flexible-server firewall-rule delete --name mydemoserver --rule-name FirewallRule1

При успешном выполнении выходные данные отсутствуют. После сбоя отображается текст сообщения об ошибке.

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