Linux Virtual Delivery Agent

Linux VDA manuell auf Ubuntu installieren

Wichtig:

Für Neuinstallationen empfehlen wir die Verwendung von Easy Install für eine schnelle Installation. Easy Install spart Zeit und Arbeitskraft und ist weniger fehleranfällig als die hier beschriebene manuelle Installation.

Schritt 1: Vorbereiten der Konfigurationsinformationen und der Linux-Maschine

Schritt 1a: Überprüfen der Netzwerkkonfiguration

Stellen Sie sicher, dass das Netzwerk verbunden und richtig konfiguriert ist. Beispielsweise müssen Sie den DNS-Server auf dem Linux VDA konfigurieren.

Nehmen Sie bei Verwendung von Ubuntu Live Server folgende Änderung in der Konfigurationsdatei /etc/cloud/cloud.cfg vor, bevor Sie den Hostnamen festlegen:

preserve_hostname: true

Schritt 1b: Festlegen des Hostnamens

Damit der Hostname der Maschine richtig gemeldet wird, ändern Sie die Datei /etc/hostname, sodass sie nur den Hostnamen der Maschine enthält.

hostname

Schritt 1c: Zuweisen einer Loopbackadresse für den Hostnamen

Vergewissern Sie sich, dass der DNS-Domänenname und der vollqualifizierte Domänenname (FQDN) der Maschine korrekt gemeldet werden. Sie können hierfür die folgende Zeile der Datei /etc/hosts durch den FQDN und den Hostnamen als erste beiden Einträge erweitern:

127.0.0.1 hostname-fqdn hostname localhost

Beispiel:

127.0.0.1 vda01.example.com vda01 localhost

Entfernen Sie alle anderen Verweise auf hostname-fqdn oder hostname aus anderen Einträgen in der Datei.

Hinweis:

Der Linux VDA unterstützt derzeit nicht das Abschneiden von NetBIOS-Namen. Der Hostname darf daher nicht länger als 15 Zeichen sein.

Tipp:

Verwenden Sie nur Buchstaben (a-z oder A-Z), Ziffern (0-9) und Bindestriche (-). Vermeiden Sie Unterstriche (_), Leerzeichen und andere Symbole. Hostnamen sollten nicht mit einer Zahl beginnen und nicht mit einem Bindestrich enden. Diese Regel gilt auch für Delivery Controller-Hostnamen.

Schritt 1d: Überprüfen des Hostnamens

Stellen Sie sicher, dass der Hostname richtig festgelegt ist:

hostname
<!--NeedCopy-->

Dieser Befehl gibt nur den Hostnamen der Maschine zurück und nicht den vollqualifizierten Domänennamen (FQDN).

Stellen Sie sicher, dass der FQDN richtig festgelegt ist:

hostname -f
<!--NeedCopy-->

Dieser Befehl gibt den FQDN der Maschine zurück.

Schritt 1e: Deaktivieren von Multicast-DNS

In den Standardeinstellungen ist Multicast-DNS (mDNS) aktiviert, was zu inkonsistenten Ergebnissen bei der Namensauflösung führen kann.

Um mDNS zu deaktivieren, bearbeiten Sie /etc/nsswitch.conf und ändern Sie folgende Zeile:

hosts: files mdns_minimal [NOTFOUND=return] dns

In:

hosts: files dns

Schritt 1f: Überprüfen von Namensauflösung und Diensterreichbarkeit

Stellen Sie sicher, dass Sie den FQDN auflösen können und pingen Sie den Domänencontroller und den Delivery Controller:

nslookup domain-controller-fqdn

ping domain-controller-fqdn

nslookup delivery-controller-fqdn

ping delivery-controller-fqdn
<!--NeedCopy-->

Wenn Sie den FQDN nicht auflösen und eine der beiden Maschinen nicht pingen können, überprüfen Sie die vorherigen Schritte, bevor Sie fortfahren.

Schritt 1g: Konfigurieren der Uhrsynchronisierung (Chrony)

Es ist wichtig, dass die Uhrsynchronisierung zwischen den VDAs, den Delivery Controllern und den Domänencontrollern genau ist. Beim Hosten eines Linux VDAs als virtuelle Maschine (VM) kann es zu Zeitabweichungen kommen. Aus diesem Grund sollte die Zeit remote von einem Zeitdienst synchronisiert werden.

chrony installieren:

apt-get install chrony
<!--NeedCopy-->

Bearbeiten Sie als Root-Benutzer die Datei /etc/chrony/chrony.conf und fügen Sie pro Remote-Zeitserver einen Servereintrag hinzu:

server peer1-fqdn-or-ip-address iburst
server peer2-fqdn-or-ip-address iburst

In einer typischen Bereitstellung synchronisieren Sie die Zeit von den lokalen Domänencontrollern und nicht direkt von öffentlichen NTP-Poolservern. Fügen Sie pro Active Directory-Domänencontroller in der Domäne einen Servereintrag hinzu.

Entfernen Sie alle server- oder pool-Einträge, einschließlich Einträge für Loopback-IP-Adressen, Localhost und öffentliche Servereinträge wie *.pool.ntp.org.

Speichern Sie die Änderungen und starten Sie den Chrony-Daemon neu:

sudo systemctl restart chrony
<!--NeedCopy-->

Schritt 1h: Installieren von OpenJDK 11

Der Linux VDA erfordert das Vorhandensein von OpenJDK 11.

Ubuntu 22.04 beinhaltet OpenJDK 11.

Führen Sie den folgenden Befehl aus, um OpenJDK 11 unter Ubuntu 20.04 zu installieren:

sudo apt-get install -y openjdk-11-jdk
<!--NeedCopy-->

Schritt 1i: Installieren und Angeben einer zu verwendenden Datenbank

Hinweis:

  • Wir empfehlen, SQLite nur für den VDI-Modus und PostgreSQL für ein Bereitstellungsmodell für gehostete freigegebene Desktops zu verwenden.

  • Bei Easy Install und den Maschinenerstellungsdiensten (MCS) können Sie SQLite oder PostgreSQL zur Verwendung angeben, ohne die Systeme manuell installieren zu müssen. Sofern nicht anders durch /etc/xdl/db.conf angegeben, verwendet der Linux VDA standardmäßig PostgreSQL.

  • Für manuelle Installationen müssen Sie SQLite, PostgreSQL oder beide manuell installieren. Wenn Sie sowohl SQLite als auch PostgreSQL installieren, können Sie angeben, welche Datenbank verwendet werden soll, indem Sie nach der Installation des Linux VDA-Pakets /etc/xdl/db.conf bearbeiten.

In diesem Abschnitt wird beschrieben, wie Sie PostgreSQL und SQLite installieren und festlegen, welche Datenbank verwendet werden soll.

PostgreSQL installieren

Führen Sie zum Installieren von PostgreSQL die folgenden Befehle aus:

sudo apt-get install -y postgresql

sudo apt-get install -y libpostgresql-jdbc-java
<!--NeedCopy-->

Führen Sie die folgenden Befehle aus, um PostgreSQL beim Start der Maschine bzw. sofort zu starten:

sudo systemctl enable postgresql

sudo systemctl restart postgresql
<!--NeedCopy-->

SQLite installieren

Führen Sie für Ubuntu den folgenden Befehl aus, um SQLite zu installieren:

sudo apt-get install -y sqlite3
<!--NeedCopy-->

Angeben einer zu verwendenden Datenbank

Wenn Sie sowohl SQLite als auch PostgreSQL installieren, können Sie angeben, welche Datenbank verwendet werden soll, indem Sie nach der Installation des Linux VDA-Pakets /etc/xdl/db.conf bearbeiten.

  1. Führen Sie /opt/Citrix/VDA/sbin/ctxcleanup.sh aus. Lassen Sie diesen Schritt aus, wenn es sich um eine Neuinstallation handelt.
  2. Bearbeiten Sie /etc/xdl/db.conf, um eine zu verwendende Datenbank anzugeben.
  3. Führen Sie ctxsetup.sh aus.

Hinweis:

Sie können auch /etc/xdl/db.conf verwenden, um die Portnummer für PostgreSQL zu konfigurieren.

Schritt 1j: Installieren von Motif

sudo apt-get install -y libxm4
<!--NeedCopy-->

Schritt 1k: Installieren weiterer Pakete

Ubuntu 22.04:

sudo apt-get install -y libsasl2-2
sudo apt-get install -y libsasl2-modules-gssapi-mit
sudo apt-get install -y libldap-2.5-0
sudo apt-get install -y krb5-user
sudo apt-get install -y libgtk2.0-0
<!--NeedCopy-->

Ubuntu 20.04:

sudo apt-get install -y libsasl2-2
sudo apt-get install -y libsasl2-modules-gssapi-mit
sudo apt-get install -y libldap-2.4-2
sudo apt-get install -y krb5-user
sudo apt-get install -y libgtk2.0-0
<!--NeedCopy-->

Schritt 2: Vorbereiten des Hypervisors

Wenn Sie den Linux VDA als VM auf einem unterstützten Hypervisor ausführen, sind einige Änderungen erforderlich. Nehmen Sie basierend auf der verwendeten Hypervisorplattform die folgenden Änderungen vor. Wenn Sie die Linux-Maschine auf Bare-Metal-Hardware ausführen, sind keine Änderungen erforderlich.

Feste Zeitsynchronisierung auf XenServer (früher Citrix Hypervisor)

Wenn das XenServer Zeitsynchronisierungsfeature aktiviert ist, treten auf jeder paravirtualisierten Linux-VM Probleme mit NTP und XenServer auf. Beide versuchen, die Systemuhr zu verwalten. Damit es nicht zu Zeitabweichungen zwischen der Uhr und den anderen Servern kommt, muss die Systemuhr aller Linux-Gäste mit dem NTP synchronisiert werden. In diesem Fall muss die Hostzeitsynchronisierung deaktiviert werden. Im HVM-Modus sind keine Änderungen erforderlich.

Wenn ein paravirtualisierter Linux-Kernel mit installierten XenServer Tools ausgeführt wird, können Sie direkt in der Linux-VM prüfen, ob das XenServer-Zeitsynchronisierungsfeature vorhanden und aktiviert ist:

su -

cat /proc/sys/xen/independent_wallclock
<!--NeedCopy-->

Dieser Befehl gibt 0 oder 1 zurück:

  • 0: Das Zeitsynchronisierungsfeature ist aktiviert und muss deaktiviert werden.
  • 1: Das Zeitsynchronisierungsfeature ist deaktiviert und keine weitere Aktion ist erforderlich.

Wenn die Datei /proc/sys/xen/independent_wallclock nicht vorhanden ist, sind die folgenden Schritte nicht erforderlich.

Deaktivieren Sie gegebenenfalls das Zeitsynchronisierungsfeature, indem Sie 1 in die Datei schreiben:

sudo echo 1 > /proc/sys/xen/independent_wallclock
<!--NeedCopy-->

Damit die Änderung permanent wird und nach dem Neustart erhalten bleibt, fügen Sie in der Datei /etc/sysctl.conf die folgende Zeile hinzu:

xen.independent_wallclock = 1

Starten Sie das System neu, um die Änderungen zu überprüfen:

su -

cat /proc/sys/xen/independent_wallclock
<!--NeedCopy-->

Dieser Befehl gibt den Wert 1 zurück.

Festlegen der Zeitsynchronisierung auf Microsoft Hyper-V

Linux-VMs, auf denen Hyper-V Linux-Integrationsdienste installiert sind, können mit dem Hyper-V-Zeitsynchronisierungsfeature die Systemzeit des Hostbetriebssystems verwenden. Aktivieren Sie das Feature zusätzlich zu den NTP-Diensten, um sicherzustellen, dass die Betriebssystemzeit korrekt ist.

Auf dem verwaltenden Betriebssystem:

  1. Öffnen Sie die Hyper-V-Manager-Konsole.
  2. Wählen Sie für die Einstellungen einer Linux-VM Integration Services aus.
  3. Stellen Sie sicher, dass Time synchronization ausgewählt ist.

Hinweis:

Diese Methode unterscheidet sich von VMware und XenServer (früher Citrix Hypervisor), wo die Hostzeitsynchronisierung deaktiviert ist, um Konflikte mit dem NTP zu vermeiden. Hyper-V-Zeitsynchronisierung kann gleichzeitig mit der NTP-Zeitsynchronisierung bestehen und sie ergänzen.

Festlegen der Zeitsynchronisierung auf ESX und ESXi

Wenn das VMware-Zeitsynchronisierungsfeature aktiviert ist, treten auf den paravirtualisierten Linux-VMs Probleme mit NTP und Hypervisor auf. Beide versuchen, die Systemuhr zu synchronisieren. Damit es nicht zu Zeitabweichungen zwischen der Uhr und den anderen Servern kommt, muss die Systemuhr aller Linux-Gäste mit dem NTP synchronisiert werden. In diesem Fall muss die Hostzeitsynchronisierung deaktiviert werden.

Wenn Sie einen paravirtualisierten Linux-Kernel ausführen und VMware-Tools installiert sind:

  1. Öffnen Sie den vSphere-Client.
  2. Bearbeiten Sie die Einstellungen für die Linux-VM.
  3. Öffnen Sie im Dialogfeld Virtual Machine Properties die Registerkarte Options.
  4. Wählen Sie VMware Tools.
  5. Deaktivieren Sie im Feld Advanced das Kontrollkästchen Synchronize guest time with host.

Schritt 3: Linux-VM zur Windows-Domäne hinzufügen

Mit den folgenden Methoden können Linux-Maschinen zur Active Directory-Domäne (AD) hinzugefügt werden:

Folgen Sie den Anweisungen für die von Ihnen gewählte Methode.

Hinweis:

Der Sitzungsstart kann fehlschlagen, wenn für das lokale Konto auf dem Linux VDA und das AD-Konto derselbe Benutzername verwendet wird.

Samba Winbind

Installieren oder aktualisieren Sie die erforderlichen Pakete

sudo apt-get install winbind samba libnss-winbind libpam-winbind krb5-config krb5-locales krb5-user
<!--NeedCopy-->

Starten des Winbind-Daemon beim Systemstart

Der Winbind-Daemon muss beim Systemstart gestartet werden:

sudo systemctl enable winbind
<!--NeedCopy-->

Hinweis:

Stellen Sie sicher, dass das winbind-Skript unter /etc/init.d ist.

Kerberos konfigurieren

Öffnen Sie als Root-Benutzer /etc/krb5.conf und nehmen Sie folgende Einstellungen vor:

Hinweis:

Konfigurieren Sie Kerberos basierend auf Ihrer AD-Infrastruktur. Die folgenden Einstellungen sind für das Modell mit einer Domäne und einer Gesamtstruktur vorgesehen.

[libdefaults]

default_realm = REALM

dns_lookup_kdc = false

[realms]

REALM = {

admin_server = domain-controller-fqdn

kdc = domain-controller-fqdn

}

[domain_realm]

domain-dns-name = REALM

.domain-dns-name = REALM

Der Parameter domain-dns-name ist in diesem Kontext der DNS-Domänenname, z. B. example.com. REALM ist der Kerberos-Bereichsname in Großbuchstaben, z. B. EXAMPLE.COM.

Konfigurieren der Winbind-Authentifizierung

Führen Sie eine manuelle Konfiguration durch, denn Ubuntu verfügt nicht über Tools wie authconfig in RHEL und yast2 in SUSE.

Führen Sie den Befehl vim /etc/samba/smb.conf aus, um /etc/samba/smb.conf zu öffnen, und nehmen Sie dann die folgenden Einstellungen vor:

[global]

workgroup = WORKGROUP

security = ADS

realm = REALM

encrypt passwords = yes

idmap config *:range = 16777216-33554431

kerberos method = secrets and keytab

winbind refresh tickets = yes

template shell = /bin/bash

WORKGROUP ist das erste Feld in REALM und REALM ist der Kerberos-Bereichsname in Großbuchstaben.

Konfigurieren von nsswitch

Öffnen Sie /etc/nsswitch.conf und fügen Sie winbind in den folgenden Zeilen hinzu:

passwd: compat winbind
group: compat winbind

Windows-Domäne beitreten

Es wird vorausgesetzt, dass der Domänencontroller erreichbar ist und dass Sie über ein Active Directory-Benutzerkonto mit Berechtigungen zum Hinzufügen von Computern zur Domäne verfügen:

sudo net ads join REALM -U user
<!--NeedCopy-->

REALM ist der Kerberos-Bereichsname in Großbuchstaben und user ist ein Domänenbenutzer mit Berechtigungen zum Hinzufügen von Computern zur Domäne.

winbind neu starten

sudo systemctl restart winbind
<!--NeedCopy-->

PAM für Winbind konfigurieren

Führen Sie den folgenden Befehl aus. Stellen Sie sicher, dass die Optionen Winbind NT/Active Directory authentication und Create home directory on login aktiviert sind:

sudo pam-auth-update
<!--NeedCopy-->

Tipp:

Der winbind-Daemon wird nur weiterhin ausgeführt, wenn die Maschine zu einer Domäne gehört.

Domäneneigentümerschaft überprüfen

Für den Delivery Controller ist es erforderlich, dass alle VDA-Maschinen (Windows und Linux) ein Computerobjekt in Active Directory haben.

Führen Sie den Samba-Befehl net ads aus, um zu prüfen, ob die Maschine zu einer Domäne gehört:

sudo net ads testjoin
<!--NeedCopy-->

Führen Sie den folgenden Befehl aus, um zusätzliche Domänen- und Computerobjektinformationen zu überprüfen:

sudo net ads info
<!--NeedCopy-->

Kerberos-Konfiguration überprüfen

Überprüfen Sie, ob Kerberos zur Verwendung mit dem Linux VDA ordnungsgemäß konfiguriert ist, indem Sie sicherstellen, dass die Systemdatei keytab erstellt wurde und gültige Schlüssel enthält:

sudo klist -ke
<!--NeedCopy-->

Mit diesem Befehl wird die Liste der Schlüssel angezeigt, die für die verschiedenen Kombinationen aus Prinzipalnamen und Verschlüsselungssammlungen verfügbar sind. Führen Sie den Kerberos-Befehl kinit aus, um die Maschine mit dem Domänencontroller zu authentifizieren, die diese Schlüssel verwendet:

sudo kinit -k MACHINE$@REALM
<!--NeedCopy-->

Maschinen- und Bereichsname müssen in Großbuchstaben angegeben werden. Das Dollarzeichen ($) muss durch einen umgekehrten Schrägstrich (\) geschützt werden, um das Ersetzen in der Shell zu verhindern. In einigen Umgebungen sind DNS-Domänenname und Kerberos-Bereichsname unterschiedlich. Stellen Sie sicher, dass der Bereichsname verwendet wird. Wenn dieser Befehl erfolgreich ist, wird keine Ausgabe angezeigt.

Stellen Sie mit folgendem Befehl sicher, dass das TGT-Ticket für das Maschinenkonto zwischengespeichert wurde:

sudo klist
<!--NeedCopy-->

Überprüfen Sie die Maschinenkontodetails mit folgendem Befehl:

sudo net ads status
<!--NeedCopy-->

Benutzerauthentifizierung überprüfen

Überprüfen Sie mit dem wbinfo-Tool, dass Domänenbenutzer sich bei der Domäne authentifizieren können:

wbinfo --krb5auth=domain\username%password
<!--NeedCopy-->

Die hier angegebene Domäne ist der AD-Domänenname und nicht der Kerberos-Bereichsname. Für die Bash-Shell muss der umgekehrte Schrägstrich (\) durch einen weiteren umgekehrten Schrägstrich geschützt werden. Bei diesem Befehl wird eine Erfolgs- oder Fehlermeldung zurückgegeben.

Um sich zu vergewissern, dass das Winbind-PAM-Modul fehlerfrei konfiguriert ist, melden Sie sich mit einem bislang nicht verwendeten Domänenbenutzerkonto am Linux VDA an.

ssh localhost -l domain\username

id -u
<!--NeedCopy-->

Hinweis:

Um einen SSH-Befehl erfolgreich auszuführen, stellen Sie sicher, dass SSH aktiviert ist und ordnungsgemäß funktioniert.

Vergewissern Sie sich, dass eine entsprechende Cachedatei mit Kerberos-Anmeldeinformationen für die mit dem Befehl id -u zurückgegebene UID erstellt wurde:

ls /tmp/krb5cc_uid
<!--NeedCopy-->

Stellen Sie sicher, dass die Tickets im Kerberos-Anmeldeinformationscache gültig und nicht abgelaufen sind:

klist
<!--NeedCopy-->

Beenden Sie die Sitzung.

exit
<!--NeedCopy-->

Ein ähnlicher Test kann ausgeführt werden, wenn Sie sich direkt an der Gnome- oder KDE-Konsole anmelden. Fahren Sie nach der Überprüfung des Domänenbeitritts mit Schritt 6: Installieren des Linux VDA fort.

Tipp:

Wenn die Benutzerauthentifizierung erfolgreich ist, aber der Desktop nach der Anmeldung mit einem Domänenkonto nicht angezeigt wird, starten Sie die Maschine neu und wiederholen Sie die Anmeldung.

Quest Authentication Service

Quest auf dem Domänencontroller konfigurieren

Es wird vorausgesetzt, dass Sie die Quest-Software auf den Active Directory-Domänencontrollern installiert und konfiguriert haben und über Administratorrechte zum Erstellen von Computerobjekten in Active Directory verfügen.

Domänenbenutzern die Anmeldung an Linux VDA-Maschinen ermöglichen

Führen Sie folgende Schritte aus, damit Domänenbenutzer HDX-Sitzungen auf einer Linux VDA-Maschine herstellen können:

  1. Öffnen Sie in der Verwaltungskonsole für Active Directory-Benutzer und -Computer die Active Directory-Eigenschaften für das jeweilige Benutzerkonto.
  2. Wählen Sie die Registerkarte Unix Account aus.
  3. Aktivieren Sie das Kontrollkästchen Unix-enabled.
  4. Legen Sie Primary GID Number auf die Gruppen-ID einer vorhandenen Domänenbenutzergruppe fest.

Hinweis:

Mit diesen Anleitungen können Domänenbenutzer für die Anmeldung mit der Konsole, RDP, SSH oder anderen Remotingprotokollen eingerichtet werden.

Quest auf Linux VDA konfigurieren

Workaround bei SELinux-Richtlinienerzwingung

In der RHEL-Standardumgebung wird SELinux vollständig erzwungen. Das beeinträchtigt die von Quest verwendeten IPC-Methoden der Unix-Domänensockets und verhindert, dass Domänenbenutzer sich anmelden.

Der bequeme Weg, dieses Problem zu umgehen, ist die Deaktivierung von SELinux. Bearbeiten Sie als Root-Benutzer die Datei /etc/selinux/config und ändern Sie die SELinux-Einstellung:

SELINUX=disabled

Diese Änderung erfordert einen Neustart der Maschine:

reboot
<!--NeedCopy-->

Wichtig:

Seien Sie vorsichtig beim Verwenden dieser Einstellung. Das erneute Aktivieren der SELinux-Richtlinienerzwingung nach ihrer Deaktivierung kann selbst für den Root-Benutzer und anderen lokale Benutzer zu einer vollständigen Sperrung führen.

VAS-Daemon konfigurieren

Die automatische Erneuerung von Kerberos-Tickets muss aktiviert und getrennt sein. Authentifizierung (für Offlineanmeldung) muss deaktiviert sein.

sudo /opt/quest/bin/vastool configure vas vasd auto-ticket-renew-interval 32400

sudo /opt/quest/bin/vastool configure vas vas_auth allow-disconnected-auth false
<!--NeedCopy-->

Mit diesem Befehl wird das Verlängerungsintervall auf neun Stunden (32.400 Sekunden) festgelegt. Das ist eine Stunde weniger als die Standardgültigkeitsdauer (10 Stunden) eines Tickets. Bei Systemen mit einer kürzeren Ticketgültigkeitsdauer legen Sie diesen Parameter auf einen niedrigeren Wert fest.

PAM und NSS konfigurieren

Um die Domänenbenutzeranmeldung über HDX und andere Dienste wie su, ssh und RDP zu aktivieren, führen Sie die folgenden Befehle aus, um PAM und NSS manuell zu konfigurieren:

sudo /opt/quest/bin/vastool configure pam

sudo /opt/quest/bin/vastool configure nss
<!--NeedCopy-->

Windows-Domäne beitreten

Machen Sie die Linux-Maschine mit dem Quest-Befehl vastool zu einem Mitglied der Active Directory-Domäne:

sudo /opt/quest/bin/vastool -u user join domain-name
<!--NeedCopy-->

Der Benutzer ist ein beliebiger Domänenbenutzer mit der Berechtigung, Computer zu Mitgliedern der Active Directory-Domäne zu machen. domain-name ist der DNS-Name der Domäne, z. B. example.com.

Starten Sie die Linux-Maschine nach dem Domänenbeitritt neu.

Domäneneigentümerschaft überprüfen

Für den Delivery Controller ist es erforderlich, dass alle VDA-Maschinen (Windows und Linux) ein Computerobjekt in Active Directory haben. Mit folgendem Befehl prüfen Sie, ob eine per Quest angemeldete Linux-Maschine zur Domäne gehört:

sudo /opt/quest/bin/vastool info domain
<!--NeedCopy-->

Wenn die Maschine zu einer Domäne gehört, wird mit diesem Befehl der Domänenname zurückgegeben. Wenn die Maschine zu keiner Domäne gehört, wird die folgende Fehlermeldung angezeigt:

ERROR: No domain could be found.
ERROR: VAS_ERR_CONFIG: at ctx.c:414 in _ctx_init_default_realm
default_realm not configured in vas.conf. Computer may not be joined to domain

Benutzerauthentifizierung überprüfen

Um sicherzustellen, dass Quest Domänenbenutzer mit PAM authentifizieren kann, melden Sie sich mit einem bislang nicht verwendeten Domänenbenutzerkonto am Linux VDA an.

ssh localhost -l domain\username

id -u
<!--NeedCopy-->

Vergewissern Sie sich, dass eine entsprechende Cachedatei mit Kerberos-Anmeldeinformationen für die mit dem Befehl id -u zurückgegebene UID erstellt wurde:

ls /tmp/krb5cc_uid
<!--NeedCopy-->

Stellen Sie sicher, dass die Tickets im Kerberos-Anmeldeinformationscache gültig und nicht abgelaufen sind:

/opt/quest/bin/vastool klist
<!--NeedCopy-->

Beenden Sie die Sitzung.

exit
<!--NeedCopy-->

Fahren Sie nach der Überprüfung des Domänenbeitritts mit Schritt 6: Installieren des Linux VDA fort.

Centrify DirectControl

Windows-Domäne beitreten

Wenn der Centrify DirectControl Agent installiert ist, machen Sie die Linux-Maschine mit dem Centrify-Befehl adjoin zu einem Mitglied der Active Directory-Domäne:

su –
adjoin -w -V -u user domain-name
<!--NeedCopy-->

Der Parameter user ist ein Active Directory-Domänenbenutzer mit der Berechtigung, Computer zu Mitgliedern von Active Directory-Domänen zu machen. Der Parameter domain-name ist der Name der Domäne, der die Linux-Maschine beitritt.

Domäneneigentümerschaft überprüfen

Für den Delivery Controller ist es erforderlich, dass alle VDA-Maschinen (Windows und Linux) ein Computerobjekt in Active Directory haben. Mit folgendem Befehl prüfen Sie, ob eine per Centrify hinzugefügte Linux-Maschine Mitglied der Domäne ist:

su –

adinfo
<!--NeedCopy-->

Stellen Sie sicher, dass der Wert Joined to domain gültig ist und dass CentrifyDC mode den Wert connected zurückgibt. Wenn der Modus im Startzustand stecken bleibt, hat der Centrify-Client Serververbindungs- oder Authentifizierungsprobleme.

Umfassendere System- und Diagnoseinformationen sind mit folgenden Befehlen verfügbar:

adinfo --sysinfo all

adinfo --diag
<!--NeedCopy-->

Testen Sie die Verbindung mit den verschiedenen Active Directory- und Kerberos-Diensten.

adinfo --test
<!--NeedCopy-->

Fahren Sie nach der Überprüfung des Domänenbeitritts mit Schritt 6: Installieren des Linux VDA fort.

SSSD

Kerberos konfigurieren

Führen Sie zum Installieren von Kerberos den folgenden Befehl aus:

sudo apt-get install krb5-user
<!--NeedCopy-->

Zum Konfigurieren von Kerberos öffnen Sie als Root-Benutzer /etc/krb5.conf und legen Sie folgende Parameter fest:

Hinweis:

Konfigurieren Sie Kerberos basierend auf Ihrer AD-Infrastruktur. Die folgenden Einstellungen sind für das Modell mit einer Domäne und einer Gesamtstruktur vorgesehen.

[libdefaults]

default_realm = REALM

dns_lookup_kdc = false

[realms]

REALM = {

admin_server = domain-controller-fqdn

kdc = domain-controller-fqdn

}

[domain_realm]

domain-dns-name = REALM

.domain-dns-name = REALM

Der Parameter domain-dns-name ist in diesem Kontext der DNS-Domänenname, z. B. example.com. REALM ist der Kerberos-Bereichsname in Großbuchstaben, z. B. EXAMPLE.COM.

Domäne beitreten

SSSD muss für die Verwendung von Active Directory als Identitätsanbieter und Kerberos zur Authentifizierung konfiguriert werden. SSSD bietet keine AD-Clientfunktionen für den Domänenbeitritt und die Verwaltung der Systemschlüsseltabelle. Sie können stattdessen adcli, realmd oder Samba verwenden.

Hinweis:

Dieser Abschnitt enthält nur Informationen für adcli und Samba.

  • Wenn Sie der Domäne mit adcli beitreten, führen Sie die folgenden Schritte aus:
  1. Installieren Sie adcli.

    sudo apt-get install adcli
    <!--NeedCopy-->
    
  2. Treten Sie mit adcli der Domäne bei.

    Entfernen Sie die alte Systemdatei für die Schlüsseltabelle und treten Sie der Domäne mit folgenden Befehl bei:

    su -
    
    rm -rf /etc/krb5.keytab
    
    adcli join domain-dns-name -U user -H hostname-fqdn
    <!--NeedCopy-->
    

    user ist ein Domänenbenutzer mit der Berechtigung zum Hinzufügen von Maschinen zur Domäne. hostname-fqdn ist der Hostname für die Maschine im FQDN-Format.

    Die Option -H ist erforderlich, damit adcli SPN im folgenden, vom Linux VDA benötigten Format erstellen kann: host/hostname-fqdn@REALM.

  3. Überprüfen Sie die Domänenmitgliedschaft.

    Führen Sie auf Maschinen mit Ubuntu 22.04 und Ubuntu 20.04 den Befehl adcli testjoin aus, um zu testen, ob sie mit der Domäne verbunden sind.

  • Wenn Sie der Domäne mit Samba beitreten, führen Sie die folgenden Schritte aus:
  1. Installieren Sie das Paket.

    sudo apt-get install samba krb5-user
    <!--NeedCopy-->
    
  2. Konfigurieren Sie Samba.

    Öffnen Sie /etc/samba/smb.conf und nehmen Sie folgende Einstellungen vor:

    [global]

    workgroup = WORKGROUP

    security = ADS

    realm = REALM

    client signing = yes

    client use spnego = yes

    kerberos method = secrets and keytab

    WORKGROUP ist das erste Feld in REALM und REALM ist der Kerberos-Bereichsname in Großbuchstaben.

  3. Treten Sie der Domäne mit Samba bei.

    Es wird vorausgesetzt, dass der Domänencontroller erreichbar ist und dass Sie über ein Windows-Benutzerkonto mit Berechtigungen zum Hinzufügen von Computern zur Domäne verfügen.

    sudo net ads join REALM -U user
    <!--NeedCopy-->
    

    REALM ist der Kerberos-Bereichsname in Großbuchstaben und user ist ein Domänenbenutzer mit Berechtigungen zum Hinzufügen von Computern zur Domäne.

SSSD einrichten

Installieren oder aktualisieren Sie die erforderlichen Pakete:

Installieren Sie ggf. die erforderlichen SSSD- und Konfigurationspakete:

sudo apt-get install sssd
<!--NeedCopy-->

Wenn die Pakete bereits installiert sind, wird die Aktualisierung empfohlen:

sudo apt-get install --only-upgrade sssd
<!--NeedCopy-->

Hinweis:

Beim Installationsvorgang in Ubuntu werden nsswitch.conf und das PAM-Anmeldemodul automatisch konfiguriert.

SSSD konfigurieren

Vor dem Start des SSSD-Daemon sind SSSD-Konfigurationsänderungen erforderlich. Für einige Versionen von SSSD ist die Konfigurationsdatei /etc/sssd/sssd.conf nicht standardmäßig installiert und muss manuell erstellt werden. Öffnen oder erstellen Sie als Root-Benutzer /etc/sssd/sssd.conf und nehmen Sie folgende Einstellungen vor:

[sssd]

services = nss, pam

config_file_version = 2

domains = domain-dns-name

[domain/domain-dns-name]

id_provider = ad

access_provider = ad

auth_provider = krb5

krb5_realm = REALM

# Set krb5_renewable_lifetime higher if TGT renew lifetime is longer than 14 days

krb5_renewable_lifetime = 14d

# Set krb5_renew_interval to lower value if TGT ticket lifetime is shorter than 2 hours

krb5_renew_interval = 1h

krb5_ccachedir = /tmp

krb5_ccname_template = FILE:%d/krb5cc_%U

# This ldap_id_mapping setting is also the default value

ldap_id_mapping = true

override_homedir = /home/%d/%u

default_shell = /bin/bash

ad_gpo_map_remote_interactive = +ctxhdx

Hinweis:

ldap_id_mapping ist auf true festgelegt, sodass SSSD die Zuordnung von Windows SIDs zu Unix UIDs selbst vornimmt. Andernfalls muss Active Directory POSIX-Erweiterungen bereitstellen können. Der PAM-Dienst ctxhdx wird ad_gpo_map_remote_interactive hinzugefügt.

Der Parameter domain-dns-name ist in diesem Kontext der DNS-Domänenname, z. B. example.com. REALM ist der Kerberos-Bereichsname in Großbuchstaben, z. B. EXAMPLE.COM. Die Konfiguration des NetBIOS-Domänennamens ist nicht erforderlich.

Weitere Informationen zu den Konfigurationseinstellungen finden Sie auf den Manpages über sssd.conf und sssd-ad.

Für den SSSD-Daemon muss die Konfigurationsdatei Besitzer-Leseberechtigung haben:

sudo chmod 0600 /etc/sssd/sssd.conf
<!--NeedCopy-->

SSSD-Daemon starten

Führen Sie die folgenden Befehle aus, um den SSSD-Daemon zu starten und den Daemon beim Systemstart der Maschine zu aktivieren:

sudo systemctl start sssd

sudo systemctl enable sssd
<!--NeedCopy-->

PAM-Konfiguration

Führen Sie den folgenden Befehl aus. Stellen Sie sicher, dass die Optionen SSS authentication und Create home directory on login aktiviert sind:

sudo pam-auth-update
<!--NeedCopy-->

Domäneneigentümerschaft überprüfen

Für den Delivery Controller ist es erforderlich, dass alle VDA-Maschinen (Windows und Linux VDAs) ein Computerobjekt in Active Directory haben.

  • Wenn Sie die Domänenmitgliedschaft mit adcli überprüfen, führen Sie den Befehl sudo adcli info domain-dns-name aus, um die Domäneninformationen anzuzeigen.

  • Wenn Sie die Domänenmitgliedschaft mit Samba überprüfen, führen Sie den Befehl sudo net ads testjoin aus, um zu überprüfen, ob die Maschine Mitglied einer Domäne ist, und den Befehl sudo net ads info zum Überprüfen zusätzlicher Domänen- und Computerobjektinformationen.

Kerberos-Konfiguration überprüfen

Überprüfen Sie, ob Kerberos zur Verwendung mit dem Linux VDA ordnungsgemäß konfiguriert ist, indem Sie sicherstellen, dass die Systemdatei für die Schlüsseltabelle erstellt wurde und gültige Schlüssel enthält:

sudo klist -ke
<!--NeedCopy-->

Mit diesem Befehl wird die Liste der Schlüssel angezeigt, die für die verschiedenen Kombinationen aus Prinzipalnamen und Verschlüsselungssammlungen verfügbar sind. Führen Sie den Kerberos-Befehl kinit aus, um die Maschine mit dem Domänencontroller mit diesen Schlüsseln zu authentifizieren:

sudo kinit -k MACHINE$@REALM
<!--NeedCopy-->

Maschinen- und Bereichsname müssen in Großbuchstaben angegeben werden. Das Dollarzeichen ($) muss durch einen umgekehrten Schrägstrich (\) geschützt werden, um das Ersetzen in der Shell zu verhindern. In einigen Umgebungen sind DNS-Domänenname und Kerberos-Bereichsname unterschiedlich. Stellen Sie sicher, dass der Bereichsname verwendet wird. Wenn dieser Befehl erfolgreich ist, wird keine Ausgabe angezeigt.

Stellen Sie mit folgendem Befehl sicher, dass das TGT für das Maschinenkonto zwischengespeichert wurde:

sudo klist
<!--NeedCopy-->

Benutzerauthentifizierung überprüfen

SSSD bietet kein Befehlszeilentool zum direkten Testen der Authentifizierung mit dem Daemon, daher kann der Test nur mit PAM ausgeführt werden.

Um sich zu vergewissern, dass das SSSD-PAM-Modul fehlerfrei konfiguriert wurde, melden Sie sich mit einem bislang noch nicht verwendeten Domänenbenutzerkonto am Linux VDA an.

ssh localhost -l domain\username

id -u

klist

exit
<!--NeedCopy-->

Stellen Sie sicher, dass die vom Befehl klist zurückgegebenen Kerberos-Tickets für den Benutzer richtig und nicht abgelaufen sind.

Überprüfen Sie als Root-Benutzer, dass eine entsprechende Ticketcachedatei für die mit dem Befehl id -u zurückgegebene UID erstellt wurde:

ls /tmp/krb5cc_uid
<!--NeedCopy-->

Ein ähnlicher Test kann ausgeführt werden, wenn Sie sich direkt am KDE- oder Gnome-Anzeigemanager anmelden. Fahren Sie nach der Überprüfung des Domänenbeitritts mit Schritt 6: Installieren des Linux VDA fort.

PBIS

Download des erforderlichen PBIS-Pakets

sudo wget https://github.com/BeyondTrust/pbis-open/releases/download/9.1.0/pbis-open-9.1.0.551.linux.x86_64.deb.sh
<!--NeedCopy-->

Umwandeln des PBIS-Installationsskripts in eine ausführbare Datei

sudo chmod +x pbis-open-9.1.0.551.linux.x86_64.deb.sh
<!--NeedCopy-->

Ausführen des PBIS-Installationsskripts

sudo sh pbis-open-9.1.0.551.linux.x86_64.deb.sh
<!--NeedCopy-->

Windows-Domäne beitreten

Es wird vorausgesetzt, dass der Domänencontroller erreichbar ist und dass Sie über ein Active Directory-Benutzerkonto mit Berechtigungen zum Hinzufügen von Computern zur Domäne verfügen:

sudo /opt/pbis/bin/domainjoin-cli join domain-name user
<!--NeedCopy-->

user ist ein Domänenbenutzer mit der Berechtigung, Computer zur Active Directory-Domäne hinzuzufügen. domain-name ist der DNS-Name der Domäne, z. B. example.com.

Hinweis: Führen Sie den Befehl sudo /opt/pbis/bin/config LoginShellTemplate/bin/bash aus, um Bash als Standardshell festzulegen.

Domäneneigentümerschaft überprüfen

Für den Delivery Controller ist es erforderlich, dass alle VDA-Maschinen (Windows und Linux VDAs) ein Computerobjekt in Active Directory haben. Mit folgendem Befehl prüfen Sie, ob eine per PBIS angemeldete Linux-Maschine zur Domäne gehört:

/opt/pbis/bin/domainjoin-cli query
<!--NeedCopy-->

Wenn die Maschine einer Domäne beigetreten ist, werden mit diesem Befehl Informationen zur aktuell beigetretenen AD-Domäne und Organisationseinheit abgefragt. Andernfalls wird nur der Hostname angezeigt.

Benutzerauthentifizierung überprüfen

Um sicherzustellen, dass PBIS Domänenbenutzer mit PAM authentifizieren kann, melden Sie sich mit einem bislang nicht verwendeten Domänenbenutzerkonto am Linux VDA an.

sudo ssh localhost -l domain\user

id -u
<!--NeedCopy-->

Vergewissern Sie sich, dass eine entsprechende Cachedatei mit Kerberos-Anmeldeinformationen für die mit dem Befehl id -u zurückgegebene UID erstellt wurde:

ls /tmp/krb5cc_uid
<!--NeedCopy-->

Beenden Sie die Sitzung.

exit
<!--NeedCopy-->

Fahren Sie nach der Überprüfung des Domänenbeitritts mit Schritt 6: Installieren des Linux VDA fort.

Schritt 4: .NET Runtime 6.0 installieren

Installieren Sie .NET Runtime 6.0 vor der Installation von Linux VDA gemäß den Anweisungen unter https://docs.microsoft.com/en-us/dotnet/core/install/linux-package-managers.

Führen Sie nach der Installation von .NET Runtime 6.0 den Befehl which dotnet aus, um Ihren Laufzeitpfad zu finden.

Legen Sie basierend auf der Ausgabe des Befehls den Binärpfad für die .NET-Laufzeitumgebung fest. Wenn die Befehlsausgabe beispielsweise /aa/bb/dotnet ist, verwenden Sie /aa/bb als .NET-Binärpfad.

Schritt 5: Herunterladen des Linux VDA-Pakets

  1. Gehen Sie zur Citrix Virtual Apps and Desktops-Downloadseite.
  2. Erweitern Sie die entsprechende Version von Citrix Virtual Apps and Desktops.
  3. Erweitern Sie Komponenten, um den Linux VDA zu finden. Beispiel:

    Komponenten für Citrix Virtual Apps and Desktops

  4. Klicken Sie auf den Linux VDA-Link, um auf die Linux VDA-Downloads zuzugreifen.

    Linux VDA-Downloads

  5. Laden Sie das Linux VDA-Paket herunter, das Ihrer Linux-Distribution entspricht.

  6. Laden Sie den öffentlichen GPG-Schlüssel herunter, mit dem Sie die Integrität des Linux VDA-Pakets überprüfen können. Beispiel:

    Öffentlicher GPG-Schlüssel

    Um die Integrität des Linux VDA-Pakets zu überprüfen, führen Sie die folgenden Befehle aus, um den öffentlichen Schlüssel in die DEB-Datenbank zu importieren und die Überprüfung durchzuführen:

    sudo apt-get install dpkg-sig
    gpg --import <path to the public key>
    dpkg-sig --verify <path to the Linux VDA package>
    <!--NeedCopy-->
    

Schritt 6: Installieren des Linux VDA

Schritt 6a: Installieren des Linux VDA

Installieren Sie die Linux VDA-Software mit dem Debian-Paketmanager:

sudo dpkg –i <PATH>/<Linux VDA DEB>
apt-get install -f
<!--NeedCopy-->

Hinweis:

Deaktivieren Sie RDNS für Ubuntu 20.04 auf GCP. Fügen Sie dazu in /etc/krb5.conf die Zeile rdns = false unter [libdefaults] hinzu.

Debian-Abhängigkeitsliste für Ubuntu 22.04:

openjdk-11-jdk >= 11

imagemagick >= 8:6.9.11

libgtkmm-3.0-1v5 >= 3.24.5

ufw >= 0.36

ubuntu-desktop >= 1.481

libxrandr2 >= 2:1.5.2

libxtst6 >= 2:1.2.3

libxm4 >= 2.3.8

util-linux >= 2.37

gtk3-nocsd >= 3

bash >= 5.1

findutils >= 4.8.0

sed >= 4.8

cups >= 2.4

libmspack0 >= 0.10

ibus >= 1.5

libgoogle-perftools4 >= 2.9~

libpython3.10 >= 3.10~

libsasl2-modules-gssapi-mit >= 2.1.~

libnss3-tools >= 2:3.68

libqt5widgets5 >= 5.15~

libqrencode4 >= 4.1.1

libimlib2 >= 1.7.4
<!--NeedCopy-->

Debian-Abhängigkeitsliste für Ubuntu 20.04:

openjdk-11-jdk >= 11

imagemagick >= 8:6.9.10

libgtkmm-3.0-1v5 >= 3.24.2

ufw >= 0.36

ubuntu-desktop >= 1.450

libxrandr2 >= 2:1.5.2

libxtst6 >= 2:1.2.3

libxm4 >= 2.3.8

util-linux >= 2.34

gtk3-nocsd >= 3

bash >= 5.0

findutils >= 4.7.0

sed >= 4.7

cups >= 2.3

libmspack0 >= 0.10

ibus >= 1.5

libgoogle-perftools4 >= 2.7~

libpython3.8 >= 3.8~

libsasl2-modules-gssapi-mit >= 2.1.~

libnss3-tools >= 2:3.49

libqt5widgets5 >= 5.7~

libqrencode4 >= 4.0.0

libimlib2 >= 1.6.1
<!--NeedCopy-->

Hinweis:

Eine Übersicht der Linux-Distributionen und Xorg-Versionen, die von dieser Version des Linux VDA unterstützt werden, finden Sie in der Tabelle Systemanforderungen.

Schritt 6b: Upgrade des Linux VDA (optional)

Der Linux VDA unterstützt Upgrades von der neuesten Version. Beispielsweise können Sie den Linux VDA von 2308 auf 2311 und von 1912 LTSR auf 2203 LTSR aktualisieren.

sudo dpkg -i <PATH>/<Linux VDA deb>
<!--NeedCopy-->

Hinweis:

Durch das Upgrade einer Installation werden die Konfigurationsdateien unter /etc/xdl. überschrieben. Sichern Sie die Dateien vor jedem Upgrade.

Schritt 7: Installieren von NVIDIA GRID-Treibern

Zum Aktivieren von HDX 3D Pro müssen Sie die NVIDIA GRID-Treiber auf Ihrem Hypervisor und auf den VDA-Maschinen installieren.

Informationen zum Installieren und Konfigurieren des NVIDIA GRID Virtual GPU Manager (Hosttreiber) auf den jeweiligen Hypervisoren finden Sie in den folgenden Handbüchern:

Zum Installieren und Konfigurieren der NVIDIA GRID-Gast-VM-Treiber führen Sie die folgenden allgemeinen Schritte aus:

  1. Stellen Sie sicher, dass die Gast-VM heruntergefahren ist.
  2. Weisen Sie der VM in der Hypervisor-Systemsteuerung eine GPU zu.
  3. Starten Sie die VM.
  4. Installieren Sie den Gast-VM-Treiber auf der VM.

Schritt 8: Konfigurieren des Linux VDA

Hinweis:

Stellen Sie vor dem Einrichten der Laufzeitumgebung sicher, dass das Gebietsschema en_US.UTF-8 in Ihrem Betriebssystem installiert ist. Wenn das Gebietsschema im Betriebssystem nicht verfügbar ist, führen Sie den Befehl sudo locale-gen en_US.UTF-8 aus. Für Debian bearbeiten Sie die Datei /etc/locale.gen durch Auskommentierung der Zeile # en_US.UTF-8 UTF-8. Führen Sie dann den Befehl sudo locale-gen aus.

Nach der Installation des Pakets müssen Sie den Linux VDA konfigurieren, indem Sie das Skript ctxsetup.sh ausführen. Das Skript überprüft die Umgebung und stellt sicher, dass alle Abhängigkeiten installiert sind. Führen Sie Änderungen erst danach durch. Sie können das Skript nach Bedarf jederzeit erneut ausführen, um Einstellungen zu ändern.

Sie können das Skript manuell unter Reaktion auf Aufforderungen oder automatisch mit vorkonfigurierten Antworten ausführen. Lesen Sie die Hilfe zum Skript durch, bevor Sie fortfahren:

sudo /opt/Citrix/VDA/sbin/ctxsetup.sh --help
<!--NeedCopy-->

Konfiguration mit Aufforderungen

Führen Sie eine manuelle Konfiguration mit Aufforderungen aus:

sudo /opt/Citrix/VDA/sbin/ctxsetup.sh
<!--NeedCopy-->

Automatische Konfiguration

Bei einer automatischen Installation können die für das Setupskript erforderlichen Optionen mit Umgebungsvariablen angegeben werden. Wenn alle erforderlichen Variablen vorhanden sind, fordert das Skript keine weiteren Informationen vom Benutzer und der Installationsvorgang wird per Skript ausgeführt.

Unterstützte Umgebungsvariablen umfassen u. a.:

  • CTX_XDL_NON_DOMAIN_JOINED=’y|n’ – Ob die Maschine einer Domäne hinzugefügt werden soll. Der Standardwert ist “n”. Für domänengebundene Szenarien setzen Sie es ihn auf “n”.

  • CTX_XDL_AD_INTEGRATION=’winbind|sssd|centrify|pbis|quest’: Der Linux VDA benötigt Kerberos-Konfigurationseinstellungen für die Authentifizierung bei den Delivery Controllern. Die Kerberos-Konfiguration wird durch das auf dem System installierte und konfigurierte Active Directory-Integrationstool bestimmt.

  • CTX_XDL_DDC_LIST=’<list-ddc-fqdns>’: Der Linux VDA erfordert eine durch Leerzeichen getrennte Liste vollqualifizierter Domänennamen (FQDNs) für die Registrierung bei einem Delivery Controller. Mindestens ein FQDN oder CNAME muss angegeben werden.

  • CTX_XDL_VDI_MODE=’y|n’: Ermöglicht die Konfiguration der Maschine als dediziertes Desktopbereitstellungsmodell (VDI) oder als gehostetes, freigegebenes Desktopbereitstellungsmodell. Legen Sie den Wert bei Umgebungen mit HDX 3D Pro auf ‘y’ fest.

  • CTX_XDL_HDX_3D_PRO=’y|n’: Der Linux VDA unterstützt HDX 3D Pro – GPU-Beschleunigungstechnologien zum Optimieren der Virtualisierung reichhaltiger Grafikanwendungen. Bei aktiviertem HDX 3D Pro wird der VDA für VDI-Desktopmodus (Einzelsitzungen) konfiguriert (d. h. CTX_XDL_VDI_MODE=‘y’).

  • CTX_XDL_START_SERVICE=’y|n’: Legt fest, ob die Linux VDA-Dienste nach Abschluss der Konfiguration gestartet werden.

  • CTX_XDL_REGISTER_SERVICE=’y|n’: Die Linux Virtual Desktop-Dienste werden nach dem Systemstart gestartet.

  • CTX_XDL_ADD_FIREWALL_RULES=’y|n’: Für die Linux VDA-Dienste muss die Systemfirewall eingehende Netzwerkverbindungen zulassen. Sie können die erforderlichen Ports (standardmäßig Port 80 und 1494) in der Systemfirewall automatisch für Linux Virtual Desktop öffnen.

  • CTX_XDL_DESKTOP_ENVIRONMENT=gnome/gnome-classic/mate: Legt die GNOME-, GNOME Classic- oder MATE-Desktopumgebung zur Verwendung in Sitzungen fest. Wenn Sie die Variable nicht angeben, wird der auf dem VDA konfigurierte Standarddesktop verwendet.

    Sie können die Desktopumgebung für Sitzungsbenutzer auch über die folgenden Schritte ändern:

    1. Erstellen Sie die Datei .xsession auf dem VDA im Verzeichnis $HOME/<username>.
    2. Geben Sie in der Datei .xsession eine auf Distributionen basierende Desktopumgebung an.

      • Für MATE-Desktop

         MSESSION="$(type -p mate-session)"  
         if [ -n "$MSESSION" ]; then  
           exec mate-session  
         fi  
        
      • Für GNOME Classic-Desktop

         GSESSION="$(type -p gnome-session)"  
         if [ -n "$GSESSION" ]; then  
         export GNOME_SHELL_SESSION_MODE=classic  
         exec gnome-session --session=gnome-classic  
         fi 
        
      • Für GNOME-Desktop

         GSESSION="$(type -p gnome-session)"  
         if [ -n "$GSESSION" ]; then  
         exec gnome-session  
         fi  
        
    3. Teilen Sie die 700-Dateiberechtigung mit dem Zielsitzungsbenutzer.

    Ab Version 2209 können Sitzungsbenutzer ihre Desktopumgebung anpassen. Um dieses Feature zu aktivieren, müssen Sie umschaltbare Desktopumgebungen vorher auf dem VDA installieren. Weitere Informationen finden Sie unter Benutzerdefinierte Desktopumgebungen nach Sitzungsbenutzern.

  • CTX_XDL_DOTNET_RUNTIME_PATH=path-to-install-dotnet-runtime: Der Pfad für die Installation von .NET Runtime 6.0 zur Unterstützung des neuen Brokeragentdiensts (ctxvda). Der Standardpfad ist /usr/bin.

  • CTX_XDL_VDA_PORT=port-number : Der Linux VDA kommuniziert mit Delivery Controllern über einen TCP/IP-Port.

  • CTX_XDL_SITE_NAME=<dns-name>: Der Linux VDA ermittelt LDAP-Server über DNS. Geben Sie einen DNS-Sitenamen an, wenn Sie die Suchergebnisse auf eine lokale Site beschränken möchten. Wenn dies unnötig ist, legen Sie ’<none>‘ fest.

  • CTX_XDL_LDAP_LIST=’<list-ldap-servers>’: Der Linux VDA fragt DNS zur Erkennung von LDAP-Servern ab. Falls DNS keine LDAP-Diensteinträge bereitstellen kann, können Sie eine durch Leerzeichen getrennte Liste der FQDNs mit LDAP-Port angeben. Beispiel: ad1.mycompany.com:389 ad2.mycompany.com:3268 ad3.mycompany.com:3268. Für schnellere LDAP-Abfragen in einer Active Directory-Gesamtstruktur aktivieren Sie Global Catalog auf einem Domänencontroller und geben die entsprechende LDAP-Portnummer als 3268 an. Die Standardeinstellung für diese Variable ist ’<none>‘.

  • CTX_XDL_SEARCH_BASE=search-base-set – Die Suchbasis bei LDAP-Abfragen des Linux VDA ist das Stammverzeichnis der Active Directory-Domäne (z. B. DC=mycompany,DC=com). Zur Verbesserung der Suchleistung können Sie eine Suchbasis angeben (z. B. OU=VDI,DC=mycompany,DC=com). Wenn dies unnötig ist, legen Sie ’<none>‘ fest.

  • CTX_XDL_SUPPORT_DDC_AS_CNAME=’y|n’: Der Linux VDA unterstützt die Angabe des Namens eines Delivery Controllers mit einem DNS CNAME-Datensatz.

Legen Sie die Umgebungsvariable fest und führen Sie das Konfigurationsskript aus:

export CTX_XDL_NON_DOMAIN_JOINED='n'
export CTX_XDL_AD_INTEGRATION=winbind|centrify|sssd|pbis|quest
export CTX_XDL_DDC_LIST='<list-ddc-fqdns>'
export CTX_XDL_VDI_MODE='y|n'
export CTX_XDL_HDX_3D_PRO='y|n'
export CTX_XDL_START_SERVICE='y|n'
export CTX_XDL_REGISTER_SERVICE='y|n'
export CTX_XDL_ADD_FIREWALL_RULES='y|n'
export CTX_XDL_DESKTOP_ENVIRONMENT= gnome|gnome-classic|mate|'<none>'
export CTX_XDL_DOTNET_RUNTIME_PATH='<path-to-install-dotnet-runtime>'
export CTX_XDL_VDA_PORT='<port-number>'
export CTX_XDL_SITE_NAME='<dns-site-name>'|'<none>'
export CTX_XDL_LDAP_LIST='<list-ldap-servers>'|'<none>'
export CTX_XDL_SEARCH_BASE='<search-base-set>'|'<none>'
export CTX_XDL_SUPPORT_DDC_AS_CNAME='y|n'
sudo -E /opt/Citrix/VDA/sbin/ctxsetup.sh --silent
<!--NeedCopy-->

Sie müssen die Option -E mit dem Befehl “sudo” angeben, damit die vorhandenen Umgebungsvariablen an die neu erstellte Shell weitergegeben werden. Wir empfehlen, dass Sie mit den oben aufgeführten Befehlen eine Shellskriptdatei erstellen, deren erste Zeile #!/bin/bash enthält.

Alternativ können Sie alle Parameter mit einem einzigen Befehl festlegen:

sudo CTX_XDL_NON_DOMAIN_JOINED='n' \
CTX_XDL_AD_INTEGRATION=winbind|centrify|sssd|pbis|quest \
CTX_XDL_DDC_LIST='<list-ddc-fqdns>' \
CTX_XDL_VDI_MODE='y|n' \
CTX_XDL_HDX_3D_PRO='y|n' \
CTX_XDL_START_SERVICE='y|n' \
CTX_XDL_REGISTER_SERVICE='y|n' \
CTX_XDL_ADD_FIREWALL_RULES='y|n' \
CTX_XDL_DESKTOP_ENVIRONMENT= gnome|gnome-classic|mate|'<none>' \
CTX_XDL_DOTNET_RUNTIME_PATH='<path-to-install-dotnet-runtime>' \
CTX_XDL_VDA_PORT='<port-number>' \
CTX_XDL_SITE_NAME='<dns-site-name>'|'<none>' \
CTX_XDL_LDAP_LIST='<list-ldap-servers>'|'<none>' \
CTX_XDL_SEARCH_BASE='<search-base-set>'|'<none>' \
CTX_XDL_SUPPORT_DDC_AS_CNAME='y|n' \
/opt/Citrix/VDA/sbin/ctxsetup.sh --silent
<!--NeedCopy-->

Entfernen von Konfigurationsänderungen

In einigen Fällen müssen die vom Skript ctxsetup.sh vorgenommenen Konfigurationsänderungen entfernt werden, ohne das Linux VDA-Paket zu deinstallieren.

Lesen Sie die Hilfe zu diesem Skript durch, bevor Sie fortfahren:

sudo /opt/Citrix/VDA/sbin/ctxcleanup.sh --help
<!--NeedCopy-->

Entfernen von Konfigurationsänderungen:

sudo /opt/Citrix/VDA/sbin/ctxcleanup.sh
<!--NeedCopy-->

Wichtig:

Dieses Skript löscht alle Konfigurationsdaten aus der Datenbank, sodass der Linux VDA nicht funktionsfähig ist.

Konfigurationsprotokolle

Die Skripts ctxsetup.sh und ctxcleanup.sh zeigen Fehler auf der Konsole an und schreiben weitere Informationen in die Konfigurationsprotokolldatei /tmp/xdl.configure.log.

Starten Sie die Linux VDA-Dienste neu, damit die Änderungen wirksam werden.

Deinstallieren der Linux VDA-Software

Überprüfen, ob der Linux VDA installiert ist, und Anzeigen der Version des installierten Pakets:

dpkg -l xendesktopvda
<!--NeedCopy-->

Anzeigen weiterer Details:

apt-cache show xendesktopvda
<!--NeedCopy-->

Deinstallieren der Linux VDA-Software:

dpkg -r xendesktopvda
<!--NeedCopy-->

Hinweis:

Beim Deinstallieren der Linux VDA-Software werden die damit verknüpften PostgreSQL- und andere Konfigurationsdaten gelöscht. Das PostgreSQL-Paket und andere abhängige Pakete, die vor der Installation des Linux VDA eingerichtet wurden, werden nicht gelöscht.

Tipp:

Die Informationen in diesem Abschnitt beziehen sich nicht auf das Entfernen von abhängigen Paketen einschließlich PostgreSQL.

Schritt 9: Ausführen von XDPing

Mit sudo /opt/Citrix/VDA/bin/xdping können Sie Linux VDA-Umgebungen auf häufige Konfigurationsprobleme überprüfen. Weitere Informationen finden Sie unter XDPing.

Schritt 10: Ausführen des Linux VDA

Wenn Sie den Linux VDA mit dem Skript ctxsetup.sh konfiguriert haben, können Sie den Linux VDA mit den folgenden Befehlen steuern.

Starten Sie den Linux VDA:

Starten der Linux VDA-Dienste:

sudo systemctl start ctxhdx

sudo systemctl start ctxvda
<!--NeedCopy-->

Halten Sie den Linux VDA an:

Anhalten der Linux VDA-Dienste:

sudo systemctl stop ctxvda

sudo systemctl stop ctxhdx
<!--NeedCopy-->

Hinweis:

Beenden Sie erst den Monitor Service Daemon mit dem Befehl service ctxmonitorservice stop, bevor Sie die Dienste ctxvda und ctxhdx anhalten. Andernfalls startet der Monitor Service Daemon die angehaltenen Dienste neu.

Starten Sie den Linux VDA neu:

Neustarten der Linux VDA-Dienste:

sudo systemctl stop ctxvda

sudo systemctl restart ctxhdx

sudo systemctl restart ctxvda
<!--NeedCopy-->

Überprüfen Sie den Linux VDA-Status:

Überprüfen des Ausführungsstatus der Linux VDA-Dienste:

sudo systemctl status ctxvda

sudo systemctl status ctxhdx
<!--NeedCopy-->

Schritt 11: Maschinenkataloge erstellen

Der Prozess zum Erstellen von Maschinenkatalogen und Hinzufügen von Linux VDA-Maschinen ähnelt der traditionellen Windows VDA-Methode. Umfassendere Informationen zu diesen Prozessen finden Sie unter Erstellen von Maschinenkatalogen und Verwalten von Maschinenkatalogen.

Beim Erstellen von Maschinenkatalogen mit Linux VDA-Maschinen gibt es einige Einschränkungen, durch die sich der Prozess von der Maschinenkatalogerstellung für Windows VDA-Maschinen unterscheidet:

  • Auswahl des Betriebssystems:
    • Die Option Betriebssystem für mehrere Sitzungen für ein gehostetes, freigegebenes Desktopbereitstellungsmodell.
    • Die Option Betriebssystem für Einzelsitzungen für ein VDI-dediziertes Desktopbereitstellungsmodell.
  • In einem Maschinenkatalog darf sich keine Mischung aus Linux und Windows VDA-Maschinen befinden.

Hinweis:

In früheren Citrix Studio-Versionen wurde Linux als Betriebssystem nicht unterstützt. Durch die Auswahl von Windows-Serverbetriebssystem oder Serverbetriebssystem wird jedoch ein äquivalentes gehostetes, freigegebenes Desktopbereitstellungsmodell bereitgestellt. Durch die Auswahl von Windows-Desktopbetriebssystem oder Desktopbetriebssystem wird ein Bereitstellungsmodell für Einzelbenutzermaschinen bereitgestellt.

Tipp:

Wenn Sie eine Maschine aus einer Active Directory-Domäne entfernen und sie ihr dann wieder hinzufügen, muss die Maschine auch aus dem Maschinenkatalog entfernt und ihm dann erneut hinzugefügt werden.

Schritt 12: Bereitstellungsgruppen erstellen

Die Prozesse zum Erstellen einer Bereitstellungsgruppe und zum Hinzufügen von Maschinenkatalogen mit Linux VDA- bzw. Windows VDA-Maschinen sind fast identisch. Umfassendere Informationen zu diesen Prozessen finden Sie unter Erstellen von Bereitstellungsgruppen.

Beim Erstellen von Bereitstellungsgruppen mit Linux VDA-Maschinenkatalogen gelten die folgenden Einschränkungen:

  • Stellen Sie sicher, dass die ausgewählten Active Directory-Benutzer und -Gruppen für die Anmeldung an Linux VDA-Maschinen richtig konfiguriert wurden.
  • Lassen Sie nicht die Anmeldung nicht authentifizierter (anonymer) Benutzer zu.
  • Die Bereitstellungsgruppe darf keine Maschinenkataloge mit Windows Maschinen enthalten.

Informationen zum Erstellen von Maschinenkatalogen und Bereitstellungsgruppen finden Sie unter Citrix Virtual Apps and Desktops 7 2311.

Linux VDA manuell auf Ubuntu installieren

In diesem Artikel