Crear un VDA de Linux no unido a un dominio mediante la instalación fácil

Este artículo le guía a través del método de instalación fácil para crear e inscribir un VDA de Linux no unido a un dominio con un catálogo de máquinas en Citrix DaaS o Citrix Virtual Apps and Desktops™ 2407 y versiones posteriores.

Importante:

Paso 1: Crear un catálogo de máquinas vacío

Inicie sesión en Citrix Web Studio™ y cree un catálogo de máquinas vacío sin máquinas. El VDA de Linux no admite el uso de un archivo de token para inscribirse en un catálogo de máquinas administrado por energía.

El proceso para crear catálogos de máquinas y añadir máquinas VDA de Linux es similar al enfoque tradicional de VDA de Windows. Para obtener una descripción más detallada de cómo completar estas tareas, consulte Crear catálogos de máquinas y Administrar catálogos de máquinas.

Para crear catálogos de máquinas que contengan máquinas VDA de Linux, existen algunas restricciones que diferencian el proceso de la creación de catálogos de máquinas para máquinas VDA de Windows:

  • Para el sistema operativo, seleccione:

    • La opción SO multisesión para un modelo de entrega de escritorios compartidos alojados.
    • La opción SO de sesión única para un modelo de entrega de escritorios dedicados VDI.
  • No mezcle máquinas VDA de Linux y Windows en el mismo catálogo de máquinas.
  • No mezcle máquinas unidas a un dominio y máquinas no unidas a un dominio en el mismo catálogo de máquinas.
  • Para crear un catálogo de máquinas de inscripción de tokens, elija SO de sesión única o SO multisesión en la página Tipo de máquina, y elija “Máquinas sin administración de energía (por ejemplo, máquinas físicas)” en la página Administración de máquinas.

Nota:

Las versiones anteriores de Citrix Studio no admiten la noción de un “SO Linux”. Sin embargo, seleccionar la opción SO de Windows Server o SO de servidor implica un modelo de entrega de escritorios compartidos alojados equivalente. Seleccionar la opción SO de escritorio de Windows o SO de escritorio implica un modelo de entrega de un solo usuario por máquina.

Paso 2: Crear un token de inscripción

Para crear un VDA no unido a un dominio mediante la instalación sencilla, necesita un archivo de token para inscribir el VDA en un catálogo de máquinas y autenticar el VDA en el controlador de entrega en la nube o local. El VDA de Linux no admite el uso de un archivo de token para la inscripción en un catálogo de máquinas con administración de energía.

Para crear un token de inscripción, complete los siguientes pasos en Citrix Web Studio:

Sugerencia:

En Citrix DaaS, Web Studio se conoce como Configuración completa.

  1. Seleccione el catálogo de máquinas vacío que creó anteriormente y, a continuación, seleccione Administrar tokens de inscripción en la barra de acciones.

  2. En la página Administrar tokens de inscripción, haga clic en Generar para crear un token de inscripción. Alternativamente, puede elegir un token existente que esté en estado válido.

  3. Siga el asistente para completar la configuración.

  4. Descargue el token creado correctamente y guárdelo con el privilegio mínimo en una ubicación segura. Más adelante, cuando ejecute el script de instalación fácil, la variable CTX_XDL_NDJ_ENROLLMENT_TOKEN_FILE le permite especificar la ruta al archivo de token para inscribir el VDA.

Paso 3: Instalar .NET

Además de .NET Runtime, debe instalar .ASP.NET Core Runtime versión 8 en todas las distribuciones de Linux compatibles antes de instalar o actualizar el VDA de Linux.

Si su distribución de Linux contiene la versión de .NET que necesita, instálela desde el feed integrado. De lo contrario, instale .NET desde el feed de paquetes de Microsoft. Para obtener más información, consulte https://docs.microsoft.com/es-es/dotnet/core/install/linux-package-managers.

Después de instalar .NET, ejecute el comando which dotnet para encontrar la ruta de su tiempo de ejecución.

Según la salida del comando, establezca la ruta binaria del tiempo de ejecución de .NET. Por ejemplo, si la salida del comando es /aa/bb/dotnet, use /aa/bb como ruta binaria de .NET.

Paso 4: Agregar certificados de CA autofirmados

Para obtener detalles sobre la configuración de certificados de CA autofirmados, consulte Configurar certificados autofirmados para WebSocket. Esta sección implica colocar y actualizar certificados de CA en el VDA de Linux.

  • Para RHEL y Rocky Linux:

    Guarde sus certificados de CA autofirmados en el directorio /etc/pki/ca-trust/source/anchors en el VDA de Linux y, a continuación, ejecute el siguiente comando para actualizar los certificados:

     sudo update-ca-trust
     <!--NeedCopy-->
    
  • Para SUSE, Ubuntu y Debian:

    Coloque el certificado de CA raíz en el directorio /usr/local/share/ca-certificates. Luego, ejecute el comando update-ca-certificate.

     sudo update-ca-certificates
     <!--NeedCopy-->
    

Paso 5: Descargar el paquete de Linux VDA

  1. Vaya a la página de descarga de Citrix Virtual Apps and Desktops.
  2. Expanda la versión adecuada de Citrix Virtual Apps™ and Desktops.
  3. Expanda Componentes para encontrar el Linux VDA. Por ejemplo:

    Componentes para Citrix Virtual Apps and Desktops

  4. Haga clic en el enlace de Linux VDA para acceder a las descargas de Linux VDA.

    Descargas de Linux VDA

  5. Descargue el paquete de Linux VDA que coincida con su distribución de Linux.

  6. Descargue la clave pública GPG que puede usar para verificar la integridad del paquete de Linux VDA. Por ejemplo:

    Clave pública GPG

    Para verificar la integridad del paquete de Linux VDA mediante la clave pública:

    • Para un paquete RPM, ejecute los siguientes comandos para importar la clave pública en la base de datos RPM y comprobar la integridad del paquete:

       rpmkeys --import <path to the public key>
       rpm --checksig --verbose <path to the Linux VDA package>
       <!--NeedCopy-->
      
    • Para un paquete DEB, ejecute los siguientes comandos para importar la clave pública en la base de datos DEB y comprobar la integridad del paquete:

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

Paso 6: Instalar el paquete de Linux VDA

Para configurar el entorno para el Linux VDA, ejecute los siguientes comandos.

Para distribuciones RHEL y Rocky Linux:

Nota:

  • Para RHEL y CentOS, instale el repositorio EPEL antes de poder instalar el VDA de Linux correctamente. Para obtener información sobre cómo instalar EPEL, consulte las instrucciones en https://docs.fedoraproject.org/es-es/epel/.

  • Antes de instalar el VDA de Linux en RHEL 9.x y Rocky Linux 9.x, actualice el paquete libsepol a la versión 3.4 o posterior.

sudo yum  -y localinstall   <PATH>/<Linux VDA RPM>
<!--NeedCopy-->

Nota:

Después de instalar el VDA de Linux en RHEL 8.x/9.x y Rocky Linux 8.x/9.x alojados en GCP, la conexión Ethernet podría perderse y el VDA de Linux podría quedar inaccesible después de reiniciar la VM. Para solucionar el problema, establezca una contraseña de root al iniciar sesión en la VM por primera vez y asegúrese de poder iniciar sesión en la VM como root. Luego, ejecute los siguientes comandos en la consola después de reiniciar la VM:

nmcli dev connect eth0
systemctl restart NetworkManager
<!--NeedCopy-->

Para distribuciones Ubuntu/Debian:

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

Nota:

  • Para instalar las dependencias necesarias para una distribución Debian 11, añada la línea deb http://deb.debian.org/debian/ bullseye main al archivo /etc/apt/sources.list.

  • Para Ubuntu 24.04/22.04 en GCP, desactive RDNS. Para ello, añada la línea rdns = false debajo de [libdefaults] en /etc/krb5.conf.

Para distribuciones SUSE:

  1. Para SUSE 15.6 en AWS, Azure y GCP, asegúrese de que:

    • Está utilizando libstdc++6 versión 12 o posterior.
    • El parámetro Default_WM en /etc/sysconfig/windowmanager esté establecido en “gnome”.
  2. Ejecute el siguiente comando para instalar el VDA de Linux:

    zypper -i install <PATH>/<Linux VDA RPM>
    <!--NeedCopy-->
    

Paso 7: Instalar los controladores NVIDIA GRID

Para habilitar HDX™ 3D Pro, debe instalar los controladores NVIDIA GRID en su hipervisor y en la máquina VDA.

Para instalar y configurar NVIDIA GRID Virtual GPU Manager (el controlador de host) en los hipervisores específicos, consulte las siguientes guías:

Para instalar y configurar los controladores de VM invitada de NVIDIA GRID, siga estos pasos generales:

  1. Asegúrese de que la VM invitada esté apagada.
  2. En el panel de control del hipervisor, asigne una GPU a la VM.
  3. Inicie la VM.
  4. Instale el controlador de VM invitada (de su proveedor de la nube o de NVIDIA) en la VM.

Paso 8: Especificar una base de datos para usar

Puede especificar SQLite o PostgreSQL para usar editando /etc/xdl/db.conf después de instalar el paquete Linux VDA.

Para ello, edite /etc/xdl/db.conf antes de ejecutar sudo /opt/Citrix/VDA/sbin/ctxinstall.sh o /opt/Citrix/VDA/bin/easyinstall.

Nota:

  • Recomendamos usar SQLite solo para el modo VDI.
  • Para la instalación fácil y MCS, puede especificar SQLite o PostgreSQL para usar sin tener que instalarlos manualmente. A menos que se especifique lo contrario a través de /etc/xdl/db.conf, el VDA de Linux usa PostgreSQL de forma predeterminada.
  • También puede usar /etc/xdl/db.conf para configurar el número de puerto para PostgreSQL.

Paso 9: Ejecute el script de instalación fácil para configurar el entorno y el VDA para completar la instalación

Después de instalar el paquete del VDA de Linux, configure el entorno de ejecución mediante el script ctxinstall.sh.

Nota:

Antes de configurar el entorno de ejecución, asegúrese de que la configuración regional en_US.UTF-8 esté instalada en su sistema operativo. Si la configuración regional no está disponible en su sistema operativo, ejecute el comando sudo locale-gen en_US.UTF-8. Para Debian, edite el archivo /etc/locale.gen descomentando la línea # en_US.UTF-8 UTF-8 y luego ejecute el comando sudo locale-gen.

ctxinstall.sh

ctxinstall.sh es el script de instalación fácil para realizar algunas configuraciones previas y establecer las variables de entorno de ejecución del VDA.

  • Solo el usuario root puede ejecutar este script.

  • La instalación fácil utiliza /opt/Citrix/VDA/sbin/ctxinstall.conf como su archivo de configuración para establecer, guardar y sincronizar los valores de todas las variables de entorno utilizadas. Le recomendamos que lea la plantilla (ctxinstall.conf.tmpl) detenidamente y luego personalice su propio ctxinstall.conf. Cuando cree el archivo de configuración por primera vez, utilice cualquiera de las siguientes formas:
    • Copiando el archivo de plantilla /opt/Citrix/VDA/sbin/ctxinstall.conf.tmpl y guardándolo como /opt/Citrix/VDA/sbin/ctxinstall.conf.
    • Ejecutando ctxinstall.sh. Cada vez que ejecute ctxinstall.sh, su entrada se guardará en /opt/Citrix/VDA/sbin/ctxinstall.conf.
  • La instalación fácil admite la ejecución modular. Los módulos incluyen verificación previa, instalación, configuración de dominio, configuración y verificación.

  • Los detalles de depuración de este script se pueden encontrar en /var/log/xdl/ctxinstall.log.

Para obtener más información, utilice el comando de ayuda ctxinstall.sh -h.

Nota:

  • Siguiendo el principio de privilegio mínimo, asegúrese de que solo el usuario root pueda leer /opt/Citrix/VDA/sbin/ctxinstall.conf, ya que la contraseña de unión a un dominio podría estar establecida en el archivo.
  • Al desinstalar el Linux VDA, se eliminan los archivos de /opt/Citrix/VDA. Le recomendamos que haga una copia de seguridad de /opt/Citrix/VDA/sbin/ctxinstall.conf antes de desinstalar el VDA.

Puede ejecutar ctxinstall.sh en modo interactivo o en modo silencioso. Antes de ejecutar el script, establezca las siguientes variables de entorno:

  • CTX_XDL_NON_DOMAIN_JOINED=’y|n’ – Si se une la máquina a un dominio. El valor predeterminado es ‘n’. Para escenarios sin unión a un dominio, establézcalo en ‘y’.

  • CTX_XDL_NDJ_ENROLLMENT_TOKEN_FILE=’<path-to-token-file-on-vda-machine>‘ – Para crear un VDA sin unión a un dominio mediante la instalación sencilla, necesita un archivo de token para inscribir el VDA en un catálogo de máquinas del Delivery Controller. Guarde el token con el mínimo privilegio en una ubicación segura.

  • CTX_XDL_VDI_MODE=’y|n’ – Si se configura la máquina como un modelo de entrega de escritorio dedicado (VDI) o un modelo de entrega de escritorio compartido alojado. Para entornos HDX 3D Pro, establezca el valor en ‘y’.
  • CTX_XDL_HDX_3D_PRO=’y|n’ – El Linux VDA admite HDX 3D Pro, un conjunto de tecnologías de aceleración de GPU diseñadas para optimizar la virtualización de aplicaciones con gráficos enriquecidos. Si se selecciona HDX 3D Pro, el VDA se configura para el modo de escritorios VDI (sesión única), es decir, CTX_XDL_VDI_MODE=’y’.

  • CTX_XDL_START_SERVICE=’y|n’ – Determina si los servicios de Linux VDA se inician cuando la configuración se ha completado.

  • CTX_XDL_REGISTER_SERVICE=’y|n’ – Los servicios de Linux Virtual Desktop se inician después del arranque de la máquina.

  • CTX_XDL_ADD_FIREWALL_RULES=’y|n’ – Los servicios de Linux VDA requieren que se permitan las conexiones de red entrantes a través del firewall del sistema. Puede abrir los puertos necesarios (de forma predeterminada, los puertos 80 y 1494) automáticamente en el firewall del sistema para Linux Virtual Desktop.

  • CTX_XDL_DESKTOP_ENVIRONMENT=gnome/gnome-classic/mate – Especifica el entorno de escritorio GNOME, GNOME Classic o MATE que se utilizará en las sesiones. Si deja la variable sin especificar, se utiliza el escritorio predeterminado configurado en el VDA.

  • CTX_XDL_DESKTOP_ENVIRONMENT=gnome/gnome-classic/kde/mate/xfce/’<none>‘ – Especifica el entorno de escritorio GNOME, GNOME Classic, KDE, MATE o Xfce que se utilizará en las sesiones. Si lo establece en ‘<none>’, se utiliza el escritorio predeterminado configurado en el VDA. Puede especificar un entorno de escritorio para usar en las sesiones mediante la variable CTX_XDL_DESKTOP_ENVIRONMENT. También puede cambiar entre entornos de escritorio ejecutando comandos o utilizando la bandeja del sistema. Para obtener más información, consulte Comandos de cambio de escritorio y Bandeja del sistema.

  • CTX_XDL_DOTNET_RUNTIME_PATH=’<path-to-install-dotnet-runtime>‘ – La ruta para instalar .NET para admitir el nuevo servicio de agente de intermediación (ctxvda). La ruta predeterminada es ‘/usr/bin’.

  • CTX_XDL_VDA_PORT=’<port-number>‘ – El VDA de Linux se comunica con los Delivery Controllers a través de un puerto TCP/IP.

Modo interactivo

Para ejecutar el script ctxinstall.sh en modo interactivo, utilice el comando sudo /opt/Citrix/VDA/sbin/ctxinstall.sh sin la opción -S. Escriba el valor de la variable correspondiente en cada solicitud de la interfaz de línea de comandos. Si una variable ya está establecida, ctxinstall.sh le pedirá confirmación en caso de que desee cambiarla.

Modo silencioso

En modo silencioso, debe establecer las variables anteriores utilizando /opt/Citrix/VDA/sbin/ctxinstall.conf o el comando export. Después, ejecute ctxinstall.sh -S (tenga en cuenta que la letra S aquí está en mayúsculas). Si no se establecen todas las variables requeridas o algún valor no es válido, ctxinstall.sh aborta la ejecución, a menos que haya valores predeterminados.

Si lo establece, el valor exportado para cada variable sobrescribe el valor en /Citrix/VDA/sbin/ctxinstall.conf. Todos los valores actualizados se guardan en /Citrix/VDA/sbin/ctxinstall.conf.

export CTX_XDL_NON_DOMAIN_JOINED='y'
export CTX_XDL_NDJ_ENROLLMENT_TOKEN_FILE='<token-file-path>'
export CTX_XDL_VDI_MODE='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_HDX_3D_PRO='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>'
sudo -E /opt/Citrix/VDA/sbin/ctxinstall.sh -S
<!--NeedCopy-->

Al ejecutar el comando sudo, escriba la opción -E para pasar las variables de entorno existentes al nuevo shell que crea. Le recomendamos que cree un archivo de script de shell a partir de los comandos anteriores con #!/bin/bash como primera línea.

Alternativamente, puede especificar todas las variables utilizando un solo comando.

Para configurar las variables de entorno de ejecución del VDA (aquellas variables que comienzan con ‘CTX_XDL_’), puede ejecutar ctxinstall.sh -s (tenga en cuenta que la letra s aquí está en minúsculas).

Paso 10: Ejecute XDPing

Ejecute sudo /opt/Citrix/VDA/bin/xdping para comprobar si hay problemas de configuración comunes en un entorno Linux VDA. Para obtener más información, consulte XDPing.

Paso 11: Ejecute el VDA de Linux

Iniciar el VDA de Linux:

Para iniciar los servicios del VDA de Linux:

sudo systemctl start ctxhdx.service

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

Detener el VDA de Linux:

Para detener los servicios de Linux VDA:

sudo systemctl stop ctxvda.service

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

Nota:

Antes de detener los servicios ctxvda y ctxhdx, ejecute el comando systemctl stop ctxmonitord para detener el demonio del servicio de supervisión. De lo contrario, el demonio del servicio de supervisión reiniciará los servicios que detuvo.

Reiniciar el Linux VDA:

Para reiniciar los servicios de Linux VDA:

sudo systemctl stop ctxvda.service

sudo systemctl restart ctxhdx.service

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

Comprobar el estado del Linux VDA:

Para comprobar el estado de ejecución de los servicios de Linux VDA:

sudo systemctl status ctxvda.service

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

Paso 12: Crear grupos de entrega

El proceso para crear un grupo de entrega y agregar catálogos de máquinas que contengan máquinas Linux VDA es casi idéntico al de las máquinas Windows VDA. Para obtener una descripción más detallada de cómo completar estas tareas, consulte Crear grupos de entrega.

Para crear grupos de entrega que contengan catálogos de máquinas Linux VDA, se aplican las siguientes restricciones:

  • Asegúrese de que los usuarios y grupos de AD que seleccione se hayan configurado correctamente para iniciar sesión en las máquinas Linux VDA.
  • No permita el inicio de sesión de usuarios no autenticados (anónimos).
  • No mezcle el grupo de entrega con catálogos de máquinas que contengan máquinas Windows.

Importante:

La publicación de aplicaciones es compatible con Linux VDA versión 1.4 y posteriores. Sin embargo, Linux VDA no admite la entrega de escritorios y aplicaciones a la misma máquina.

Para obtener información sobre cómo crear catálogos de máquinas y grupos de entrega, consulte Citrix Virtual Apps and Desktops 7 2503.

Paso 13: Habilitar la asignación de cuentas locales

¿Qué ocurre si la asignación de cuentas locales no está habilitada?

Las sesiones alojadas en VDA no unidos a un dominio fallan al iniciar sesión, mostrando un mensaje de contraseña pero sin aceptar la contraseña correcta. Se pueden encontrar errores similares a los siguientes en el hdx.log:

2024-09-25 06:40:30.767979 [LOGIN_BOX:ERROR] <P124211:T58675:S4> citrix-ctxlogin: PamAuthenticate: pam authentication: Authentication failure. Can retry for user 'user3'
2024-09-25 06:40:30.768431 [LOGIN:ERROR] <P124211:T58675:S4> citrix-ctxlogin: LoginBoxValidate: Failed to validate user 'user3'. Due to INVALID_PASSWORD
2024-09-25 06:40:30.768947 [LOGIN_AUTH:INFO] <P124218:T58682:S4> citrix-ctxloginui: CalLabelFormat: Update username label on LoginUI from 'user3' to 'user3' (18)
2024-09-25 06:41:18.766196 [GFX_SLIDER:ERROR] <P124161:T58699:S4> citrix-ctxgfx: GfxCreateSliderListener: Failed to get user home dir.
<!--NeedCopy-->

Habilitar la asignación de cuentas locales

Para asegurarse de que los usuarios puedan iniciar sesión en un VDA de Linux no unido a un dominio, habilite la asignación de cuentas locales con el siguiente comando:

Set-BrokerDesktopGroup -Name "<your delivery group name>" -MachineLogOnType LocalMappedAccount
<!--NeedCopy-->

Para una implementación local, ejecute el comando directamente en el Delivery Controller. Para una implementación de Citrix DaaS, ejecute el comando a través del SDK de PowerShell remoto de Citrix Virtual Apps y Desktops.