Ansluta en virtuell SUSE Linux Enterprise-dator till en Azure Active Directory Domäntjänster hanterad domän

Om du vill låta användare logga in på virtuella datorer i Azure med en enda uppsättning autentiseringsuppgifter kan du ansluta virtuella datorer till en hanterad domän Azure Active Directory Domain Services (Azure AD DS). När du ansluter en virtuell dator till en Hanterad Azure AD DS-domän kan användarkonton och autentiseringsuppgifter från domänen användas för att logga in och hantera servrar. Gruppmedlemskap från den hanterade domänen tillämpas också så att du kan styra åtkomsten till filer eller tjänster på den virtuella datorn.

Den här artikeln visar hur du ansluter en virtuell SUSE Linux Enterprise-dator (SLE) till en hanterad domän.

Förutsättningar

För att slutföra den här självstudien behöver du följande resurser och behörigheter:

Skapa och ansluta till en virtuell SLE Linux-dator

Om du har en befintlig virtuell SLE Linux-dator i Azure ansluter du till den med hjälp av SSH och fortsätter sedan till nästa steg för att börja konfigurera den virtuella datorn.

Om du behöver skapa en virtuell SLE Linux-dator eller vill skapa en virtuell testdator för användning med den här artikeln kan du använda någon av följande metoder:

När du skapar den virtuella datorn bör du vara uppmärksam på inställningarna för det virtuella nätverket för att se till att den virtuella datorn kan kommunicera med den hanterade domänen:

  • Distribuera den virtuella datorn till samma eller ett peer-kopplat virtuellt nätverk där du har aktiverat Azure AD Domain Services.
  • Distribuera den virtuella datorn till ett annat undernät än din hanterade Domän för Azure AD Domain Services.

När den virtuella datorn har distribuerats följer du stegen för att ansluta till den virtuella datorn med hjälp av SSH.

Konfigurera värdfilen

Om du vill kontrollera att värdnamnet för den virtuella datorn är korrekt konfigurerat för den hanterade domänen redigerar du filen /etc/hosts och anger värdnamnet:

sudo vi /etc/hosts

Uppdatera localhost-adressen i värdfilen. Se följande exempel:

  • aaddscontoso.com är DNS-domännamnet för din hanterade domän.
  • linux-q2gr är värdnamnet för den virtuella SLE-dator som du ansluter till den hanterade domänen.

Uppdatera dessa namn med dina egna värden:

127.0.0.1 linux-q2gr linux-q2gr.aaddscontoso.com

När du är klar sparar och avslutar du värdfilen med :wq kommandot i redigeraren.

Ansluta den virtuella datorn till den hanterade domänen med hjälp av SSSD

Utför följande steg för att ansluta till den hanterade domänen med hjälp av SSSD och användarinloggningshanteringsmodulen i YaST:

  1. Installera YaST-modulen för användarinloggningshantering :

    sudo zypper install yast2-auth-client
    
  2. Öppna YaST.

  3. Om du vill använda DNS autodiscovery senare konfigurerar du de hanterade domän-IP-adresserna ( Active Directory-servern) som namnserver för klienten.

    I YaST väljer du System > Network Inställningar.

  4. Välj fliken Värdnamn/DNS och ange sedan IP-adresserna för den hanterade domänen i textrutan Namnserver 1. Dessa IP-adresser visas i fönstret Egenskaper i Azure Portal för din hanterade domän, till exempel 10.0.2.4 och 10.0.2.5.

    Lägg till dina egna IP-adresser för hanterade domäner och välj sedan OK.

  5. I YaST-huvudfönstret väljer du NetworkServicesAnvändarhantering> för inloggning.

    Modulen öppnas med en översikt som visar olika nätverksegenskaper för datorn och den autentiseringsmetod som för närvarande används, som du ser i följande skärmbild:

    Example screenshot of the User Login Management window in YaST

    Börja redigera genom att välja Ändra Inställningar.

Utför följande steg för att ansluta den virtuella datorn till den hanterade domänen:

  1. I dialogrutan väljer du Lägg till domän.

  2. Ange rätt domännamn, till exempel aaddscontoso.com, och ange sedan de tjänster som ska användas för identitetsdata och autentisering. Välj Microsoft Active Directory för båda.

    Kontrollera att alternativet Aktivera domänen är markerat.

  3. När du är klar väljer du OK.

  4. Acceptera standardinställningarna i följande dialogruta och välj sedan OK.

  5. Den virtuella datorn installerar ytterligare programvara efter behov och kontrollerar sedan om den hanterade domänen är tillgänglig.

    Om allt är korrekt visas följande exempeldialogruta som anger att den virtuella datorn har identifierat den hanterade domänen men att du ännu inte har registrerats.

    Example screenshot of the Active Directory enrollment window in YaST

  6. I dialogrutan anger du användarnamn och lösenord för en användare som är en del av den hanterade domänen. Om det behövs lägger du till ett användarkonto i en grupp i Azure AD.

    Om du vill kontrollera att den aktuella domänen är aktiverad för Samba aktiverar du Skriv över Samba-konfigurationen så att den fungerar med denna AD.

  7. Om du vill registrera väljer du OK.

  8. Ett meddelande visas för att bekräfta att du har registrerats. Slutför genom att välja OK.

När den virtuella datorn har registrerats i den hanterade domänen konfigurerar du klienten med hantera domänanvändarinloggning enligt följande skärmbild:

Example screenshot of the Manage Domain User Logon window in YaST

  1. Om du vill tillåta inloggningar med data som tillhandahålls av den hanterade domänen markerar du kryssrutan Tillåt domänanvändarinloggning.

  2. Under Aktivera domändatakälla kan du också kontrollera ytterligare datakällor efter behov för din miljö. Dessa alternativ omfattar vilka användare som får använda sudo eller vilka nätverksenheter som är tillgängliga.

  3. Om du vill tillåta att användare i den hanterade domänen har hemkataloger på den virtuella datorn markerar du kryssrutan Skapa hemkataloger.

  4. I sidofältet väljer du Tjänstalternativ › Namnväxel och sedan Utökade alternativ. I det fönstret väljer du antingen fallback_homedir eller override_homedir och väljer sedan Lägg till.

  5. Ange ett värde för hemkatalogens plats. Om du vill ha hemkataloger följer du formatet /home/USER_NAME genom att använda /home/%u. Mer information om möjliga variabler finns på sidan sssd.conf man (man 5 sssd.conf), avsnitt override_homedir.

  6. Välj OK.

  7. Klicka på OK för att spara ändringarna. Kontrollera sedan att de värden som visas nu är korrekta. Om du vill lämna dialogrutan väljer du Avbryt.

  8. Om du tänker köra SSSD och Winbind samtidigt (till exempel när du ansluter via SSSD, men sedan kör en Samba-filserver) bör kerberos-metoden för Samba-alternativ anges till hemligheter och nyckelflik i smb.conf. SSSD-alternativet ad_update_samba_machine_account_password bör också anges till true i sssd.conf. De här alternativen förhindrar att systemnyckelfliken inte synkroniseras.

Ansluta den virtuella datorn till den hanterade domänen med Winbind

Utför följande steg för att ansluta till den hanterade domänen med winbind och Windows Domain Membership-modulen i YaST:

  1. I YaST väljer du Nätverkstjänster > Windows Domänmedlemskap.

  2. Ange domänen som ska anslutas till domänen eller arbetsgrupp på skärmen Windows Domänmedlemskap. Ange det hanterade domännamnet, till exempel aaddscontoso.com.

    Example screenshot of the Windows Domain Membership window in YaST

  3. Om du vill använda SMB-källan för Linux-autentisering kontrollerar du alternativet Använd SMB-information för Linux-autentisering.

  4. Om du vill skapa en lokal hemkatalog automatiskt för hanterade domänanvändare på den virtuella datorn kontrollerar du alternativet Skapa hemkatalog vid inloggning.

  5. Kontrollera alternativet för offlineautentisering så att domänanvändarna kan logga in även om den hanterade domänen inte är tillgänglig för tillfället.

  6. Om du vill ändra UID- och GID-intervallen för Samba-användare och -grupper väljer du Expert Inställningar.

  7. Konfigurera NTP-tidssynkronisering (Network Time Protocol) för din hanterade domän genom att välja NTP-konfiguration. Ange IP-adresserna för den hanterade domänen. Dessa IP-adresser visas i fönstret Egenskaper i Azure Portal för din hanterade domän, till exempel 10.0.2.4 och 10.0.2.5.

  8. Välj OK och bekräfta domänanslutningen när du uppmanas att göra det.

  9. Ange lösenordet för en administratör i den hanterade domänen och välj OK.

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

När du har anslutit till den hanterade domänen kan du logga in på den från din arbetsstation med visningshanteraren för skrivbordet eller konsolen.

Ansluta den virtuella datorn till den hanterade domänen med Winbind från YaST-kommandoradsgränssnittet

Ansluta till den hanterade domänen med winbind och YaST-kommandoradsgränssnittet:

  • Anslut till domänen:

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

Ansluta den virtuella datorn till den hanterade domänen med Winbind från terminalen

Så här ansluter du till den hanterade domänen samba netmed winbind och kommandot:

  1. Installera kerberos-klienten och samba-winbind:

    sudo zypper in krb5-client samba-winbind
    
  2. Redigera konfigurationsfilerna:

    • /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. Kontrollera att datum och tid i Azure AD och Linux är synkroniserade. Du kan göra detta genom att lägga till Azure AD-servern i NTP-tjänsten:

    1. Lägg till följande rad i /etc/ntp.conf:

      server aaddscontoso.com
      
    2. Starta om NTP-tjänsten:

      sudo systemctl restart ntpd
      
  4. Anslut till domänen:

    sudo net ads join -U Administrator%Mypassword
    
  5. Aktivera winbind som inloggningskälla i Linux Pluggable Authentication Modules (PAM):

    pam-config --add --winbind
    
  6. Aktivera automatisk skapande av hemkataloger så att användarna kan logga in:

    pam-config -a --mkhomedir
    
  7. Starta och aktivera winbind-tjänsten:

    sudo systemctl enable winbind
    sudo systemctl start winbind
    

Tillåt lösenordsautentisering för SSH

Som standard kan användarna bara logga in på en virtuell dator med hjälp av offentlig SSH-nyckelbaserad autentisering. Lösenordsbaserad autentisering misslyckas. När du ansluter den virtuella datorn till en hanterad domän måste dessa domänkonton använda lösenordsbaserad autentisering. Uppdatera SSH-konfigurationen så att lösenordsbaserad autentisering tillåts på följande sätt.

  1. Öppna filen sshd_conf med en redigerare:

    sudo vi /etc/ssh/sshd_config
    
  2. Uppdatera raden för PasswordAuthentication till ja:

    PasswordAuthentication yes
    

    När du är klar sparar och avslutar du filen sshd_conf med :wq kommandot i redigeraren.

  3. Om du vill tillämpa ändringarna och låta användarna logga in med ett lösenord startar du om SSH-tjänsten:

    sudo systemctl restart sshd
    

Bevilja sudo-behörigheter för gruppen "AAD DC-administratörer"

Om du vill ge medlemmar i AAD DC-administratörer administratörsbehörigheter på den virtuella SLE-datorn lägger du till en post i /etc/sudoers. När de har lagts till kan medlemmar i gruppen AAD DC-administratörer använda sudo kommandot på den virtuella SLE-datorn.

  1. Öppna sudoers-filen för redigering:

    sudo visudo
    
  2. Lägg till följande post i slutet av filen /etc/sudoers . Gruppen AAD DC-administratörer innehåller blanksteg i namnet, så inkludera escape-tecknet för omvänt snedstreck i gruppnamnet. Lägg till ditt eget domännamn, till exempel aaddscontoso.com:

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

    När du är klar sparar och avslutar du redigeraren med :wq kommandot i redigeraren.

Logga in på den virtuella datorn med ett domänkonto

Om du vill kontrollera att den virtuella datorn har anslutits till den hanterade domänen startar du en ny SSH-anslutning med ett domänanvändarkonto. Bekräfta att en hemkatalog har skapats och att gruppmedlemskap från domänen tillämpas.

  1. Skapa en ny SSH-anslutning från konsolen. Använd ett domänkonto som tillhör den hanterade domänen ssh -l med kommandot , till exempel contosoadmin@aaddscontoso.com och ange sedan adressen till den virtuella datorn, till exempel linux-q2gr.aaddscontoso.com. Om du använder Azure Cloud Shell använder du den virtuella datorns offentliga IP-adress i stället för det interna DNS-namnet.

    ssh -l contosoadmin@AADDSCONTOSO.com linux-q2gr.aaddscontoso.com
    
  2. När du har anslutit till den virtuella datorn kontrollerar du att startkatalogen har initierats korrekt:

    pwd
    

    Du bör vara i katalogen /home med din egen katalog som matchar användarkontot.

  3. Kontrollera nu att gruppmedlemskapen löses korrekt:

    id
    

    Du bör se dina gruppmedlemskap från den hanterade domänen.

  4. Om du loggade in på den virtuella datorn som medlem i gruppen AAD DC-administratörer kontrollerar du att du kan använda sudo kommandot på rätt sätt:

    sudo zypper update
    

Nästa steg

Om du har problem med att ansluta den virtuella datorn till den hanterade domänen eller logga in med ett domänkonto läser du Felsöka problem med domänanslutning.