Een virtuele Ubuntu Linux-machine toevoegen aan een door Microsoft Entra 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 door Microsoft Entra Domain Services beheerd domein. Wanneer u een VIRTUELE machine koppelt aan een beheerd domein van Domain Services, kunnen gebruikersaccounts en referenties van het domein worden gebruikt om zich aan te melden en servers te beheren. Groepslidmaatschappen van het beheerde domein worden ook toegepast, zodat u de toegang tot bestanden of services op de virtuele machine kunt beheren.
In dit artikel leest u hoe u een Ubuntu Linux-VM koppelt aan een beheerd domein.
Voorwaarden
U hebt de volgende resources en bevoegdheden nodig om deze zelfstudie te voltooien:
- Een actief Azure-abonnement.
- Als u geen Azure-abonnement hebt, maak dan een accountaan.
- Een Microsoft Entra-tenant die is gekoppeld aan uw abonnement, gesynchroniseerd met een on-premises directory of een alleen-cloud directory.
- Een door Microsoft Entra Domain Services beheerd domein ingeschakeld en geconfigureerd in uw Microsoft Entra-tenant.
- Indien nodig configureert en maakt de eerste tutorial een domein dat wordt beheerd door Microsoft Entra Domain Services.
- Een gebruikersaccount dat deel uitmaakt van het beheerde domein. Zorg ervoor dat het kenmerk SAMAccountName voor de gebruiker niet automatisch is gegenereerd. Als meerdere gebruikersaccounts in de Microsoft Entra-tenant hetzelfde kenmerk mailNickname hebben, wordt het kenmerk SAMAccountName voor elke gebruiker automatisch gegenereerd. Zie Hoe objecten en referenties worden gesynchroniseerd in een door Microsoft Entra Domain Services beheerd domeinvoor meer informatie.
- Unieke Linux-VM-namen van maximaal 15 tekens om afgekapte namen te voorkomen die conflicten in Active Directory kunnen veroorzaken.
Een Ubuntu Linux-VM maken en er verbinding mee maken
Als u een bestaande Ubuntu Linux-VM in Azure hebt, maakt u er verbinding mee met behulp van SSH en gaat u verder met de volgende stap om te beginnen met het configureren van de VM-.
Als u een Ubuntu Linux-VM wilt 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 gekoppeld virtueel netwerk waarin u Microsoft Entra Domain Services hebt ingeschakeld.
- Implementeer de VM in een ander subnet dan uw door Microsoft Entra Domain Services beheerde domein.
Zodra de VM is geïmplementeerd, volgt u de stappen om verbinding te maken met de VIRTUELE machine met behulp van SSH.
Het hosts-bestand configureren
Als u ervoor wilt zorgen dat de hostnaam van de VIRTUELE machine juist is geconfigureerd voor het beheerde domein, bewerkt u de /etc/hosts bestand en stelt u de hostnaam in:
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.
- ubuntu- is de hostnaam van uw Ubuntu-VM die u toevoegt aan het beheerde domein.
Werk deze namen bij met uw eigen waarden:
127.0.0.1 ubuntu.aaddscontoso.com ubuntu
Wanneer u klaar bent, slaat u het hosts bestand op en sluit u het af met behulp van de opdracht :wq
van de editor.
Vereiste pakketten installeren
De virtuele machine heeft extra pakketten nodig om de virtuele machine bij het beheerde domein te voegen. Als u deze pakketten wilt installeren en configureren, moet u de hulpprogramma's voor domeindeelname bijwerken en installeren met behulp van apt-get
Tijdens de Kerberos-installatie vraagt het krb5-user pakket om de realmnaam in HOOFDLETTERS. Als de naam van uw beheerde domein bijvoorbeeld is aaddscontoso.com, voert u AADDSCONTOSO.COM in als de realm. De installatie schrijft de secties [realm]
en [domain_realm]
in /etc/krb5.conf configuratiebestand. Zorg ervoor dat u de realm opgeeft met ALLE HOOFDLETTERS:
sudo apt-get update
sudo apt-get install krb5-user samba sssd sssd-tools libnss-sss libpam-sss ntp ntpdate realmd adcli
Network Time Protocol (NTP) configureren
Voor een correcte werking van domeincommunicatie moet de datum en tijd van uw Ubuntu-VM worden gesynchroniseerd met het beheerde domein. Voeg de NTP-hostnaam van uw beheerde domein toe aan het bestand /etc/ntp.conf.
Open het bestand ntp.conf met een editor:
sudo vi /etc/ntp.conf
Maak in het bestand ntp.conf een regel om de DNS-naam van uw beheerde domein toe te voegen. In het volgende voorbeeld wordt een vermelding voor aaddscontoso.com toegevoegd. Gebruik uw eigen DNS-naam:
server aaddscontoso.com
Wanneer u klaar bent, slaat u het bestand ntp.conf op en sluit u het af met behulp van de opdracht
:wq
van de editor.Om ervoor te zorgen dat de VIRTUELE machine wordt gesynchroniseerd met het beheerde domein, zijn de volgende stappen nodig:
- De NTP-server stoppen
- De datum en tijd van het beheerde domein bijwerken
- De NTP-service starten
Voer de volgende opdrachten uit om deze stappen uit te voeren. Gebruik uw eigen DNS-naam met de opdracht
ntpdate
:sudo systemctl stop ntp sudo ntpdate aaddscontoso.com sudo systemctl start ntp
VM toevoegen aan het beheerde domein
Nu de vereiste pakketten op de VM zijn geïnstalleerd en NTP is geconfigureerd, voegt u de VM toe aan het beheerde domein.
Gebruik de opdracht
realm discover
om het beheerde domein te detecteren. In het volgende voorbeeld wordt de realm AADDSCONTOSO.COMontdekt. Geef uw eigen beheerde domeinnaam op in HOOFDLETTERS:sudo realm discover AADDSCONTOSO.COM
Als de opdracht
realm discover
uw beheerde domein niet kan vinden, raadpleegt u de volgende stappen voor probleemoplossing:- Zorg ervoor dat het domein bereikbaar is vanaf de VIRTUELE machine. Probeer
ping aaddscontoso.com
om te zien of er een positief antwoord wordt geretourneerd. - Controleer of de virtuele machine is geïmplementeerd in hetzelfde of een gekoppeld virtueel netwerk waarin het beheerde domein beschikbaar is.
- Controleer of de DNS-serverinstellingen voor het virtuele netwerk zijn bijgewerkt om te verwijzen naar de domeincontrollers van het beheerde domein.
- Zorg ervoor dat het domein bereikbaar is vanaf de VIRTUELE machine. Probeer
Initialiseer Nu Kerberos met behulp van de opdracht
kinit
. Geef een gebruiker op die deel uitmaakt van het beheerde domein. Voeg indien nodig een gebruikersaccount toe aan een groep in Microsoft Entra ID.Wederom moet de naam van het beheerde domein in HOOFDLETTERS worden ingevoerd. In het volgende voorbeeld wordt het account met de naam
contosoadmin@aaddscontoso.com
gebruikt om Kerberos te initialiseren. Voer uw eigen gebruikersaccount in dat deel uitmaakt van het beheerde domein:sudo kinit -V contosoadmin@AADDSCONTOSO.COM
Ten slotte voegt u de VIRTUELE machine toe aan het beheerde domein met behulp van de opdracht
realm join
. Gebruik hetzelfde gebruikersaccount dat deel uitmaakt van het beheerde domein dat u in de vorigekinit
opdracht hebt opgegeven, zoalscontosoadmin@AADDSCONTOSO.COM
:sudo realm join --verbose AADDSCONTOSO.COM -U 'contosoadmin@AADDSCONTOSO.COM' --install=/
Het duurt even voordat de VIRTUELE machine is gekoppeld aan het beheerde domein. In de volgende voorbeelduitvoer ziet u dat de VM is gekoppeld aan het beheerde domein:
Successfully enrolled machine in realm
Als uw VM het proces voor domeindeelname niet kan voltooien, moet u ervoor zorgen dat de netwerkbeveiligingsgroep van de virtuele machine uitgaand Kerberos-verkeer op TCP + UDP-poort 464 toestaat naar het subnet van het virtuele netwerk voor uw beheerde domein.
Als u de fout Niet-opgegeven GSS-fout hebt ontvangen. Secundaire code kan meer informatie bieden (Server niet gevonden in Kerberos-database), open het bestand /etc/krb5.conf en voeg de volgende code toe in [libdefaults]
sectie en probeer het opnieuw:
rdns=false
De SSSD-configuratie bijwerken
Een van de pakketten die in een vorige stap zijn geïnstalleerd, was voor System Security Services Daemon (SSSD). Wanneer een gebruiker zich probeert aan te melden bij een virtuele machine met behulp van domeinreferenties, stuurt SSD de aanvraag door naar een verificatieprovider. In dit scenario gebruikt SSSD Domain Services om de aanvraag te verifiëren.
Open het bestand ssd.conf met een editor:
sudo vi /etc/sssd/sssd.conf
Commentarieer de regel voor use_fully_qualified_names als volgt:
# use_fully_qualified_names = True
Wanneer u klaar bent, slaat u het bestand ssd.conf op en sluit u het af met behulp van de
:wq
opdracht van de editor.Start de SSSD-service opnieuw om de wijziging toe te passen:
sudo systemctl restart sssd
Gebruikersaccount- en groepsinstellingen configureren
Wanneer de VM is toegevoegd aan het beheerde domein en is geconfigureerd voor verificatie, zijn er enkele configuratieopties voor gebruikers. Deze configuratiewijzigingen omvatten het toestaan van verificatie op basis van wachtwoorden en het automatisch maken van basismappen op de lokale VM wanneer domeingebruikers zich voor het eerst aanmelden.
Wachtwoordverificatie voor SSH toestaan
Standaard kunnen gebruikers zich alleen aanmelden bij een virtuele machine met behulp van verificatie op basis van openbare SSH-sleutels. Verificatie op basis van een wachtwoord mislukt. Wanneer u de VIRTUELE machine aan een beheerd domein koppelt, moeten deze domeinaccounts verificatie op basis van wachtwoorden gebruiken. Werk de SSH-configuratie als volgt bij om verificatie op basis van een wachtwoord toe te staan.
Notitie
Ubuntu Marketplace-installatiekopieën hebben meestal een aantal configuratieopties ingesteld onder /etc/ssh/sshd_config.d, waaronder PasswordAuthentication in het bestand 50-cloud-init.conf, dus zorg ervoor dat u dat bestand ook bijwerkt om te voorkomen dat de set wordt overschreven met de onderstaande stappen.
Open het sshd_conf-bestand met een editor:
sudo vi /etc/ssh/sshd_config
Werk de regel voor PasswordAuthentication bij naar ja te.
PasswordAuthentication yes
Wanneer u klaar bent, slaat u het sshd_conf bestand op en sluit u het af met behulp van de opdracht
:wq
van de editor.Als u de wijzigingen wilt toepassen en gebruikers zich wilt laten aanmelden met een wachtwoord, start u de SSH-service opnieuw op:
sudo systemctl restart ssh
Configureren van automatisch maken van een thuismap
Volg de volgende stappen om het automatisch aanmaken van de thuisdirectory in te schakelen wanneer een gebruiker zich voor het eerst aanmeldt:
Open het bestand
/etc/pam.d/common-session
in een editor:sudo vi /etc/pam.d/common-session
Voeg de volgende regel toe in dit bestand onder de regel
session optional pam_sss.so
:session required pam_mkhomedir.so skel=/etc/skel/ umask=0077
Wanneer u klaar bent, slaat u het bestand common-session op en sluit u het af met behulp van de opdracht
:wq
van de editor.
Verleen de groep 'AAD DC-beheerders' sudo-bevoegdheden
Als u leden van de AAD DC-beheerders groep beheerdersbevoegdheden wilt verlenen op de Ubuntu-VM, voegt u een vermelding toe aan de /etc/sudoers. Zodra ze zijn toegevoegd, kunnen leden van de AAD DC-beheerders groep de opdracht sudo
op de Ubuntu-VM gebruiken.
Open het sudoers-bestand om het te bewerken:
sudo visudo
Voeg de volgende vermelding toe aan het einde van /etc/sudoers bestand:
# Add 'AAD DC Administrators' group members as admins. %AAD\ DC\ Administrators ALL=(ALL) NOPASSWD:ALL
Wanneer u klaar bent, slaat u de editor op en sluit u deze af met behulp van de opdracht
Ctrl-X
.
Aanmelden bij de VIRTUELE machine met behulp van een domeinaccount
Als u wilt controleren of de VIRTUELE machine is gekoppeld aan het beheerde domein, start u een nieuwe SSH-verbinding met behulp van een domeingebruikersaccount. Controleer of er een basismap is gemaakt en of het groepslidmaatschap van het domein is toegepast.
Maak een nieuwe SSH-verbinding vanuit uw console. Gebruik een domeinaccount dat deel uitmaakt van het beheerde domein met behulp van de opdracht
ssh -l
, zoalscontosoadmin@aaddscontoso.com
en voer vervolgens het adres van uw virtuele machine in, zoals ubuntu.aaddscontoso.com. Als u Azure Cloud Shell gebruikt, gebruikt u het openbare IP-adres van de VIRTUELE machine in plaats van de interne DNS-naam.sudo ssh -l contosoadmin@AADDSCONTOSO.com ubuntu.aaddscontoso.com
Wanneer u verbinding hebt gemaakt met de virtuele machine, controleert u of de basismap correct is geïnitialiseerd:
sudo pwd
U moet zich in de /home map bevinden met uw eigen directory die overeenkomt met het gebruikersaccount.
Controleer nu of de groepslidmaatschappen correct worden opgelost.
sudo id
U zou uw groepslidmaatschappen uit het beheerde domein moeten zien.
Als u zich hebt aangemeld bij de VIRTUELE machine als lid van de AAD DC-beheerders groep, controleert u of u de
sudo
opdracht correct kunt gebruiken:sudo apt-get update
Volgende stappen
Zie Problemen met het deelnemen aan het domein oplossenals u problemen ondervindt met het verbinden van de virtuele machine met het beheerde domein of met het aanmelden met een domeinaccount.