Доступ SSH к серверам с поддержкой Azure Arc

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

Ключевые преимущества

Доступ SSH к серверам с поддержкой Arc обеспечивает следующие ключевые преимущества:

  • Общедоступный IP-адрес или открытые порты SSH не требуются
  • Доступ к компьютерам Windows и Linux
  • Возможность входа как локального пользователя или пользователя Azure (только Для Linux)
  • Поддержка других средств на основе OpenSSH с поддержкой файла конфигурации

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

Чтобы включить эту функцию, убедитесь в следующем:

  • Убедитесь, что сервер с поддержкой Arc имеет гибридную версию агента 1.31.xxxx или более поздней. Запустите: azcmagent show на сервере с поддержкой Arc.
  • Убедитесь, что на сервере с поддержкой Arc включена служба sshd. Для компьютеров openssh-server Linux можно установить с помощью диспетчера пакетов и включить их. SSHD необходимо включить в Windows.
  • Убедитесь, что назначена роль владельца или участника.

Проверка подлинности с помощью учетных данных Microsoft Entra имеет дополнительные требования:

  • aadsshlogin и aadsshlogin-selinux (по мере необходимости) должны быть установлены на сервере с поддержкой Arc. Эти пакеты устанавливаются с расширением виртуальной Azure AD based SSH Login – Azure Arc машины.

  • Настройте назначения ролей для виртуальной машины. Для авторизации входа на виртуальную машину используются две роли Azure:

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

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

    Примечание.

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

Доступность

Доступ SSH к серверам с поддержкой Arc в настоящее время поддерживается во всех регионах, поддерживаемых серверами с поддержкой Arc, со следующими исключениями:

  • Центрально-Западная Германия

Приступая к работе

Регистрация поставщика ресурсов гибридной Подключение тивности

Примечание.

Это однократная операция, которая должна выполняться в каждой подписке.

Проверьте, зарегистрирован ли поставщик ресурсов гибридной Подключение ivity (RP):

az provider show -n Microsoft.HybridConnectivity -o tsv --query registrationState

Если RP не зарегистрирован, выполните следующую команду:

az provider register -n Microsoft.HybridConnectivity

Эта операция может занять 2–5 минут. Перед переходом проверка зарегистрирована RP.

Создание конечной точки подключения по умолчанию

Примечание.

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

az rest --method put --uri https://management.azure.com/subscriptions/<subscription>/resourceGroups/<resourcegroup>/providers/Microsoft.HybridCompute/machines/<arc enabled server name>/providers/Microsoft.HybridConnectivity/endpoints/default?api-version=2023-03-15 --body '{"properties": {"type": "default"}}'

Примечание.

При использовании Azure CLI из PowerShell следует использовать следующее.

az rest --method put --uri https://management.azure.com/subscriptions/<subscription>/resourceGroups/<resourcegroup>/providers/Microsoft.HybridCompute/machines/<arc enabled server name>/providers/Microsoft.HybridConnectivity/endpoints/default?api-version=2023-03-15 --body '{\"properties\":{\"type\":\"default\"}}'

Проверка создания конечной точки:

az rest --method get --uri https://management.azure.com/subscriptions/<subscription>/resourceGroups/<resourcegroup>/providers/Microsoft.HybridCompute/machines/<arc enabled server name>/providers/Microsoft.HybridConnectivity/endpoints/default?api-version=2023-03-15

Установка локального средства командной строки

Эта функция в настоящее время упаковается в расширение Azure CLI и модуль Azure PowerShell.

az extension add --name ssh

Примечание.

Версия расширения Azure CLI должна быть больше 2.0.0.

Включение функций на сервере с поддержкой Arc

Чтобы использовать функцию подключения SSH, необходимо обновить конфигурацию службы в конечной точке Подключение ivity на сервере с поддержкой Arc, чтобы разрешить подключение SSH к конкретному порту. Вы можете разрешить подключение только к одному порту. Средства КОМАНДНОй строки пытаются обновить разрешенный порт во время выполнения, но порт можно настроить вручную следующим образом:

Примечание.

После обновления конфигурации службы может возникнуть задержка, пока вы не сможете подключиться.

az rest --method put --uri https://management.azure.com/subscriptions/<subscription>/resourceGroups/<resourcegroup>/providers/Microsoft.HybridCompute/machines/<arc enabled server name>/providers/Microsoft.HybridConnectivity/endpoints/default/serviceconfigurations/SSH?api-version=2023-03-15 --body "{\"properties\": {\"serviceName\": \"SSH\", \"port\": 22}}"

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

Необязательно. Установка расширения входа Azure AD

Расширение Azure AD based SSH Login – Azure Arc виртуальной машины можно добавить в меню расширений сервера Arc. Расширение входа Azure AD также можно установить локально с помощью диспетчера пакетов с помощью apt-get install aadsshlogin следующей команды.

az connectedmachine extension create --machine-name <arc enabled server name> --resource-group <resourcegroup> --publisher Microsoft.Azure.ActiveDirectory --name AADSSHLogin --type AADSSHLoginForLinux --location <location>

Примеры

Чтобы просмотреть примеры, просмотрите страницу документации az CLI для az ssh или страницу документации по Azure PowerShell для Az.Ssh.

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