Dołączanie maszyny wirtualnej SUSE Linux Enterprise do domeny zarządzanej usług Microsoft Entra Domain Services

Aby umożliwić użytkownikom logowanie się do maszyn wirtualnych na platformie Azure przy użyciu jednego zestawu poświadczeń, możesz dołączyć maszyny wirtualne do domeny zarządzanej usług Microsoft Entra Domain Services. Po dołączeniu maszyny wirtualnej do domeny zarządzanej usług Domain Services konta użytkowników i poświadczenia z domeny mogą służyć do logowania się serwerów i zarządzania nimi. Członkostwa w grupach z domeny zarządzanej są również stosowane w celu kontrolowania dostępu do plików lub usług na maszynie wirtualnej.

W tym artykule pokazano, jak dołączyć maszynę wirtualną SUSE Linux Enterprise (SLE) do domeny zarządzanej.

Wymagania wstępne

Do ukończenia tego samouczka potrzebne są następujące zasoby i uprawnienia:

  • Aktywna subskrypcja platformy Azure.
  • Dzierżawa firmy Microsoft Entra skojarzona z twoją subskrypcją, zsynchronizowana z katalogiem lokalnym lub katalogiem tylko w chmurze.
  • Domena zarządzana usług Microsoft Entra Domain Services jest włączona i skonfigurowana w dzierżawie firmy Microsoft Entra.
  • Konto użytkownika będące częścią domeny zarządzanej.
  • Unikatowe nazwy maszyn wirtualnych z systemem Linux, które mają maksymalnie 15 znaków, aby uniknąć obcinania nazw, które mogą powodować konflikty w usłudze Active Directory.

Tworzenie i nawiązywanie połączenia z maszyną wirtualną z systemem Linux SLE

Jeśli masz istniejącą maszynę wirtualną Z systemem Linux SLE na platformie Azure, połącz się z nią przy użyciu protokołu SSH, a następnie przejdź do następnego kroku, aby rozpocząć konfigurowanie maszyny wirtualnej.

Jeśli musisz utworzyć maszynę wirtualną Z systemem Linux SLE lub utworzyć testową maszynę wirtualną do użycia z tym artykułem, możesz użyć jednej z następujących metod:

Podczas tworzenia maszyny wirtualnej należy zwrócić uwagę na ustawienia sieci wirtualnej, aby upewnić się, że maszyna wirtualna może komunikować się z domeną zarządzaną:

  • Wdróż maszynę wirtualną w tej samej lub równorzędnej sieci wirtualnej, w której włączono usługi Microsoft Entra Domain Services.
  • Wdróż maszynę wirtualną w innej podsieci niż domena zarządzana usług Microsoft Entra Domain Services.

Po wdrożeniu maszyny wirtualnej wykonaj kroki, aby nawiązać połączenie z maszyną wirtualną przy użyciu protokołu SSH.

Konfigurowanie pliku hosts

Aby upewnić się, że nazwa hosta maszyny wirtualnej jest poprawnie skonfigurowana dla domeny zarządzanej, zmodyfikuj plik /etc/hosts i ustaw nazwę hosta:

sudo vi /etc/hosts

W pliku hosts zaktualizuj adres localhost. W poniższym przykładzie:

  • aaddscontoso.com jest nazwą domeny DNS domeny zarządzanej.
  • linux-q2gr to nazwa hosta maszyny wirtualnej SLE, która jest przyłączona do domeny zarządzanej.

Zaktualizuj te nazwy własnymi wartościami:

127.0.0.1 linux-q2gr linux-q2gr.aaddscontoso.com

Po zakończeniu zapisz i zamknij plik hosts przy użyciu :wq polecenia edytora.

Dołączanie maszyny wirtualnej do domeny zarządzanej przy użyciu usługi SSSD

Aby dołączyć domenę zarządzaną przy użyciu usługi SSSD i modułu zarządzania logowaniem użytkowników w usłudze YaST, wykonaj następujące kroki:

  1. Zainstaluj moduł YaST zarządzanie logowaniem użytkowników:

    sudo zypper install yast2-auth-client
    
  2. Otwórz plik YaST.

  3. Aby pomyślnie użyć funkcji automatycznego wykrywania DNS później, skonfiguruj adresy IP domeny zarządzanej ( serwer usługi Active Directory) jako serwer nazw klienta.

    W usłudze YaST wybierz pozycję Sieć systemowa > Ustawienia.

  4. Wybierz kartę Nazwa hosta/DNS , a następnie wprowadź adresy IP domeny zarządzanej w polu tekstowym Name Server 1. Te adresy IP są wyświetlane w oknie Właściwości w centrum administracyjnym firmy Microsoft dla domeny zarządzanej, na przykład 10.0.2.4 i 10.0.2.5.

    Dodaj własne adresy IP domeny zarządzanej, a następnie wybierz przycisk OK.

  5. W oknie głównym usługi YaST wybierz pozycję Zarządzanie logowaniem użytkowników usług>sieciowych.

    Zostanie otwarty moduł z omówieniem przedstawiającym różne właściwości sieci komputera i aktualnie używaną metodę uwierzytelniania, jak pokazano na poniższym przykładowym zrzucie ekranu:

    Example screenshot of the User Login Management window in YaST

    Aby rozpocząć edytowanie, wybierz pozycję Zmień Ustawienia.

Aby dołączyć maszynę wirtualną do domeny zarządzanej, wykonaj następujące kroki:

  1. W oknie dialogowym wybierz pozycję Dodaj domenę.

  2. Określ poprawną nazwę domeny, taką jak aaddscontoso.com, a następnie określ usługi do użycia na potrzeby danych tożsamości i uwierzytelniania. Wybierz usługę Microsoft Active Directory dla obu.

    Upewnij się, że wybrano opcję Włącz domenę .

  3. Gdy wszystko będzie gotowe, wybierz przycisk OK.

  4. Zaakceptuj ustawienia domyślne w poniższym oknie dialogowym, a następnie wybierz przycisk OK.

  5. Maszyna wirtualna instaluje dodatkowe oprogramowanie zgodnie z potrzebami, a następnie sprawdza, czy domena zarządzana jest dostępna.

    Jeśli wszystko jest poprawne, zostanie wyświetlone następujące przykładowe okno dialogowe wskazujące, że maszyna wirtualna odkryła domenę zarządzaną, ale nie została jeszcze zarejestrowana.

    Example screenshot of the Active Directory enrollment window in YaST

  6. W oknie dialogowym określ nazwę użytkownika i hasło użytkownika będącego częścią domeny zarządzanej. W razie potrzeby dodaj konto użytkownika do grupy w usłudze Microsoft Entra ID.

    Aby upewnić się, że bieżąca domena jest włączona dla protokołu Samba, aktywuj konfigurację Samba overwrite, aby pracować z tą usługą AD.

  7. Aby zarejestrować, wybierz przycisk OK.

  8. Zostanie wyświetlony komunikat z potwierdzeniem pomyślnego zarejestrowania użytkownika. Aby zakończyć, wybierz przycisk OK.

Po zarejestrowaniu maszyny wirtualnej w domenie zarządzanej skonfiguruj klienta przy użyciu funkcji Zarządzanie logowaniem użytkownika domeny, jak pokazano na poniższym przykładowym zrzucie ekranu:

Example screenshot of the Manage Domain User Logon window in YaST

  1. Aby zezwolić na logowanie przy użyciu danych dostarczonych przez domenę zarządzaną, zaznacz pole wyboru Zezwalaj na logowanie użytkownika domeny.

  2. Opcjonalnie w obszarze Włącz źródło danych domeny sprawdź dodatkowe źródła danych zgodnie z potrzebami środowiska. Te opcje obejmują użytkowników, którzy mogą używać sudo lub które dyski sieciowe są dostępne.

  3. Aby zezwolić użytkownikom w domenie zarządzanej na katalogi główne na maszynie wirtualnej, zaznacz pole wyboru Utwórz katalogi główne.

  4. Na pasku bocznym wybierz pozycję Opcje usługi — przełącznik nazw, a następnie opcje rozszerzone. W tym oknie wybierz pozycję fallback_homedir lub override_homedir, a następnie wybierz pozycję Dodaj.

  5. Określ wartość lokalizacji katalogu macierzystego. Aby katalogi macierzyste miały format /home/USER_NAME, użyj / home/%u. Aby uzyskać więcej informacji na temat możliwych zmiennych, zobacz stronę sssd.conf man (man 5 sssd.conf), sekcję override_homedir.

  6. Wybierz przycisk OK.

  7. Aby zapisać zmiany, wybierz pozycję OK. Następnie upewnij się, że wyświetlane wartości są teraz poprawne. Aby opuścić okno dialogowe, wybierz pozycję Anuluj.

  8. Jeśli zamierzasz uruchamiać usługi SSSD i Winbind jednocześnie (na przykład podczas dołączania za pośrednictwem usługi SSSD, ale następnie uruchamiać serwer plików Samba), należy ustawić metodę kerberos opcji Samba na wpisy tajne i kartę klucza w pliku smb.conf. Opcja SSSD ad_update_samba_machine_account_password powinna być również ustawiona na wartość true w pliku sssd.conf. Te opcje uniemożliwiają wyjście z synchronizacji przez kartę klucza systemowego.

Dołączanie maszyny wirtualnej do domeny zarządzanej przy użyciu narzędzia Winbind

Aby dołączyć domenę zarządzaną przy użyciu narzędzia winbind i modułu Członkostwa w domenie systemu Windows w usłudze YaST, wykonaj następujące kroki:

  1. W usłudze YaST wybierz pozycję Członkostwo w domenie systemu Windows usług > sieciowych.

  2. Wprowadź domenę, która ma być przyłączana do domeny lub grupy roboczej na ekranie Członkostwo w domenie systemu Windows. Wprowadź nazwę domeny zarządzanej, taką jak aaddscontoso.com.

    Example screenshot of the Windows Domain Membership window in YaST

  3. Aby użyć źródła SMB do uwierzytelniania systemu Linux, zaznacz opcję Użyj informacji SMB na potrzeby uwierzytelniania systemu Linux.

  4. Aby automatycznie utworzyć lokalny katalog główny dla użytkowników domeny zarządzanej na maszynie wirtualnej, zaznacz opcję Utwórz katalog macierzysny podczas logowania.

  5. Sprawdź opcję Uwierzytelniania w trybie offline, aby umożliwić użytkownikom domeny logowanie się nawet wtedy, gdy domena zarządzana jest tymczasowo niedostępna.

  6. Jeśli chcesz zmienić zakresy UID i GID dla użytkowników i grup Samba, wybierz pozycję Expert Ustawienia.

  7. Skonfiguruj synchronizację czasu protokołu NTP (Network Time Protocol) dla domeny zarządzanej, wybierając pozycję Konfiguracja NTP. Wprowadź adresy IP domeny zarządzanej. Te adresy IP są wyświetlane w oknie Właściwości w centrum administracyjnym firmy Microsoft dla domeny zarządzanej, na przykład 10.0.2.4 i 10.0.2.5.

  8. Wybierz przycisk OK i potwierdź dołączenie do domeny po wyświetleniu monitu.

  9. Podaj hasło administratora w domenie zarządzanej i wybierz przycisk OK.

    Example screenshot of the authentication dialog prompt when you join a SLE VM to the managed domain

Po dołączeniu do domeny zarządzanej możesz zalogować się do niej ze stacji roboczej przy użyciu menedżera wyświetlania pulpitu lub konsoli.

Przyłącz maszynę wirtualną do domeny zarządzanej przy użyciu narzędzia Winbind z interfejsu wiersza polecenia YaST

Aby dołączyć domenę zarządzaną przy użyciu narzędzia winbind i interfejsu wiersza polecenia YaST:

  • Dołącz do domeny:

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

Przyłącz maszynę wirtualną do domeny zarządzanej przy użyciu narzędzia Winbind z terminalu

Aby dołączyć domenę zarządzaną przy użyciu narzędzia winbind i samba net polecenia:

  1. Zainstaluj klienta protokołu Kerberos i bibliotekę samba-winbind:

    sudo zypper in krb5-client samba-winbind
    
  2. Edytuj pliki konfiguracji:

    • /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. Sprawdź, czy data i godzina w identyfikatorze Entra firmy Microsoft i systemie Linux są zsynchronizowane. Możesz to zrobić, dodając serwer Microsoft Entra do usługi NTP:

    1. Dodaj następujący wiersz do :/etc/ntp.conf

      server aaddscontoso.com
      
    2. Uruchom ponownie usługę NTP:

      sudo systemctl restart ntpd
      
  4. Dołącz do domeny:

    sudo net ads join -U Administrator%Mypassword
    
  5. Włącz winbind jako źródło logowania w modułach uwierzytelniania podłączanego systemu Linux (PAM):

    config pam-config --add --winbind
    
  6. Włącz automatyczne tworzenie katalogów domowych, aby użytkownicy mogli się logować:

    sudo pam-config -a --mkhomedir
    
  7. Uruchom i włącz usługę winbind:

    sudo systemctl enable winbind
    sudo systemctl start winbind
    

Zezwalaj na uwierzytelnianie haseł dla protokołu SSH

Domyślnie użytkownicy mogą logować się tylko do maszyny wirtualnej przy użyciu uwierzytelniania opartego na kluczach publicznych SSH. Uwierzytelnianie oparte na hasłach kończy się niepowodzeniem. Po dołączeniu maszyny wirtualnej do domeny zarządzanej te konta domeny muszą używać uwierzytelniania opartego na hasłach. Zaktualizuj konfigurację protokołu SSH, aby zezwolić na uwierzytelnianie oparte na hasłach w następujący sposób.

  1. Otwórz plik sshd_conf za pomocą edytora:

    sudo vi /etc/ssh/sshd_config
    
  2. Zaktualizuj wiersz dla pozycji PasswordAuthentication na wartość tak:

    PasswordAuthentication yes
    

    Po zakończeniu zapisz i zamknij plik sshd_conf przy użyciu :wq polecenia edytora.

  3. Aby zastosować zmiany i zezwolić użytkownikom na logowanie się przy użyciu hasła, uruchom ponownie usługę SSH:

    sudo systemctl restart sshd
    

Udzielanie uprawnień sudo grupy "AAD DC Administracja istrators"

Aby przyznać członkom kontrolera domeny usługi AAD Administracja istrators uprawnienia administracyjne grupy na maszynie wirtualnej SLE, dodaj wpis do /etc/sudoers. Po dodaniu członkowie grupy Administracja istratorów kontrolera domeny usługi AAD mogą używać sudo polecenia na maszynie wirtualnej SLE.

  1. Otwórz plik sudoers do edycji:

    sudo visudo
    
  2. Dodaj następujący wpis na końcu pliku /etc/sudoers . Grupa kontrolerów domeny usługi AAD Administracja istrators zawiera biały znak w nazwie, dlatego dołącz znak ucieczki ukośnika odwrotnego w nazwie grupy. Dodaj własną nazwę domeny, taką jak aaddscontoso.com:

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

    Po zakończeniu zapisz i zamknij edytor przy użyciu :wq polecenia edytora.

Logowanie się do maszyny wirtualnej przy użyciu konta domeny

Aby sprawdzić, czy maszyna wirtualna została pomyślnie przyłączona do domeny zarządzanej, uruchom nowe połączenie SSH przy użyciu konta użytkownika domeny. Upewnij się, że katalog macierzysny został utworzony, a członkostwo w grupie z domeny jest stosowane.

  1. Utwórz nowe połączenie SSH z konsoli. Użyj konta domeny należącego do domeny zarządzanej przy użyciu ssh -l polecenia , takiego jak contosoadmin@aaddscontoso.com , a następnie wprowadź adres maszyny wirtualnej, na przykład linux-q2gr.aaddscontoso.com. Jeśli używasz usługi Azure Cloud Shell, użyj publicznego adresu IP maszyny wirtualnej, a nie wewnętrznej nazwy DNS.

    sudo ssh -l contosoadmin@AADDSCONTOSO.com linux-q2gr.aaddscontoso.com
    
  2. Po pomyślnym nawiązaniu połączenia z maszyną wirtualną sprawdź, czy katalog macierzysty został poprawnie zainicjowany:

    sudo pwd
    

    Powinien znajdować się w katalogu /home z własnym katalogiem zgodnym z kontem użytkownika.

  3. Teraz sprawdź, czy członkostwa w grupach są prawidłowo rozwiązywane:

    sudo id
    

    Powinny zostać wyświetlone członkostwa w grupach z domeny zarządzanej.

  4. Jeśli zalogowano się do maszyny wirtualnej jako członek grupy Administracja istratorów kontrolera domeny usługi AAD, sprawdź, czy możesz poprawnie użyć sudo polecenia :

    sudo zypper update
    

Następne kroki

Jeśli masz problemy z połączeniem maszyny wirtualnej z domeną zarządzaną lub logowaniem się przy użyciu konta domeny, zobacz Rozwiązywanie problemów z przyłączaniem do domeny.