staging.inyokaproject.org

Citrix Workspace App

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:


Du möchtest den Artikel für eine weitere Ubuntu-Version testen? Mitarbeit im Wiki ist immer willkommen! Dazu sind die Hinweise zum Testen von Artikeln zu beachten.

CitrixWorkspaceAppLogo.png Bekannt geworden ist die Firma Citrix in erster Linie mit Applikations- und Terminalserver-Anwendungen. Das hat zur Folge, dass mittlerweile oftmals der Name selbst als Synonym für eine solche Anwendung verwendet wird.

Der aktuelle Client zur Nutzung von Citrix-Serverdiensten nennt sich "Citrix Workspace App" (früher "Citrix Receiver" oder "Citrix ICA Client"). Die Software kann auf so gut wie allen gängigen Endgeräten (Linux, Windows, macOS, iPhone, iPad, Android etc.) verwendet werden, um bereitgestellte Anwendungen und ganze Desktops "on demand" zu nutzen. Dabei spielen Art und Ort des Endgerätes keine Rolle, was den Verwaltungsaufwand bei mobilen Rechnern in der Regel deutlich minimiert.

Unter Linux gibt es mit dem Linux Terminal Server Project (LTSP) eine konzeptionell vergleichbare Alternative, allerdings nicht für Windows-Programme. Außerdem erlauben auch X2Go und VNC einen Zugriff auf entfernte Rechner inkl. grafischer Oberfläche. Man spricht in diesem Zusammenhang auch von einem Terminalserver bzw. -Client.

Installation

Es wird das 64-bit-Debian-Paket von der "Citrix Workspace App for Linux"-Downloadsite 🇬🇧 benötigt. Man findet es dort unter "Available Downloads""Debian Packages""Full Packages""Citrix Workspace app for Linux (x86_64)". Dieses muss dann manuell installiert werden[4].

Achtung!

Der ICA-Client aus dem Debian-Paket benötigt das Paket libidn11. Das ist in Ubuntu 22.04 nicht vorhanden.

Hinweis!

Fremdpakete können das System gefährden.

Konfiguration

Wenn es sich nicht um eine Erstinstallation handelt, sondern die Citrix Workspace App oder der ältere Citrix Receiver schon benutzt worden ist, ist es empfehlenswert, vor der Nutzung den Ordner mit den Einstellungen ~/.ICAClient/ im Homeverzeichnis umzubenennen:

mv ~/.ICAClient ~/.ICAClient_save 

Ansonsten sind unerwartete Effekte möglich, z.B. dass das Citrix-Fenster den gesamten Bildschirm nahtlos erobert (Vollbild, seamless). Das Verzeichnis ~/.ICAClient wird beim ersten Start der Citrix Workspace App neu angelegt.

Ob die Citrix Workspace App jetzt startklar ist oder noch Dinge wie Adresse, User und Kennwort einzutragen sind, erfährt man beim zuständigen Administrator der Citrix-Umgebung. Wenn noch Daten eingetragen werden müssen, startet man die Workspace App über das Anwendungsmenü unter dem Namen "Citrix Workspace" oder mit folgendem Befehl:

/opt/Citrix/ICAClient/selfservice --icaroot /opt/Citrix/ICAClient 

Der "Config Manager" kann über die gestartete Citrix Workspace App → "<Username>""Einstellungen..." oder folgenden Befehl aufgerufen werden:

/opt/Citrix/ICAClient/util/configmgr 

Um den Zugriff auf Dateien des lokalen Ubuntu-Rechners über ein Freigabelaufwerk in einer Windows-Remote-Sitzung zu ermöglichen, nutzt man die Registerkarte "Dateizugriff".

Verwendung

Bei Ubuntu-Varianten mit einem Anwendungsmenü kann man den Client über "Internet → Citrix Workspace" starten. Das Programm kann alternativ auch über ein Terminal [2] gestartet werden:

/opt/Citrix/ICAClient/selfservice --icaroot /opt/Citrix/ICAClient 

Start über Webbrowser

Wenn der Zugriff auf einen Citrix-Server über eine Weboberfläche erfolgt, kann der bereitgestellte Link angeklickt werden. Der Browser öffnet automatisch die Citrix Workspace App und die Verbindung wird aufgebaut.

Hinzufügen einer Verbindung

Ansonsten im Menü "Einstellungen""Konten""Hinzufügen" wählen. Hier kann man nun die Verbindungsart einstellen. Die Werte können beim Administrator des Zielsystems erfragt werden.

Werkzeuge

Workspace - Einstellungen

Allgemeine Einstellungen wie z.B. Verbindungsverhalten, Dateizugriffe usw. können über das mitgelieferte Konfigurationswerkzeug configmgr eingestellt werden.

/opt/Citrix/ICAClient/util/configmgr 

Falls man einen Programmstarter für dieses Programm benötigt, muss eine .desktop-Datei mit dem Namen /usr/share/applications/icaconfigmgr.desktop und folgendem Inhalt angelegt werden:

[Desktop Entry]
Encoding=UTF-8
Version=1.0
Type=Application
Name=Citrix Workspace - Einstellungen
Categories=Application;Network;X-Red-Hat-Base;X-SuSE-Core-Internet;
Icon=/opt/Citrix/ICAClient/icons/manager.png
TryExec=/opt/Citrix/ICAClient/util/configmgr
Exec=/opt/Citrix/ICAClient/util/configmgr --icaroot /opt/Citrix/ICAClient

Connection Center

Es gibt ein weiteres Werkzeug, welches aktuelle Verbindungen anzeigt. Diese können dann abgemeldet bzw. getrennt werden.

/opt/Citrix/ICAClient/util/conncenter 

Falls man einen Programmstarter für dieses Werkzeug benötigt, muss eine .desktop-Datei mit dem Namen /usr/share/applications/icaconncenter.desktop und dem folgenden Inhalt angelegt werden:

[Desktop Entry]
Encoding=UTF-8
Version=1.0
Type=Application
Name=Citrix Connection Center
Categories=Application;Network;X-Red-Hat-Base;X-SuSE-Core-Internet;
Icon=/opt/Citrix/ICAClient/icons/manager.png
TryExec=/opt/Citrix/ICAClient/util/conncenter
Exec=/opt/Citrix/ICAClient/util/conncenter --icaroot /opt/Citrix/ICAClient

ICA Browser

Ein kommandozeilenbasierter ICA-Browser.

/opt/Citrix/ICAClient/util/pnabrowse 

Command-line ICA Browser

Copyright 1998-2020 Citrix Systems, Inc.
All rights reserved.

Usage: pnabrowse [ Options ] [ Server | PNA URL ]
Options:
   -S      List available ICA servers
   -A      List available ICA published applications
   -c      create ICA files
   -d      specify XDG desktop file (with -L only).
   -e      show error numbers
   -f      include application folders
   -i      include application icons (32 pixels wide and 4 bits per pixel)
   -iWxB   include application icons W pixels wide and B bits per pixel
   -k      use Kerberos authentication
   -r      application icons as raw data
   -m      print a series of miscellaneous options:
            'Publisher name' 'Video Type' 'Sound Type'
            'AppInStartMenu' 'AppOnDesktop'
            'AppIsDeskTop' 'AppIsDisabled'
            'Window Type' 'Window Scale' 'Display Name'
           Only items 1 and 4-7 are available with -E.
   -M      like -m but takes a numeric (1-1023) argument
           used as a bitmap to select individual columns.
           Add 1024 to generate 'desktop' files with -E
   -E      enumerate published resources
   -L      launch a connection to a published resource
   -U      specify username
   -P      specify password
   -N      specify new password
   -D      specify domain
   -Wr     reconnect disconnected applications on this Web Interface
   -WR     reconnect active and disconnected applications on this Web Interface
   -WD     disconnect applications from this Web Interface
   -WT     terminate applications from this Web Interface
   -u      specify proxy username
   -p      specify proxy password
   -q      Do not display error messages
   -x      Display child exit status
   -V      Display version details
   -h      Display this help screen
   -?      Display this help screen

Store Browser

Ein kommandozeilenbasierter Store-Browser.

/opt/Citrix/ICAClient/util/storebrowse 

Usage: /opt/Citrix/ICAClient/util/storebrowse [options] store
    -?,  --help                                 this message
    -M,  --details xxx                          details of resources to print
    -i,  --icons WxB|best                       fetch icons W pixels wide and B bpp OR
                                                best sized icon
    -L,  --launch <resource>                    launch an instance of this resource
    -q,  --quicklaunch <resource>               launch using direct URL (StoreFront servers only)
    -E,  --enumerate                            enumerate all resources available
    -S,  --subscribed                           list all subscribed resources
    -F,  --fileparam                            Launch this file using subscribed resource
    -v,  --version                              version number of this command
    -r,  --icaroot <directory>                  the root of the receiver installation
    -s,  --subscribe <resource>                 subscribe to this resource
    -u,  --unsubscribe <resource>               unsubscribe from this resource
    -Wr, --reconnect r                          reconnect to disconnected sessions
    -WR, --reconnect R                          reconnect to active and disconnected sessions
    -WD, --disconnect                           disconnect from all sessions
    -WT, --terminate                            terminate all sessions
    -e,  --listerrorcodes                       list error codes
    -U,  --username <user_name>                 user name
    -P,  --password <password>                  password
    -D,  --domain <domain>                      domain
    -l,  --liststores                           list all stores and their configuration
    -a,  --addstore <store URL>                 add the store at the given URL
    -C,  --addcr <cr file>                      add the store for the given CR file
    -g,  --storegateway <gateway>               changes the default gateway to the given gateway
    -d,  --deletestore <store URL>              removes this store
    -c,  --configselfservice <entry[=value]>    gets or sets the configuration entries
    -K,  --killdaemon                           closes storebrowse daemon (also clears PNA and SF credentials)
    -n,  --nosingleshot                         always daemonise

Deinstallation

Bei Bedarf eine Sicherung der Citrix-Einstellungen erstellen:

cd $HOME
mv $HOME/.ICAClient $HOME/.ICAClient_save  

Alternativ löschen:

rm -rf $HOME/.ICAClient  

Das Citrix-Paket deinstallieren:

sudo dpkg -P icaclient 

Ggf. ist noch ein manuelles Löschen des Verzeichnisses /etc/icaclient nötig:

rm -rf /etc/icaclient 

Problembehebung

Zwischenablage

In einer XenApp-6.5-Umgebung (über XenApp-Webinterface) funktioniert Kopieren und Einfügen nur von der Citrix- in die lokale Sitzung, nicht in die Gegenrichtung.

SSL-Fehler

Standardmäßig vertraut der Citrix Receiver nur sehr wenigen (Root-CA-)Zertifikaten. Infolgedessen werden Verbindungen zu vielen Citrix-Servern mit einem SSL-Fehler beendet. Beim Öffnen einer Citrix-Anwendung kommt eine Meldung wie:

"Sie vertrauen “XY”, dem Herausgeber des Sicherheitszertifikats des Servers, nicht."

oder

"Das Konto kann nicht mit dieser Serveradresse hinzugefügt werden. Überprüfen Sie die Eingabe. Eine SSL-Verbindung mit dem Server konnte nicht hergestellt werden, da das Zertifikat des Servers nicht vertrauenswürdig ist."

Es müssen weitere SSL-Root-Zertifikate installiert werden. Hierfür gibt es drei Möglichkeiten:

  1. Ein einzelnes SSL-Zertifikat importieren: Um beispielsweise das Root-Zertifikat Root-R1.crt des Anbieters GlobalSign 🇬🇧 ⮷ hinzuzufügen, lädt man dieses von der angegebenen Seite herunter und kopiert es mit Root-Rechten in den Ordner /opt/Citrix/ICAClient/keystore/cacerts/.

  2. Alle Mozilla-Zertifikate importieren: Das Paket ca-certificates (bei Ubuntu meist schon vorinstalliert) bietet im Ordner /usr/share/ca-certificates/mozilla/ zusätzliche CA-Zertifikate, die der Citrix Workspace App zugänglich gemacht werden können, um den SSL-Fehler zu vermeiden.

    • Folgendes Beispiel verknüpft sämtliche Zertifikate aus dem Mozilla-Ordner in den Ordner des ICA-Clients (Citrix Workspace App):

      sudo ln -s /usr/share/ca-certificates/mozilla/* /opt/Citrix/ICAClient/keystore/cacerts/ 
    • Alternativ können die Zertifikate auch kopiert werden.

  3. Andere Zertifikate importieren: Die dritte Möglichkeit ist, bereits auf dem Rechner vorhandene Zertifikate zu verknüpfen bzw. zu kopieren.

    • Beispiel:

      sudo ln -s /etc/ssl/certs/DigiCert* /opt/Citrix/ICAClient/keystore/cacerts/ 
    • Manchmal kann statt des vorstehenden Befehle die folgende Variante erfolgreicher wirken, weil diese auch vorhandene alte Versionen löscht:

      sudo ln -sfn /etc/ssl/certs/* /opt/Citrix/ICAClient/keystore/cacerts/ 

Teils reicht es allerdings nicht, die Zerifikate nur zu verknüpfen/zu kopieren, sondern es muss ein CTX_Rehash ausgeführt werden:

cd /opt/Citrix/ICAClient/util
sudo ./ctx_rehash 

Probleme mit seamless-Fenstern

Auf der Gnome-Shell kommt es mit seamless-Fenstern häufiger zu Problemen. Abhilfe kann durch Nutzen des nativen Fenstermanagers geschaffen werden. Hierzu müssen einige Einstellungen in der Datei ~/.ICAClient/All_Regions.ini vorgenommen werden.

Dazu öffnet man die Datei mit einem Editor[5] und editiert die Abschnitte wie im folgenden gezeigt. Als Auflösung kann auch eine andere Größe genutzt werden:

"Force no Seamless" erzwingen:

[Virtual Channels\Seamless Windows]
TWIMode=0

Fenstergröße anpassen:

[Virtual Channels\Thinwire Graphics]
DesiredColor=8
ApproximateColors=*
DesiredHRES=1024
DesiredVRES=768
ScreenPercent=*
UseFullScreen=false
TWIFullScreenMode=false
NoWindowManager=false

Ein generelles Problem bei der praktischen Nutzung sind u.U. automatische Popup-Blocker. Diese sind dann vorübergehend abzuschalten bzw. die entsprechenden Domains zuzulassen.

citrixlog

Mit der Installation der Citrix Workspace app wird ein Benutzer namens citrixlog mit leerem Paßwort und User-Rechten erstellt, der die Protokollierungsfunktionalität ermöglicht. Er kann entfernt werden, CWA-Protokollierungen sind dann nicht mehr gegeben.

Diese Revision wurde am 10. Februar 2023 09:31 von kB erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: unfreie Software, Fernwartung, Terminalserver, Remotedesktop