Как включить вход через Entra ID для виртуальных машин Linux в Azure

Интеграция Microsoft Entra ID (Azure AD) для виртуальных машин Linux (ВМ) — это мощная функция, которая повышает безопасность и упрощает управление удостоверениями. Включив вход через Azure AD, вы сможете упорядочить контроль доступа и избавиться от необходимости управлять локальными учётными данными. В этом руководстве мы шаг за шагом покажем, как настроить вход через Microsoft Entra ID для виртуальных машин Linux в Azure, назначить роли и безопасно подключаться.



Зачем включать вход через Entra ID для виртуальных машин Linux?

Вход через Azure AD даёт несколько преимуществ при управлении виртуальными машинами Linux в Azure:

  • Централизованное управление удостоверениями: Управляйте доступом пользователей и разрешениями через Azure AD, не полагаясь на локальные учётные записи.
  • Повышенная безопасность: Используйте современные методы проверки подлинности, такие как многофакторная проверка подлинности (MFA).
  • Управление доступом на основе ролей (RBAC): Назначайте детальные разрешения пользователям и группам.
  • Упрощение операций: Снизьте сложность управления SSH-ключами и паролями.

Шаг 1. Создание виртуальной машины Linux с включённым входом через Azure AD

Для начала создайте в Azure новую виртуальную машину Linux с включённым входом через Azure AD.

  1. Перейти в Azure Portal:
    • Войдите в Azure Portal.
    • Перейдите в раздел Виртуальные машины и нажмите Создать > Виртуальная машина.
  2. Настройка основных параметров ВМ:
    • Заполните необходимые сведения, такие как Подписка, Группа ресурсов, Имя ВМ и Регион.
    • Выберите подходящий Образ (например, Ubuntu 24.04 LTS).
  3. Включение входа через Azure AD:
    • На вкладке Управление найдите раздел Удостоверение.
    • Установите значение Назначаемое системой управляемое удостоверение: Вкл..
    • Включите Вход с помощью Azure AD , переключив соответствующий параметр.
  4. Проверить и создать:
    • Проверьте конфигурацию и нажмите Создать , чтобы развернуть ВМ.
Включение Entra ID

Шаг 2. Назначение роли Azure AD для доступа к ВМ

Чтобы пользователи Azure AD могли входить в ВМ, необходимо назначить соответствующую роль.

  • Управление доступом (IAM):
    • Перейдите к своей ВМ в Azure Portal.
    • Перейдите на вкладку Управление доступом (IAM).
    • Нажмите Добавить назначение роли.
Добавить назначение роли
  • Выбор роли:
    • Выберите роль Вход администратора виртуальной машины или Вход пользователя виртуальной машины, в зависимости от требуемого уровня доступа.
Назначение роли
  • Назначение участников:
    • В разделе Участники, нажмите Выбрать участников.
    • Найдите пользователя или группу Azure AD, которым нужно назначить роль, и выберите их.
  • Сохранение изменений:
    • Нажмите Проверить и назначить , чтобы сохранить назначение роли.

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

john [ ~ ]$ az ssh vm -n AzureADLinuxVM -g testrg
OpenSSH_9.8p1, OpenSSL 3.3.3 11 Feb 2025
The authenticity of host '4.xx.x.x (4.xx.x.x)' can't be established.
ED25519 key fingerprint is SHA256:X+idYWkBunsXXxXXxXXxXX5eU6nzLvC7dPXXxxX+Xktg.
This key is not known by any other names.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '4.xx.x.x' (ED25519) to the list of known hosts.
[email protected]@4.xx.x.x: Permission denied (publickey).

Шаг 3. Подключение к виртуальной машине Linux с помощью учётных данных Azure AD

После настройки ВМ и назначения ролей вы можете подключаться к ней с помощью учётных данных Azure AD. Azure предлагает несколько способов подключения, в том числе Azure Cloud Shell и такие инструменты, как PuTTY.

Вариант 1. Использование Azure Cloud Shell

  • Откройте Azure Cloud Shell на портале Azure.
  • Используйте следующую команду для подключения к вашей ВМ:
az ssh vm -n <Azure_VM_Name> -g <Resource_Group_Name>
  • Замените:
    • <Azure_VM_Name> на имя вашей виртуальной машины.
    • <Resource_Group_Name> на имя группы ресурсов, в которой находится ВМ.

Этот метод избавляет от необходимости вручную управлять SSH-ключами, так как проверку подлинности выполняет Azure.


Вариант 2. Использование PuTTY (Windows)

  • Создайте файл конфигурации.
John [ ~ ]$ ls 
clouddrive  Microsoft
John [ ~ ]$ az ssh config --file config -n AzureADLinuxVM -g testrg
Generated SSH certificate /home/john/az_ssh_config/testrg-AzureADLinuxVM/id_rsa.pub-aadcert.pub is valid until 2025-05-27 02:34:18 PM in local time.
/home/John/az_ssh_config/testrg-AzureADLinuxVM contains sensitive information (id_rsa, id_rsa.pub, id_rsa.pub-aadcert.pub). Please delete it once you no longer need this config file.
John [ ~ ]$ ls
az_ssh_config  clouddrive  config  Microsoft
  • Откройте файл конфигурации, и вы найдёте расположение закрытого SSH-ключа. Формат выглядит следующим образом:
Host testrg-AzureADLinuxVM
	User [email protected]
	HostName 4.XXX.XXX.XX
	CertificateFile "/home/john/az_ssh_config/testrg-AzureADLinuxVM/id_rsa.pub-aadcert.pub"
	IdentityFile "/home/john/az_ssh_config/testrg-AzureADLinuxVM/id_rsa"
Host 4.XXX.XXX.XX
	User [email protected]
	CertificateFile "/home/john/az_ssh_config/testrg-AzureADLinuxVM/id_rsa.pub-aadcert.pub"
	IdentityFile "/home/john/az_ssh_config/testrg-AzureADLinuxVM/id_rsa"
  • Скачивание и установка PuTTY:
    • Скачайте PuTTY с официального сайта.
    • Установите его на локальный компьютер.
    • Скачайте закрытый ключ id_rsa и сертификат id_rsa.pub-aadcert.pub.
  • Преобразуйте SSH-ключ (/home/john/az_ssh_config/testrg-AzureADLinuxVM/id_rsa) в формат PuTTY:
    • Используйте PuTTYgen , чтобы преобразовать ваш закрытый SSH-ключ в формат .ppk.
    • Загрузите ключ, сохраните его в формате .ppk, и продолжите.
Загрузка ключа
  • Настройка PuTTY:
    • Откройте PuTTY и введите общедоступный IP-адрес вашей ВМ.
    • В разделе Connection > SSH > Auth, загрузите файл .ppk.
    • Нажмите Открыть , чтобы установить соединение.

Шаг 4. Сброс пароля или управление доступом (необязательно)

Если нужно сбросить пароль пользователя или управлять доступом:

  1. Сброс пароля:
    • Перейдите к ВМ в Azure Portal.
    • В разделе Поддержка + устранение неполадок, выберите Сброс пароля.
    • Выберите Имя пользователя и сбросьте пароль.
  2. Изменение назначений ролей:
    • Перейдите в Управление доступом (IAM).
    • При необходимости изменяйте или удаляйте назначения ролей.

Советы по устранению неполадок

  • Сбой SSH-подключения: Убедитесь, что группа сетевой безопасности (NSG) разрешает входящий SSH-трафик на порту 22.
  • Ошибки проверки подлинности: Проверьте, назначена ли пользователю правильная роль Azure AD.
  • Проблемы с общедоступным IP-адресом: Убедитесь, что ВМ имеет общедоступный IP-адрес, или настройте частное подключение с помощью Azure Bastion.

Заключение

Включение входа через Azure AD для виртуальных машин Linux в Azure — это настоящий прорыв для организаций, стремящихся повысить безопасность и упростить управление доступом. Следуя шагам, описанным в этом руководстве, вы сможете настроить вход через Azure AD, назначить роли и без проблем подключаться к своей ВМ.

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

Оставить комментарий