Linux Virtual Delivery Agent

Authentifizierung mit Azure Active Directory

Hinweis:

Dieses Feature ist nur für von Azure gehostete VDAs verfügbar.

Je nach Bedarf können Sie zwei Arten von Linux-VDAs in Azure bereitstellen:

  • Mit Azure AD DS verbundene VMs. Die VMs sind mit einer verwalteten Domäne von Azure Active Directory (AAD) Domain Services (DS) verbunden. Benutzer melden sich mit ihren Domänenanmeldeinformationen bei den VMs an.
  • Nicht-domänengebundene VDAs. Die VMs werden in den AAD-Identitätsdienst integriert, um die Benutzerauthentifizierung bereitzustellen. Benutzer melden sich mit ihren AAD-Anmeldeinformationen bei den VMs an.

Weitere Informationen zu AAD DS und AAD finden Sie in diesem Microsoft-Artikel.

In diesem Artikel erfahren Sie, wie Sie den AAD-Identitätsdienst auf nicht in Domänen eingebundenen VDAs aktivieren und konfigurieren.

Unterstützte Distributionen

  • Ubuntu 22.04, 20.04
  • RHEL 8.8, 8.6, 7.9
  • SUSE 15.5

Weitere Informationen finden Sie in diesem Microsoft-Artikel.

Bekannte Probleme und Workarounds

Unter RHEL 7.9 kann das PAM (Pluggable Authentication Module) pam_loginuid.so nach der AAD-Benutzerauthentifizierung loginuid nicht festlegen. Dieses Problem hindert AAD-Benutzer am Zugriff auf VDA-Sitzungen.

Kommentieren Sie in /etc/pam.d/remote die Zeile Session required pam_loginuid.so aus, um das Problem zu umgehen. Der folgende Screenshot enthält ein Beispiel.

Workaround für bekanntes Problem

Schritt 1: Erstellen einer Vorlagen-VM im Azure-Portal

Erstellen Sie eine Vorlagen-VM und installieren Sie die Azure-Befehlszeilenschnittstelle auf der VM.

  1. Erstellen Sie im Azure-Portal eine Vorlagen-VM. Aktivieren Sie auf der Registerkarte Management die Option Login with Azure AD, bevor Sie auf Review + create klicken.

    Einstellung zum Aktivieren der Anmeldung mit AAD

  2. Installieren Sie die Azure-Befehlszeilenschnittstelle auf der Vorlagen-VM. Weitere Informationen finden Sie in diesem Microsoft-Artikel.

Schritt 2: Vorbereiten eines Masterimages auf der Vorlagenmaschine

Um ein Masterimage vorzubereiten, müssen Sie zunächst Schritt 3: Vorbereiten eines Masterimages unter Verwenden von MCS zum Erstellen von Linux-VMs in Azure ausführen.

Schritt 3: Festlegen der Vorlagen-VM als nicht-domänengebunden

Nachdem Sie ein Masterimage erstellt haben, führen Sie die folgenden Schritte aus, um die VM als nicht-domänengebunden zu definieren:

  1. Führen Sie das folgende Skript an der Eingabeaufforderung aus.

    Modify /var/xdl/mcs/mcs_util.sh
    <!--NeedCopy-->
    
  2. Suchen Sie nach function read_non_domain_joined_info(), und ändern Sie den Wert für NonDomainJoined in 2. Der folgende Codeblock ist ein Beispiel.

    function read_non_domain_joined_info()
    {
    log "Debug: Enter read_non_domain_joined_info"
    # check if websocket enabled
    TrustIdentity=`cat ${id_disk_mnt_point}${ad_info_file_path} | grep '[TrustIdentity]' | sed 's/\s//g'`
    if [ "$TrustIdentity" == "[TrustIdentity]" ]; then
    NonDomainJoined=2
    fi
    ...
    }
    <!--NeedCopy-->
    
  3. Speichern Sie die Änderung.

  4. Fahren Sie die Vorlagen-VM herunter.

Schritt 4: Erstellen der Linux-VMs aus der Vorlagen-VM

Nach dem Vorbereiten der nicht-domänengebundenen Vorlagen-VM führen Sie die folgenden Schritte aus, um VMs zu erstellen:

  1. Melden Sie sich bei Citrix Cloud an.

  2. Doppelklicken Sie auf Citrix DaaS, und greifen Sie auf die Verwaltungskonsole “Vollständige Konfiguration” zu.

  3. Wählen Sie unter Maschinenkataloge die Verwendung von MCS (Maschinenerstellungsdiensten) zum Erstellen der Linux-VMs aus der Vorlagen-VM aus. Weitere Informationen finden Sie unter Nicht in Domänen eingebundene VDAs im Citrix DaaS-Dokument.

Schritt 5: Zuweisen von AAD-Benutzerkonten zu den Linux-VMs

Nachdem Sie die nicht in Domänen eingebundenen VMs erstellt haben, weisen Sie ihnen AAD-Benutzerkonten zu.

Gehen Sie folgendermaßen vor, um einer VM AAD-Benutzerkonten zuzuweisen:

  1. Greifen Sie mit einem Administratorkonto auf die VM zu.
  2. Aktivieren Sie auf der Registerkarte Identify > System assigned die Option System Identity.

    Einstellung zum Aktivieren der Anmeldung mit AAD

  3. Suchen Sie auf der Registerkarte Access control (IAM) > Role assignments den Bereich Virtual Machine User Login und fügen Sie die AAD-Benutzerkonten nach Bedarf hinzu.

    Einstellung zum Aktivieren der Anmeldung mit AAD

Anmeldung bei nicht-domänengebundenen VDAs

Endbenutzer in Ihrer Organisation haben zwei Möglichkeiten, sich bei einem nicht-domänengebundenen VDA anzumelden. Verfahren:

  1. Starten Sie die Workspace-App und melden Sie sich am Workspace an, indem Sie den AAD-Benutzernamen und das zugehörige Kennwort eingeben. Die Workspace-Seite wird angezeigt.
  2. Doppelklicken Sie auf einen nicht-domänengebundenen Desktop. Die Anmeldeseite von AAD wird angezeigt.

    Die Seite variiert je nach festgelegtem Anmeldemodus auf dem VDA: “Device Code” oder “AAD account/password”. Standardmäßig erfolgt die Authentifizierung von AAD-Benutzern auf Linux-VDAs über den Anmeldemodus “Device Code”. Als Administrator können Sie den Anmeldemodus bei Bedarf in “AAD account/password” ändern. Die dafür erforderliche Schrittfolge ist im folgenden Abschnitt beschrieben.

    Einstellung zum Aktivieren der Anmeldung mit AAD

  3. Melden Sie sich je nach Anweisung auf dem Bildschirm mit einem der folgenden Verfahren an der Desktopsitzung an:
    • Scannen Sie den QR-Code und geben Sie den Code ein.
    • Geben Sie den AAD-Benutzernamen und das zughörige Kennwort ein.

Ändern des Anmeldemodus in “AAD account/password”

Standardmäßig werden AAD-Benutzer auf Linux-VDAs mit Gerätecodes authentifiziert. Weitere Informationen finden Sie in diesem Microsoft-Artikel. Führen Sie folgende Schritte aus, um den Anmeldemodus in AAD account/password zu ändern:

Führen Sie folgenden Befehl auf dem VDA aus, suchen Sie den Schlüssel AADAcctPwdAuthEnable, und ändern Sie den Wert in 0x00000001.

/opt/Citrix/VDA/bin/ctxreg create -k "HKLM\System\CurrentControlSet\Services\CitrixBrokerAgent\WebSocket" -t "REG_DWORD" -v "AADAcctPwdAuthEnable" -d "0x00000001" --force

<!--NeedCopy-->

Hinweis:

Dieser Ansatz funktioniert nicht für Microsoft-Konten oder Konten mit aktivierter zweistufiger Authentifizierung.