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


Присоединение виртуальной машины SUSE Linux Enterprise к управляемому домену доменных служб Microsoft Entra

Чтобы пользователи могли входить в ВМ в Azure с помощью одного набора учетных данных, вы можете присоединить ВМ к управляемому домену Domain Services Microsoft Entra. При присоединении виртуальной машины к управляемому домену доменных служб учетные записи пользователей и учетные данные из домена можно использовать для входа и управления серверами. Также применяются членства в группах из управляемого домена, позволяющие управлять доступом к файлам и службам на виртуальной машине.

В этой статье объясняется, как присоединить виртуальную машину SUSE Linux Enterprise (SLE) к управляемому домену.

Предпосылки

Для работы с этим учебником требуются следующие ресурсы и разрешения:

Создание виртуальной машины SLE Linux и подключение к ней

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

Если необходимо создать виртуальную машину SLE Linux или создать тестовую виртуальную машину для использования в целях этой статьи, можете использовать один из следующих методов:

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

  • Разверните виртуальную машину в той же или одноранговой виртуальной сети, в которой включены доменные службы Microsoft Entra.
  • Разверните виртуальную машину в другой подсети, отличной от управляемого домена доменных служб Microsoft Entra.

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

Настройка файла hosts

Чтобы убедиться, что имя узла виртуальной машины правильно настроено для управляемого домена, измените файл /etc/hosts и задайте имя узла:

sudo vi /etc/hosts

В файле hosts обновите адрес localhost. В следующем примере :

  • aaddscontoso.com — это DNS-имя управляемого домена.
  • linux-q2gr — это имя узла виртуальной машины SLE, присоединяемой к управляемому домену.

Замените эти имена своими значениями:

127.0.0.1 linux-q2gr linux-q2gr.aaddscontoso.com

По завершении сохраните и закройте файл hosts с помощью команды :wq редактора.

Присоединение виртуальной машины к управляемому домену с использованием SSSD

Чтобы присоединиться к управляемому домену с помощью SSSD и модуля управления входом пользователя YaST, выполните следующие действия.

  1. Установите модуль управления входом пользователя YaST:

    sudo zypper install yast2-auth-client
    
  2. Откройте YaST.

  3. Чтобы использовать автообнаружение DNS, настройте управляемые IP-адреса домена (сервера Active Directory) в качестве сервера доменных имен для клиента.

    В YaST выберите System > Network Settings (Система > Параметры сети).

  4. Перейдите на вкладку имя узла или DNS, а затем введите один или несколько IP-адресов управляемого домена в текстовое поле Name Server 1. Эти IP-адреса отображаются в окне свойств в Центре администрирования Microsoft Entra для управляемого домена, например 10.0.2.4 и 10.0.2.5.

    Добавьте собственные IP-адреса управляемых доменов, а затем нажмите кнопку ОК.

  5. В главном окне YaST выберите Network Services>User Logon Management (Сетевые службы > Управление входом пользователя).

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

    Пример снимка экрана для окна управления входом пользователя в YaST

    Чтобы начать редактирование, выберите Change Settings (Изменить параметры).

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

  1. В диалоговом окне выберите Add Domain (Добавить домен).

  2. Укажите правильное доменное имя, например aaddscontoso.com, а затем укажите службы, используемые для идентификации данных и проверки подлинности. Выберите Microsoft Active Directory в обоих случаях.

    Убедитесь, что выбран параметр Enable the domain (Включить домен).

  3. Когда все будет готово, щелкните ОК.

  4. Примите параметры по умолчанию в следующем диалоговом окне, а затем нажмите кнопку ОК.

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

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

    Пример снимка экрана окна регистрации Active Directory в YaST

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

    Чтобы убедиться, что текущий домен включен для Samba, активируйте перезапись конфигурации Samba для работы с этим AD.

  7. Для регистрации нажмите кнопку ОК.

  8. Отображается сообщение, чтобы убедиться, что вы успешно зарегистрированы. Чтобы завершить процесс, щелкните ОК.

После регистрации виртуальной машины в управляемом домене настройте клиент с помощью команды Manage Domain User Logon (Управлять входом пользователя домена), как показано на следующем примере снимка экрана:

Снимок экрана с примером окна управления входом пользователя домена в YaST

  1. Чтобы разрешить вход с использованием данных, предоставленных управляемым доменом, установите флажок Allow Domain User Logon (Разрешить вход пользователя в домен).

  2. При необходимости в разделе Enable domain data source (Включение источника данных домена) проверьте наличие дополнительных источников данных, необходимых для вашей среды. Эти параметры включают пользователей, которым разрешено использовать sudo или доступные сетевые диски.

  3. Чтобы разрешить пользователям управляемого домена использовать домашние каталоги на виртуальной машине, установите флажок Create Home Directories (Создать домашние каталоги).

  4. На боковой панели выберите Service Options › Name switch, а затем Extended Options (Расширенные параметры). В этом окне выберите либо fallback_homedir, либо override_homedir, а затем нажмите кнопку Add (Добавить).

  5. Укажите значение для расположения домашнего каталога. Чтобы иметь домашние каталоги, следуйте формату /home/USER_NAME, используйте /home/%u. Дополнительные сведения о возможных переменных см. на справочной странице SSSD.conf (man 5 sssd.conf), раздел override_homedir.

  6. Нажмите ОК.

  7. Чтобы сохранить изменения, нажмите кнопку ОК. Затем проверьте, что значения отображаются правильно. Чтобы выйти из диалогового окна, нажмите Cancel (Отмена).

  8. Если планируется одновременный запуск SSSD и Winbind (например, при подключении через SSSD, но затем запускается файловый сервер Samba), параметр Samba метод kerberos должен быть установлен в значение secrets and keytab в smb.conf. Параметр SSSD ad_update_samba_machine_account_password также должен иметь значение true в SSSD.conf. Эти параметры предотвращают рассинхронизацию keytab системы.

Присоединение виртуальной машины к управляемому домену с использованием Winbind

Чтобы присоединиться к управляемому домену с помощью winbind и модуля членства в домене Windows YaST, выполните следующие действия.

  1. В YaST выберите Network Services > Windows Domain Membership (Сетевые службы > Членство в домене Windows).

  2. Введите домен для присоединение в домене или рабочей группе на экране членства в домене Windows. Введите имя управляемого домена, например aaddscontoso.com.

    Пример снимка окна членства в домене Windows в YaST

  3. Чтобы использовать источник SMB для проверки подлинности Linux, установите флажок Использовать сведения об SMB для проверки подлинности Linux (Использовать сведения об SMB для проверки подлинности Linux).

  4. Чтобы автоматически создать локальный корневой каталог для пользователей управляемого домена на виртуальной машине, установите флажок Create Home Directory on Login (Создать домашний каталог при входе).

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

  6. Если вы хотите изменить диапазоны UID и GID для пользователей и групп Samba, выберите Expert Settings (Расширенные параметры).

  7. Настройте синхронизацию времени по протоколу NTP для управляемого домена, выбрав NTP Configuration (Конфигурация NTP). Введите IP-адреса управляемого домена. Эти IP-адреса отображаются в окне свойств в Центре администрирования Microsoft Entra для управляемого домена, например 10.0.2.4 и 10.0.2.5.

  8. Нажмите кнопку ОК и подтвердите присоединение к домену при появлении соответствующего запроса.

  9. Укажите пароль администратора в управляемом домене и нажмите кнопку ОК.

    Снимок экрана с примером диалогового окна проверки подлинности при присоединении виртуальной машины SLE к управляемому домену

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

Присоединение виртуальной машины к управляемому домену с помощью Winbind из интерфейса командной строки YaST

Чтобы присоединиться к управляемому домену с помощью winbind через интерфейс командной строки YaST:

  • Присоединитесь к домену.

    sudo yast samba-client joindomain domain=aaddscontoso.com user=<admin> password=<admin password> machine=<(optional) machine account>
    

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

Чтобы присоединиться к управляемому домену с помощью winbind и команды samba net:

  1. Установите клиент kerberos и samba-winbind:

    sudo zypper in krb5-client samba-winbind
    
  2. Измените файлы конфигурации.

    • /etc/samba/smb.conf

      [global]
          workgroup = AADDSCONTOSO
          usershare allow guests = NO #disallow guests from sharing
          idmap config * : backend = tdb
          idmap config * : range = 1000000-1999999
          idmap config AADDSCONTOSO : backend = rid
          idmap config AADDSCONTOSO : range = 5000000-5999999
          kerberos method = secrets and keytab
          realm = AADDSCONTOSO.COM
          security = ADS
          template homedir = /home/%D/%U
          template shell = /bin/bash
          winbind offline logon = yes
          winbind refresh tickets = yes
      
    • /etc/krb5.conf

      [libdefaults]
          default_realm = AADDSCONTOSO.COM
          clockskew = 300
      [realms]
          AADDSCONTOSO.COM = {
              kdc = PDC.AADDSCONTOSO.COM
              default_domain = AADDSCONTOSO.COM
              admin_server = PDC.AADDSCONTOSO.COM
          }
      [domain_realm]
          .aaddscontoso.com = AADDSCONTOSO.COM
      [appdefaults]
          pam = {
              ticket_lifetime = 1d
              renew_lifetime = 1d
              forwardable = true
              proxiable = false
              minimum_uid = 1
          }
      
    • /etc/security/pam_winbind.conf

      [global]
          cached_login = yes
          krb5_auth = yes
          krb5_ccache_type = FILE
          warn_pwd_expire = 14
      
    • /etc/nsswitch.conf

      passwd: compat winbind
      group: compat winbind
      
  3. Убедитесь, что дата и время в идентификаторе Microsoft Entra и Linux синхронизированы. Это можно сделать, добавив сервер Microsoft Entra в службу NTP:

    1. Добавьте следующую строку после /etc/ntp.conf:

      server aaddscontoso.com
      
    2. Перезапустите службу NTP.

      sudo systemctl restart ntpd
      
  4. Присоединитесь к домену.

    sudo net ads join -U Administrator%Mypassword
    
  5. Включите winbind в качестве источника входа в подключаемые модули аутентификации Linux (PAM):

    config pam-config --add --winbind
    
  6. Включите автоматическое создание домашних каталогов, чтобы пользователи могли входить в систему:

    sudo pam-config -a --mkhomedir
    
  7. Запустите и включите службу winbind:

    sudo systemctl enable winbind
    sudo systemctl start winbind
    

Разрешение проверки пароля для SSH

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

  1. Откройте файл sshd_conf с помощью редактора:

    sudo vi /etc/ssh/sshd_config
    
  2. Для строки PasswordAuthentication установите значение yes:

    PasswordAuthentication yes
    

    По завершении сохраните и закройте файл sshd_conf с помощью команды :wq редактора.

  3. Чтобы применить изменения и позволить пользователям входить с помощью пароля, перезапустите службу SSH:

    sudo systemctl restart sshd
    

Предоставьте группе "AAD DC Administrators" привилегии суперпользователя

Чтобы предоставить членам группы администраторов контроллера домена AAD права администратора на виртуальной машине SLE, добавьте запись в /etc/sudoers. После добавления члены группы администраторов контроллера домена AAD могут использовать команду sudo на виртуальной машине SLE.

  1. Откройте файл sudoers для редактирования:

    sudo visudo
    
  2. Добавьте следующую запись в конец файла /etc/sudoers. Группа администраторов контроллера домена AAD содержит пробелы в имени, поэтому включите escape-символ обратной косой черты в имя группы. Добавьте собственное доменное имя, например aaddscontoso.com:

    # Add 'AAD DC Administrators' group members as admins.
    %AAD\ DC\ Administrators@aaddscontoso.com ALL=(ALL) NOPASSWD:ALL
    

    По завершении сохраните и закройте редактор с помощью команды :wq редактора.

Вход в виртуальную машину с помощью учетной записи домена

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

  1. Создайте новое SSH-подключение с консоли. Используйте учетную запись домена, принадлежащую к управляемому домену, с помощью команды ssh -l, например contosoadmin@aaddscontoso.com, и введите адрес виртуальной машины, например linux-q2gr.aaddscontoso.com. При использовании Azure Cloud Shell используйте общедоступный IP-адрес виртуальной машины, а не внутреннее DNS-имя.

    sudo ssh -l contosoadmin@AADDSCONTOSO.com linux-q2gr.aaddscontoso.com
    
  2. После успешного подключения к виртуальной машине убедитесь, что корневой каталог был инициализирован правильно:

    sudo pwd
    

    Вы должны находиться в каталоге /home с собственным каталогом, совпадающим с учетной записью пользователя.

  3. Теперь убедитесь, что членство в группе разрешается правильно:

    sudo id
    

    Вы должны видеть свое членство в группе из управляемого домена.

  4. Если вы вошли в виртуальную машину в качестве члена группы администраторов контроллера домена AAD, убедитесь, что вы можете правильно использовать команду sudo:

    sudo zypper update
    

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

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