Een virtuele Red Hat Enterprise Linux toevoegen aan een door Azure Active Directory Domain Services beheerd domein

Als u wilt dat gebruikers zich met één set referenties kunnen aanmelden bij virtuele machines (VM's) in Azure, kunt u VM's toevoegen aan een Azure Active Directory Domain Services (Azure AD DS) beheerd domein. Wanneer u een VM aan een Azure AD DS beheerd domein, kunnen gebruikersaccounts en referenties van het domein worden gebruikt voor het aanmelden en beheren van servers. Groepslidmaatschap van het beheerde domein wordt ook toegepast om u de toegang tot bestanden of services op de VM te laten beheren.

In dit artikel wordt beschreven hoe u een virtuele Red Hat Enterprise Linux (RHEL) aan een beheerd domein kunt toevoegen.

Vereisten

Om deze zelfstudie te voltooien, hebt u de volgende resources en machtigingen nodig:

Een RHEL Linux-VM maken en er verbinding mee maken

Als u een bestaande RHEL Linux-VM in Azure hebt, maakt u er verbinding mee via SSH en gaat u verder met de volgende stap om te beginnen met het configureren van de VM.

Als u een virtuele RHEL Linux-VM moet maken of een test-VM wilt maken voor gebruik met dit artikel, kunt u een van de volgende methoden gebruiken:

Let bij het maken van de virtuele machine op de instellingen van het virtuele netwerk om ervoor te zorgen dat de virtuele machine kan communiceren met het beheerde domein:

  • Implementeer de virtuele machine in hetzelfde, of een peered, virtueel netwerk waarin u de VM hebt Azure AD Domain Services.
  • Implementeer de virtuele machine in een ander subnet dan uw Azure AD Domain Services beheerd domein.

Nadat de VM is geïmplementeerd, volgt u de stappen om via SSH verbinding te maken met de VM.

Het hosts-bestand configureren

Bewerk het bestand /etc/hosts en stel de hostnaam in om ervoor te zorgen dat de hostnaam van de VM correct is geconfigureerd voor het beheerde domein:

sudo vi /etc/hosts

Werk in het hosts-bestand het localhost-adres bij. In het volgende voorbeeld:

  • aaddscontoso.com is de DNS-domeinnaam van uw beheerde domein.
  • rhel is de hostnaam van uw RHEL-VM die u wilt toevoegen aan het beheerde domein.

Werk deze namen bij met uw eigen waarden:

127.0.0.1 rhel rhel.aaddscontoso.com

Wanneer u klaar bent, kunt u het hosts-bestand opslaan en afsluiten met :wq de opdracht van de editor.

De vereiste pakketten installeren

De VM heeft een aantal extra pakketten nodig om de VM aan het beheerde domein te kunnen toevoegen. Als u deze pakketten wilt installeren en configureren, moet u de hulpprogramma's voor domein-join bijwerken en installeren met behulp van yum . Er zijn enkele verschillen tussen RHEL 7.x en RHEL 6.x. Gebruik daarom de juiste opdrachten voor uw distributieversie in de resterende secties van dit artikel.

RHEL 7

sudo yum install realmd sssd krb5-workstation krb5-libs oddjob oddjob-mkhomedir samba-common-tools

RHEL 6

sudo yum install adcli sssd authconfig krb5-workstation

VM toevoegen aan het beheerde domein

Nu de vereiste pakketten zijn geïnstalleerd op de VM, voegt u de VM toe aan het beheerde domein. Gebruik opnieuw de juiste stappen voor uw RHEL-distributieversie.

RHEL 7

  1. Gebruik de realm discover opdracht om het beheerde domein te ontdekken. In het volgende voorbeeld wordt de realm AADDSCONTOSO.COM. Geef uw eigen beheerde domeinnaam op in HOOFDLETTERS:

    sudo realm discover AADDSCONTOSO.COM
    

    Als de realm discover opdracht uw beheerde domein niet kan vinden, controleert u de volgende stappen voor probleemoplossing:

    • Zorg ervoor dat het domein bereikbaar is vanaf de VM. Probeer ping aaddscontoso.com te zien of er een positief antwoord wordt geretourneerd.
    • Controleer of de virtuele machine is geïmplementeerd in hetzelfde, of een peered, virtueel netwerk waarin het beheerde domein beschikbaar is.
    • Controleer of de DNS-serverinstellingen voor het virtuele netwerk zijn bijgewerkt zodat deze naar de domeincontrollers van het beheerde domein wijzen.
  2. Initialiseer Kerberos nu met behulp van de kinit opdracht . Geef een gebruiker op die deel uitmaakt van het beheerde domein. Voeg indien nodig een gebruikersaccount toe aan een groep in Azure AD.

    Ook hier moet de naam van het beheerde domein worden ingevoerd in HOOFDLETTERS. In het volgende voorbeeld wordt het account met de contosoadmin@aaddscontoso.com naam gebruikt om Kerberos te initialiseren. Voer uw eigen gebruikersaccount in dat deel uitmaakt van het beheerde domein:

    kinit contosoadmin@AADDSCONTOSO.COM
    
  3. Voeg ten slotte de VM toe aan het beheerde domein met behulp van de realm join opdracht . Gebruik hetzelfde gebruikersaccount dat deel uitmaakt van het beheerde domein dat u in de vorige opdracht hebt kinit opgegeven, zoals contosoadmin@AADDSCONTOSO.COM :

    sudo realm join --verbose AADDSCONTOSO.COM -U 'contosoadmin@AADDSCONTOSO.COM'
    

Het duurt even om de VM aan het beheerde domein toe te sluiten. In de volgende voorbeelduitvoer ziet u dat de VM is verbonden met het beheerde domein:

Successfully enrolled machine in realm

RHEL 6

  1. Gebruik de adcli info opdracht om het beheerde domein te ontdekken. In het volgende voorbeeld wordt de realm ADDDSCONTOSO.COM. Geef uw eigen beheerde domeinnaam op in HOOFDLETTERS:

    sudo adcli info aaddscontoso.com
    

    Als de adcli info opdracht uw beheerde domein niet kan vinden, controleert u de volgende stappen voor probleemoplossing:

    • Zorg ervoor dat het domein bereikbaar is vanaf de VM. Probeer ping aaddscontoso.com te zien of er een positief antwoord wordt geretourneerd.
    • Controleer of de virtuele machine is geïmplementeerd in hetzelfde, of een peered, virtueel netwerk waarin het beheerde domein beschikbaar is.
    • Controleer of de DNS-serverinstellingen voor het virtuele netwerk zijn bijgewerkt zodat deze naar de domeincontrollers van het beheerde domein wijzen.
  2. Voeg eerst het domein toe met behulp van de opdracht . Met deze opdracht wordt ook het adcli join keytab gemaakt om de machine te verifiëren. Gebruik een gebruikersaccount dat deel uitmaakt van het beheerde domein.

    sudo adcli join aaddscontoso.com -U contosoadmin
    
  3. Configureer nu de /ect/krb5.conf en maak de bestanden om het Active /etc/sssd/sssd.conf aaddscontoso.com Directory-domein te gebruiken. Zorg ervoor dat AADDSCONTOSO.COM wordt vervangen door uw eigen domeinnaam:

    Open het /ect/krb5.conf bestand met een editor:

    sudo vi /etc/krb5.conf
    

    Werk het krb5.conf bestand bij om overeen te komen met het volgende voorbeeld:

    [logging]
     default = FILE:/var/log/krb5libs.log
     kdc = FILE:/var/log/krb5kdc.log
     admin_server = FILE:/var/log/kadmind.log
    
    [libdefaults]
     default_realm = AADDSCONTOSO.COM
     dns_lookup_realm = true
     dns_lookup_kdc = true
     ticket_lifetime = 24h
     renew_lifetime = 7d
     forwardable = true
    
    [realms]
     AADDSCONTOSO.COM = {
     kdc = AADDSCONTOSO.COM
     admin_server = AADDSCONTOSO.COM
     }
    
    [domain_realm]
     .AADDSCONTOSO.COM = AADDSCONTOSO.COM
     AADDSCONTOSO.COM = AADDSCONTOSO.COM
    

    Maak het /etc/sssd/sssd.conf bestand:

    sudo vi /etc/sssd/sssd.conf
    

    Werk het sssd.conf bestand bij om overeen te komen met het volgende voorbeeld:

    [sssd]
     services = nss, pam, ssh, autofs
     config_file_version = 2
     domains = AADDSCONTOSO.COM
    
    [domain/AADDSCONTOSO.COM]
    
     id_provider = ad
    
  4. Zorg ervoor /etc/sssd/sssd.conf dat de machtigingen 600 zijn en eigendom zijn van de hoofdgebruiker:

    sudo chmod 600 /etc/sssd/sssd.conf
    sudo chown root:root /etc/sssd/sssd.conf
    
  5. Gebruik authconfig om de VM te instrueren over de AD Linux-integratie:

    sudo authconfig --enablesssd --enablesssdauth --update
    
  6. Start de sssd-service en schakel deze in:

    sudo service sssd start
    sudo chkconfig sssd on
    

Als uw VM het proces voor domein-join niet kan voltooien, moet u ervoor zorgen dat de netwerkbeveiligingsgroep van de virtuele machine uitgaand Kerberos-verkeer op TCP + UDP-poort 464 naar het subnet van het virtuele netwerk voor uw beheerde domein toestaat.

Controleer nu of u ad-gegevens van gebruikers kunt opvragen met behulp van getent

sudo getent passwd contosoadmin

Wachtwoordverificatie voor SSH toestaan

Standaard kunnen gebruikers zich alleen aanmelden bij een VM met behulp van verificatie op basis van openbare SSH-sleutels. Verificatie op basis van wachtwoorden mislukt. Wanneer u de VM aan een beheerd domein wilt toevoegen, moeten deze domeinaccounts gebruikmaken van verificatie op basis van wachtwoorden. Werk de SSH-configuratie als volgt bij om verificatie op basis van wachtwoorden toe te staan.

  1. Open het sshd_conf met een editor:

    sudo vi /etc/ssh/sshd_config
    
  2. Werk de regel voor PasswordAuthentication bij naar ja:

    PasswordAuthentication yes
    

    Wanneer u klaar bent, kunt u het sshd_conf opslaan en afsluiten met :wq de opdracht van de editor.

  3. Als u de wijzigingen wilt toepassen en gebruikers zich wilt laten aanmelden met een wachtwoord, start u de SSH-service opnieuw op voor uw RHEL-distributieversie:

    RHEL 7

    sudo systemctl restart sshd
    

    RHEL 6

    sudo service sshd restart
    

De groep 'AAD DC Administrators' sudo-bevoegdheden verlenen

Als u leden van de groep AAD DC Administrators beheerdersbevoegdheden wilt verlenen op de RHEL-VM, voegt u een vermelding toe aan de /etc/sudoers. Zodra de groep AAD DC-beheerders is toegevoegd, kunnen ze de opdracht sudo op de RHEL-VM gebruiken.

  1. Open het sudoers-bestand om het te bewerken:

    sudo visudo
    
  2. Voeg de volgende vermelding toe aan het einde van het bestand /etc/sudoers. De groep AAD DC-beheerders bevat witruimte in de naam, dus neem het escapeteken voor de backslash op in de groepsnaam. Voeg uw eigen domeinnaam toe, zoals aaddscontoso.com:

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

    Wanneer u klaar bent, kunt u de editor opslaan en afsluiten met :wq behulp van de opdracht van de editor.

Aanmelden bij de VM met een domeinaccount

Als u wilt controleren of de VM is verbonden met het beheerde domein, start u een nieuwe SSH-verbinding met behulp van een domeingebruikersaccount. Controleer of er een basismap is gemaakt en dat groepslidmaatschap uit het domein wordt toegepast.

  1. Maak een nieuwe SSH-verbinding vanuit uw console. Gebruik een domeinaccount dat bij het beheerde domein hoort met behulp van de opdracht , zoals en voer vervolgens het adres van uw ssh -l contosoadmin@aaddscontoso.com VM in, zoals rhel.aaddscontoso.com. Als u de Azure Cloud Shell, gebruikt u het openbare IP-adres van de VM in plaats van de interne DNS-naam.

    ssh -l contosoadmin@AADDSCONTOSO.com rhel.aaddscontoso.com
    
  2. Wanneer u verbinding hebt gemaakt met de VM, controleert u of de basismap correct is initialiseerd:

    pwd
    

    U moet zich in de map /home met uw eigen directory die overeenkomt met het gebruikersaccount.

  3. Controleer nu of de groepslidmaatschap correct wordt opgelost:

    id
    

    Als het goed is, ziet u uw groepslidmaatschap uit het beheerde domein.

  4. Als u zich bij de VM hebt aangemeld als lid van de groep AAD DC-beheerders, controleert u of u de opdracht correct kunt sudo gebruiken:

    sudo yum update
    

Volgende stappen

Zie Troubleshooting domain join issues (Problemen met domein toevoegen oplossen) als u problemen hebt met het verbinden van de VM met het beheerde domein of het aanmelden met een domeinaccount.