Linux Virtual Delivery Agent 2407

Linux VDA manuell unter Ubuntu installieren

Wichtig:

Für Neuinstallationen empfehlen wir die Verwendung der einfachen Installation für eine schnelle Einrichtung. Die einfache Installation spart Zeit und Aufwand und ist weniger fehleranfällig als die in diesem Artikel beschriebene manuelle Installation.

Schritt 1: Konfigurationsinformationen und Linux-Maschine vorbereiten

Schritt 1a: Netzwerkkonfiguration überprüfen

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

Wenn Sie einen Ubuntu Live Server verwenden, nehmen Sie die folgende Änderung in der Konfigurationsdatei /etc/cloud/cloud.cfg vor, bevor Sie den Hostnamen festlegen:

preserve_hostname: true

Schritt 1b: Hostnamen festlegen

Um sicherzustellen, dass der Hostname der Maschine korrekt gemeldet wird, ändern Sie die Datei /etc/hostname so, dass sie nur den Hostnamen der Maschine enthält.

hostname

Schritt 1c: Loopback-Adresse dem Hostnamen zuweisen

Stellen Sie sicher, dass der DNS-Domänenname und der vollqualifizierte Domänenname (FQDN) der Maschine korrekt zurückgemeldet werden. Dazu ändern Sie die folgende Zeile der Datei /etc/hosts, um den FQDN und den Hostnamen als erste zwei Einträge aufzunehmen:

127.0.0.1 hostname-fqdn hostname localhost

Zum 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 keine NetBIOS-Namenskürzung. Daher darf der Hostname 15 Zeichen nicht überschreiten.

Tipp:

Verwenden Sie nur die Zeichen a–z, A–Z, 0–9 und Bindestrich (-). Vermeiden Sie Unterstriche (_), Leerzeichen und andere Symbole. Beginnen Sie einen Hostnamen nicht mit einer Zahl und beenden Sie ihn nicht mit einem Bindestrich. Diese Regel gilt auch für Delivery Controller-Hostnamen.

Schritt 1d: Hostnamen überprüfen

Überprüfen Sie, ob der Hostname korrekt festgelegt ist:

hostname
<!--NeedCopy-->

Dieser Befehl gibt nur den Hostnamen der Maschine und nicht ihren FQDN zurück.

Überprüfen Sie, ob der FQDN korrekt festgelegt ist:

hostname -f
<!--NeedCopy-->

Dieser Befehl gibt den FQDN der Maschine zurück.

Schritt 1e: Multicast-DNS deaktivieren

Die Standardeinstellungen haben Multicast-DNS (mDNS) aktiviert, was zu inkonsistenten Namensauflösungsergebnissen führen kann.

Um mDNS zu deaktivieren, bearbeiten Sie /etc/nsswitch.conf und ändern Sie die Zeile, die Folgendes enthält:

hosts: files mdns_minimal [NOTFOUND=return] dns

Zu:

hosts: files dns

Schritt 1f: Namensauflösung und Dienstverfügbarkeit überprüfen

Überprüfen Sie, ob Sie den FQDN auflösen und den Domänencontroller und Delivery Controller™ anpingen können:

nslookup domain-controller-fqdn

ping domain-controller-fqdn

nslookup delivery-controller-fqdn

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

Wenn Sie den FQDN nicht auflösen oder eine dieser Maschinen nicht anpingen können, überprüfen Sie die Schritte, bevor Sie fortfahren.

Schritt 1g: Zeitsynchronisation konfigurieren (chrony)

Die Aufrechterhaltung einer genauen Zeitsynchronisation zwischen den VDAs, Delivery Controllern und Domänencontrollern ist entscheidend. Das Hosten des Linux VDA als virtuelle Maschine (VM) kann zu Problemen mit der Zeitverschiebung führen. Aus diesem Grund wird die Synchronisation der Zeit mit einem entfernten Zeitdienst bevorzugt.

Chrony installieren:

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

Bearbeiten Sie als Root-Benutzer die Datei /etc/chrony/chrony.conf und fügen Sie einen Servereintrag für jeden entfernten Zeitserver 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-Pool-Servern. Fügen Sie einen Servereintrag für jeden Active Directory-Domänencontroller in der Domäne hinzu.

Entfernen Sie alle anderen aufgeführten Server- oder Pool-Einträge, einschließlich Loopback-IP-Adresse, Localhost und öffentliche Server-Einträge *.pool.ntp.org.

Änderungen speichern und den Chrony-Daemon neu starten:

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

Schritt 1h: OpenJDK 11 installieren

Der Linux VDA erfordert die Anwesenheit von OpenJDK 11.

Ubuntu 22.04 enthält OpenJDK 11.

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

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

Schritt 1i: Eine zu verwendende Datenbank installieren und angeben

Hinweis:

  • Wir empfehlen die Verwendung von SQLite nur für den VDI-Modus und die Verwendung von PostgreSQL für ein Bereitstellungsmodell mit gehosteten Shared Desktops.

  • Für die einfache Installation und MCS können Sie SQLite oder PostgreSQL zur Verwendung angeben, ohne diese manuell installieren zu müssen. Sofern nicht anders über /etc/xdl/db.conf angegeben, verwendet der Linux VDA standardmäßig PostgreSQL.

  • Für manuelle Installationen müssen Sie SQLite, PostgreSQL oder beides manuell installieren. Wenn Sie sowohl SQLite als auch PostgreSQL installieren, können Sie eine davon zur Verwendung angeben, indem Sie /etc/xdl/db.conf nach der Installation des Linux VDA-Pakets bearbeiten.

Dieser Abschnitt beschreibt, wie PostgreSQL und SQLite installiert und wie eine davon zur Verwendung angegeben wird.

  • PostgreSQL installieren

Führen Sie die folgenden Befehle aus, um PostgreSQL zu installieren:

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 Maschinenstart bzw. sofort zu starten:

sudo systemctl enable postgresql

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

SQLite installieren

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

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

Datenbank zur Verwendung angeben

Wenn Sie sowohl SQLite als auch PostgreSQL installieren, können Sie eine davon zur Verwendung festlegen, indem Sie nach der Installation des Linux VDA-Pakets die Datei /etc/xdl/db.conf bearbeiten.

  1. Führen Sie /opt/Citrix/VDA/sbin/ctxcleanup.sh aus. Überspringen Sie diesen Schritt bei einer Neuinstallation.
  2. Bearbeiten Sie /etc/xdl/db.conf, um eine zu verwendende Datenbank anzugeben.
  3. Führen Sie ctxsetup.sh aus.
  • Hinweis:

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

  • Schritt 1j: Motif installieren

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

Schritt 1k: Andere Pakete installieren

Für 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-->

Für 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: Hypervisor vorbereiten

Einige Änderungen sind erforderlich, wenn der Linux VDA als VM auf einem unterstützten Hypervisor ausgeführt wird. Nehmen Sie die folgenden Änderungen basierend auf der verwendeten Hypervisor-Plattform vor. Es sind keine Änderungen erforderlich, wenn Sie die Linux-Maschine auf Bare-Metal-Hardware ausführen.

Zeitsynchronisierung auf XenServer (ehemals Citrix Hypervisor™) beheben

Wenn die XenServer® Time Sync-Funktion aktiviert ist, treten in jeder paravirtualisierten Linux-VM Probleme mit NTP und XenServer auf. Beide versuchen, die Systemuhr zu verwalten. Um zu vermeiden, dass die Uhr mit anderen Servern asynchron wird, stellen Sie sicher, dass die Systemuhr in jedem Linux-Gast mit NTP synchronisiert ist. In diesem Fall muss die Host-Zeitsynchronisierung deaktiviert werden. Im HVM-Modus sind keine Änderungen erforderlich.

Wenn Sie einen paravirtualisierten Linux-Kernel mit installierten XenServer VM Tools ausführen, können Sie innerhalb der Linux-VM überprüfen, ob die XenServer Time Sync-Funktion vorhanden und aktiviert ist:

su -

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

Dieser Befehl gibt 0 oder 1 zurück:

  • 0 – Die Zeitsynchronisierungsfunktion ist aktiviert und muss deaktiviert werden.
  • 1 – Die Zeitsynchronisierungsfunktion ist deaktiviert, und es sind keine weiteren Maßnahmen erforderlich.

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

Wenn aktiviert, deaktivieren Sie die Zeitsynchronisierungsfunktion, indem Sie 1 in die Datei schreiben:

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

Um diese Änderung dauerhaft und nach einem Neustart persistent zu machen, bearbeiten Sie die Datei /etc/sysctl.conf und fügen Sie die Zeile hinzu:

xen.independent_wallclock = 1

Um diese Änderungen zu überprüfen, starten Sie das System neu:

su -

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

Dieser Befehl gibt den Wert 1 zurück.

Zeitsynchronisierung auf Microsoft Hyper-V beheben

Linux-VMs mit installierten Hyper-V Linux Integration Services können die Hyper-V-Zeitsynchronisierungsfunktion nutzen, um die Zeit des Host-Betriebssystems zu verwenden. Um sicherzustellen, dass die Systemuhr genau bleibt, aktivieren Sie diese Funktion zusammen mit NTP-Diensten.

Vom Verwaltungsbetriebssystem aus:

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

Hinweis:

Dieser Ansatz unterscheidet sich von VMware und XenServer (ehemals Citrix Hypervisor), wo die Host-Zeitsynchronisierung deaktiviert wird, um Konflikte mit NTP zu vermeiden. Die Hyper-V-Zeitsynchronisierung kann mit der NTP-Zeitsynchronisierung koexistieren und diese ergänzen.

Zeitsynchronisierung auf ESX und ESXi beheben

Wenn die VMware-Zeitsynchronisierungsfunktion aktiviert ist, treten in jeder paravirtualisierten Linux-VM Probleme mit NTP und dem Hypervisor auf. Beide versuchen, die Systemuhr zu synchronisieren. Um zu vermeiden, dass die Uhr mit anderen Servern asynchron wird, stellen Sie sicher, dass die Systemuhr in jedem Linux-Gast mit NTP synchronisiert ist. In diesem Fall muss die Host-Zeitsynchronisierung deaktiviert werden.

Wenn Sie einen paravirtualisierten Linux-Kernel mit installierten VMware Tools ausführen:

  1. Öffnen Sie den vSphere Client.
  2. Bearbeiten Sie die Einstellungen für die Linux-VM.
  3. Öffnen Sie im Dialogfeld Eigenschaften der virtuellen Maschine die Registerkarte Optionen.
  4. Wählen Sie VMware Tools aus.
  5. Deaktivieren Sie im Feld Erweitert die Option Gastzeit mit Host synchronisieren.

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

Die folgenden Methoden stehen zum Hinzufügen von Linux-Maschinen zur Active Directory (AD)-Domäne zur Verfügung:

Befolgen Sie die Anweisungen basierend auf der von Ihnen gewählten Methode.

Hinweis:

Sitzungsstarts können fehlschlagen, wenn derselbe Benutzername für das lokale Konto im Linux VDA und das Konto in AD verwendet wird.

Samba Winbind

Erforderliche Pakete installieren oder aktualisieren

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

Winbind-Daemon beim Maschinenstart aktivieren

Der Winbind-Daemon muss so konfiguriert werden, dass er beim Maschinenstart gestartet wird:

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

Hinweis:

Stellen Sie sicher, dass sich das Skript winbind unter /etc/init.d befindet.

Kerberos konfigurieren

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

Hinweis:

Konfigurieren Sie Kerberos basierend auf Ihrer AD-Infrastruktur. Die folgenden Einstellungen sind für das Single-Domain-, Single-Forest-Modell 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. Der REALM ist der Kerberos-Realm-Name in Großbuchstaben, z. B. EXAMPLE.COM.

Winbind-Authentifizierung konfigurieren

Konfigurieren Sie Winbind manuell, da Ubuntu kein Tool wie authconfig in RHEL und yast2 in SUSE besitzt.

Öffnen Sie /etc/samba/smb.conf, indem Sie den Befehl vim /etc/samba/smb.conf ausführen, 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-Realm-Name in Großbuchstaben.

nsswitch konfigurieren

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

passwd: compat winbind group: compat winbind

Windows-Domäne beitreten

Ihr Domänencontroller muss erreichbar sein, und Sie müssen ü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-->

Dabei ist REALM der Kerberos-Realm-Name 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 und stellen Sie sicher, dass die Optionen Winbind NT/Active Directory authentication und Create home directory on login ausgewählt sind:

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

Tipp:

Der winbind-Daemon bleibt nur aktiv, wenn der Computer einer Domäne beigetreten ist.

Domänenmitgliedschaft überprüfen

Der Delivery Controller erfordert, dass alle VDA-Maschinen, ob Windows oder Linux, ein Computerobjekt in Active Directory besitzen.

Führen Sie den Befehl net ads von Samba aus, um zu überprüfen, ob der Computer einer Domäne beigetreten ist:

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

Um zu überprüfen, ob Kerberos für die Verwendung mit dem Linux VDA korrekt konfiguriert ist, vergewissern Sie sich, dass die Systemdatei keytab erstellt wurde und gültige Schlüssel enthält:

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

Dieser Befehl zeigt die Liste der verfügbaren Schlüssel für die verschiedenen Kombinationen von Prinzipalnamen und Chiffriersuiten an. Führen Sie den Kerberos-Befehl kinit aus, um den Computer mit diesen Schlüsseln beim Domänencontroller zu authentifizieren:

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

Die Computer- und Realm-Namen müssen in Großbuchstaben angegeben werden. Das Dollarzeichen ($) muss mit einem Backslash (\) maskiert werden, um eine Shell-Substitution zu verhindern. In einigen Umgebungen unterscheidet sich der DNS-Domänenname vom Kerberos-Realm-Namen. Stellen Sie sicher, dass der Realm-Name verwendet wird. Wenn dieser Befehl erfolgreich ist, wird keine Ausgabe angezeigt.

Überprüfen Sie, ob das TGT-Ticket für das Computerkonto zwischengespeichert wurde, indem Sie Folgendes verwenden:

sudo klist
<!--NeedCopy-->

Überprüfen Sie die Kontodetails des Computers mit:

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

Benutzerauthentifizierung überprüfen

Verwenden Sie das Tool wbinfo, um zu überprüfen, ob 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, nicht der Kerberos-Realm-Name. Für die Bash-Shell muss der Backslash (\) mit einem weiteren Backslash maskiert werden. Dieser Befehl gibt eine Meldung zurück, die den Erfolg oder Misserfolg anzeigt.

Um zu überprüfen, ob das Winbind PAM-Modul korrekt konfiguriert ist, melden Sie sich am Linux VDA mit einem Domänenbenutzerkonto an, das zuvor noch nicht verwendet wurde.

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.

Überprüfen Sie, ob eine entsprechende Kerberos-Anmeldeinformations-Cache-Datei für die vom Befehl id -u zurückgegebene uid erstellt wurde:

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

Überprüfen Sie, ob die Tickets im Kerberos-Anmeldeinformations-Cache des Benutzers gültig und nicht abgelaufen sind:

klist
<!--NeedCopy-->

Beenden Sie die Sitzung.

exit
<!--NeedCopy-->

Ein ähnlicher Test kann durchgeführt werden, indem 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, Sie aber Ihren Desktop beim Anmelden mit einem Domänenkonto nicht anzeigen können, starten Sie den Computer neu und versuchen Sie es dann erneut.

Quest-Authentifizierungsdienst

Quest auf Domänencontroller konfigurieren

Gehen Sie davon aus, 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änenbenutzer für die Anmeldung an Linux VDA-Maschinen aktivieren

Um Domänenbenutzern das Herstellen von HDX™-Sitzungen auf einer Linux VDA-Maschine zu ermöglichen:

  1. Öffnen Sie in der Verwaltungskonsole „Active Directory-Benutzer und -Computer“ die Active Directory-Benutzereigenschaften für das entsprechende Benutzerkonto.
  2. Wählen Sie die Registerkarte Unix-Konto aus.
  3. Aktivieren Sie Unix-aktiviert.
  4. Legen Sie die Primäre GID-Nummer auf die Gruppen-ID einer tatsächlichen Domänenbenutzergruppe fest.

Hinweis:

Diese Anweisungen gelten gleichermaßen für die Einrichtung von Domänenbenutzern zur Anmeldung über die Konsole, RDP, SSH oder jedes andere Remoting-Protokoll.

Quest auf Linux VDA konfigurieren

Problemumgehung für die SELinux-Richtlinienerzwingung

Die Standard-RHEL-Umgebung erzwingt SELinux vollständig. Diese Erzwingung beeinträchtigt die von Quest verwendeten IPC-Mechanismen für Unix-Domänensockets und verhindert, dass sich Domänenbenutzer anmelden können.

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

SELINUX=disabled

Diese Änderung erfordert einen Neustart der Maschine:

-  reboot
<!--NeedCopy-->

Wichtig:

Verwenden Sie diese Einstellung mit Vorsicht. Das erneute Aktivieren der SELinux-Richtlinienerzwingung nach der Deaktivierung kann zu einer vollständigen Sperrung führen, selbst für den Root-Benutzer und andere lokale Benutzer.

VAS-Daemon konfigurieren

Die automatische Verlängerung von Kerberos-Tickets muss aktiviert und getrennt werden. Die Authentifizierung (Offline-Anmeldung) muss deaktiviert werden:

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-->

Dieser Befehl setzt das Verlängerungsintervall auf neun Stunden (32.400 Sekunden), was eine Stunde weniger ist als die standardmäßige Ticket-Lebensdauer von 10 Stunden. Legen Sie diesen Parameter auf einen niedrigeren Wert fest, wenn die Ticket-Lebensdauer auf den Systemen kürzer ist.

PAM und NSS konfigurieren

Um die Anmeldung von Domänenbenutzern über HDX und andere Dienste wie su, ssh und RDP zu ermöglichen, 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

Fügen Sie die Linux-Maschine der Active Directory-Domäne mit dem Quest-Befehl vastool hinzu:

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

Der Benutzer ist ein beliebiger Domänenbenutzer mit Berechtigungen zum Hinzufügen von Computern zur Active Directory-Domäne. Der Domänenname ist der DNS-Name der Domäne, zum Beispiel example.com.

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

Domänenmitgliedschaft überprüfen

Der Delivery Controller erfordert, dass alle VDA-Maschinen, ob Windows oder Linux, ein Computerobjekt in Active Directory haben. Um zu überprüfen, ob eine mit Quest verbundene Linux-Maschine in der Domäne ist:

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

Wenn die Maschine einer Domäne beigetreten ist, gibt dieser Befehl den Domänennamen zurück. Wenn die Maschine keiner Domäne beigetreten ist, wird der folgende Fehler 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 zu überprüfen, ob Quest Domänenbenutzer über PAM authentifizieren kann, melden Sie sich am Linux VDA mit einem Domänenbenutzerkonto an, das zuvor noch nicht verwendet wurde.

ssh localhost -l domain\\username

id -u
<!--NeedCopy-->

Überprüfen Sie, ob eine entsprechende Kerberos-Anmeldeinformations-Cache-Datei für die vom Befehl id -u zurückgegebene UID erstellt wurde:

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

Überprüfen Sie, ob die Tickets im Kerberos-Anmeldeinformations-Cache 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

Nach der Installation des Centrify DirectControl Agent fügen Sie die Linux-Maschine der Active Directory-Domäne mit dem Centrify-Befehl adjoin hinzu:

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

Der Parameter user ist ein beliebiger Active Directory-Domänenbenutzer mit Berechtigungen zum Hinzufügen von Computern zur Active Directory-Domäne. Der Parameter domain-name ist der Name der Domäne, der die Linux-Maschine beitreten soll.

Domänenmitgliedschaft überprüfen

Der Delivery Controller erfordert, dass alle VDA-Maschinen, ob Windows oder Linux, ein Computerobjekt in Active Directory haben. Um zu überprüfen, ob eine mit Centrify verbundene Linux-Maschine in der Domäne ist:

su –

adinfo
<!--NeedCopy-->

Überprüfen Sie, ob der Wert Joined to domain gültig ist und der CentrifyDC mode den Status connected zurückgibt. Wenn der Modus im Startzustand verbleibt, hat der Centrify-Client Probleme mit der Serververbindung oder Authentifizierung.

Umfassendere System- und Diagnoseinformationen sind verfügbar über:

adinfo --sysinfo all

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

Testen Sie die Konnektivität zu 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 den folgenden Befehl aus, um Kerberos zu installieren:

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

Um Kerberos zu konfigurieren, öffnen Sie /etc/krb5.conf als Root und legen Sie die Parameter fest:

Hinweis:

Konfigurieren Sie Kerberos basierend auf Ihrer AD-Infrastruktur. Die folgenden Einstellungen sind für das Einzeldomänen-, Einzelforst-Modell 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. Der REALM ist der Kerberos-Realm-Name in Großbuchstaben, z. B. EXAMPLE.COM.

Domäne beitreten

SSSD muss so konfiguriert werden, dass es Active Directory als Identitätsanbieter und Kerberos zur Authentifizierung verwendet. SSSD bietet jedoch keine AD-Client-Funktionen zum Beitreten zur Domäne und zur Verwaltung der System-Keytab-Datei. Stattdessen können Sie adcli, realmd oder Samba verwenden.

Hinweis:

Dieser Abschnitt enthält nur Informationen zu adcli und Samba.

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

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

    Entfernen Sie die alte System-Keytab-Datei und treten Sie der Domäne bei mit:

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

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

    Die Option -H ist erforderlich, damit adcli SPNs im Format host/hostname-fqdn@REALM generiert, was der Linux VDA benötigt.

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

    Führen Sie für Ubuntu 22.04- und Ubuntu 20.04-Maschinen den Befehl adcli testjoin aus, um zu testen, ob die Maschinen der Domäne beigetreten sind.

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

    
    -  sudo apt-get install samba krb5-user
    
    <!--NeedCopy-->
    
    1. Konfigurieren Sie Samba.
  • Öffnen Sie /etc/samba/smb.conf und nehmen Sie die folgenden 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-Realm-Name in Großbuchstaben.

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

    Ihr Domänencontroller muss erreichbar sein, und Sie müssen über ein Windows-Konto mit Berechtigungen zum Hinzufügen von Computern zur Domäne verfügen.

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

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

SSSD einrichten

Erforderliche Pakete installieren oder aktualisieren:

Installieren Sie die erforderlichen SSSD- und Konfigurationspakete, falls noch nicht geschehen:

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

Wenn die Pakete bereits installiert sind, wird ein Update empfohlen:

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

Hinweis:

Standardmäßig konfiguriert der Installationsprozess in Ubuntu nsswitch.conf und das PAM-Anmeldemodul automatisch.

SSSD konfigurieren

SSSD-Konfigurationsänderungen sind erforderlich, bevor der SSSD-Daemon gestartet wird. Bei einigen SSSD-Versionen ist die Konfigurationsdatei /etc/sssd/sssd.conf standardmäßig nicht installiert und muss manuell erstellt werden. Erstellen oder öffnen Sie als Root /etc/sssd/sssd.conf und nehmen Sie die folgenden 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

# Erhöhen Sie krb5_renewable_lifetime, wenn die TGT-Erneuerungslebensdauer länger als 14 Tage ist

krb5_renewable_lifetime = 14d

# Setzen Sie krb5_renew_interval auf einen niedrigeren Wert, wenn die TGT-Ticket-Lebensdauer kürzer als 2 Stunden ist

krb5_renew_interval = 1h

krb5_ccachedir = /tmp

krb5_ccname_template = FILE:%d/krb5cc_%U

# Diese Einstellung für ldap_id_mapping ist auch der Standardwert

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 gesetzt, damit SSSD selbst die Zuordnung von Windows-SIDs zu Unix-UIDs übernimmt. Andernfalls muss Active Directory POSIX-Erweiterungen bereitstellen können. Der PAM-Dienst ctxhdx wird zu ad_gpo_map_remote_interactive hinzugefügt.

Der Parameter domain-dns-name ist in diesem Kontext der DNS-Domänenname, z. B. example.com. Der REALM ist der Kerberos-Realm-Name in Großbuchstaben, z. B. EXAMPLE.COM. Es ist nicht erforderlich, den NetBIOS-Domänennamen zu konfigurieren.

Informationen zu den Konfigurationseinstellungen finden Sie in den Manpages für sssd.conf und sssd-ad.

Der SSSD-Daemon erfordert, dass die Konfigurationsdatei nur Leseberechtigungen für den Besitzer hat:

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

SSSD-Daemon starten

Führen Sie die folgenden Befehle aus, um den SSSD-Daemon jetzt zu starten und ihn so zu konfigurieren, dass er beim Systemstart automatisch gestartet wird:

sudo systemctl start sssd

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

PAM-Konfiguration

Führen Sie den folgenden Befehl aus und stellen Sie sicher, dass die Optionen SSS-Authentifizierung und Home-Verzeichnis bei Anmeldung erstellen ausgewählt sind:

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

Domänenmitgliedschaft überprüfen

Der Delivery Controller erfordert, dass alle VDA-Maschinen (Windows- und Linux-VDAs) ein Computerobjekt in Active Directory haben.

  • Wenn Sie adcli zur Überprüfung der Domänenmitgliedschaft verwenden, führen Sie den Befehl sudo adcli info domain-dns-name aus, um die Domäneninformationen anzuzeigen.

  • Wenn Sie Samba zur Überprüfung der Domänenmitgliedschaft verwenden, führen Sie den Befehl sudo net ads testjoin aus, um zu überprüfen, ob die Maschine einer Domäne beigetreten ist, und den Befehl sudo net ads info, um zusätzliche Domänen- und Computerobjektinformationen zu überprüfen.

Kerberos-Konfiguration überprüfen

Um zu überprüfen, ob Kerberos korrekt für die Verwendung mit dem Linux-VDA konfiguriert ist, stellen Sie sicher, dass die System-Keytab-Datei erstellt wurde und gültige Schlüssel enthält:

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

Dieser Befehl zeigt die Liste der verfügbaren Schlüssel für die verschiedenen Kombinationen von Prinzipalnamen und Chiffriersuiten an. Führen Sie den Kerberos-Befehl kinit aus, um die Maschine mit dem Domänencontroller unter Verwendung dieser Schlüssel zu authentifizieren:

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

Die Maschinen- und Realm-Namen müssen in Großbuchstaben angegeben werden. Das Dollarzeichen ($) muss mit einem Backslash (\) maskiert werden, um eine Shell-Substitution zu verhindern. In einigen Umgebungen unterscheidet sich der DNS-Domänenname vom Kerberos-Realm-Namen. Stellen Sie sicher, dass der Realm-Name verwendet wird. Wenn dieser Befehl erfolgreich ist, wird keine Ausgabe angezeigt.

Überprüfen Sie, ob das TGT für das Maschinenkonto mit folgendem Befehl zwischengespeichert wurde:

sudo klist
<!--NeedCopy-->

Benutzerauthentifizierung überprüfen

SSSD bietet kein Befehlszeilentool zum direkten Testen der Authentifizierung mit dem Daemon; dies kann nur über PAM erfolgen.

Um zu überprüfen, ob das SSSD-PAM-Modul korrekt konfiguriert ist, melden Sie sich am Linux-VDA mit einem Domänenbenutzerkonto an, das zuvor noch nicht verwendet wurde.

ssh localhost -l domain\\username

id -u

klist

exit
<!--NeedCopy-->

Überprüfen Sie, ob die vom Befehl klist zurückgegebenen Kerberos-Tickets für diesen Benutzer korrekt sind und nicht abgelaufen sind.

Überprüfen Sie als Root-Benutzer, ob eine entsprechende Ticket-Cache-Datei für die UID erstellt wurde, die vom vorherigen Befehl id -u zurückgegeben wurde:

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

Ein ähnlicher Test kann durch Anmeldung am KDE- oder Gnome-Display-Manager durchgeführt werden. Fahren Sie nach der Überprüfung des Domänenbeitritts mit Schritt 6: Installieren des Linux-VDAs fort.

PBIS

Erforderliches PBIS-Paket herunterladen

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-->

PBIS-Installationsskript ausführbar machen

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

PBIS-Installationsskript ausführen

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

Windows-Domäne beitreten

Ihr Domänencontroller muss erreichbar sein, und Sie müssen ü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-->

Der Benutzer ist ein Domänenbenutzer, der über Berechtigungen zum Hinzufügen von Computern zur Active Directory-Domäne verfügt. Der Domänenname ist der DNS-Name der Domäne, z. B. example.com.

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

Domänenmitgliedschaft überprüfen

Der Delivery Controller erfordert, dass alle VDA-Maschinen (Windows- und Linux-VDAs) ein Computerobjekt in Active Directory haben. Um zu überprüfen, ob eine PBIS-verbundene Linux-Maschine in der Domäne ist:

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

Wenn die Maschine einer Domäne beigetreten ist, gibt dieser Befehl Informationen über die aktuell beigetretene AD-Domäne und OU zurück. Andernfalls wird nur der Hostname angezeigt.

Benutzerauthentifizierung überprüfen

Um zu überprüfen, ob PBIS Domänenbenutzer über PAM authentifizieren kann, melden Sie sich am Linux-VDA mit einem Domänenbenutzerkonto an, das zuvor noch nicht verwendet wurde.

sudo ssh localhost -l domain\\user

id -u
<!--NeedCopy-->

Überprüfen Sie, ob eine entsprechende Kerberos-Anmeldeinformations-Cache-Datei für die UID erstellt wurde, die vom Befehl id -u zurückgegeben wird:

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 installieren

Zusätzlich zur .NET Runtime müssen Sie die .ASP.NET Core Runtime auf allen unterstützten Linux-Distributionen installieren, bevor Sie den Linux VDA installieren oder aktualisieren. Version 6 ist für Amazon Linux 2 erforderlich. Version 8 ist für andere Distributionen erforderlich.

Wenn Ihre Linux-Distribution die benötigte .NET-Version enthält, installieren Sie diese aus dem integrierten Feed. Andernfalls installieren Sie .NET aus dem Microsoft-Paket-Feed. Weitere Informationen finden Sie unter https://docs.microsoft.com/en-us/dotnet/core/install/linux-package-managers.

Nach der Installation von .NET führen Sie den Befehl which dotnet aus, um Ihren Runtime-Pfad zu finden.

Basierend auf der Befehlsausgabe legen Sie den binären .NET-Runtime-Pfad fest. Wenn die Befehlsausgabe beispielsweise /aa/bb/dotnet lautet, verwenden Sie /aa/bb als binären .NET-Pfad.

Schritt 5: Linux VDA-Paket herunterladen

  1. Gehen Sie zur Citrix Virtual Apps and Desktops Download-Seite.
  2. Erweitern Sie die entsprechende Version von Citrix Virtual Apps and Desktops.
  3. Erweitern Sie Components, um den Linux VDA zu finden. Zum 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. Zum 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 Paketintegrität zu prüfen:

    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: Linux VDA installieren

Schritt 6a: Linux VDA installieren

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

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

Hinweis:

Für Ubuntu 20.04 auf GCP deaktivieren Sie RDNS. Fügen Sie dazu die Zeile rdns = false unter [libdefaults] in /etc/krb5.conf 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 Matrix der Linux-Distributionen und der Xorg-Versionen, die diese Version des Linux VDA unterstützt, finden Sie unter Systemanforderungen.

Schritt 6b: Linux VDA aktualisieren (optional)

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

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

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

Hinweis:

  • Das Upgrade einer vorhandenen Installation überschreibt die Konfigurationsdateien unter /etc/xdl. Bevor Sie ein Upgrade durchführen, stellen Sie sicher, dass Sie die Dateien sichern.

  • Ab Version 2407 delegiert der Linux VDA die Paketmanager rpm oder dpkg zur Handhabung von Konfigurationsdateien während Upgrades. Im Folgenden wird beschrieben, wie rpm und dpkg mit Änderungen an Konfigurationsdateien interagieren:

    • rpm: behält standardmäßig die lokale Version bei und speichert die neue Version aus dem Paket mit der Erweiterung .rpmnew.

    • dpkg: fordert Sie interaktiv auf, wie Sie vorgehen möchten. Um den Linux VDA stillschweigend zu aktualisieren, während Sie Ihre lokale Konfigurationsdatei beibehalten und die neue Paketversion als .dpkg-new oder .dpkg-dist speichern, verwenden Sie den folgenden Befehl:

       dpkg --force-confold -i package.deb  # Always keep your version, then save new package's version as *.dpkg-new or *.dpkg-dist
       <!--NeedCopy-->
      

Schritt 7: NVIDIA GRID-Treiber installieren

Um HDX 3D Pro zu aktivieren, müssen Sie die NVIDIA GRID-Treiber auf Ihrem Hypervisor und auf den VDA-Maschinen installieren.

Informationen zur Installation und Konfiguration des NVIDIA GRID Virtual GPU Manager (des Hosttreibers) auf den spezifischen Hypervisoren finden Sie in den folgenden Anleitungen:

Führen Sie die folgenden allgemeinen Schritte aus, um die NVIDIA GRID Gast-VM-Treiber zu installieren und zu konfigurieren:

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

Schritt 8: Linux VDA konfigurieren

Hinweis:

Bevor Sie die Laufzeitumgebung einrichten, stellen Sie sicher, dass das Gebietsschema en_US.UTF-8 auf Ihrem Betriebssystem installiert ist. Wenn das Gebietsschema auf Ihrem Betriebssystem nicht verfügbar ist, führen Sie den Befehl sudo locale-gen en_US.UTF-8 aus. Bearbeiten Sie für Debian die Datei /etc/locale.gen, indem Sie die Zeile # en_US.UTF-8 UTF-8 auskommentieren und dann den Befehl sudo locale-gen ausführen.

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

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

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

Konfiguration mit Aufforderungen

Führen Sie eine manuelle Konfiguration mit gestellten Fragen durch:

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

Automatisierte Konfiguration

Für eine automatisierte Installation können die vom Setup-Skript benötigten Optionen über Umgebungsvariablen bereitgestellt werden. Wenn alle erforderlichen Variablen vorhanden sind, fordert das Skript den Benutzer nicht zur Eingabe von Informationen auf, was einen skriptgesteuerten Installationsprozess ermöglicht.

Unterstützte Umgebungsvariablen umfassen:

-  **CTX\_XDL\_NON_DOMAIN\_JOINED='j\|n'** – Ob die Maschine einer Domäne beitreten soll. Der Standardwert ist 'n'. Für Szenarien mit Domänenbeitritt setzen Sie ihn auf 'n'.

-  **CTX\_XDL\_AD\_INTEGRATION='winbind\|sssd\|centrify\|pbis\|quest'** – Der Linux VDA benötigt Kerberos-Konfigurationseinstellungen zur Authentifizierung bei den Delivery Controllern. Die Kerberos-Konfiguration wird durch das installierte und konfigurierte Active Directory-Integrationstool auf dem System bestimmt.
  • CTX_XDL_DDC_LIST=’<Liste-DDC-FQDNs>‘ – Der Linux VDA benötigt eine durch Leerzeichen getrennte Liste von Fully Qualified Domain Names (FQDNs) der Delivery Controller, die für die Registrierung bei einem Delivery Controller verwendet werden sollen. Mindestens ein FQDN oder CNAME muss angegeben werden.

  • CTX_XDL_VDI_MODE=’j|n’ – Ob die Maschine als dediziertes Desktop-Bereitstellungsmodell (VDI) oder als gehostetes Shared-Desktop-Bereitstellungsmodell konfiguriert werden soll. Für HDX 3D Pro-Umgebungen setzen Sie den Wert auf ‘j’.

  • CTX_XDL_HDX_3D_PRO=’j|n’ – Der Linux VDA unterstützt HDX 3D Pro, eine Reihe von GPU-Beschleunigungstechnologien, die zur Optimierung der Virtualisierung von grafikintensiven Anwendungen entwickelt wurden. Wenn HDX 3D Pro ausgewählt ist, wird der VDA für VDI-Desktops (Einzelsitzungsmodus) konfiguriert – (d.h. CTX_XDL_VDI_MODE=‘j’).

  • CTX_XDL_START_SERVICE=’j|n’ – Legt fest, ob die Linux VDA-Dienste gestartet werden, wenn die Konfiguration abgeschlossen ist.

  • CTX_XDL_REGISTER_SERVICE=’j|n’ – Die Linux Virtual Desktop-Dienste werden nach dem Start der Maschine gestartet.

  • CTX_XDL_ADD_FIREWALL_RULES=’y|n’ – Die Linux VDA-Dienste erfordern, dass eingehende Netzwerkverbindungen durch die System-Firewall zugelassen werden. Sie können die erforderlichen Ports (standardmäßig die Ports 80 und 1494) automatisch in der System-Firewall für den Linux Virtual Desktop öffnen.

  • CTX_XDL_DESKTOP_ENVIRONMENT=gnome/gnome-classic/kde/mate/xfce/’<none>‘ – Gibt die GNOME-, GNOME Classic-, KDE-, MATE- oder Xfce-Desktopumgebung an, die in Sitzungen verwendet werden soll. Wenn Sie sie auf ‘<none>‘ setzen, wird die auf dem VDA konfigurierte Standard-Desktopumgebung verwendet.

    Sie können auch zwischen Desktopumgebungen wechseln, indem Sie Befehle ausführen oder das System-Tray verwenden. Weitere Informationen finden Sie unter Befehle zum Wechseln des Desktops und System-Tray.

  • CTX_XDL_DOTNET_RUNTIME_PATH=path-to-install-dotnet-runtime – Der Pfad zur Installation von .NET zur Unterstützung des neuen Broker-Agent-Dienstes (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. Um die DNS-Suchergebnisse auf eine lokale Site zu beschränken, geben Sie einen DNS-Sitenamen an. Falls nicht erforderlich, setzen Sie ihn auf ‘<none>‘.

  • CTX_XDL_LDAP_LIST=’<list-ldap-servers>‘ – Der Linux VDA fragt DNS ab, um LDAP-Server zu ermitteln. Wenn DNS keine LDAP-Dienstdatensätze bereitstellen kann, können Sie eine durch Leerzeichen getrennte Liste von LDAP-FQDNs mit LDAP-Ports angeben. Zum Beispiel: ad1.mycompany.com:389 ad2.mycompany.com:3268 ad3.mycompany.com:3268. Um schnellere LDAP-Abfragen innerhalb einer Active Directory-Gesamtstruktur zu ermöglichen, aktivieren Sie den Global Catalog auf einem Domänencontroller und geben Sie die relevante LDAP-Portnummer als 3268 an. Diese Variable ist standardmäßig auf ‘<none>‘ gesetzt.

  • CTX_XDL_SEARCH_BASE=search-base-set – Der Linux VDA fragt LDAP über eine Suchbasis ab, die auf das Stammverzeichnis der Active Directory-Domäne gesetzt ist (zum Beispiel DC=mycompany,DC=com). Um die Suchleistung zu verbessern, können Sie eine Suchbasis angeben (zum Beispiel OU=VDI,DC=mycompany,DC=com). Falls nicht erforderlich, setzen Sie sie auf ‘<none>‘.

  • CTX_XDL_SUPPORT_DDC_AS_CNAME=’y|n’ – Der Linux VDA unterstützt die Angabe eines Delivery Controller-Namens mithilfe eines DNS-CNAME-Eintrags.

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

export CTX_XDL_NON_DOMAIN_JOINED='n'
export CTX_XDL_AD_INTEGRATION=sssd|winbind|centrify|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|kde|mate|xfce|'<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-->

Wenn Sie den sudo-Befehl ausführen, geben Sie die Option -E ein, um die vorhandenen Umgebungsvariablen an die neue Shell zu übergeben, die er erstellt. Wir empfehlen, dass Sie eine Shell-Skriptdatei aus den vorhergehenden Befehlen mit #!/bin/bash als erster Zeile erstellen.

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

sudo CTX_XDL_NON_DOMAIN_JOINED='n' \
CTX_XDL_AD_INTEGRATION=sssd|winbind|centrify|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|kde|mate|xfce|'<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-->

Konfigurationsänderungen entfernen

In einigen Szenarien müssen Sie möglicherweise die vom Skript ctxsetup.sh vorgenommenen Konfigurationsänderungen entfernen, ohne das Linux VDA-Paket zu deinstallieren.

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

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

So entfernen Sie Konfigurationsänderungen:

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

Wichtig:

Dieses Skript löscht alle Konfigurationsdaten aus der Datenbank und macht den Linux VDA unbrauchbar.

Konfigurationsprotokolle

Die Skripte ctxsetup.sh und ctxcleanup.sh zeigen Fehler auf der Konsole an, wobei zusätzliche Informationen in die Konfigurationsprotokolldatei /tmp/xdl.configure.log geschrieben werden.

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

Linux VDA-Software deinstallieren

So überprüfen Sie, ob der Linux VDA installiert ist und welche Version des installierten Pakets vorliegt:

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

So zeigen Sie detailliertere Informationen an:

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

So deinstallieren Sie die Linux VDA-Software:

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

Hinweis:

Das Deinstallieren der Linux VDA-Software löscht die zugehörigen PostgreSQL- und andere Konfigurationsdaten. Das PostgreSQL-Paket und andere abhängige Pakete, die vor der Installation des Linux VDA eingerichtet wurden, werden jedoch nicht gelöscht.

Tipp:

Die Informationen in diesem Abschnitt behandeln nicht die Entfernung abhängiger Pakete, einschließlich PostgreSQL.

Schritt 9: XDPing ausführen

Führen Sie sudo /opt/Citrix/VDA/bin/xdping aus, um häufige Konfigurationsprobleme in einer Linux VDA-Umgebung zu überprüfen. Weitere Informationen finden Sie unter XDPing.

Schritt 10: Linux VDA ausführen

Nachdem Sie den Linux VDA mit dem Skript ctxsetup.sh konfiguriert haben, verwenden Sie die folgenden Befehle, um den Linux VDA zu steuern.

Linux VDA starten:

So starten Sie die Linux VDA-Dienste:

sudo systemctl start ctxhdx

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

Linux VDA anhalten:

So halten Sie die Linux VDA-Dienste an:

sudo systemctl stop ctxvda

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

Hinweis:

Bevor Sie die Dienste ctxvda und ctxhdx anhalten, führen Sie den Befehl systemctl stop ctxmonitord aus, um den Überwachungsdienst-Daemon anzuhalten. Andernfalls startet der Überwachungsdienst-Daemon die von Ihnen angehaltenen Dienste neu.

Linux VDA neu starten:

So starten Sie die Linux VDA-Dienste neu:

sudo systemctl stop ctxvda

sudo systemctl restart ctxhdx

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

Linux VDA-Status überprüfen:

So überprüfen Sie den 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 dem traditionellen Windows VDA-Ansatz. Eine detailliertere Beschreibung zur Durchführung dieser Aufgaben finden Sie unter Maschinenkataloge erstellen und Maschinenkataloge verwalten.

Für die Erstellung von Maschinenkatalogen, die Linux VDA-Maschinen enthalten, gibt es einige Einschränkungen, die den Prozess von der Erstellung von Maschinenkatalogen für Windows VDA-Maschinen unterscheiden:

  • Wählen Sie für das Betriebssystem:
    • Die Option Multi-session OS für ein Bereitstellungsmodell mit gehosteten Shared Desktops.
    • Die Option Single-session OS für ein VDI-Bereitstellungsmodell mit dedizierten Desktops.
  • Mischen Sie keine Linux- und Windows VDA-Maschinen im selben Maschinenkatalog.

Hinweis:

Frühere Versionen von Citrix Studio unterstützten den Begriff “Linux OS” nicht. Die Auswahl der Option Windows Server OS oder Server OS impliziert jedoch ein äquivalentes Bereitstellungsmodell für gehostete Shared Desktops. Die Auswahl der Option Windows Desktop OS oder Desktop OS impliziert ein Bereitstellungsmodell mit einem einzelnen Benutzer pro Maschine.

Tipp:

Wenn Sie eine Maschine aus der Active Directory-Domäne entfernen und wieder hinzufügen, müssen Sie die Maschine erneut aus dem Maschinenkatalog entfernen und hinzufügen.

Schritt 12: Bereitstellungsgruppen erstellen

Der Prozess zum Erstellen einer Bereitstellungsgruppe und Hinzufügen von Maschinenkatalogen, die Linux VDA-Maschinen enthalten, ist nahezu identisch mit dem für Windows VDA-Maschinen. Eine detailliertere Beschreibung zur Durchführung dieser Aufgaben finden Sie unter Bereitstellungsgruppen erstellen.

Für die Erstellung von Bereitstellungsgruppen, die Linux VDA-Maschinenkataloge enthalten, gelten die folgenden Einschränkungen:

  • Stellen Sie sicher, dass die von Ihnen ausgewählten AD-Benutzer und -Gruppen ordnungsgemäß für die Anmeldung an den Linux VDA-Maschinen konfiguriert wurden.
  • Erlauben Sie keine Anmeldung von nicht authentifizierten (anonymen) Benutzern.
  • Mischen Sie die Bereitstellungsgruppe nicht mit Maschinenkatalogen, die Windows-Maschinen enthalten.

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

Linux VDA manuell unter Ubuntu installieren