Einbinden einer Red Hat Enterprise Linux-VM in eine verwaltete Microsoft Entra Domain Services-Domäne

Damit sich Benutzer*innen mit einem einzigen Satz von Anmeldeinformationen bei VMs in Azure anmelden können, binden Sie VMs in eine von Microsoft Entra Domain Services verwaltete Domäne ein. Wenn Sie eine VM in eine durch Domain Services verwaltete Domäne einbinden, können Benutzerkonten und Anmeldeinformationen aus der Domäne zum Anmelden und Verwalten von Servern verwendet werden. Gruppenmitgliedschaften aus der verwalteten Domäne werden ebenfalls angewandt, damit Sie den Zugriff auf Dateien oder Dienste auf der VM steuern können.

In diesem Artikel wird gezeigt, wie Sie eine Red Hat Enterprise Linux-VM (RHEL) in eine verwaltete Domäne einbinden.

Voraussetzungen

Für dieses Tutorial benötigen Sie die folgenden Ressourcen und Berechtigungen:

Erstellen einer RHEL-VM und Herstellen einer Verbindung

Wenn Sie über eine vorhandene RHEL-VM in Azure verfügen, stellen Sie über SSH eine Verbindung mit dieser VM her. Dann fahren Sie mit dem nächsten Schritt fort und beginnen mit der Konfiguration der VM.

Wenn Sie eine RHEL-VM erstellen müssen oder eine Test-VM zur Verwendung mit diesem Artikel erstellen möchten, können Sie eine der folgenden Methoden verwenden:

Achten Sie beim Erstellen der VM auf die Einstellungen des virtuellen Netzwerks, um sicherzustellen, dass die VM mit der verwalteten Domäne kommunizieren kann:

  • Stellen Sie die VM in demselben oder einem mittels Peering verbundenen virtuellen Netzwerk bereit, in dem Sie Microsoft Entra Domain Services aktiviert haben.
  • Stellen Sie die VM in einem anderen Subnetz als Ihre verwaltete Microsoft Entra Domain Services-Domäne bereit.

Nachdem die VM bereitgestellt wurde, führen Sie die Schritte zum Herstellen einer Verbindung mit der VM über SSH aus.

Konfigurieren der Datei „hosts“

Um sicherzustellen, dass der VM-Hostname ordnungsgemäß für die verwaltete Domäne konfiguriert ist, bearbeiten Sie die Datei /etc/hosts, und legen Sie den Hostnamen fest:

sudo vi /etc/hosts

Aktualisieren Sie in der Datei hosts die Adresse localhost. Siehe folgendes Beispiel:

  • aaddscontoso.com ist der DNS-Domänenname Ihrer verwalteten Domäne.
  • rhel ist der Hostname Ihrer RHEL-VM, die Sie in die verwaltete Domäne einbinden.

Aktualisieren Sie diese Namen mit Ihren eigenen Werten:

127.0.0.1 rhel rhel.aaddscontoso.com

Anschließend speichern und beenden Sie die Datei hosts mit dem Befehl :wq im Editor.

Wichtig

Beachten Sie, dass Red Hat Enterprise Linux 6.X und Oracle Linux 6.x bereits das EOL erreicht haben. Für RHEL 6.10 ist ELS-Support verfügbar, der im Juni 2024 endet.

Installieren erforderlicher Pakete

Die VM benötigt einige zusätzliche Pakete, damit sie in die verwaltete Domäne eingebunden werden kann. Zum Installieren und Konfigurieren dieser Pakete aktualisieren und installieren Sie die Tools zum Einbinden in eine Domäne mit yum.

sudo yum install adcli sssd authconfig krb5-workstation

Einbinden der VM in die verwaltete Domäne

Nachdem Sie die erforderlichen Pakete auf der VM installiert haben, binden Sie die VM in die verwaltete Domäne ein.

  1. Verwenden Sie den Befehl adcli info, um die verwaltete Domäne zu ermitteln. Im folgenden Beispiel wird der Bereich AADDSCONTOSO.COM erkannt. Geben Sie den Namen Ihrer eigenen verwalteten Domäne in GROSSBUCHSTABEN an:

    sudo adcli info aaddscontoso.com
    

    Wenn Ihre verwaltete Domäne nicht mit dem Befehl adcli info gefunden werden kann, führen Sie die folgenden Schritte zur Problembehandlung aus:

    • Vergewissern Sie sich, dass die VM die Domäne erreichen kann. Versuchen Sie ping aaddscontoso.com, um zu überprüfen, ob eine positive Antwort zurückgegeben wird.
    • Vergewissern Sie sich, dass die VM im selben oder einem mittels Peering verbundenen virtuellen Netzwerk bereitgestellt wurde, in dem die verwaltete Domäne verfügbar ist.
    • Vergewissern Sie sich, dass die DNS-Servereinstellungen für das virtuelle Netzwerk so aktualisiert wurden, dass auf die Domänencontroller der verwalteten Domäne verwiesen wird.
  2. Fügen Sie zunächst die Domäne mit dem Befehl adcli join hinzu. Mit diesem Befehl wird auch die Schlüsseltabelle zur Authentifizierung des Computers erstellt. Verwenden Sie ein Benutzerkonto, das Teil der verwalteten Domäne ist.

    sudo adcli join aaddscontoso.com -U contosoadmin
    
  3. Konfigurieren Sie nun die /ect/krb5.conf, und erstellen Sie die /etc/sssd/sssd.conf-Dateien, um die aaddscontoso.com Active Directory-Domäne zu verwenden. Stellen Sie sicher, dass AADDSCONTOSO.COM durch Ihren eigenen Domänennamen ersetzt wird:

    Öffnen Sie die Datei /etc/krb5.conf in einem Editor:

    sudo vi /etc/krb5.conf
    

    Aktualisieren Sie die Datei krb5.conf entsprechend dem folgenden Beispiel:

    [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
    

    Erstellen Sie die Datei /etc/sssd/sssd.conf:

    sudo vi /etc/sssd/sssd.conf
    

    Aktualisieren Sie die Datei sssd.conf entsprechend dem folgenden Beispiel:

    [sssd]
     services = nss, pam, ssh, autofs
     config_file_version = 2
     domains = AADDSCONTOSO.COM
    
    [domain/AADDSCONTOSO.COM]
    
     id_provider = ad
    
  4. Stellen Sie sicher, dass die /etc/sssd/sssd.conf-Berechtigungen 600 lauten und dass die Datei im Besitz des Root-Benutzers ist:

    sudo chmod 600 /etc/sssd/sssd.conf
    sudo chown root:root /etc/sssd/sssd.conf
    
  5. Verwenden Sie authconfig, um die VM über die AD Linux-Integration anzuweisen:

    sudo authconfig --enablesssd --enablesssd auth --update
    
  6. Starten und aktivieren Sie den SSSD-Dienst:

    sudo service sssd start
    sudo chkconfig sssd on
    

Wenn die Einbindung in die Domäne für die VM nicht erfolgreich abgeschlossen werden kann, stellen Sie sicher, dass die Netzwerksicherheitsgruppe der VM ausgehenden Kerberos-Datenverkehr über TCP und UDP-Port 464 an das Subnetz des virtuellen Netzwerks für Ihre verwaltete Domäne zulässt.

Überprüfen Sie nun, ob Sie mithilfe von getent Benutzerinformationen abfragen können

sudo getent passwd contosoadmin

Zulassen der Kennwortauthentifizierung für SSH

Standardmäßig können sich Benutzer nur mithilfe der auf einen öffentlichen Schlüssel basierenden SSH-Authentifizierung bei einer VM anmelden. Die kennwortbasierte Authentifizierung schlägt fehl. Wenn Sie die VM in eine verwalteten Domäne einbinden, müssen diese Domänenkonten die kennwortbasierte Authentifizierung verwenden. Aktualisieren Sie die SSH-Konfiguration wie folgt, um die kennwortbasierte Authentifizierung zuzulassen.

  1. Öffnen Sie die Datei sshd_conf mit einem Editor:

    sudo vi /etc/ssh/sshd_config
    
  2. Aktualisieren Sie die Zeile für PasswordAuthentication in yes:

    PasswordAuthentication yes
    

    Anschließend speichern und beenden Sie die Datei sshd_conf mit dem Befehl :wq im Editor.

  3. Starten Sie den SSH-Dienst für Ihre RHEL-Distribution-Version neu, um die Änderungen zu übernehmen und Benutzern das Anmelden mit einem Kennwort zu ermöglichen:

    sudo service sshd restart
    

Erteilen von sudo-Berechtigungen für die Gruppe „AAD DC-Administratoren“

Um Mitgliedern der Gruppe AAD DC-Administratoren Administratorrechte für die RHEL-VM zu erteilen, fügen Sie /etc/sudoers einen Eintrag hinzu. Nach dem Hinzufügen können Mitglieder der Gruppe AAD DC-Administratoren den Befehl sudo auf der RHEL-VM verwenden.

  1. Öffnen Sie die Datei sudoers zur Bearbeitung:

    sudo visudo
    
  2. Fügen Sie den folgenden Eintrag am Ende der Datei /etc/sudoers hinzu. Die Gruppe AAD DC-Administratoren enthält Leerzeichen im Namen. Fügen Sie deshalb den umgekehrten Schrägstrich als Escapezeichen in den Gruppennamen ein. Fügen Sie den Namen Ihrer Domäne (z. B. aaddscontoso.com) hinzu:

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

    Anschließend speichern und beenden Sie den Editor mit dem Befehl :wq im Editor.

Anmelden bei der VM mit einem Domänenkonto

Um zu überprüfen, ob die VM erfolgreich in die verwaltete Domäne eingebunden wurde, starten Sie eine neue SSH-Verbindung mithilfe eines Domänenbenutzerkontos. Vergewissern Sie sich, dass ein Basisverzeichnis erstellt wurde und die Gruppenmitgliedschaft aus der Domäne angewendet wird.

  1. Erstellen Sie eine neue SSH-Verbindung über die Konsole. Verwenden Sie mithilfe des Befehls ssh -l ein Domänenkonto, das der verwalteten Domäne angehört (z. B. contosoadmin@aaddscontoso.com), und geben Sie dann die Adresse Ihres virtuellen Computers (z. B. rhel.aaddscontoso.com) ein. Bei Verwendung von Azure Cloud Shell verwenden Sie die öffentliche IP-Adresse der VM anstelle des internen DNS-Namens.

    ssh -l contosoadmin@AADDSCONTOSO.com rhel.aaddscontoso.com
    
  2. Wenn Sie erfolgreich eine Verbindung mit der VM hergestellt haben, vergewissern Sie sich, dass das Basisverzeichnis ordnungsgemäß initialisiert wurde:

    pwd
    

    Sie sollten sich mit Ihrem eigenen Verzeichnis, das dem Benutzerkonto entspricht, im Verzeichnis /home befinden.

  3. Überprüfen Sie nun, ob die Gruppenmitgliedschaften ordnungsgemäß aufgelöst werden:

    id
    

    Ihre Gruppenmitgliedschaften aus der verwalteten Domäne sollten angezeigt werden.

  4. Wenn Sie sich als Mitglied der Gruppe AAD DC-Administratoren bei der VM angemeldet haben, überprüfen Sie, ob Sie den Befehl sudo ordnungsgemäß verwenden können:

    sudo yum update
    

Nächste Schritte

Wenn beim Verbinden der VM mit der verwalteten Domäne oder bei der Anmeldung mit einem Domänenkonto Probleme auftreten, lesen Sie Behandeln von Problemen mit dem Einbinden in eine Domäne.