Linux Virtual Delivery Agent

Crear VDA unidos a un dominio mediante easy install

Importante:

  • Para instalaciones nuevas, le recomendamos que consulte este artículo para una instalación rápida. Este artículo explica cómo instalar y configurar el VDA de Linux mediante easy install. Easy install ahorra tiempo y trabajo y es menos propenso a errores que la instalación manual. Le ayuda a configurar un entorno en ejecución del VDA de Linux mediante la instalación automática de los paquetes necesarios y la personalización de los archivos de configuración.

  • Para crear VDA no unidos a un dominio, puede usar tanto Machine Creation Services (MCS) como easy install. Para obtener más información, consulte Crear VDA de Linux no unidos a un dominio mediante MCS y Crear un VDA de Linux no unido a un dominio mediante easy install (versión preliminar).

  • Para obtener información sobre las funciones disponibles para los VDA no unidos a un dominio, vaya a VDA no unidos a un dominio.

Paso 1: Preparar la información de configuración y la máquina Linux

Recopile la siguiente información de configuración necesaria para easy install:

  • Nombre de host – Nombre de host de la máquina en la que se va a instalar el VDA de Linux.
  • Dirección IP del servidor de nombres de dominio.
  • Dirección IP o nombre de cadena del servidor NTP.
  • Nombre de dominio – El nombre NetBIOS del dominio.
  • Nombre de ámbito – El nombre de ámbito Kerberos.
  • Nombre de dominio completo (FQDN) del dominio.
  • Método de integración de Active Directory (AD) - Actualmente, easy install admite Winbind, SSSD, Centrify, PBIS y Quest. Easy install admite Quest solo para RHEL y Rocky Linux.
  • Nombre de usuario – El nombre del usuario que une la máquina al dominio.
  • Contraseña - La contraseña del usuario que une la máquina al dominio.
  • OU – La unidad organizativa. Opcional.

Importante:

  • Para instalar el VDA de Linux, verificar que los repositorios se hayan añadido correctamente en la máquina Linux.
  • Para iniciar una sesión, verificar que el sistema X Window y los entornos de escritorio estén instalados.
  • Por seguridad, la instalación fácil no guarda la contraseña de unión al dominio. Cada vez que ejecute el script de instalación fácil (ctxinstall.sh) en modo interactivo, debe introducir la contraseña de unión al dominio manualmente. En modo silencioso, debe establecer la contraseña de unión al dominio en /Citrix/VDA/sbin/ctxinstall.conf o exportar la contraseña. Le recomendamos que no utilice la cuenta de administrador para la unión al dominio. En su lugar, delegue los permisos de unión al dominio a un usuario de Active Directory que no sea la cuenta de administrador. Para ello, delegue el control en el controlador de dominio mediante el Asistente para la delegación de control.

Paso 2: Preparar el hipervisor

Se requieren algunos cambios al ejecutar el VDA de Linux como máquina virtual en un hipervisor compatible. Realice los siguientes cambios según la plataforma de hipervisor en uso. No se requieren cambios si ejecuta la máquina Linux en hardware físico.

Corregir la sincronización horaria en XenServer (anteriormente Citrix Hypervisor™)

Cuando la función XenServer® Time Sync está habilitada, dentro de cada VM Linux paravirtualizada, experimentará problemas con NTP y XenServer. Ambos intentan administrar el reloj del sistema. Para evitar que el reloj se desincronice con otros servidores, asegúrese de que el reloj del sistema dentro de cada invitado Linux esté sincronizado con NTP. Este caso requiere deshabilitar la sincronización horaria del host. No se requieren cambios en el modo HVM.

Si está ejecutando un kernel de Linux paravirtualizado con las herramientas de VM de XenServer instaladas, puede comprobar si la función XenServer Time Sync está presente y habilitada desde dentro de la VM de Linux:

su -

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

Este comando devuelve 0 o 1:

  • 0 - La función de sincronización horaria está habilitada y debe deshabilitarse.
  • 1 - La función de sincronización horaria está deshabilitada y no se requiere ninguna acción adicional.

Si el archivo /proc/sys/xen/independent_wallclock no está presente, los siguientes pasos no son necesarios.

Si está habilitada, deshabilite la función de sincronización de hora escribiendo 1 en el archivo:

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

Para que este cambio sea permanente y persistente después de reiniciar, edite el archivo /etc/sysctl.conf y añada la línea:

xen.independent_wallclock = 1

Para verificar estos cambios, reinicie el sistema:

su -

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

Este comando devuelve el valor 1.

Corregir la sincronización de hora en Microsoft Hyper-V

Las máquinas virtuales Linux con los Servicios de integración de Linux de Hyper-V instalados pueden aplicar la función de sincronización de hora de Hyper-V para usar la hora del sistema operativo host. Para asegurarse de que el reloj del sistema permanezca preciso, debe habilitar esta función junto con los servicios NTP.

Desde el sistema operativo de administración:

  1. Abra la consola del Administrador de Hyper-V.
  2. Para la configuración de una máquina virtual Linux, seleccione Servicios de integración.
  3. Asegúrese de que la opción Sincronización de hora esté seleccionada.

Nota:

Este enfoque es diferente al de VMware y XenServer (anteriormente Citrix Hypervisor), donde la sincronización de hora del host está deshabilitada para evitar conflictos con NTP. La sincronización de hora de Hyper-V puede coexistir y complementar la sincronización de hora de NTP.

Corregir la sincronización de hora en ESX y ESXi

Cuando la función de sincronización de hora de VMware está habilitada, dentro de cada máquina virtual Linux paravirtualizada, experimentará problemas con el NTP y el hipervisor. Ambos intentan sincronizar el reloj del sistema. Para evitar que el reloj se desincronice con otros servidores, asegúrese de que el reloj del sistema dentro de cada invitado Linux esté sincronizado con el NTP. Este caso requiere deshabilitar la sincronización de hora del host.

Si está ejecutando un kernel de Linux paravirtualizado con VMware Tools instalado:

  1. Abra vSphere Client.
  2. Edite la configuración de la máquina virtual Linux.
  3. En el cuadro de diálogo Virtual Machine Properties, abra la ficha Options.
  4. Seleccione VMware Tools.
  5. En el cuadro Advanced, desactive Synchronize guest time with host.

Paso 3: Instalar .NET

Antes de instalar el VDA de Linux, instale .NET (/es-es/linux-virtual-delivery-agent/2402-ltsr/system-requirements#net-requirements).

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

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

Paso 4: Descargar el paquete del VDA de Linux

  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 Components para encontrar el VDA de Linux. Por ejemplo:

    Componentes de 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 a 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 a 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 5: Instalar el paquete de Linux VDA

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

Para las distribuciones Amazon Linux 2, CentOS, RHEL y Rocky Linux:

Nota:

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

  • Antes de instalar Linux VDA en RHEL 9.6/9.4/9.3/9.2/9.0 y Rocky Linux 9.6/9.4/9.3/9.2/9.0, 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 alojado 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, agregue la línea deb http://deb.debian.org/debian/ bullseye main al archivo /etc/apt/sources.list.

  • Para Ubuntu 20.04 en GCP, deshabilite RDNS. Para ello, agregue la línea rdns = false debajo de [libdefaults] en /etc/krb5.conf.

Para distribuciones SUSE:

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

    • Está utilizando la versión 12 o posterior de libstdc++6.
    • 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 6: Instalar los controladores NVIDIA GRID

Para habilitar HDX™ 3D Pro, debe instalar los controladores NVIDIA GRID en su hipervisor y en las máquinas 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 la máquina virtual invitada NVIDIA GRID, realice los siguientes pasos generales:

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

Paso 7: Especificar una base de datos para usar

Puede cambiar entre SQLite y PostgreSQL después de instalar el paquete de Linux VDA. Para ello, siga estos pasos:

Nota:

  • Le recomendamos que use SQLite solo para el modo VDI y PostgreSQL para un modelo de entrega de escritorios compartidos alojados.
  • Para la instalación sencilla 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, Linux VDA usa PostgreSQL de forma predeterminada. Si necesita una versión personalizada de PostgreSQL en lugar de la versión proporcionada por su distribución de Linux, debe instalar la versión especificada manualmente, editar /etc/xdl/db.conf para reflejar la nueva versión e iniciar el servicio PostgreSQL antes de ejecutar el script de instalación sencilla (ctxinstall.sh) o el script de MCS (deploymcs.sh).
  • También puede usar /etc/xdl/db.conf para configurar el número de puerto de PostgreSQL.
  1. (Opcional) Para usar una versión personalizada de PostgreSQL en lugar de la versión proporcionada por su distribución de Linux, instale la versión especificada manualmente e inicie el servicio PostgreSQL.
  2. Edite /etc/xdl/db.conf para especificar una base de datos que usar. El siguiente es un ejemplo del archivo db.conf:

    # database configuration file for Linux VDA
    
    ## database choice
    # possible choices are:
    #     SQLite
    #     PostgreSQL
    # default choice is PostgreSQL
    DbType="PostgreSQL"
    
    
    ## database port
    # specify database port for the database.
    # if not specified, default port will be used:
    # SQLite: N/A
    # PostgreSQL: 5432
    DbPort=5432
    
    
    ## PostgreSQL customized
    # only the following value means true, otherwise false:
    #     true
    #     yes
    #     y
    #     YES
    #     Y
    # default is false
    DbCustomizePostgreSQL=false
    
    ## PostgreSQL service name
    # specify the service name of PostgreSQL for Linux VDA
    # default is "postgresql"
    DbPostgreSQLServiceName="postgresql"
    <!--NeedCopy-->
    

    Para usar una versión personalizada de PostgreSQL, establezca DbCustomizePostgreSQL en true.

  3. Ejecute sudo /opt/Citrix/VDA/sbin/ctxinstall.sh o /opt/Citrix/VDA/bin/easyinstall.

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

Después de instalar el paquete de Linux VDA, configure el entorno de ejecución mediante el script ctxinstall.sh o la interfaz gráfica de usuario.

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, a continuación, 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 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 guarda en /opt/Citrix/VDA/sbin/ctxinstall.conf.
  • La instalación fácil admite la ejecución modular. Los módulos incluyen comprobació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 porque la contraseña de unión al dominio podría estar establecida en el archivo.
  • Al desinstalar el VDA de Linux, 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 unidos a un dominio, establézcalo en ‘n’.

  • CTX_XDL_AD_INTEGRATION=’winbind|sssd|centrify|pbis|quest’ – El VDA de Linux requiere la configuración de Kerberos para autenticarse con los Delivery Controllers. La configuración de Kerberos se determina a partir de la herramienta de integración de Active Directory instalada y configurada en el sistema.

  • CTX_XDL_DDC_LIST=’<list-ddc-fqdns>‘ – El VDA de Linux requiere una lista de nombres de dominio completos (FQDN) de Delivery Controller separados por espacios para registrarse con un Delivery Controller. Se debe especificar al menos un FQDN o CNAME.

  • 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 VDA de Linux es compatible con 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 del VDA de Linux se inician cuando se completa la configuración.

  • 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 del VDA de Linux requieren que se permitan las conexiones de red entrantes a través del firewall del sistema. Puede abrir los puertos necesarios (los puertos 80 y 1494 de forma predeterminada) automáticamente en el firewall del sistema para Linux Virtual Desktop.

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

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

  • CTX_XDL_SITE_NAME=<dns-name> – El VDA de Linux detecta servidores LDAP a través de DNS. Para limitar los resultados de la búsqueda de DNS a un sitio local, especifique un nombre de sitio DNS. Si no es necesario, establézcalo en ‘<none>‘.

  • CTX_XDL_LDAP_LIST=’<list-ldap-servers>‘ – El VDA de Linux consulta DNS para descubrir servidores LDAP. Si DNS no puede proporcionar registros de servicio LDAP, puede proporcionar una lista de FQDN de LDAP separados por espacios con puertos LDAP. Por ejemplo, ad1.mycompany.com:389 ad2.mycompany.com:3268 ad3.mycompany.com:3268. Para habilitar consultas LDAP más rápidas dentro de un bosque de Active Directory, habilite el Catálogo global en un controlador de dominio y especifique el número de puerto LDAP relevante como 3268. Esta variable se establece en ‘<none>‘ de forma predeterminada.

  • CTX_XDL_SEARCH_BASE=search-base-set – El VDA de Linux consulta LDAP a través de una base de búsqueda establecida en la raíz del dominio de Active Directory (por ejemplo, DC=mycompany,DC=com). Para mejorar el rendimiento de la búsqueda, puede especificar una base de búsqueda (por ejemplo, OU=VDI,DC=mycompany,DC=com). Si no es necesario, establézcalo en ‘<none>‘.

  • CTX_XDL_SUPPORT_DDC_AS_CNAME=’y|n’ – El VDA de Linux admite la especificación de un nombre de Delivery Controller mediante un registro CNAME de DNS.

  • CTX_EASYINSTALL_DNS=’<ip-address-of-dns>‘ – La dirección IP de DNS.

  • CTX_EASYINSTALL_HOSTNAME=host-name – El nombre de host del servidor VDA de Linux.

  • CTX_EASYINSTALL_NTPS=address-of-ntps – La dirección IP o el nombre de cadena del servidor NTP.

  • CTX_EASYINSTALL_REALM=realm-name – El nombre del reino Kerberos.

  • CTX_EASYINSTALL_FQDN=ad-fqdn-name

  • CTX_EASYINSTALL_USERNAME=domain-user-name – El nombre del usuario que une la máquina al dominio.

  • CTX_EASYINSTALL_PASSWORD=password – La contraseña del usuario que une la máquina al dominio.

Nota:

Recomendamos no utilizar la cuenta de administrador para la unión al dominio. En su lugar, delegue los permisos de unión al dominio a un usuario de Active Directory que no sea la cuenta de administrador. Para ello, delegue el control en el controlador de dominio mediante el Asistente para la delegación de control.

Las siguientes cuatro variables son opcionales. Incluso si no se configuran, ctxinstall.sh no se abortará en modo silencioso y no se le solicitará la entrada del usuario en modo interactivo. Puede configurarlas solo exportando sus valores o editando /Citrix/VDA/sbin/ctxinstall.conf.

  • CTX_EASYINSTALL_NETBIOS_DOMAIN=netbios-domain-name – El nombre de dominio NetBIOS es normalmente el primer componente del nombre de dominio DNS separado por un punto (.). De lo contrario, personalice un nombre de dominio NetBIOS diferente. Esta variable es opcional.

  • CTX_EASYINSTALL_OU=ou-value – Los valores de OU varían con los diferentes métodos de integración de AD. Para ver un ejemplo de valores de OU, consulte la tabla en la sección Consideraciones de este artículo. Esta variable es opcional.
  • CTX_EASYINSTALL_CENTRIFY_LOCAL_PATH=centrify-local-path – Easy install ayuda a descargar el paquete de Centrify de Internet. Sin embargo, si Centrify ya está instalado, puede obtener el paquete de Centrify de un directorio local definido por esta variable. Esta variable es opcional.
  • CTX_EASYINSTALL_PBIS_LOCAL_PATH= pbis-local-path – Easy install ayuda a descargar el paquete de PBIS de Internet. Sin embargo, si PBIS ya está instalado, puede obtener el paquete de PBIS de un directorio local definido por esta variable. Esta variable es opcional.

Consideraciones

  • El nombre de dominio NetBIOS suele ser el primer componente del nombre de dominio DNS separado por un punto (.). Para personalizar un nombre de dominio NetBIOS diferente en su entorno, establezca la variable de entorno CTX_EASYINSTALL_NETBIOS_DOMAIN en /opt/Citrix/VDA/sbin/ctxinstall.conf.

  • Para unir su VDA a una OU específica, haga lo siguiente:

    1. Asegúrese de que la OU específica exista en el controlador de dominio.

      Para ver un ejemplo de OU, consulte la siguiente captura de pantalla:

      Un ejemplo de OU

    2. Establezca la variable de entorno CTX_EASYINSTALL_OU en /opt/Citrix/VDA/sbin/ctxinstall.conf.

      Los valores de OU varían según los diferentes métodos de AD. La siguiente tabla refleja los nombres de OU de ejemplo en la captura de pantalla anterior. Puede usar cualquier otro nombre de OU en su organización.

      SO Winbind SSSD Centrify PBIS
      Amazon Linux 2 "Linux/amazon" "Linux/amazon" "XD.LOCAL/Linux/amazon" "Linux/amazon"
      Debian "Linux/debian" "Linux/debian" "XD.LOCAL/Linux/debian" "Linux/debian"
      RHEL 9.6/9.4/9.3/9.2/9.0, Rocky Linux 9.6/9.4/9.3/9.2/9.0 "OU=redhat,OU=Linux" "OU=redhat,OU=Linux" N/A N/A
      RHEL 8.x "OU=redhat,OU=Linux" "OU=redhat,OU=Linux" "XD.LOCAL/Linux/redhat" "Linux/redhat"
      Rocky Linux 8.x "OU=redhat,OU=Linux" "OU=redhat,OU=Linux" N/D N/D
      RHEL 7 "Linux/redhat" "Linux/redhat" "XD.LOCAL/Linux/redhat" "Linux/redhat"
      SUSE "Linux/suse" "Linux/suse" "XD.LOCAL/Linux/suse" "Linux/suse"
      Ubuntu "Linux/ubuntu" "Linux/ubuntu" "XD.LOCAL/Linux/ubuntu" "Linux/ubuntu"
  • Centrify no admite la configuración DNS puramente IPv6. Se requiere al menos un servidor DNS que utilice IPv4 en /etc/resolv.conf para que adclient encuentre los servicios de AD correctamente.

    Registro:

     ADSITE   : Check that this machine's subnet is in a site known by AD   : Failed
              : This machine's subnet is not known by AD.
              : We guess you should be in the site Site1.
     <!--NeedCopy-->
    

    Este problema es exclusivo de Centrify y su configuración. Para resolverlo, haga lo siguiente:

    a. Abra Herramientas administrativas en el controlador de dominio. b. Seleccione Sitios y servicios de Active Directory. c. Agregue una dirección de subred adecuada para Subredes.

  • Easy install admite IPv6 puro a partir de Linux VDA 7.16. Se aplican las siguientes condiciones previas y limitaciones:

    • Su repositorio de Linux debe estar configurado para garantizar que su máquina pueda descargar los paquetes necesarios a través de redes IPv6 puras.
    • Centrify no es compatible con redes IPv6 puras.

    Nota:

    Si su red es IPv6 pura y toda su entrada está en el formato IPv6 adecuado, el VDA se registra con el Delivery Controller™ a través de IPv6. Si su red tiene una configuración híbrida de IPv4 e IPv6, el tipo de la primera dirección IP de DNS determina si se utiliza IPv4 o IPv6 para el registro.

  • Puede especificar un entorno de escritorio para usar en las sesiones mediante la variable CTX_XDL_DESKTOP_ENVIRONMENT, como se describió anteriormente. 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.

  • Si elige Centrify como método para unirse a un dominio, el script ctxinstall.sh requiere el paquete de Centrify. Formas en que ctxinstall.sh puede obtener el paquete de Centrify:

  • Si elige PBIS como método para unirse a un dominio, el script ctxinstall.sh requiere el paquete de PBIS. Formas en que ctxinstall.sh puede obtener el paquete de PBIS:

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 mediante /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.

El valor exportado para cada variable sobrescribe el valor en /Citrix/VDA/sbin/ctxinstall.conf, a menos que no esté establecido. Todos los valores actualizados se guardan en /Citrix/VDA/sbin/ctxinstall.conf, excepto la contraseña de unión al dominio. Por lo tanto, en modo silencioso, debe establecer la contraseña de unión al dominio en /Citrix/VDA/sbin/ctxinstall.conf o exportar la contraseña.

export CTX_XDL_NON_DOMAIN_JOINED='n'
export CTX_XDL_AD_INTEGRATION=winbind|centrify|sssd|pbis|quest
export CTX_XDL_DDC_LIST='<list-ddc-fqdns>'
export CTX_XDL_VDI_MODE='y|n'
export CTX_XDL_HDX_3D_PRO='y|n'
export CTX_XDL_START_SERVICE='y|n'
export CTX_XDL_REGISTER_SERVICE='y|n'
export CTX_XDL_ADD_FIREWALL_RULES='y|n'
export CTX_XDL_DESKTOP_ENVIRONMENT=gnome|gnome-classic|kde|mate|xfce|'<none>'
export CTX_XDL_DOTNET_RUNTIME_PATH='<path-to-install-dotnet-runtime>'
export CTX_XDL_VDA_PORT='<port-number>'
export CTX_XDL_SITE_NAME='<dns-site-name>'|'<none>'
export CTX_XDL_LDAP_LIST='<list-ldap-servers>'|'<none>'
export CTX_XDL_SEARCH_BASE='<search-base-set>'|'<none>'
export CTX_XDL_SUPPORT_DDC_AS_CNAME='y|n'
export CTX_EASYINSTALL_DNS='<ip-address-of-dns>'
export CTX_EASYINSTALL_HOSTNAME='<host-name>'
export CTX_EASYINSTALL_NTPS='<address-of-ntps>'
export CTX_EASYINSTALL_REALM='<realm-name>'
export CTX_EASYINSTALL_FQDN='<ad-fqdn-name>'
export CTX_EASYINSTALL_USERNAME='<domain-user-name>'
export CTX_EASYINSTALL_PASSWORD='<password>'
export CTX_EASYINSTALL_NETBIOS_DOMAIN='<netbios-domain>'
export CTX_EASYINSTALL_OU='<organization-unit>'
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 mediante un solo comando.

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

GUI

Puede utilizar la instalación fácil a través de una GUI. Ejecute el comando /opt/Citrix/VDA/bin/easyinstall en el entorno de escritorio de su VDA y, a continuación, siga las instrucciones de la GUI de instalación fácil.

GUI de instalación sencilla

La GUI de instalación sencilla le guía a través de las siguientes operaciones:

  • Comprobar el entorno del sistema
  • Instalar dependencias
  • Unir el VDA a un dominio especificado
  • Configurar el entorno de tiempo de ejecución

Sugerencia:

Haga clic en Guardar para guardar la configuración de las variables en un archivo local en la ruta que especifique. Haga clic en Cargar para cargar la configuración de las variables desde un archivo que especifique. Para obtener información sobre cómo configurar las variables de MCS, consulte Paso 3: Preparar una imagen maestra.

Paso 9: Ejecutar XDPing

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

Paso 10: Ejecutar el Linux VDA

Iniciar el Linux VDA:

Para iniciar los servicios de Linux VDA:

sudo systemctl start ctxhdx.service

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

Detener el Linux VDA:

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

Para reiniciar los servicios del VDA de Linux:

sudo systemctl stop ctxvda.service

sudo systemctl restart ctxhdx.service

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

Comprobar el estado del VDA de Linux:

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

sudo systemctl status ctxvda.service

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

Paso 11: Crear catálogos de máquinas

El proceso para crear catálogos de máquinas y agregar 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.

Nota:

Las versiones anteriores de Citrix Studio no admitían 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.

Consejo:

Si quita una máquina y la vuelve a unir al dominio de Active Directory, debe quitarla y volver a añadirla al catálogo de máquinas.

Paso 12: Crear grupos de entrega

El proceso para crear un grupo de entrega y añadir 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 2402 LTSR.

Paso 13: Actualizar el Linux VDA (opcional)

El Linux VDA admite actualizaciones desde la versión más reciente. Por ejemplo, puede actualizar el Linux VDA de 2308 a 2311 y de 1912 LTSR a 2203 LTSR.

Para RHEL 7 y CentOS 7:

sudo rpm -U XenDesktopVDA-<version>.el7_x.x86_64.rpm
<!--NeedCopy-->

Para RHEL 8 y Rocky Linux 8:

sudo rpm -U XenDesktopVDA-<version>.el8_x.x86_64.rpm
<!--NeedCopy-->

Para RHEL 9.3/9.2/9.0 y Rocky Linux 9.3/9.2/9.0:

Nota:

Antes de actualizar el VDA de Linux en RHEL 9.6/9.4/9.3/9.2/9.0 y Rocky Linux 9.6/9.4/9.3/9.2/9.0, actualice el paquete libsepol a la versión 3.4 o posterior.

sudo rpm -U XenDesktopVDA-<version>.el9x.x86_64.rpm
<!--NeedCopy-->

Para SUSE:

sudo rpm -U XenDesktopVDA-<version>.sle15_x.x86_64.rpm
<!--NeedCopy-->

Para Ubuntu 20.04:

sudo dpkg -i xendesktopvda_<version>.ubuntu20.04_amd64.deb
<!--NeedCopy-->

Para Ubuntu 22.04:

sudo dpkg -i xendesktopvda_<version>.ubuntu22.04_amd64.deb
<!--NeedCopy-->

Solución de problemas

Utilice la información de esta sección para solucionar los problemas que puedan surgir al usar la función de instalación sencilla.

Error al unirse a un dominio mediante SSSD

Puede producirse un error al intentar unirse a un dominio, con una salida similar a la siguiente (registros de verificar para la impresión en pantalla):

Step 6: join Domain!Enter ctxadmin's password:Failed to join domain: failed to lookup DC info for domain 'CITRIXLAB.LOCAL' over rpc: The network name cannot be found

/var/log/xdl/vda.log:

2016-11-04 02:11:52.317 [INFO ] - The Citrix Desktop Service successfully obtained the following list of 1 delivery controller(s) with which to register: 'CTXDDC.citrixlab.local (10.158.139.214)'.
2016-11-04 02:11:52.362 [ERROR] - RegistrationManager.AttemptRegistrationWithSingleDdc: Failed to register with http://CTXDDC.citrixlab.local:80/Citrix/CdsController/IRegistrar. Error: General security error (An error occurred in trying to obtain a TGT: Client not found in Kerberos database (6))
2016-11-04 02:11:52.362 [ERROR] - The Citrix Desktop Service cannot connect to the delivery controller 'http://CTXDDC.citrixlab.local:80/Citrix/CdsController/IRegistrar' (IP Address '10.158.139.214')
Check the following:- The system clock is in sync between this machine and the delivery controller.
-  The Active Directory provider (e.g. winbind daemon) service is running and correctly configured.
-  Kerberos is correctly configured on this machine.
If the problem persists, please refer to Citrix Knowledge Base article CTX117248 for further information.
Error Details:
Exception 'General security error (An error occurred in trying to obtain a TGT: Client not found in Kerberos database (6))' of type 'class javax.xml.ws.soap.SOAPFaultException'.
2016-11-04 02:11:52.362 [INFO ] - RegistrationManager.AttemptRegistrationWithSingleDdc: The current time for this VDA is Fri Nov 04 02:11:52 EDT 2016.
Ensure that the system clock is in sync between this machine and the delivery controller.
Verify the NTP daemon is running on this machine and is correctly configured.
2016-11-04 02:11:52.364 [ERROR] - Could not register with any controllers. Waiting to try again in 120000 ms. Multi-forest - false
2016-11-04 02:11:52.365 [INFO ] - The Citrix Desktop Service failed to register with any controllers in the last 470 minutes.
<!--NeedCopy-->

/var/log/messages:

Nov 4 02:15:27 RH-WS-68 [sssd[ldap_child[14867]]]: Failed to initialize credentials using keytab [MEMORY:/etc/krb5.keytab]: Client 'RH-WS-68$@CITRIXLAB.LOCAL' not found in Kerberos database. Unable to create GSSAPI-encrypted LDAP connection.Nov 4 02:15:27 RH-WS-68 [sssd[ldap_child[14867]]]: Client 'RH-WS-68$@CITRIXLAB.LOCAL' not found in Kerberos database

Para resolver este problema:

  1. Ejecute el comando rm -f /etc/krb5.keytab.
  2. Ejecute el comando net ads leave $REALM -U $domain-administrator.
  3. Elimine el catálogo de máquinas y el grupo de entrega en el Delivery Controller.
  4. Ejecute /opt/Citrix/VDA/sbin/ctxinstall.sh.
  5. Cree el catálogo de máquinas y el grupo de entrega en el Delivery Controller.

Las sesiones de escritorio de Ubuntu muestran una pantalla gris

Este problema ocurre cuando inicia una sesión que luego se bloquea en un escritorio en blanco. Además, la consola de la máquina también muestra una pantalla gris cuando inicia sesión con una cuenta de usuario local.

Para resolver este problema:

  1. Ejecute el comando sudo apt-get update.
  2. Ejecute el comando sudo apt-get install unity lightdm.
  3. Agregue la siguiente línea a /etc/lightdm/lightdm.conf: greeter-show-manual-login=true

Los intentos de iniciar las sesiones de escritorio de Ubuntu fallan debido a la falta de un directorio de inicio

/var/log/xdl/hdx.log:

2016-11-02 13:21:19.015 <P22492:S1> citrix-ctxlogin: StartUserSession: failed to change to directory(/home/CITRIXLAB/ctxadmin) errno(2)

2016-11-02 13:21:19.017 <P22227> citrix-ctxhdx: logSessionEvent: Session started for user ctxadmin.

2016-11-02 13:21:19.023 <P22492:S1> citrix-ctxlogin: ChildPipeCallback: Login Process died: normal.

2016-11-02 13:21:59.217 <P22449:S1> citrix-ctxgfx: main: Exiting normally.
<!--NeedCopy-->

Sugerencia:

La causa principal de este problema es que el directorio de inicio no se crea para el administrador de dominio.

Para resolver este problema:

  1. Desde la línea de comandos, escriba pam-auth-update.

  2. En el cuadro de diálogo resultante, verificar que Create home directory login esté seleccionado.

    Ubuntu no puede iniciar una sesión

La sesión no se inicia o finaliza rápidamente con un error de dbus

/var/log/messages (para RHEL o CentOS):

Oct 27 04:17:16 CentOS7 citrix-ctxhdx[8978]: Session started for user CITRIXLAB\ctxadmin.

Oct 27 04:17:18 CentOS7 kernel: traps: gnome-session[19146] trap int3 ip:7f89b3bde8d3 sp:7fff8c3409d0 error:0

Oct 27 04:17:18 CentOS7 gnome-session[19146]: ERROR: Failed to connect to system bus: Exhausted all available authentication mechanisms (tried: EXTERNAL, DBUS_COOKIE_SHA1, ANONYMOUS) (available: EXTERNAL, DBUS_COOKIE_SHA1, ANONYMOUS)#012aborting...

Oct 27 04:17:18 CentOS7 gnome-session: gnome-session[19146]: ERROR: Failed to connect to system bus: Exhausted all available authentication mechanisms (tried: EXTERNAL, DBUS_COOKIE_SHA1, ANONYMOUS) (available: EXTERNAL, DBUS_COOKIE_SHA1, ANONYMOUS)

Oct 27 04:17:18 CentOS7 gnome-session: aborting...

Oct 27 04:17:18 CentOS7 citrix-ctxgfx[18981]: Exiting normally.

Oct 27 04:17:18 CentOS7 citrix-ctxhdx[8978]: Session stopped for user CITRIXLAB\ctxadmin.
<!--NeedCopy-->

O, alternativamente para distribuciones de Ubuntu, use el registro /var/log/syslog:

Nov  3 11:03:52 user01-HVM-domU pulseaudio[25326]: [pulseaudio] pid.c: Stale PID file, overwriting.

Nov  3 11:03:52 user01-HVM-domU pulseaudio[25326]: [pulseaudio] bluez5-util.c: Failed to get D-Bus connection: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.

Nov  3 11:03:52 user01-HVM-domU pulseaudio[25326]: [pulseaudio] hashmap.c: Assertion 'h' failed at pulsecore/hashmap.c:116, function pa_hashmap_free(). Aborting.

Nov  3 11:03:52 user01-HVM-domU pulseaudio[25352]: [pulseaudio] core-util.c: Failed to connect to system bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.

Nov  3 11:03:52 user01-HVM-domU pulseaudio[25352]: message repeated 10 times: [ [pulseaudio] core-util.c: Failed to connect to system bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.]

Nov  3 11:03:52 user01-HVM-domU pulseaudio[25352]: [pulseaudio] pid.c: Daemon already running.Nov  3 11:03:58 user01-HVM-domU citrix-ctxgfx[24693]: Exiting normally
<!--NeedCopy-->

Algunos grupos o módulos no surten efecto hasta que se reinicia. Si los mensajes de error de dbus aparecen en el registro, le recomendamos que reinicie el sistema y lo intente de nuevo.

SELinux impide que SSHD acceda al directorio de inicio

El usuario puede iniciar una sesión pero no puede iniciar sesión.

/var/log/xdl/ctxinstall.log:

Jan 25 23:30:31 yz-rhel72-1 setroubleshoot[3945]: SELinux is preventing /usr/sbin/sshd from setattr access on the directory /root. For complete SELinux messages. run sealert -l 32f52c1f-8ff9-4566-a698-963a79f16b81

Jan 25 23:30:31 yz-rhel72-1 python[3945]: SELinux is preventing /usr/sbin/sshd from setattr access on the directory /root.

*****  Plugin catchall_boolean (89.3 confidence) suggests   ******************

If you want to allow polyinstantiation to enabled

   Then you must tell SELinux about this by enabling the 'polyinstantiation_enabled' boolean.

You can read 'None' man page for more details.

    Do

       setsebool -P polyinstantiation_enabled 1

*****  Plugin catchall (11.6 confidence) suggests   **************************

If you believe that sshd should be allowed setattr access on the root directory by default.

Then you should report this as a bug.

You can generate a local policy module to allow this access.

      Do

       allow this access for now by executing:

       # grep sshd /var/log/audit/audit.log | audit2allow -M mypol

# semodule -i mypol.pp
<!--NeedCopy-->

Para resolver este problema:

  1. Deshabilite SELinux realizando el siguiente cambio en /etc/selinux/config.

    SELINUX=disabled

  2. Reinicie el VDA.

Crear VDA unidos a un dominio mediante easy install