Aggiungere una macchina virtuale SU edizione Standard Linux Enterprise a un dominio gestito di Microsoft Entra Domain Services

Per consentire agli utenti di accedere alle macchine virtuali (VM) in Azure usando un singolo set di credenziali, è possibile aggiungere macchine virtuali a un dominio gestito di Microsoft Entra Domain Services. Quando si aggiunge una macchina virtuale a un dominio gestito di Servizi di dominio, è possibile usare account utente e credenziali dal dominio per accedere e gestire i server. Le appartenenze ai gruppi del dominio gestito vengono applicate anche per consentire di controllare l'accesso ai file o ai servizi nella macchina virtuale.

Questo articolo illustra come aggiungere una macchina virtuale SU edizione Standard Linux Enterprise (SLE) a un dominio gestito.

Prerequisiti

Per completare l'esercitazione, sono necessari i privilegi e le risorse seguenti:

  • Una sottoscrizione di Azure attiva.
  • Un tenant di Microsoft Entra associato alla sottoscrizione, sincronizzato con una directory locale o una directory solo cloud.
  • Un dominio gestito di Microsoft Entra Domain Services abilitato e configurato nel tenant di Microsoft Entra.
  • Un account utente che fa parte del dominio gestito.
  • Nomi univoci di macchine virtuali Linux con un massimo di 15 caratteri per evitare nomi troncati che potrebbero causare conflitti in Active Directory.

Creare e connettersi a una macchina virtuale Linux SLE

Se si dispone di una macchina virtuale Linux SLE esistente in Azure, connettersi con SSH, quindi continuare con il passaggio successivo per iniziare a configurare la macchina virtuale.

Se è necessario creare una macchina virtuale Linux SLE o creare una macchina virtuale di test da usare con questo articolo, è possibile usare uno dei metodi seguenti:

Quando si crea la macchina virtuale, prestare attenzione alle impostazioni della rete virtuale per assicurarsi che la macchina virtuale possa comunicare con il dominio gestito:

  • Distribuire la macchina virtuale nella stessa rete virtuale con peering in cui è stato abilitato Microsoft Entra Domain Services.
  • Distribuire la macchina virtuale in una subnet diversa rispetto al dominio gestito di Microsoft Entra Domain Services.

Dopo aver distribuito la macchina virtuale, seguire la procedura per connettersi alla macchina virtuale tramite SSH.

Configurare il file hosts

Per assicurarsi che il nome host della macchina virtuale sia configurato correttamente per il dominio gestito, modificare il file /etc/hosts e impostare il nome host:

sudo vi /etc/hosts

Nel file hosts aggiornare l'indirizzo localhost. Nell'esempio seguente:

  • aaddscontoso.com è il nome di dominio DNS del dominio gestito.
  • linux-q2gr è il nome host della macchina virtuale SLE che si sta aggiungendo al dominio gestito.

Aggiornare questi nomi con i propri valori:

127.0.0.1 linux-q2gr linux-q2gr.aaddscontoso.com

Al termine, salvare ed uscire dal file hosts usando il :wq comando dell'editor.

Aggiungere una macchina virtuale al dominio gestito usando SSSD

Per aggiungere il dominio gestito usando SSSD e il modulo Gestione accesso utente di YaST, seguire questa procedura:

  1. Installare il modulo YaST gestione accesso utente:

    sudo zypper install yast2-auth-client
    
  2. Aprire YaST.

  3. Per usare correttamente l'individuazione automatica DNS in un secondo momento, configurare gli indirizzi IP del dominio gestito (il server Active Directory) come server dei nomi per il client.

    In YaST selezionare Rete di sistema > Impostazioni.

  4. Selezionare la scheda Nome host/DNS , quindi immettere gli indirizzi IP del dominio gestito nella casella di testo Nome server 1. Questi indirizzi IP vengono visualizzati nella finestra Proprietà dell'interfaccia di amministrazione di Microsoft Entra per il dominio gestito, ad esempio 10.0.2.4 e 10.0.2.5.

    Aggiungere indirizzi IP del dominio gestito e quindi selezionare OK.

  5. Nella finestra principale di YaST scegliere Gestione accesso utenti servizi>di rete.

    Il modulo viene aperto con una panoramica che mostra diverse proprietà di rete del computer e il metodo di autenticazione attualmente in uso, come illustrato nello screenshot di esempio seguente:

    Example screenshot of the User Login Management window in YaST

    Per avviare la modifica, selezionare Cambia Impostazioni.

Per aggiungere la macchina virtuale al dominio gestito, seguire questa procedura:

  1. Nella finestra di dialogo selezionare Aggiungi dominio.

  2. Specificare il nome di dominio corretto, ad esempio aaddscontoso.com, quindi specificare i servizi da usare per i dati di identità e l'autenticazione. Selezionare Microsoft Active Directory per entrambi.

    Assicurarsi che l'opzione Abilita il dominio sia selezionata.

  3. Al termine, selezionare OK.

  4. Accettare le impostazioni predefinite nella finestra di dialogo seguente, quindi selezionare OK.

  5. La macchina virtuale installa software aggiuntivo in base alle esigenze, quindi verifica se il dominio gestito è disponibile.

    Se tutto è corretto, viene visualizzata la finestra di dialogo di esempio seguente per indicare che la macchina virtuale ha individuato il dominio gestito, ma che non è ancora stata registrata.

    Example screenshot of the Active Directory enrollment window in YaST

  6. Nella finestra di dialogo specificare il nome utente e la password di un utente che fa parte del dominio gestito. Se necessario, aggiungere un account utente a un gruppo in Microsoft Entra ID.

    Per assicurarsi che il dominio corrente sia abilitato per Samba, attivare la configurazione di Overwrite Samba per usare questa cartella di Active Directory.

  7. Per eseguire la registrazione, selezionare OK.

  8. Viene visualizzato un messaggio per confermare che la registrazione è stata completata. Per completare, selezionare OK.

Dopo aver registrato la macchina virtuale nel dominio gestito, configurare il client usando Gestisci accesso utente dominio, come illustrato nello screenshot di esempio seguente:

Example screenshot of the Manage Domain User Logon window in YaST

  1. Per consentire gli accessi usando i dati forniti dal dominio gestito, selezionare la casella Consenti accesso utente dominio.

  2. Facoltativamente, in Abilita origine dati di dominio controllare le origini dati aggiuntive in base alle esigenze per l'ambiente. Queste opzioni includono quali utenti possono usare sudo o quali unità di rete sono disponibili.

  3. Per consentire agli utenti nel dominio gestito di avere le home directory nella macchina virtuale, selezionare la casella Crea home directory.

  4. Nella barra laterale selezionare Opzioni di servizio - Opzione nome , quindi Opzioni estese. In tale finestra selezionare fallback_homedir o override_homedir e quindi selezionare Aggiungi.

  5. Specificare un valore per il percorso della home directory. Per fare in modo che le home directory seguano il formato /home/U edizione StandardR_NAME, usare /home/%u. Per altre informazioni sulle possibili variabili, vedere la sezione sssd.conf man page (man 5 sssd.conf), sezione override_homedir.

  6. Selezionare OK.

  7. Per salvare le modifiche, selezionare OK. Assicurarsi quindi che i valori visualizzati siano corretti. Per lasciare la finestra di dialogo, selezionare Annulla.

  8. Se si intende eseguire SSSD e Winbind contemporaneamente ,ad esempio quando si esegue l'aggiunta tramite SSSD, ma quindi si esegue un file server Samba, il metodo Kerberos dell'opzione Samba deve essere impostato su segreti e keytab in smb.conf. Anche l'opzione SSSD ad_update_samba_machine_account_password deve essere impostata su true in sssd.conf. Queste opzioni impediscono al keytab di sistema di uscire dalla sincronizzazione.

Aggiungere una macchina virtuale al dominio gestito usando Winbind

Per aggiungere il dominio gestito usando winbind e il modulo Appartenenza al dominio Windows di YaST, completare la procedura seguente:

  1. In YaST selezionare Appartenenza al dominio Windows servizi > di rete.

  2. Immettere il dominio da aggiungere al dominio o al gruppo di lavoro nella schermata Appartenenza al dominio Windows. Immettere il nome di dominio gestito, ad esempio aaddscontoso.com.

    Example screenshot of the Windows Domain Membership window in YaST

  3. Per usare l'origine SMB per l'autenticazione Linux, selezionare l'opzione Usa informazioni SMB per l'autenticazione Linux.

  4. Per creare automaticamente una home directory locale per gli utenti del dominio gestito nella macchina virtuale, selezionare l'opzione Crea home directory nell'account di accesso.

  5. Selezionare l'opzione Autenticazione offline per consentire agli utenti del dominio di accedere anche se il dominio gestito non è temporaneamente disponibile.

  6. Per modificare gli intervalli UID e GID per gli utenti e i gruppi Samba, selezionare Expert Impostazioni.

  7. Configurare la sincronizzazione dell'ora NTP (Network Time Protocol) per il dominio gestito selezionando Configurazione NTP. Immettere gli indirizzi IP del dominio gestito. Questi indirizzi IP vengono visualizzati nella finestra Proprietà dell'interfaccia di amministrazione di Microsoft Entra per il dominio gestito, ad esempio 10.0.2.4 e 10.0.2.5.

  8. Selezionare OK e confermare l'aggiunta al dominio quando richiesto.

  9. Specificare la password per un amministratore nel dominio gestito e selezionare OK.

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

Dopo aver aggiunto il dominio gestito, è possibile accedervi dalla workstation usando il gestore di visualizzazione del desktop o della console.

Aggiungere una macchina virtuale al dominio gestito usando Winbind dall'interfaccia della riga di comando YaST

Per aggiungere il dominio gestito usando winbind e l'interfaccia della riga di comando YaST:

  • Aggiungere il dominio:

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

Aggiungere una macchina virtuale al dominio gestito usando Winbind dal terminale

Per aggiungere il dominio gestito usando winbind e il samba net comando :

  1. Installare il client Kerberos e samba-winbind:

    sudo zypper in krb5-client samba-winbind
    
  2. Modificare i file di configurazione:

    • /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. Verificare che la data e l'ora in Microsoft Entra ID e Linux siano sincronizzati. A tale scopo, aggiungere il server Microsoft Entra al servizio NTP:

    1. Aggiungere la riga seguente a /etc/ntp.conf:

      server aaddscontoso.com
      
    2. Riavviare il servizio NTP:

      sudo systemctl restart ntpd
      
  4. Aggiungere il dominio:

    sudo net ads join -U Administrator%Mypassword
    
  5. Abilitare winbind come origine di accesso nei moduli di autenticazione pluggable (PAM) linux:

    config pam-config --add --winbind
    
  6. Abilitare la creazione automatica delle home directory in modo che gli utenti possano accedere:

    sudo pam-config -a --mkhomedir
    
  7. Avviare e abilitare il servizio winbind:

    sudo systemctl enable winbind
    sudo systemctl start winbind
    

Consenti autenticazione password per SSH

Per impostazione predefinita, gli utenti possono accedere solo a una macchina virtuale usando l'autenticazione basata su chiave pubblica SSH. L'autenticazione basata su password ha esito negativo. Quando si aggiunge la macchina virtuale a un dominio gestito, questi account di dominio devono usare l'autenticazione basata su password. Aggiornare la configurazione SSH per consentire l'autenticazione basata su password come indicato di seguito.

  1. Aprire il file sshd_conf con un editor:

    sudo vi /etc/ssh/sshd_config
    
  2. Aggiornare la riga per PasswordAuthentication su :

    PasswordAuthentication yes
    

    Al termine, salvare e uscire dal file sshd_conf usando il :wq comando dell'editor.

  3. Per applicare le modifiche e consentire agli utenti di accedere usando una password, riavviare il servizio SSH:

    sudo systemctl restart sshd
    

Concedere i privilegi sudo al gruppo "Amministratori di AAD DC"

Per concedere ai membri del controller di dominio di AAD Amministrazione istrators privilegi amministrativi nella macchina virtuale SLE, aggiungere una voce ai /etc/sudoers. Dopo l'aggiunta, i membri del gruppo AAD DC Amministrazione istrators possono usare il sudo comando nella macchina virtuale SLE.

  1. Aprire il file sudoers per la modifica:

    sudo visudo
    
  2. Aggiungere la voce seguente alla fine del file /etc/sudoers . Il gruppo AAD DC Amministrazione istrators contiene spazi vuoti nel nome, quindi includere il carattere di escape barra rovesciata nel nome del gruppo. Aggiungere il proprio nome di dominio, ad esempio aaddscontoso.com:

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

    Al termine, salvare e uscire dall'editor usando il :wq comando dell'editor.

Accedere alla macchina virtuale usando un account di dominio

Per verificare che la macchina virtuale sia stata aggiunta correttamente al dominio gestito, avviare una nuova connessione SSH usando un account utente di dominio. Verificare che sia stata creata una home directory e che venga applicata l'appartenenza a un gruppo dal dominio.

  1. Creare una nuova connessione SSH dalla console. Usare un account di dominio appartenente al dominio gestito usando il ssh -l comando , ad esempio contosoadmin@aaddscontoso.com e quindi immettere l'indirizzo della macchina virtuale, ad esempio linux-q2gr.aaddscontoso.com. Se si usa Azure Cloud Shell, usare l'indirizzo IP pubblico della macchina virtuale anziché il nome DNS interno.

    sudo ssh -l contosoadmin@AADDSCONTOSO.com linux-q2gr.aaddscontoso.com
    
  2. Dopo aver eseguito la connessione alla macchina virtuale, verificare che la home directory sia stata inizializzata correttamente:

    sudo pwd
    

    Si dovrebbe trovarsi nella directory /home con la propria directory corrispondente all'account utente.

  3. Verificare ora che le appartenenze ai gruppi siano state risolte correttamente:

    sudo id
    

    Verranno visualizzate le appartenenze ai gruppi dal dominio gestito.

  4. Se è stato eseguito l'accesso alla macchina virtuale come membro del gruppo di Amministrazione istrators di AAD DC, verificare che sia possibile usare correttamente il sudo comando :

    sudo zypper update
    

Passaggi successivi

In caso di problemi di connessione della macchina virtuale al dominio gestito o all'accesso con un account di dominio, vedere Risoluzione dei problemi di aggiunta al dominio.