USB

Mit der USB-Unterstützung können Benutzer mit zahlreichen USB-Geräten interagieren, wenn sie mit einem virtuellen Desktop verbunden sind. Benutzer können USB-Geräte an ihren Computer anschließen. Diese werden dann zum virtuellen Desktop umgeleitet, nachdem die automatische Umleitung aktiviert wurde. Sie können die automatische Umleitung manuell über die Einstellungen der Konfigurationsdatei aktivieren. Die automatische Umleitung von USB-Geräten ist standardmäßig deaktiviert. Zu den USB-Geräten, die für Remoting verfügbar sind, gehören:

  • Flashlaufwerke
  • Smartphones
  • PDAs
  • Drucker
  • Scanner
  • MP3-Player
  • Sicherheitsgeräte
  • Tablets

Für die USB-Umleitung ist Citrix Virtual Apps and Desktops 7.6 oder höher erforderlich.

Folgende isochrone Features in USB-Geräten werden in typischen LAN-Umgebungen mit geringer Latenz oder hoher Geschwindigkeit unterstützt:

  • Webcams
  • Mikrofone
  • Lautsprecher
  • Headsets

Normalerweise ist jedoch die Standardaudio- oder Webcamumleitung besser geeignet.

Die folgenden Gerätetypen werden direkt in Sitzungen mit virtuellen Apps und Desktops unterstützt und verwenden daher keine USB-Unterstützung:

  • Tastaturen
  • Mäuse
  • Smartcards
  • Headsets
  • Webcams

Hinweis:

USB-Spezialgeräte (beispielsweise Bloomberg-Tastaturen und 3D-Maus) können für die USB-Unterstützung konfiguriert werden. Weitere Informationen zur Konfiguration von Richtlinienregeln für andere USB-Spezialgeräte finden Sie unter CTX119722.

In der Standardeinstellung werden bestimmte Typen von USB-Geräten nicht für Remoting über Citrix Virtual Apps and Desktops bzw. Citrix DaaS unterstützt. Beispielsweise könnte ein Benutzer eine Netzwerkkarte über internes USB mit der Systemplatine verbunden haben. Das Entfernen dieser Netzwerkkarte ist nicht angemessen. Die folgenden USB-Gerätetypen können standardmäßig nicht für virtuelle Apps und Desktops verwendet werden:

  • Bluetooth-Dongle
  • Integrierte Netzwerkkarten
  • USB-Hubs

Um die Standardliste von USB-Geräten für Remoting zu aktualisieren, bearbeiten Sie die Datei usb.conf im Ordner $ICAROOT/. Weitere Informationen finden Sie unter “Aktualisieren der für Remoting verfügbaren USB-Geräteliste”.

Um Remoting von USB-Geräten zu virtuellen Desktops zuzulassen, aktivieren Sie die USB-Richtlinienregel. Weitere Informationen finden Sie in der Dokumentation zu Citrix Virtual Apps and Desktops.

Funktionsweise der USB-Unterstützung

Wenn ein Benutzer ein USB-Gerät anschließt, wird es anhand der USB-Richtlinie überprüft. Und, falls zugelassen, an den virtuellen Desktop umgeleitet. Wenn das Gerät von der Standardrichtlinie abgelehnt wird, steht es nur auf dem lokalen Desktop zur Verfügung.

Angenommen, ein Benutzer schließt ein USB-Gerät an einem Desktop an, auf den im Desktopgerätemodus zugegriffen wird. In diesem Fall wird das Gerät automatisch zum virtuellen Desktop umgeleitet, nachdem die automatische Umleitung manuell über die Konfigurationsdatei aktiviert wurde. Die automatische Umleitung von USB-Geräten ist standardmäßig deaktiviert. Gehen Sie wie folgt vor, um die automatische Umleitung von USB-Geräten zu konfigurieren:

  1. Gehen Sie zur Konfigurationsdatei $Home/.ICAClient/wfclient.ini.
  2. Fügen Sie folgenden Eintrag hinzu:

    DesktopApplianceMode=True

  3. Gehen Sie zur Konfigurationsdatei /opt/Citrix/ICAClient/usb.conf.
  4. Legen Sie eine der folgenden Geräteregeln fest:

    • CONNECT: Legen Sie das Schlüsselwort CONNECT fest, um die automatische Umleitung eines Geräts zu aktivieren, wenn eine Sitzung beginnt.
    • ALLOW: Legen Sie das Schlüsselwort ALLOW fest, um die automatische Umleitung eines Geräts erst nach Beginn einer Sitzung zuzulassen. Wenn jedoch das Schlüsselwort CONNECT oder ALLOW festgelegt ist, wird das Gerät automatisch umgeleitet, wenn es während einer Sitzung getrennt und wieder verbunden wird.

    Beispielgeräteregel: CONNECT: vid=046D pid=0002 # Bestimmtes Gerät gemäß vid/pid zulassen ALLOW: vid=046D pid=0102 # Bestimmtes Gerät gemäß vid/pid zulassen

Das Sitzungsfenster muss den Fokus haben, wenn der Benutzer das USB-Gerät für die Umleitung anschließt, es sei denn, der Desktop Appliance Mode wird verwendet.

Hinweis:

Wenn Sie die USB-Richtlinie für ein Gerät mit dem Schlüsselwort “CONNECT” konfigurieren und DesktopApplianceMode auf “True” setzen, leitet das USB-Gerät automatisch zur VDA-Sitzung um. Wenn der Modus DesktopApplianceMode auf “False” gesetzt ist, leitet das USB-Gerät nicht automatisch zur VDA-Sitzung um.

Bekannte Einschränkung:

  • Bei der USB-Umleitung funktionieren die in der Datei usb.conf definierten Richtlinien möglicherweise nicht und die USB-Geräte werden u. U. nicht in die Sitzung umgeleitet. Dieses Problem tritt auf, wenn die Datei usb.conf mehr als 2000 Zeichen enthält. Als Workaround entfernen Sie die vorhandenen Kommentare zu den Richtlinien, um die Anzahl der Zeichen in der Datei usb.conf zu reduzieren.
  • Die generische USB-Umleitung wird nur unterstützt, wenn das Fenster des virtuellen Desktops den Fokus hat.

Massenspeichergeräte

Angenommen, ein Benutzer trennt die Verbindung zu einem virtuellen Desktop, während ein USB-Massenspeichergerät (MSD) noch am lokalen Desktop angeschlossen ist. In diesem Fall wird das Gerät nicht an den virtuellen Desktop umgeleitet, wenn der Benutzer die Verbindung wiederherstellt. Um sicherzustellen, dass das Massenspeichergerät an den virtuellen Desktop umgeleitet wird, muss der Benutzer es entfernen und nach der Wiederherstellung der Verbindung wieder anschließen.

Hinweis:

Wenn Sie ein Massenspeichergerät in einer Linux-Workstation verwenden, die so konfiguriert ist, dass sie die Remoteunterstützung für USB-MSDs verweigert, akzeptiert die Citrix Workspace-App das Gerät nicht. Möglicherweise wird ein separater Linux-Dateibrowser geöffnet. Citrix empfiehlt daher, Benutzergeräte so zu konfigurieren, dass die Einstellung Wechselmedien beim Einlegen einbinden standardmäßig deaktiviert ist. Wählen Sie dazu auf Geräten mit Debian auf der Debian-Menüleiste, Folgendes: System > Einstellungen > Wechseldatenträger und -medien. Deaktivieren Sie auf der Registerkarte Speichermedien unter Wechseldatenträger das Kontrollkästchen Wechselmedien beim Einlegen einbinden.

Beachten Sie für die Client-USB-Geräteumleitung Folgendes.

Hinweise:

Angenommen, die Serverrichtlinie für die Client-USB-Geräteumleitung ist aktiviert. In diesem Fall werden Massenspeichergeräte wie USB-Geräte auch dann umgeleitet, wenn die Clientlaufwerkzuordnung aktiviert ist.

USB-Klassen

Die folgenden Klassen von USB-Geräten werden von den USB-Standardrichtlinienregeln zugelassen:

  • Audio (Geräteklasse 01)

    Umfasst Mikrofone, Lautsprecher, Kopfhörer und MIDI-Controller.

  • Physikalische Schnittstelle (Geräteklasse 05)

    Diese Geräte ähneln Eingabegeräten (HIDs), bieten jedoch im Allgemeinen Eingabe oder Feedback in Echtzeit. Dazu gehören u. a. Force-Feedback-Joysticks und -Exoskelette sowie Bewegungsplattformen.

  • Bilder (Geräteklasse 06)

    Hierzu gehören digitale Kameras und Scanner. Digitale Kameras unterstützen die Bilderklasse, in der Bilder mit den folgenden Protokollen zu einem Computer oder zu einem anderen Peripheriegerät übertragen werden:

    • Picture Transfer Protocol (PTP) oder
    • Media Transfer Protocol (MTP)

    Kameras können auch als Massenspeichergeräte angezeigt werden. Eine Kamera kann möglicherweise über die Setupmenüs der Kamera für beide Klassen konfiguriert werden.

    Wird eine Kamera als Massenspeichergerät angezeigt, wird die Clientlaufwerkzuordnung verwendet. Die USB-Unterstützung wird nicht benötigt.

  • Drucker (Geräteklasse 07)

    Die meisten Drucker gehören zu dieser Klasse, obwohl einige herstellerspezifische Protokolle (Klasse ff) verwenden. Mehrfunktionsdrucker haben ggf. einen internen Hub oder sind Composite-Geräte. In beiden Fällen verwendet das Druckerelement meistens die Druckerklasse und das Scanner- oder Faxelement verwendet eine andere Klasse, z. B. Bilder.

    Drucker funktionieren normalerweise ohne USB-Unterstützung.

  • Massenspeicher (Geräteklasse 08)

    Die gängigsten Massenspeichergeräte sind USB-Sticks. Weitere Geräte sind über USB angeschlossene Festplatten, CD- bzw. DVD-Laufwerke und SD/MMC-Kartenleser. Außerdem gibt es zahlreiche Geräte mit einem internen Speicher, die auch eine Massenspeicherschnittstelle darstellen. Zu diesen Geräten gehören Mediaplayer, digitale Kameras und Mobiltelefone. Bekannte Unterklassen:

  • 01: Begrenzte Flashlaufwerke
  • 02: Normalerweise CD- bzw. DVD-Geräte (ATAPI/MMC-2)
  • 03: Normalerweise Bandgeräte (QIC-157)
  • 04: Normalerweise Diskettenlaufwerke (UFI)
  • 05: Normalerweise Diskettenlaufwerke (SFF-8070i)
  • 06 Die meisten Massenspeichergeräte verwenden diese Variante von SCSI

    Der Zugriff auf Massenspeichergeräte erfolgt oft über die Clientlaufwerkzuordnung. Die USB-Unterstützung wird daher nicht benötigt.

    Wichtig: Einige Viren werden aktiv mit allen Typen des Massenspeichers übertragen. Überlegen Sie genau, ob der Einsatz von Massenspeichergeräten (per Clientlaufwerkzuordnung oder USB-Unterstützung) im Unternehmen wirklich erforderlich ist. Zur Verringerung dieses Risikos kann auf dem Server konfiguriert werden, dass Dateien über die Clientlaufwerkzuordnung ausgeführt werden.

    Hinweis:

    Wenn Benutzer einen USB 3.0-Treiber über generische USB-Umleitung an den Linux VDA umleiten möchten, stecken sie den USB-Speicherstick in einen USB 3.0-Steckplatz.

  • Content Security (Geräteklasse 0d)

    Content-Security-Geräte erzwingen Inhaltsschutz normalerweise für die Lizenzierung oder das Management digitaler Rechte. Dongles gehören zu dieser Klasse.

  • Personal Healthcare (Geräteklasse 0f)

    Hierzu gehören beispielsweise folgende medizinische Geräte:

    • Blutdruckmessgeräte
    • Pulsmessgeräte
    • Schrittzähler
    • Geräte zur Überwachung der Medikamenteneinnahme
    • Spirometers
  • Anwendung und herstellerspezifisch (Geräteklasse fe und ff)

    Bei vielen Geräten werden herstellerspezifische oder nicht USB-Konsortium-konforme Protokolle verwendet. Diese Geräte werden normalerweise als herstellerspezifisch (Klasse ff) ausgezeichnet.

USB-Geräteklassen

Die folgenden Klassen von USB-Geräten werden von den USB-Standardrichtlinienregeln nicht zugelassen:

  • Kommunikation und CDC-Steuerung (Geräteklasse 02 und 0a)

    Umfasst Modems, ISDN-Adapter, Netzwerkkarten und einige Telefone und Faxgeräte.

    Die USB-Standardrichtlinie lässt diese Geräte nicht zu, da ein Gerät möglicherweise die Verbindung zum virtuellen Desktop bereitstellt.

  • HID (Human Interface Devices) (Geräteklasse 03)

    Umfasst viele Eingabe- und Ausgabegeräte. Typische Eingabegeräte oder HIDs (Human Interface Devices) sind folgende:

    • Tastaturen
    • Mäuse
    • Zeigegeräte
    • Grafiktabletts
    • Sensoren
    • Game Controller
    • Tasten
    • Steuerfunktionen

    Die Unterklasse 01 wird “Boot Interface”-Klasse genannt und für Tastaturen und Mäuse verwendet.

    USB-Tastaturen (Klasse 03, Unterklasse 01, Protokoll 1) oder USB-Mäuse (Klasse 03, Unterklasse 01, Protokoll 2) werden von der USB-Standardrichtlinie nicht zugelassen. Begründung: Die meisten Tastaturen und Mäuse können auch ohne USB-Unterstützung genutzt werden. Sie werden sowohl lokal als auch remote bei Verbindungen mit einem virtuellen Desktop verwendet.

  • USB-Hub (Geräteklasse 09)

    Mit USB-Hubs können zusätzliche Geräte am lokalen Computer angeschlossen werden. Auf diese Geräte muss nicht remote zugegriffen werden.

  • Chipkarte (Smartcard) (Geräteklasse 0b)

    Zu Smartcardlesegeräten gehören berührungslose und Smartcard-Berührungslesegeräte sowie USB-Token mit einem eingebetteten smartcardäquivalenten Chip.

    Der Zugriff auf Smartcardlesegeräte erfolgt nicht mit Smartcard-Remoting und erfordert keine USB-Unterstützung.

  • Video (Geräteklasse 0e)

    Die Videoklasse umfasst Geräte, mit denen Videos und videobezogenes Material verwendet werden, z. B.:

    • Webcams
    • Digitale Camcorder
    • Analoge Videokonverter
    • Einige Fernsehtuner
    • Einige digitale Kameras, die Videostreaming unterstützen

    Standardmäßig bietet die HDX RealTime-Webcamvideokomprimierung optimale Webcamleistung.

  • Kabelloser Controller (Geräteklasse e0)

    Hierzu gehören viele kabellose Controller, u. a. Ultra-Breitband-Controller und Bluetooth.

    Einige dieser Geräte stellen u. U. wichtigen Netzwerkzugang bereit oder schließen wichtige Peripheriegeräte an, z. B. Bluetooth-Tastaturen oder -Mäuse.

    Die USB-Standardrichtlinie lässt diese Geräte nicht zu. Es kann jedoch Geräte geben, denen Zugriff mit der USB-Unterstützung gegeben werden sollte.

Liste der USB-Geräte

Sie können den Umfang der USB-Geräte, die für Remoting auf Desktops zur Verfügung stehen, aktualisieren, indem Sie die Liste der Standardregeln in der Datei usb.conf auf dem Benutzergerät unter $ICAROOT/ bearbeiten.

Sie aktualisieren die Liste, indem Sie neue Richtlinienregeln hinzufügen, die USB-Geräte zulassen oder ablehnen, die nicht Teil des Standardumfangs sind. Von einem Administrator auf diese Weise erstellte Regeln steuern, welche Geräte dem Server angeboten werden. Die Regeln auf dem Server steuern dann, welche Geräte akzeptiert werden.

Die standardmäßige Richtlinienkonfiguration für nicht zulässige Geräte lautet folgendermaßen:

DENY: class=09 # Hub-Geräte

DENY: class=03 subclass=01 # HID-Bootgerät (Tastaturen und Mäuse)

DENY: class=0b # Smartcard

DENY: class=e0 # Wireless-Controller

DENY: class=02 # Kommunikations- und CDC-Steuerung

DENY: class=03 # UVC (webcam)

DENY: class=0a # CDC-Daten

ALLOW: # Letztes Fallback: alles andere zulassen

USB-Richtlinienregeln

Tipp: Wenn Sie Richtlinienregeln erstellen, verwenden Sie die USB-Klassencodes. Sie finden sie auf der USB-Website unter http://www.usb.org/. Richtlinienregeln in der Datei usb.conf auf dem Benutzergerät haben das Format {ALLOW DENY:} gefolgt von einer Reihe von Ausdrücken, die auf Werten für die folgenden Tags basieren
Tag Beschreibung
VID Vendor-ID vom Gerätedeskriptor
REL Release-ID vom Gerätedeskriptor
PID Produkt-ID vom Gerätedeskriptor
Klasse Klasse vom Gerätedeskriptor oder ein Schnittstellendeskriptor
SubClass Unterklasse vom Gerätedeskriptor oder ein Schnittstellendeskriptor
Prot Protokoll vom Gerätedeskriptor oder ein Schnittstellendeskriptor

Wenn Sie eine Richtlinienregel erstellen, beachten Sie Folgendes:

  • Bei Regeln wird die Groß- und Kleinschreibung nicht berücksichtigt.
  • Regeln können optional von einen Kommentar gefolgt werden, der mit # eingeleitet wird. Ein Trennzeichen ist nicht erforderlich, der Kommentar wird beim Abgleichen ignoriert.
  • Leere Zeilen und Kommentare werden ignoriert.
  • Leerzeichen, die als Trennzeichen verwendet werden, werden ignoriert. Sie dürfen aber nicht in einer Zahl oder Kennung verwendet werden. Beispielsweise ist Deny: Class=08 SubClass=05 eine gültige Regel; Deny: Class=0 8 Sub Class=05 hingegen nicht.
  • Tags müssen den Übereinstimmungsoperator = verwenden. Beispielsweise VID=1230.

Beispiel

Das folgende Beispiel zeigt einen Abschnitt der Datei usb.conf auf dem Benutzergerät. Um diese Regeln zu implementieren, müssen dieselben Regeln wie auf dem Server vorhanden sein.

ALLOW: VID=1230 PID=0007 \# ANOther Industries, ANOther Flash Drive

DENY: Class=08 SubClass=05 \# Mass Storage Devices

DENY: Class=0D \# All Security Devices

Startmodi

Mit “Desktop Appliance Mode” können Sie anpassen, wie ein virtueller Desktop zuvor angeschlossene USB-Geräte behandelt. Legen Sie DesktopApplianceMode=Boolean im Abschnitt WFClient in der Datei $ICAROOT/config/module.ini auf jedem Benutzergerät wie folgt fest.

   
TRUE Alle USB-Geräte, die bereits angeschlossen sind, sind beim Start verfügbar. Die Geräte sind beim Start nur verfügbar, wenn sie nicht durch eine Ablehnungsregel in den USB-Richtlinien gesperrt wurden. Diese USB-Richtlinien werden entweder auf dem Server (Registrierungseintrag) oder auf dem Benutzergerät (Konfigurationsdatei für Richtlinienregeln) festgelegt.
FALSE Beim Start sind keine USB-Geräte verfügbar.

Hinweis:

Legen Sie das Schlüsselwort CONNECT fest, um die automatische Umleitung eines Geräts zu aktivieren, wenn eine Sitzung beginnt. Legen Sie außerdem das Schlüsselwort ALLOW fest, um die automatische Umleitung eines Geräts erst nach Beginn einer Sitzung zuzulassen. Wenn jedoch das Schlüsselwort CONNECT oder ALLOW festgelegt ist, wird das Gerät automatisch umgeleitet, wenn es während einer Sitzung getrennt und wieder verbunden wird.

Automatische Umleitung von USB-Geräten konfigurieren

Wenn bisher ein Gerät während einer Sitzung vom Stromnetz getrennt und danach wieder damit verbunden wurde, erfolgte automatisch eine Umleitung. Das Gerät wurde daher automatisch mit dem VDA verbunden. Ab Release 2207 der Citrix Workspace-App müssen Sie die automatische Umleitung manuell über die Konfigurationsdatei aktivieren. Die automatische Umleitung von USB-Geräten ist standardmäßig deaktiviert.

Gehen Sie wie folgt vor, um die automatische Umleitung von USB-Geräten (normale Geräte und Verbundgeräte) zu konfigurieren:

  1. Gehen Sie zu der Konfigurationsdatei $Home/.ICAClient/wfclient.ini.
  2. Fügen Sie folgenden Eintrag hinzu:

    DesktopApplianceMode=True

  3. Gehen Sie zur Konfigurationsdatei /opt/Citrix/ICAClient/usb.conf.
  4. Legen Sie eine der folgenden Geräteregeln fest:

    • CONNECT: Legen Sie das Schlüsselwort CONNECT fest, um die automatische Umleitung eines Geräts zu aktivieren, wenn eine Sitzung beginnt.
    • ALLOW: Legen Sie das Schlüsselwort ALLOW fest, um die automatische Umleitung eines Geräts erst nach Beginn einer Sitzung zuzulassen.

    Wenn jedoch das Schlüsselwort CONNECT oder ALLOW festgelegt ist, wird das Gerät automatisch umgeleitet, wenn es während einer Sitzung getrennt und wieder verbunden wird.

Beispiel für Geräteregeln:

CONNECT: vid=046D pid=0002 # Bestimmtes Gerät gemäß vid/pid zulassen`

ALLOW: vid=046D pid=0102 # Bestimmtes Gerät gemäß vid/pid zulassen`

Umleitung von USB-Verbundgeräten

Ab Version 2207 erlaubt die Citrix Workspace-App das Aufteilen (Splitting) von USB-Verbundgeräten. Ein USB-Verbundgerät kann mehrere Funktionen ausführen. Dies wird erreicht, indem jede Funktion über eine andere Schnittstelle verfügbar gemacht wird. Beispiele für USB-Verbundgeräte sind HID-Geräte, die Audio-/Videoeingang und -ausgang umfassen.

Derzeit ist die Umleitung von USB-Verbundgeräten nur in Desktopsitzungen verfügbar. Die aufgeteilten Geräte werden im Desktop Viewer angezeigt.

Früher wurde ein Gerät, das während einer Sitzung getrennt und wieder verbunden wurde, automatisch umgeleitet. Das Gerät wurde daher automatisch mit dem VDA verbunden. In diesem Release müssen Sie die automatische Umleitung manuell über die Konfigurationsdatei aktivieren. Die automatische Umleitung von USB-Verbundgeräten ist standardmäßig deaktiviert.

USB 2.1 und höher unterstützt USB-Verbundgeräte, bei denen mehrere untergeordnete Geräte sich eine Verbindung mit demselben USB-Bus teilen. Die Geräte teilen sich Konfigurationsraum und Busverbindung, und zur Identifizierung jedes untergeordneten Geräts wird eine eindeutige Schnittstellenzahl 00-ff verwendet. Diese Einstellung ist nicht identisch mit einem USB-Hub, der einen neuen USB-Bus zum Anschluss anderer USB-Geräte mit jeweils eigener Adresse bereitstellt.

Auf dem Clientendpunkt gefundene Verbundgeräte können wie folgt an den virtuellen Host weitergeleitet werden:

  • als einzelnes USB-Verbundgerät oder
  • als Gruppe unabhängiger untergeordneter Geräte (aufgeteilte Geräte)

Wenn ein USB-Verbundgerät weitergeleitet wird, steht das gesamte Gerät dem Endpunkt nicht mehr zur Verfügung. Die lokale Nutzung des Geräts wird durch diese Aktion für alle Anwendungen auf dem Endpunkt blockiert – auch für den Citrix Workspace-Client, der für eine optimierte HDX-Remoteerfahrung erforderlich ist.

Verwenden Sie gegebenenfalls ein USB-Headset mit Audiogerät und HID-Taste für Stummschaltung und Lautstärkeregelung. Wenn das gesamte Gerät über einen generischen USB-Kanal weitergeleitet wird, kann es nicht mehr über den optimierten HDX-Audiokanal umgeleitet werden. Die Audioqualität ist jedoch am besten, wenn Audiodaten über den optimierten HDX-Audiokanal und nicht mit hostseitigen Audiotreibern über generisches USB-Remoting gesendet werden. Dies liegt an der “geschwätzigen” Natur der USB-Audioprotokolle.

Weitere Probleme treten auf, wenn Systemtastatur oder Zeigegerät zu einem Verbundgerät gehören, in dem auch Funktionen integriert sind, die für Remotesitzungen erforderlich sind. Wird ein komplettes Verbundgerät weitergeleitet, funktionieren Systemtastatur oder Maus am Endpunkt nur noch innerhalb der Remotedesktopsitzung oder -anwendung.

Zum Beheben dieser Probleme empfiehlt Citrix, das Verbundgerät per Splitting aufzuteilen und nur die untergeordneten Schnittstellen weiterzuleiten, die einen generischen USB-Kanal verwenden. Diese Einstellung stellt sicher, dass die anderen untergeordneten Geräte für die Verwendung durch Apps auf dem Clientendpunkt verfügbar sind. Dieser Clientwndpunkt umfasst die Citrix Workspace-App, die optimierte HDX-Erlebnisse bietet und gleichzeitig nur die erforderlichen Geräte weiterleitet und sie für die Remotesitzung verfügbar macht.

Geräteregeln:

Wie USB-Standardgeräte auch werden die Verbundgeräte von in den Geräterichtlinien der Citrix Workspace-App festgelegten Geräteregeln für die Weiterleitung ausgewählt. Die Citrix Workspace-App entscheidet dann anhand dieser Regeln, welche USB-Geräte an die Remotesitzung weitergeleitet werden dürfen.

Jede Regel besteht aus den folgenden Elementen, die den tatsächlichen Geräten im USB-Subsystem des Endpunkts entsprechen:

  • Aktionsschlüsselwort wie Zulassen, Verbinden oder Verweigern
  • Doppelpunkt (:)
  • Null oder mehr Filterparameter

Der vorstehende Filterparameter entspricht den Metadaten des USB-Gerätedeskriptors, die von jedem USB-Gerät zur Identifizierung verwendet werden.

Geräteregeln sind als Klartext angegeben, mit einer Regel pro Zeile und einem optionalen Kommentar nach dem #-Zeichen. Regeln werden von oben nach unten (in absteigender Prioritätsreihenfolge) zugeordnet. Die erste Regel, die dem Gerät oder der untergeordneten Schnittstelle entspricht, wird angewendet. Nachfolgende Regeln, die dasselbe Gerät oder dieselbe Schnittstelle auswählen, werden ignoriert.

Gehen Sie wie folgt vor, um die Geräteregeln zu ändern:

  1. Gehen Sie zur Datei /opt/Citrix/ICAClient/usb.conf.
  2. Aktualisieren Sie die Geräteregeln nach Bedarf.

Beispiele für Geräteregeln:

ALLOW: vid=046D pid=0102 # Allow a specific device by vid/pid

ALLOW: vid=0505 class=03 subclass=01 # Allow any pid for vendor 0505 w/subclass=01

DENY: vid=0850 pid=040C # deny a specific device (including all child devices)

DENY: class=03 subclass=01 prot=01 # deny any device that matches all filters

CONNECT: vid=0911 pid=0C1C # Allow and auto-connect a specific device

ALLOW: vid=0286 pid=0101 split=01 # Split this device and allow all interfaces

ALLOW: vid=1050 pid=0407 split=01 intf=00,01 # Split and allow only 2 interfaces

CONNECT: vid=1050 pid=0407 split=01 intf=02 # Split and auto-connect interface 2

DENY: vid=1050 pid=0407 split=1 intf=03 # Prevent interface 03 from being remoted

Sie können einen der folgenden Filterparameter verwenden, um Regeln auf die erkannten Geräte anzuwenden:

Filterparameter Beschreibung
vid=xxxx Hersteller-ID des USB-Geräts (vierstelliger Hexadezimalcode)
pid=xxxx Produkt-ID des USB-Geräts (vierstelliger Hexadezimalcode)
rel=xxxx Release-ID des USB-Geräts (vierstelliger Hexadezimalcode)
class=xx Klassencode des USB-Geräts (zweistelliger Hexadezimalcode)
subclass=xx Unterklassencode des USB-Geräts (zweistelliger Hexadezimalcode)
prot=xx Protokollcode des USB-Geräts (zweistelliger Hexadezimalcode)
split=1 (oder split=0) Aufteilen (oder Nichtaufteilen) eines Verbundgeräts
intf=xx[,xx,xx,…] Auswahl einer bestimmten Gruppe untergeordneter Schnittstellen eines Verbundgeräts (durch Kommas getrennte Liste mit zweistelligen Hexadezimalcodes)

Mit den ersten sechs Parametern werden die USB-Geräte ausgewählt, auf die die Regel angewendet werden soll. Wenn kein Parameter definiert ist, wird die Regel einem Gerät mit einem BELIEBIGEN Wert für diesen Parameter zugeordnet.

Das USB Implementers Forum (USB-IF) bietet unter Defined Class Codes eine Liste definierter Klassen-, Unterklassen- und Protokollwerte. USB-IF bietet außerdem eine Liste registrierter Hersteller-IDs. Hersteller-, Produkt-, Release- und Schnittstellen-ID eines Geräts finden Sie auch mit kostenlosen Tools wie lsusb:


 <username@username>-ThinkPad-T470:/var/log$ lsusb

Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub

Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Bus 002 Device 002: ID 0bda:0316 Realtek Semiconductor Corp. USB3.0-CRW

Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub

Bus 001 Device 005: ID 138a:0097 Validity Sensors, Inc.

Bus 001 Device 004: ID 5986:111c Acer, Inc Integrated Camera

Bus 001 Device 003: ID 8087:0a2b Intel Corp.

Bus 001 Device 006: ID 17ef:609b Lenovo Lenovo USB Receiver

Bus 001 Device 045: ID 1188:a001 Bloomberg L.P. Lenovo USB Receiver

Bus 001 Device 044: ID 1188:a301 Bloomberg L.P.

Bus 001 Device 043: ID 1188:a901 Bloomberg L.P. Keyboard Hub

Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

<!--NeedCopy-->
    | <username@username>-ThinkPad-T470:/var/log$ lsusb -t

    /:  Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 10000M

    /:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 480M

    /:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/6p, 5000M

    |__ Port 3: Dev 2, If 0, Class=Mass Storage, Driver=usb-storage, 5000M

    /:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/12p, 480M

    |__ Port 1: Dev 43, If 0, Class=Hub, Driver=hub/4p, 480M

        |__ Port 1: Dev 46, If 0, Class=Human Interface Device, Driver=usbhid, 12M

        |__ Port 4: Dev 45, If 0, Class=Human Interface Device, Driver=usbhid, 12M

        |__ Port 4: Dev 45, If 1, Class=Human Interface Device, Driver=usbhid, 12M

        |__ Port 2: Dev 44, If 3, Class=Audio, Driver=snd-usb-audio, 12M

        |__ Port 2: Dev 44, If 1, Class=Vendor Specific Class, Driver=, 12M

        |__ Port 2: Dev 44, If 4, Class=Audio, Driver=snd-usb-audio, 12M

        |__ Port 2: Dev 44, If 2, Class=Audio, Driver=snd-usb-audio, 12M

        |__ Port 2: Dev 44, If 0, Class=Human Interface Device, Driver=usbhid, 12M

    |__ Port 4: Dev 6, If 1, Class=Human Interface Device, Driver=usbhid, 12M

    |__ Port 4: Dev 6, If 2, Class=Human Interface Device, Driver=usbhid, 12M

    |__ Port 4: Dev 6, If 0, Class=Human Interface Device, Driver=usbhid, 12M

    |__ Port 7: Dev 3, If 0, Class=Wireless, Driver=btusb, 12M

    |__ Port 7: Dev 3, If 1, Class=Wireless, Driver=btusb, 12M

    |__ Port 8: Dev 4, If 1, Class=Video, Driver=uvcvideo, 480M

    |__ Port 8: Dev 4, If 0, Class=Video, Driver=uvcvideo, 480M

    |__ Port 9: Dev 5, If 0, Class=Vendor Specific Class, Driver=, 12M |

<!--NeedCopy-->

Die letzten beiden Parameter gelten (sofern vorhanden) nur für USB-Verbundgeräte. Der split-Parameter legt fest, ob ein Verbundgerät als aufgeteiltes Gerät oder als einzelnes Verbundgerät weitergeleitet werden soll.

Split=1 zeigt an, dass die ausgewählten untergeordneten Schnittstellen eines Verbundgeräts als aufgeteilte Geräte weiterzuleiten sind. Split=0 zeigt an, dass das Verbundgerät nicht aufgeteilt werden darf.

Hinweis:

Ist der split-Parameter nicht vorhanden, wird dies als Split=0 interpretiert.

Der intf-Parameter wählt die untergeordneten Schnittstellen des Verbundgeräts aus, auf die eine Aktion anzuwenden ist. Ist der Parameter nicht vorhanden, wird die Aktion auf alle Schnittstellen des Verbundgeräts angewendet.

Beispiel: USB-Verbundgerät mit sechs Schnittstellen (z. B. Bloomberg 4-Tastatur):

  • Schnittstelle 0 – Bloomberg 4-Tastatur-HID
  • Schnittstelle 1 – Bloomberg 4-Tastatur-HID
  • Schnittstelle 2 – Bloomberg 4-HID
  • Schnittstelle 3 – Bloomberg 4-Tastatur-Audiokanal
  • Schnittstelle 4 – Bloomberg 4-Tastatur-Audiokanal
  • Schnittstelle 5 – Bloomberg 4-Tastatur-Audiokanal
  • Folgende Regeln werden für diese Gerätetypen empfohlen:

CONNECT: vid=1188 pid=9545 split=01 intf=00 # Bloomberg 4 Keyboard HID

CONNECT: vid=1188 pid=9545 split=01 intf=01 # Bloomberg 4 Keyboard HID

CONNECT: vid=1188 pid=9545 split=01 intf=02 # Bloomberg 4 HID

DENY: vid=1188 pid=9545 split=01 intf=03 # Bloomberg 4 Keyboard Audio Channel

DENY: vid=1188 pid=9545 split=01 intf=04 # Bloomberg 4 Keyboard Audio Channel

DENY: vid=1188 pid=9545 split=01 intf=05 # Bloomberg 4 Keyboard Audio Channel

Umleitung von USB-Verbundgeräten mit Citrix Viewer

Gehen Sie wie folgt vor, um die USB-Geräte über den Abschnitt Geräte zu verbinden:

  1. Gehen Sie in einer Desktopsitzung unter Geräte zum Desktop Viewer. Die aufgeteilten USB-Geräte werden angezeigt.

    Split devices section

  2. Um ein Gerät zu verbinden, wählen Sie den zugehörigen Menüeintrag.

Gehen Sie wie folgt vor, um die USB-Geräte über den Abschnitt Einstellungen zu verbinden:

  1. Gehen Sie zum Abschnitt Einstellungen > Geräte. Die aufgeteilten USB-Geräte werden angezeigt.

    Split devices preferences section

  2. Aktivieren Sie die Kontrollkästchen der gewünschten Geräte.

  3. Klicken Sie auf OK.

Die ausgewählte Konfiguration wird auf die Geräteverbindung angewendet.

Hinweis:

Deaktivieren Sie den Menüeintrag oder die Kontrollkästchen des Geräts, das Sie trennen möchten.

Erweiterung für die automatische Umleitung des USB-Verbundgeräts

Bisher mussten Sie DesktopApplianceMode in der Konfigurationsdatei auf True setzen, um USB-Geräte beim Sitzungsstart automatisch umzuleiten.

Mit der Version 2402 können Sie Geräteverbindungseinstellungen über eine Benutzeroberfläche in der Citrix Workspace-App für Linux verwalten, ohne auf Konfigurationsdateien angewiesen zu sein.

Die folgenden zwei Optionen wurden im Abschnitt Geräte im Bildschirm Einstellungen hinzugefügt:

  • Geräte beim Start einer Sitzung automatisch verbinden. Dieses Kontrollkästchen ist standardmäßig nicht aktiviert.
  • Wenn ein neues Gerät angeschlossen wird, während eine Sitzung ausgeführt wird, wird es automatisch verbunden. Dieses Kontrollkästchen ist standardmäßig aktiviert.

Dieses Feature ist standardmäßig aktiviert.

Gehen Sie wie folgt vor, um die Umleitung eines Verbundgeräts über die grafische Benutzeroberfläche zu konfigurieren:

  1. Wählen Sie in der Desktop Viewer-Symbolleiste einer HDX-Sitzung die Option Einstellungen aus. Das Dialogfeld Citrix Workspace − Einstellungen wird angezeigt.
  2. Klicken Sie auf Geräte. Sie können den Abschnitt Geräte sehen.

    Geräte

  3. Wählen Sie je nach Anforderung eine der folgenden Optionen oder beide aus:

    • Geräte beim Start einer Sitzung automatisch verbinden: Wenn diese Option ausgewählt ist, werden die USB-Geräte automatisch mit dem virtuellen Desktop verbunden, sobald eine Sitzung gestartet wird.
    • Gerät automatisch verbinden, wenn ein neues Gerät in einer ausgeführten Sitzung angeschlossen wird: Wenn diese Option ausgewählt ist, werden die USB-Geräte automatisch mit dem virtuellen Desktop verbunden, während eine Sitzung läuft.
  4. Klicken Sie auf OK.

Wenn HDX-Sitzungen für die automatische Umleitung konfiguriert sind, verhalten sie sich wie folgt:

  • Wenn eine HDX-Sitzung im Fokus steht, werden alle USB-Geräte automatisch umgeleitet.
  • Wenn keine HDX-Sitzung im Fokus steht, werden USB-Geräte automatisch zur zuletzt gestarteten HDX-Sitzung umgeleitet.
  • Nachdem ein USB-Gerät umgeleitet wurde, kann ein Endbenutzer es über die Symbolleiste der HDX-Sitzung beenden oder die HDX-Sitzung direkt schließen. In diesem Fall wird das USB-Gerät getrennt und wieder mit der Clientmaschine verbunden. Der Endbenutzer kann es jederzeit erneut umleiten.
USB