USB

La compatibilidad con USB permite a los usuarios interactuar con una amplia variedad de dispositivos USB cuando se conectan con un escritorio virtual. Los usuarios pueden conectar dispositivos USB a sus equipos y esos dispositivos se redirigen a sus escritorios virtuales después de habilitar la redirección automática. Puede habilitar manualmente el redireccionamiento automático por medio de los parámetros del archivo de configuración. La redirección automática de dispositivos USB está inhabilitada de forma predeterminada. Los dispositivos USB disponibles para comunicación remota incluyen los siguientes:

  • Unidades flash
  • Smartphones
  • PDA
  • Impresoras
  • Escáneres
  • Reproductores MP3
  • Dispositivos de seguridad
  • Tabletas

La redirección de USB requiere Citrix Virtual Apps and Desktops 7.6 o una versión posterior.

Las siguientes funciones isócronas de los dispositivos USB se admiten en entornos LAN típicos de baja latencia o alta velocidad:

  • Cámaras web
  • Micrófonos
  • Altavoces
  • Auriculares con micro

Pero, por lo general, la redirección estándar de audio o cámara web es más adecuada.

Estos tipos de dispositivos se admiten directamente en una sesión de aplicaciones y escritorios virtuales, y por lo tanto no ofrecen la funcionalidad USB:

  • Teclados
  • Mouse
  • Tarjetas inteligentes
  • Auriculares con micro
  • Cámaras web

Nota:

Los dispositivos USB especializados (por ejemplo, los teclados Bloomberg y mouse 3D) pueden configurarse para admitir USB. Para obtener información sobre cómo configurar reglas de directivas para otros dispositivos USB especializados, consulte CTX119722.

De manera predeterminada, existen ciertos tipos de dispositivos USB que no se admiten para la comunicación remota a través de Citrix Virtual Apps and Desktops o Citrix DaaS. Por ejemplo, un usuario puede tener una tarjeta de interfaz de red conectada a la placa del sistema mediante un dispositivo USB interno. Conectarse de forma remota a esta NIC no es apropiado. De forma predeterminada, estos tipos de dispositivos USB no se admiten en aplicaciones ni escritorios virtuales:

  • Dispositivos Bluetooth
  • Tarjetas de interfaz de red integradas
  • Hubs USB

Para actualizar la lista predeterminada de dispositivos USB disponibles para la comunicación remota, modifique el archivo usb.conf en la carpeta $ICAROOT/. Para obtener más información, consulte la sección “Actualización de la lista de dispositivos USB que se encuentran disponibles para la comunicación remota”.

Para permitir la comunicación remota de los dispositivos USB con escritorios virtuales, habilite la regla de directivas USB. Para obtener más información, consulte la documentación de Citrix Virtual Apps and Desktops.

Funcionamiento de los USB

Cuando un usuario conecta un dispositivo USB, se confronta con la directiva USB. Y, si se permite, se redirige al escritorio virtual. Si la directiva predeterminada rechaza el dispositivo, solo estará disponible para el escritorio local.

Piense en un usuario que conecta un dispositivo USB en escritorios a los que se accede a través del modo Desktop Appliance. En este caso, ese dispositivo se redirige automáticamente al escritorio virtual después de habilitarse manualmente la redirección automática a través de los parámetros del archivo de configuración. La redirección automática de dispositivos USB está inhabilitada de forma predeterminada. Para configurar la redirección automática de dispositivos USB, haga lo siguiente:

  1. Vaya al archivo de configuración $Home/.ICAClient/wfclient.ini.
  2. Agregue la siguiente entrada:

    DesktopApplianceMode=True

  3. Vaya al archivo de configuración /opt/Citrix/ICAClient/usb.conf.
  4. Establezca cualquiera de las siguientes reglas de dispositivo:

    • CONNECT: Establezca la palabra clave “CONNECT” para habilitar la redirección automática de un dispositivo cuando se inicie una sesión.
    • ALLOW: Establezca la palabra clave “ALLOW” para permitir la redirección automática de un dispositivo solo después de que se inicie una sesión. Sin embargo, si se establece la palabra clave CONNECT o ALLOW, el dispositivo se redirige automáticamente cuando se desconecta y se conecta durante una sesión.

    Regla de dispositivo de ejemplo: CONNECT: vid=046D pid=0002 # Permitir un dispositivo específico por vid/pid ALLOW: vid=046D pid=0102 # Permitir un dispositivo específico por vid/pid

Para que la redirección tenga lugar, la ventana de la sesión debe tener el foco cuando el usuario conecta el dispositivo USB, a menos que se esté mediante el modo Desktop Appliance.

Nota:

Si configura la directiva de USB para un dispositivo con la palabra clave “CONNECT” y establece DesktopApplianceMode en True, el dispositivo USB se redirigirá automáticamente a la sesión de VDA. Cuando el modo DesktopApplianceMode se establece en false, el dispositivo USB no se redirige automáticamente a la sesión de VDA.

Limitación conocida:

  • Para la redirección de USB, es posible que las directivas definidas en el archivo usb.conf no funcionen y que los dispositivos USB no se redirijan a la sesión. Este problema se produce si hay más de 2000 caracteres en el archivo usb.conf. Como solución temporal, puede quitar los comentarios existentes de las directivas para reducir la cantidad de caracteres del archivo usb.conf.
  • La redirección de USB genérico solo está disponible cuando la ventana del escritorio virtual está enfocada.

Dispositivos de almacenamiento masivo

Imagine que un usuario se desconecta de un escritorio virtual cuando un dispositivo de almacenamiento masivo (MSD) de tipo USB sigue conectado al escritorio local. En este caso, ese dispositivo no se redirige al escritorio virtual cuando el usuario se vuelve a conectar. Para verificar que el dispositivo de almacenamiento masivo (MSD) se redirige al escritorio virtual, el usuario debe quitar y volver a introducir el dispositivo después de reconectar.

Nota:

Si inserta un dispositivo de almacenamiento masivo (MSD) en una estación de trabajo Linux configurada para denegar la asistencia remota a los MSD USB, la aplicación Citrix Workspace no acepta el dispositivo. Es posible que se abra un explorador de archivos de Linux aparte. Por lo tanto, Citrix recomienda que configure previamente los dispositivos de usuarios sin seleccionar el parámetro Browse removable media when inserted de forma predeterminada. En dispositivos basados en Debian, puede hacerlo desde la barra de menú de Debian, en Desktop > Preferences > Removable Drives and Media. En la ficha Storage, en Removable Storage, desmarque la casilla de verificación Browse removable media when inserted.

A la hora de redirigir el dispositivo USB del cliente, tenga en cuenta estas notas.

Notas:

Considere que la directiva de servidor para redirección de dispositivos USB del cliente está activada. En este caso, los MSD se dirigen como dispositivos USB, aunque la asignación de unidades del cliente esté activada.

Clases USB

Las reglas de directivas USB predeterminadas admiten estas clases de dispositivos USB:

  • Audio (clase 01)

    Incluye micrófonos, altavoces, auriculares y controladores MIDI.

  • Interfaz física (clase 05)

    Estos dispositivos son similares a los HID, pero generalmente proporcionan información y reaccionan en tiempo real. Además, incluye joysticks con vibración, plataformas de movimiento y exoesqueletos con vibración.

  • Digitalización de imágenes fijas (clase 06)

    Abarca los escáneres y las cámaras digitales. Las cámaras digitales admiten la clase de imágenes fijas que utiliza lo siguiente para transferir imágenes a un equipo u otro dispositivo periférico:

    • Protocolo de transferencia de imágenes (PTP) o bien,
    • Protocolo de transferencia multimedia (MTP)

    Las cámaras también pueden aparecer como dispositivos de almacenamiento masivo. Es posible configurar una cámara para que utilice cualquiera de las clases desde los menús de configuración que proporciona la propia cámara.

    Si una cámara aparece como un MSD, se usa la asignación de unidades del cliente y no se necesita el uso de USB.

  • Impresoras (clase 07)

    En general, la mayoría de las impresoras se incluyen en esta clase, aunque algunas usa n protocolos específicos del fabricante (clase ff). Las impresoras multifunción pueden tener un concentrador interno o ser dispositivos compuestos. En ambos casos, el elemento de impresión generalmente usa la clase de la impresora y el elemento de fax o de escaneado usa otra clase, por ejemplo, la digitalización de imágenes fijas.

    Las impresoras normalmente funcionan de forma adecuada sin la funcionalidad USB.

  • Almacenamiento masivo (clase 08)

    Los MSD más comunes son los dispositivos de memoria USB. Otros incluyen las unidades de disco duro con conexión USB, las unidades de CD/DVD y los lectores de tarjetas SD/MMC. Existe una amplia variedad de dispositivos con almacenamiento interno que también presentan una interfaz de almacenamiento masivo. Estos dispositivos incluyen reproductores multimedia, cámaras digitales y teléfonos móviles. Las subclases conocidas, entre otras, son:

  • 01 Dispositivos flash limitados
  • 02 Dispositivos CD/DVD típicos (ATAPI/MMC-2)
  • 03 Dispositivos de cinta típicos (QIC-157)
  • 04 Unidades de disquete típicas (UFI)
  • 05 Unidades de disquete típicas (SFF-8070i)
  • 06 La mayoría de los MSD utilizan esta variante de SCSI

    A menudo se puede acceder a los MSD a través de la asignación de unidades del cliente y por lo tanto no se requiere la funcionalidad USB.

    Importante: Se sabe que algunos virus se propagan en forma activa a través de todos los tipos de MSD. Piense bien si existe un requisito comercial de permitir el uso de los MSD, ya sea a través de la asignación de unidades del cliente o mediante el uso de USB. Para minimizar el riesgo, el servidor puede configurarse para evitar que los archivos se ejecuten mediante la asignación de unidades del cliente.

    Nota:

    Si un usuario necesita redirigir un controlador USB 3.0 a Linux VDA mediante una redirección de USB genérico, conecte el dispositivo de memoria USB a una ranura USB 3.0.

  • Seguridad del contenido (clase 0d)

    Los dispositivos para seguridad del contenido aplican la protección del contenido, generalmente para la administración de derechos digitales o para la gestión de licencias. Esta clase incluye las llaves.

  • Atención médica personal (clase 0f)

    Estos dispositivos incluyen dispositivos de salud personal como estos:

    • Sensores de presión arterial
    • Monitores de frecuencia cardíaca
    • Podómetros
    • Monitores de píldoras
    • Spirometers
  • Específico del proveedor y de la aplicación (clases fe y ff)

    Muchos dispositivos usa n protocolos específicos del proveedor o protocolos no estandarizados por el consorcio USB, y estos dispositivos generalmente se muestran como específicos del proveedor (clase ff).

Clases de dispositivos USB

Las reglas de directivas USB predeterminadas rechazan estas clases de dispositivos USB:

  • Comunicaciones y control CDC (clases 02 y 0a)

    Incluye módems, adaptadores ISDN, adaptadores de red y algunos teléfonos y equipos de fax.

    La directiva USB predeterminada no permite estos dispositivos porque es posible que uno de ellos proporcione la conexión al escritorio virtual propiamente dicho.

  • Dispositivos de interfaz humana (HID) (clase 03)

    Incluye una amplia variedad de dispositivos de entrada y de salida. Los dispositivos de interfaz humana (HID) típicos son los siguientes:

    • Teclados
    • Mouse
    • Punteros
    • Tabletas gráficas
    • Sensores
    • Mandos de juegos
    • Botones
    • Funciones de control

    La subclase 01 se conoce como la clase de interfaz de arranque, y se usa para los teclados y punteros.

    La directiva USB predeterminada no permite teclados USB (clase 03, subclase 01, protocolo 1) ni mouse USB (clase 03, subclase 01, protocolo 2). Este parámetro se debe a que la mayoría de los teclados y mouse se manejan adecuadamente sin el uso de USB. Además, suele ser necesario usar estos dispositivos de forma local y remota cuando se conecta a un escritorio virtual.

  • Concentradores USB (clase 09)

    Los concentradores USB permiten conectar dispositivos adicionales al equipo local. No es necesario acceder a estos dispositivos de forma remota.

  • Tarjeta inteligente (clase 0b)

    Los lectores de tarjetas inteligentes incluyen lectores de tarjetas inteligentes con y sin contacto, y tokens USB con un chip de tarjeta inteligente equivalente incorporado.

    Se accede a los lectores de tarjeta inteligente mediante la comunicación remota de la tarjeta inteligente y no se necesita la funcionalidad USB.

  • Vídeo (clase 0e)

    La clase de vídeo abarca los dispositivos que se usa n para manipular vídeo o material relacionado con vídeo, como:

    • Cámaras web
    • Videocámaras digitales
    • Convertidores de vídeo analógico
    • Algunos sintonizadores de televisión
    • Algunas cámaras digitales que admiten el streaming de vídeo

    De forma predeterminada, el rendimiento óptimo de la cámara web se logra a través de la compresión de vídeo de cámara web HDX RealTime.

  • Controladores inalámbricos (clase e0)

    Abarca una amplia variedad de controladores inalámbricos, como los controladores de banda ultraancha y Bluetooth.

    Es posible que algunos de estos dispositivos proporcionen acceso de red importante o conecten periféricos importantes, como mouse o teclados Bluetooth.

    La directiva USB predeterminada no permite estos dispositivos. No obstante, es posible que en el caso de dispositivos particulares sea apropiado proporcionar acceso al uso de USB.

Lista de dispositivos USB

Puede actualizar la gama de dispositivos USB disponibles para la comunicación remota con escritorios. Para ello, modifique la lista de reglas predeterminadas del archivo usb.conf, ubicado en el dispositivo del usuario en $ICAROOT/.

Para actualizar la lista, puede agregar reglas de directivas nuevas para permitir o denegar dispositivos USB no incluidos en el intervalo predeterminado. Las reglas creadas de este modo por el administrador controlan qué dispositivos se ofrecen al servidor. Las reglas en el servidor controlan los dispositivos que se aceptarán.

La configuración de directivas predeterminada para los dispositivos inhabilitados es la siguiente:

DENY: class=09 # Dispositivos del hub

DENY: class=03 subclass=01 # Dispositivo de arranque HID (teclados y mouse)

DENY: class=0b # Tarjeta inteligente

DENY: class=e0 # Controladores inalámbricos

DENY: class=02 # Control CDC y comunicaciones

DENY: class=03 # UVC (cámara web)

DENY: class=0a # Datos de CDC

ALLOW: # Recurso de reserva definitivo: permitir todo lo demás

Reglas de directivas USB

Sugerencia: Cuando cree reglas de directivas, consulte los códigos de clase USB que se encuentran disponibles en el sitio web de USB en http://www.usb.org/. Las reglas de directivas del archivo usb.conf que hay en el dispositivo de usuario adoptan el formato {ALLOW DENY:} seguido de un conjunto de expresiones que se basan en valores para las siguientes etiquetas
Etiqueta Descripción
VID Identificador del proveedor tomado del descriptor del dispositivo
REL Identificador de la versión tomado del descriptor del dispositivo
PID Identificador del producto tomado del descriptor del dispositivo
Class Clase, tomada del descriptor del dispositivo o de un descriptor de la interfaz
SubClass SubClase del descriptor del dispositivo o de un descriptor de la interfaz
Prot Protocolo tomado del descriptor del dispositivo o de un descriptor de la interfaz

Al crear reglas de directivas, tenga en cuenta lo siguiente:

  • Las reglas no distinguen entre mayúsculas y minúsculas.
  • Las reglas pueden tener un comentario optativo al final que se introduce con el signo #. No es obligatorio usar un delimitador y el comentario se ignora para la comparación.
  • Se ignoran las líneas en blanco y las que son exclusivamente de comentario.
  • El espacio en blanco que se usa como separador se ignora, pero no puede aparecer en el medio de un número o de un identificador. Por ejemplo, Deny: Class=08 SubClass=05 es una regla válida, pero Deny: Class=0 8 Sub Class=05 no lo es.
  • Las etiquetas deben usar el operador de coincidencia =. Por ejemplo: VID=1230.

Ejemplo

Este ejemplo muestra una sección del archivo usb.conf en el dispositivo del usuario. Para que se implementen estas reglas, el mismo conjunto de reglas debe existir en el servidor.

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

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

DENY: Class=0D \# All Security Devices

Modos de inicio

Con el modo Desktop Appliance es posible cambiar cómo un escritorio virtual gestiona los dispositivos USB conectados con anterioridad. En la sección WfClient del archivo $ICAROOT/config/module.ini en cada dispositivo de usuario, configure DesktopApplianceMode=Boolean de esta manera.

   
TRUE Todos los dispositivos USB que ya estén conectados están disponibles al inicio. Los dispositivos están disponibles durante el arranque solamente si no están inhabilitados mediante una regla de denegación en las directivas de USB. Estas directivas de USB se establecen en el servidor (entrada del Registro) o en el dispositivo del usuario (archivo de configuración de reglas de directivas).
FALSE No hay dispositivos USB disponibles al inicio.

Nota:

Establezca la palabra clave “CONNECT” para habilitar la redirección automática de un dispositivo cuando se inicie una sesión. Además, establezca la palabra clave “ALLOW” para permitir la redirección automática de un dispositivo solo después de que se inicie una sesión. Sin embargo, si se establece la palabra clave CONNECT o ALLOW, el dispositivo se redirige automáticamente cuando se desconecta y se conecta durante una sesión.

Configurar la redirección automática de dispositivos USB

Anteriormente, durante una sesión, cuando un dispositivo se desconectaba y se conectaba, se redirigía automáticamente. Como resultado, se conectaba automáticamente al VDA. Con la versión 2207 de la aplicación Citrix Workspace, debe habilitar manualmente la redirección automática a través de los parámetros del archivo de configuración. La redirección automática de dispositivos USB está inhabilitada de forma predeterminada.

Para configurar la redirección automática de dispositivos USB (dispositivos normales y compuestos), haga lo siguiente:

  1. Vaya al archivo de configuración $Home/.ICAClient/wfclient.ini.
  2. Agregue la siguiente entrada:

    DesktopApplianceMode=True

  3. Vaya al archivo de configuración /opt/Citrix/ICAClient/usb.conf.
  4. Establezca cualquiera de las siguientes reglas de dispositivo:

    • CONNECT: Establezca la palabra clave “CONNECT” para habilitar la redirección automática de un dispositivo cuando se inicie una sesión.
    • ALLOW: Establezca la palabra clave “ALLOW” para permitir la redirección automática de un dispositivo solo después de que se inicie una sesión.

    Sin embargo, si se establece la palabra clave CONNECT o ALLOW, el dispositivo se redirige automáticamente cuando se desconecta y se conecta durante una sesión.

Regla de dispositivo de ejemplo:

CONNECT: vid=046d pid=0002 # Permitir un dispositivo específico por vid/pid`

ALLOW: vid=046D pid=0102 # Permitir un dispositivo específico por vid/pid`

Redirección de dispositivos USB compuestos

A partir de la versión 2207, la aplicación Citrix Workspace permite dividir dispositivos USB compuestos. Un dispositivo USB compuesto puede realizar más de una función. Esto se logra mediante la exposición de cada una de esas funciones desde interfaces diferentes. Ejemplos de dispositivos USB compuestos incluyen dispositivos HID que cuentan con entrada y salida de audio y vídeo.

Actualmente, la redirección de dispositivos USB compuestos solo está disponible en la sesión de escritorio. Los dispositivos divididos aparecen en Desktop Viewer.

Antes, cuando un dispositivo se desconectaba y conectaba durante una sesión, se redirigía automáticamente. Como resultado, se conectaba automáticamente al VDA. Con esta versión, debe habilitar manualmente la redirección automática a través de los parámetros del archivo de configuración. La redirección automática de dispositivos USB compuestos está inhabilitada de forma predeterminada.

USB 2.1 y versiones posteriores admiten la noción de dispositivos USB compuestos donde varios dispositivos secundarios comparten una única conexión con el mismo bus USB. Estos dispositivos emplean un solo espacio de configuración y una conexión de bus compartida, donde se usa un número de interfaz único 00-ff para identificar cada dispositivo secundario. Esto no es lo mismo que un concentrador USB que proporciona un nuevo origen de bus USB para otros dispositivos USB con direcciones independientes para la conexión.

Los dispositivos compuestos encontrados en el dispositivo de punto final cliente se pueden reenviar al host virtual como una de estas dos opciones:

  • Un solo dispositivo USB compuesto
  • Un conjunto de dispositivos secundarios independientes (dispositivos divididos)

Cuando se reenvía un dispositivo USB compuesto, todo el dispositivo deja de estar disponible para el dispositivo de punto final. Esta acción el uso local del dispositivo para todas las aplicaciones del dispositivo de punto final, incluido el cliente Citrix Workspace necesario para ofrecer una experiencia remota con HDX optimizado.

Considere un dispositivo con auriculares USB con dispositivo de audio y un botón HID para el control de volumen y silencio. Si todo el dispositivo se reenvía mediante un canal USB genérico, el dispositivo deja de estar disponible para la redirección por el canal de audio con HDX optimizado. Sin embargo, puede obtener una experiencia óptima cuando envía el audio se envía a través del canal de audio con HDX optimizado, a diferencia del audio enviado mediante controladores de audio del lado del host a través de la comunicación remota por USB genérico. Esto sucede porque los protocolos de audio USB suelen provocar ruido.

También nota problemas cuando el teclado del sistema o el dispositivo al que apunta forman parte de un dispositivo compuesto con otras funciones integradas que son necesarias para admitir sesiones remotas. Cuando se reenvía un dispositivo compuesto completo, el teclado o el mouse del sistema dejan de funcionar en el dispositivo de punto final, excepto en la sesión o la aplicación del escritorio remoto.

Para resolver estos problemas, Citrix recomienda dividir el dispositivo compuesto y reenviar solo las interfaces secundarias que usan un canal USB genérico. Este parámetro garantiza que los demás dispositivos secundarios estén disponibles para que los usen las aplicaciones en el dispositivo de punto final del cliente. Este dispositivo de punto final del cliente incluye la aplicación Citrix Workspace, que proporciona experiencias con HDX optimizado, a la vez que reenvía solo los dispositivos requeridos y hace que estén disponibles para la sesión remota.

Reglas de dispositivo:

Al igual que los dispositivos USB normales, los dispositivos compuestos para reenvío se seleccionan en función de las reglas de dispositivo establecidas en la configuración de la aplicación Citrix Workspace. La aplicación Citrix Workspace usa estas reglas para decidir los dispositivos USB para los que permitir o impedir el reenvío a la sesión remota.

Cada regla consta de lo siguiente que coincide con los dispositivos reales en el subsistema USB de punto final:

  • una palabra clave de acción como Permitir, Conectar o Denegar
  • dos puntos (:)
  • y cero o más parámetros de filtro

Los parámetros de filtro anteriores corresponden a los metadatos descriptores del dispositivo USB que usa cada dispositivo USB para identificarse.

Las reglas de dispositivo son texto no cifrado con cada regla en una sola línea y un comentario opcional precedido de un carácter #. Las reglas se cotejan de arriba a abajo (orden de prioridad descendente). Se aplica la primera regla que coincida con la interfaz del dispositivo o la interfaz secundaria. Se ignoran las reglas subsiguientes que seleccionen el mismo dispositivo o interfaz.

Para modificar las reglas de dispositivo, haga lo siguiente:

  1. Vaya al archivo /opt/Citrix/ICAClient/usb.conf.
  2. Actualice las reglas del dispositivo según sea necesario.

Reglas de dispositivo de ejemplo:

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

Puede usar cualquiera de estos parámetros de filtro para aplicar reglas a los dispositivos detectados:

Parámetro de filtro Descripción
vid=xxxx ID de proveedor del dispositivo USB (código hexadecimal de cuatro dígitos)
pid=xxxx ID de producto del dispositivo USB (código hexadecimal de cuatro dígitos)
rel=xxxx ID de versión del dispositivo USB (código hexadecimal de cuatro dígitos)
class=xx Código de clase del dispositivo USB (código hexadecimal de dos dígitos)
subclass=xx Código de subclase del dispositivo USB (código hexadecimal de dos dígitos)
prot=xx Código de protocolo del dispositivo USB (código hexadecimal de dos dígitos)
split=1 (o split=0) Seleccione un dispositivo compuesto que dividir (o no dividir)
intf=xx[,xx,xx,…] Seleccione un conjunto específico de interfaces secundarias de un dispositivo compuesto (lista separada por comas de códigos hexadecimales de dos dígitos)

Los seis primeros parámetros seleccionan los dispositivos USB a los que se debe aplicar la regla. Si algún parámetro no se especifica, la regla coteja dispositivos con CUALQUIER valor para ese parámetro.

El foro de implementadores de USB mantiene una lista de valores definidos de clase, subclase y protocolo en Defined Class Codes. USB-IF también conserva una lista de los ID de proveedores registrados. Puede comprobar los ID de proveedor, producto, versión e interfaz de un dispositivo específico con una herramienta gratuita como 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-->

Cuando están presentes, los dos últimos parámetros solo se aplican a dispositivos USB compuestos. El parámetro de división determina si un dispositivo compuesto debe reenviarse como un dispositivo dividido o como un solo dispositivo compuesto.

Split=1 indica que las interfaces secundarias seleccionadas de un dispositivo compuesto deben reenviarse como dispositivos divididos. Split=0 indica que el dispositivo compuesto no debe dividirse.

Nota:

Si el parámetro de división se omite, se presupone que Split=0.

El parámetro intf selecciona las interfaces secundarias específicas del dispositivo compuesto al que debe aplicarse la acción. Si se omite, la acción se aplica a todas las interfaces del dispositivo compuesto.

Considere un dispositivo USB compuesto (por ejemplo, un teclado Bloomberg 4) con seis interfaces:

  • Interfaz 0: Teclado Bloomberg 4 HID
  • Interfaz 1: Teclado Bloomberg 4 HID
  • Interfaz 2: Bloomberg 4 HID
  • Interfaz 3: Canal de audio del teclado Bloomberg 4
  • Interfaz 4: Canal de audio del teclado Bloomberg 4
  • Interfaz 5: Canal de audio del teclado Bloomberg 4
  • Las reglas sugeridas para este tipo de dispositivo son:

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

Redirección de dispositivos USB compuestos con Citrix Viewer

Para conectar los dispositivos USB desde la sección Dispositivos, haga lo siguiente:

  1. En una sesión de escritorio, vaya a Desktop Viewer en Dispositivos. Aparecerán los dispositivos USB divididos.

    Split devices section

  2. Para conectar un dispositivo, seleccione el elemento de menú correspondiente.

Para conectar los dispositivos USB desde la sección Preferencias, haga lo siguiente:

  1. Vaya a la sección Preferencias > Dispositivos. Aparecerán los dispositivos USB divididos.

    Split devices preferences section

  2. Seleccione las casillas de verificación situadas junto a los dispositivos correspondientes.

  3. Haga clic en Aceptar.

La configuración seleccionada se aplica a la conexión del dispositivo.

Nota:

Desactive el elemento de menú o las casillas de verificación situadas junto al dispositivo para desconectar los dispositivos correspondientes.

Mejora de la redirección automática de dispositivos USB compuestos

Anteriormente había que establecer DesktopApplianceMode en True en el archivo de configuración para redirigir automáticamente los dispositivos USB al iniciar una sesión.

Con la versión 2402, puede administrar los parámetros de conexión de los dispositivos desde una interfaz de usuario en la aplicación Citrix Workspace para Linux, sin tener que depender de archivos de configuración.

Se agregan las dos opciones siguientes en la sección Dispositivos de la pantalla de Preferencias:

  • Al iniciar una sesión, conectar los dispositivos automáticamente. De forma predeterminada, esta casilla de verificación no está seleccionada.
  • Al conectar un nuevo dispositivo mientras se ejecuta una sesión, conectar los dispositivos automáticamente. De forma predeterminada, esta casilla de verificación está seleccionada.

Esta función está habilitada de manera predeterminada.

Para configurar la redirección de dispositivos USB compuestos mediante la GUI, haga esto:

  1. En la barra de herramientas de Desktop Viewer de una sesión HDX, seleccione Preferencias. Se mostrará el cuadro de diálogo Citrix Workspace - Preferencias.
  2. Haga clic en Dispositivos. Puede ver la sección Dispositivos.

    Dispositivos

  3. Seleccione una o ambas de las siguientes opciones según necesite:

    • Al iniciar una sesión, conectar los dispositivos automáticamente: si se selecciona esta opción, los dispositivos USB se conectan automáticamente al escritorio virtual cuando se inicia una sesión.
    • Al conectar un dispositivo nuevo mientras se ejecuta una sesión, conectar los dispositivos automáticamente: si se selecciona esta opción, los dispositivos USB se conectan automáticamente al escritorio virtual mientras una sesión está en curso.
  4. Haga clic en Aceptar.

Cuando se configuran una o más sesiones HDX para redirección automática, los comportamientos son los siguientes:

  • Si hay una sesión HDX que tiene el foco, todos los dispositivos USB se redirigen automáticamente.
  • Si no hay ninguna sesión HDX que tiene el foco, los dispositivos USB se redirigen automáticamente a la última sesión HDX iniciada.
  • Después de redirigir un dispositivo USB, el usuario final puede detenerlo mediante la barra de herramientas de la sesión HDX o cerrar directamente la sesión HDX. En este caso, el dispositivo USB se desconecta y se vuelve a conectar a la máquina cliente. El usuario final puede redirigirlo de nuevo en cualquier momento.
USB