Linux Virtual Delivery Agent

Instalar el VDA de Linux en RHEL y Rocky Linux manualmente

Importante:

Para instalaciones nuevas, le recomendamos que utilice la (/es-es/linux-virtual-delivery-agent/current-release/installation-overview/easy-install.html) para una instalación rápida. La instalación fácil ahorra tiempo y trabajo, y es menos propensa a errores que la instalación manual detallada en este artículo.

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

Paso 1a: verificar la configuración de red

Asegúrese de que la red esté conectada y configurada correctamente. Por ejemplo, debe configurar el servidor DNS en el VDA de Linux.

Paso 1b: Establecer el nombre de host

Para asegurarse de que el nombre de host de la máquina se notifique correctamente, cambie el archivo /etc/hostname para que contenga solo el nombre de host de la máquina.

hostname

Paso 1c: Asignar una dirección de bucle invertido al nombre de host

Para asegurarse de que el nombre de dominio DNS y el nombre de dominio completo (FQDN) de la máquina se notifiquen correctamente, cambie la siguiente línea del archivo /etc/hosts para incluir el FQDN y el nombre de host como las dos primeras entradas:

127.0.0.1 hostname-fqdn hostname localhost localhost.localdomain localhost4 localhost4.localdomain4

Por ejemplo:

127.0.0.1 vda01.example.com vda01 localhost localhost.localdomain localhost4 localhost4.localdomain4

Elimine cualquier otra referencia a hostname-fqdn o hostname de otras entradas del archivo.

Nota:

El VDA de Linux no admite actualmente la truncación de nombres NetBIOS. El nombre de host no debe superar los 15 caracteres.

Sugerencia:

Utilice solo los caracteres a–z, A–Z, 0–9 y el guion (-). Evite los guiones bajos (_), los espacios y otros símbolos. No inicie un nombre de host con un número ni lo termine con un guion. Esta regla también se aplica a los nombres de host de Delivery Controller.

Paso 1d: Comprobar el nombre de host

verificar que el nombre de host esté configurado correctamente:

hostname
<!--NeedCopy-->

Este comando devuelve solo el nombre de host de la máquina y no su nombre de dominio completo (FQDN).

verificar que el FQDN esté configurado correctamente:

hostname -f
<!--NeedCopy-->

Este comando devuelve el FQDN de la máquina.

Paso 1e: Comprobar la resolución de nombres y la accesibilidad del servicio

verificar que puede resolver el FQDN y hacer ping al controlador de dominio y a Delivery Controller™:

nslookup domain-controller-fqdn

ping domain-controller-fqdn

nslookup delivery-controller-fqdn

ping delivery-controller-fqdn
<!--NeedCopy-->

Si no puede resolver el FQDN o hacer ping a alguna de estas máquinas, revise los pasos antes de continuar.

Paso 1f: Configurar la sincronización del reloj

Mantener una sincronización precisa del reloj entre los VDA, los Delivery Controllers y los controladores de dominio es crucial. Alojar el VDA de Linux como máquina virtual (VM) puede causar problemas de desviación del reloj. Por esta razón, se prefiere sincronizar la hora con un servicio de hora remoto.

Un entorno predeterminado de RHEL utiliza el demonio Chrony (chronyd) para la sincronización del reloj.

Configurar el servicio Chrony

Como usuario root, edite /etc/chrony.conf y agregue una entrada de servidor para cada servidor de hora remoto:

server peer1-fqdn-or-ip-address iburst

server peer2-fqdn-or-ip-address iburst
<!--NeedCopy-->

En una implementación típica, sincronice la hora desde los controladores de dominio locales y no directamente desde los servidores de grupo NTP públicos. Agregue una entrada de servidor para cada controlador de dominio de Active Directory en el dominio.

Elimine cualquier otra entrada de servidor listada, incluidas la dirección IP de bucle invertido, localhost y las entradas de servidor público *.pool.ntp.org.

Guarde los cambios y reinicie el demonio Chrony:

sudo systemctl restart chronyd
<!--NeedCopy-->

Paso 1g: Instalar y especificar una base de datos para usar

Nota:

  • Recomendamos usar SQLite solo para el modo VDI y usar PostgreSQL o el servicio de registro integrado para un modelo de entrega de escritorios compartidos alojados.

  • Para una instalación sencilla y MCS, puede especificar SQLite, PostgreSQL o el servicio de registro integrado 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 el servicio de registro integrado 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).

  • Para instalaciones manuales, debe instalar SQLite, PostgreSQL o ambos, o las dependencias relacionadas con el servicio de registro integrado manualmente. Puede usar una versión personalizada de PostgreSQL en lugar de la versión proporcionada por su distribución de Linux. Si instala tanto SQLite como PostgreSQL, puede especificar uno de ellos para usar editando /etc/xdl/db.conf después de instalar el paquete VDA de Linux.
  • Para usar el servicio de registro integrado en RHEL9, RHEL10 y Rocky9, se requiere habilitar el repositorio CodeReady Builder: RHEL9: subscription-manager repos –enable codeready-builder-for-rhel-9-$(arch)-rpms RHEL10: subscription-manager repos –enable codeready-builder-for-rhel-10-$(arch)-rpms Rocky9: dnf config-manager –enable crb

Instalar PostgreSQL

Esta sección describe cómo instalar la versión de PostgreSQL proporcionada por su distribución de Linux. Si es necesaria una versión personalizada de PostgreSQL, puede instalarla según sus requisitos específicos.

Ejecute los siguientes comandos para instalar PostgreSQL:

sudo yum -y install postgresql-server

sudo yum -y install postgresql-jdbc
<!--NeedCopy-->

Para RHEL 8.x y RHEL 9.7/9.6/9.4, ejecute el siguiente comando para instalar libpq para PostgreSQL:

sudo yum -y install libpq
<!--NeedCopy-->

Ejecute el siguiente comando para inicializar la base de datos. Esta acción crea archivos de base de datos en /var/lib/pgsql/data.

sudo postgresql-setup initdb
<!--NeedCopy-->

Ejecute los siguientes comandos para iniciar PostgreSQL al arrancar la máquina o inmediatamente, respectivamente:

sudo systemctl enable postgresql

sudo systemctl start postgresql
<!--NeedCopy-->

Compruebe la versión de PostgreSQL mediante:

psql --version
<!--NeedCopy-->

Instalar SQLite

Ejecute el siguiente comando para instalar SQLite:

sudo yum -y install sqlite
<!--NeedCopy-->

Instalar el servicio de registro integrado

Ejecute el siguiente comando para instalar las dependencias relacionadas con el servicio de registro integrado:

sudo yum -y install lmdb
<!--NeedCopy-->

Especificar una base de datos para usar

Si instala SQLite, PostgreSQL y el servicio de registro integrado, puede especificar cuál de ellos usar editando /etc/xdl/db.conf después de instalar el paquete de Linux VDA.

  1. Ejecute /opt/Citrix/VDA/sbin/ctxcleanup.sh. Omita este paso si es una instalación nueva.
  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
    #     ctxregd - use the built-in registry service
    # default choice is ctxregd
    DbType="ctxregd"
    
    
    ## 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-->
    
  3. Para usar una versión personalizada de PostgreSQL, establezca DbCustomizePostgreSQL en true.

  4. Ejecute ctxsetup.sh.

Nota:

También puede usar /etc/xdl/db.conf para configurar el número de puerto de PostgreSQL.

Paso 2: Preparar el hipervisor

Se requieren algunos cambios al ejecutar el VDA de Linux como una VM 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 de la hora en XenServer (anteriormente Citrix Hypervisor™)

Cuando la función de sincronización de hora de XenServer® 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 el NTP. Este caso requiere deshabilitar la sincronización de hora 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 de sincronización de hora de XenServer está presente y habilitada desde la VM Linux:

su -

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

Este comando devuelve 0 o 1:

  • 0 - La función de sincronización de hora está habilitada y debe deshabilitarse.
  • 1 - La función de sincronización de hora 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 agregue 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 la hora en Microsoft Hyper-V

Las máquinas virtuales Linux con los servicios de integración de Hyper-V Linux 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 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 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 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 Propiedades de la máquina virtual, abra la ficha Opciones.
  4. Seleccione VMware Tools.
  5. En el cuadro Avanzado, desactive Sincronizar la hora del invitado con la del host.

Paso 3: Añada la VM de Linux al dominio de Windows

Los siguientes métodos están disponibles para añadir máquinas Linux al dominio de Active Directory (AD):

Siga las instrucciones según el método elegido.

Nota:

Los inicios de sesión pueden fallar cuando se utiliza el mismo nombre de usuario para la cuenta local en el VDA de Linux y la cuenta en AD.

Samba Winbind

Para RHEL 9.x y Rocky Linux 9.x, ejecute el siguiente comando para evitar que pam_winbind cambie la propiedad del directorio raíz:

usermod -d /nonexistent nobody
<!--NeedCopy-->

Instale o actualice los paquetes necesarios:

Para RHEL 9.x/8.x y Rocky Linux 9.x/8.x:

sudo yum -y install samba-winbind samba-winbind-clients krb5-workstation oddjob-mkhomedir realmd authselect
<!--NeedCopy-->

Habilite el demonio Winbind para que se inicie al arrancar la máquina

El demonio de Winbind debe configurarse para que se inicie al arrancar la máquina:

sudo /sbin/chkconfig winbind on
<!--NeedCopy-->

Configurar la autenticación de Winbind

Configure la máquina para la autenticación Kerberos mediante Winbind:

  1. Ejecute el siguiente comando.

    Para RHEL 9.x/8.x y Rocky Linux 9.x/8.x:

    sudo authselect select winbind with-mkhomedir --force
    <!--NeedCopy-->
    
  2. Abra /etc/samba/smb.conf y añada las siguientes entradas en la sección [Global], pero después de la sección generada por la herramienta authconfig:

    kerberos method = secrets and keytab winbind refresh tickets = true winbind offline logon = no

  3. (Solo para RHEL 9.x/8.x y Rocky Linux 9.x/8.x) Abra /etc/krb5.conf y añada entradas en las secciones [libdefaults], [realms] y [domain_realm]:

    En la sección [libdefaults]:

    default_ccache_name = FILE:/tmp/krb5cc_%{uid} default_realm = REALM dns_lookup_kdc = true

    En la sección [realms]:

    REALM = { kdc = fqdn-of-domain-controller }

    En la sección [domain_realm]:

    realm = REALM .realm = REALM

El VDA de Linux requiere el archivo de tabla de claves del sistema /etc/krb5.keytab para autenticarse y registrarse en el Delivery Controller. La configuración anterior del método Kerberos obliga a Winbind a crear el archivo de tabla de claves del sistema cuando la máquina se une por primera vez al dominio.

Unirse al dominio de Windows

El controlador de dominio debe estar accesible y debe tener una cuenta de usuario de Active Directory con permisos para agregar equipos al dominio.

Para agregar una máquina virtual Linux al dominio de Windows, ejecute el siguiente comando:

sudo realm join -U user --client-software=winbind REALM
<!--NeedCopy-->

REALM es el nombre del ámbito de Kerberos en mayúsculas, y user es un usuario de dominio que tiene permisos para agregar equipos al dominio.

Configurar PAM para Winbind

De forma predeterminada, la configuración del módulo PAM de Winbind (pam_winbind) no habilita el almacenamiento en caché de tickets de Kerberos ni la creación de directorios de inicio. Abra /etc/security/pam_winbind.conf y agregue o cambie las siguientes entradas en la sección [Global]:

krb5_auth = yes krb5_ccache_type = FILE mkhomedir = yes

Asegúrese de que se eliminen los puntos y coma iniciales de cada configuración. Estos cambios requieren reiniciar el demonio Winbind:

sudo systemctl restart winbind
<!--NeedCopy-->

Sugerencia:

El demonio winbind permanece en ejecución solo si la máquina está unida a un dominio.

Abra /etc/krb5.conf y cambie la siguiente configuración en la sección [libdefaults] de tipo KEYRING a tipo FILE:

default_ccache_name = FILE:/tmp/krb5cc_%{uid}

Para RHEL 9.x y Rocky Linux 9.x, ejecute los siguientes comandos para resolver el problema de SELinux con Winbind:

ausearch -c 'winbindd' --raw | audit2allow -M my-winbindd -p /etc/selinux/targeted/policy/policy.*

semodule -X 300 -i my-winbindd.pp
<!--NeedCopy-->

verificar la pertenencia al dominio

El Delivery Controller requiere que todas las máquinas VDA (VDA de Windows y Linux) tengan un objeto de equipo en Active Directory.

Ejecute el comando net ads de Samba para verificar que la máquina está unida a un dominio:

sudo net ads testjoin
<!--NeedCopy-->

Ejecute el siguiente comando para verificar información adicional del dominio y del objeto de equipo:

sudo net ads info
<!--NeedCopy-->

verificar la configuración de Kerberos

Para asegurarse de que Kerberos está configurado correctamente para su uso con Linux VDA, verificar que el archivo keytab del sistema se ha creado y contiene claves válidas:

sudo klist -ke
<!--NeedCopy-->

Este comando muestra la lista de claves disponibles para las distintas combinaciones de nombres principales y conjuntos de cifrado. Ejecute el comando Kerberos kinit para autenticar la máquina con el controlador de dominio mediante estas claves:

sudo kinit -k MACHINE\$@REALM
<!--NeedCopy-->

Los nombres de la máquina y del ámbito deben especificarse en mayúsculas. El signo de dólar ($) debe escaparse con una barra invertida (\) para evitar la sustitución de shell. En algunos entornos, el nombre de dominio DNS es diferente del nombre de ámbito de Kerberos. Asegúrese de que se utiliza el nombre de ámbito. Si este comando se ejecuta correctamente, no se muestra ninguna salida.

verificar que el ticket TGT de la cuenta de la máquina se ha almacenado en caché mediante:

sudo klist
<!--NeedCopy-->

Examine los detalles de la cuenta de la máquina mediante:

sudo net ads status
<!--NeedCopy-->

verificar la autenticación de usuario

Utilice la herramienta wbinfo para verificar que los usuarios del dominio pueden autenticarse con el dominio:

wbinfo --krb5auth=domain\\username%password
<!--NeedCopy-->

El dominio especificado aquí es el nombre de dominio de AD, no el nombre de ámbito de Kerberos. Para el shell bash, el carácter de barra invertida (\) debe escaparse con otra barra invertida. Este comando devuelve un mensaje que indica si la operación se realizó correctamente o no.

Para verificar que el módulo PAM de Winbind está configurado correctamente, inicie sesión en Linux VDA con una cuenta de usuario de dominio que no se haya utilizado antes.

ssh localhost -l domain\\username
id -u
<!--NeedCopy-->

verificar que los tickets de la caché de credenciales de Kerberos son válidos y no han caducado:

klist
<!--NeedCopy-->

Cierre la sesión.

exit
<!--NeedCopy-->

Se puede realizar una prueba similar iniciando sesión directamente en la consola de Gnome o KDE. Continúe con Paso 6: Instalar Linux VDA después de la verificación de la unión al dominio.

Servicios de autenticación de Quest

Configurar Quest en el controlador de dominio

Suponga que ha instalado y configurado el software Quest en los controladores de dominio de Active Directory y que se le han concedido privilegios administrativos para crear objetos de equipo en Active Directory.

Permitir que los usuarios del dominio inicien sesión en máquinas Linux VDA

Para permitir que los usuarios del dominio establezcan sesiones HDX™ en una máquina Linux VDA:

  1. En la consola de administración Usuarios y equipos de Active Directory, abra las propiedades de usuario de Active Directory para esa cuenta de usuario.
  2. Seleccione la ficha Cuenta Unix.
  3. Marque Habilitado para Unix.
  4. Establezca el Número GID principal en el ID de grupo de un grupo de usuarios de dominio real.

Nota:

Estas instrucciones son equivalentes para configurar usuarios de dominio para el inicio de sesión mediante la consola, RDP, SSH o cualquier otro protocolo de acceso remoto.

Configurar Quest en Linux VDA

Solucionar la aplicación de la política de SELinux

El entorno RHEL predeterminado tiene SELinux totalmente aplicado. Esta aplicación interfiere con los mecanismos IPC de socket de dominio Unix utilizados por Quest e impide que los usuarios del dominio inicien sesión.

La forma conveniente de solucionar este problema es deshabilitar SELinux. Como usuario root, edite /etc/selinux/config y cambie la configuración de SELinux:

SELINUX=permissive

Este cambio requiere un reinicio de la máquina:

reboot
<!--NeedCopy-->

Importante:

Utilice esta configuración con precaución. Volver a habilitar la aplicación de la política de SELinux después de deshabilitarla puede provocar un bloqueo completo, incluso para el usuario root y otros usuarios locales.

Configurar el demonio VAS

La renovación automática de los tickets Kerberos debe estar habilitada y desconectada. La autenticación (inicio de sesión sin conexión) debe estar deshabilitada.

sudo /opt/quest/bin/vastool configure vas vasd auto-ticket-renew-interval 32400

sudo /opt/quest/bin/vastool configure vas vas_auth allow-disconnected-auth false
<!--NeedCopy-->

Este comando establece el intervalo de renovación en nueve horas (32.400 segundos), lo que es una hora menos que la duración predeterminada del ticket de 10 horas. Establezca este parámetro en un valor inferior en sistemas con una duración de ticket más corta.

Configurar PAM y NSS

Para habilitar el inicio de sesión de usuarios de dominio a través de HDX y otros servicios como su, ssh y RDP, ejecute los siguientes comandos para configurar PAM y NSS manualmente:

sudo /opt/quest/bin/vastool configure pam

sudo /opt/quest/bin/vastool configure nss
<!--NeedCopy-->

Unirse al dominio de Windows

Una la máquina Linux al dominio de Active Directory mediante el comando Quest vastool:

sudo /opt/quest/bin/vastool -u user join domain-name
<!--NeedCopy-->

El usuario es cualquier usuario de dominio que tenga permisos para unir equipos al dominio de Active Directory. El nombre-de-dominio es el nombre DNS del dominio, por ejemplo, example.com.

Reinicie la máquina Linux después de unirse al dominio.

verificar la pertenencia al dominio

El Delivery Controller requiere que todas las máquinas VDA (VDA de Windows y Linux) tengan un objeto de equipo en Active Directory. Para verificar que una máquina Linux unida a Quest está en el dominio:

sudo /opt/quest/bin/vastool info domain
<!--NeedCopy-->

Si la máquina está unida a un dominio, este comando devuelve el nombre del dominio. Si la máquina no está unida a ningún dominio, aparece el siguiente error:

ERROR: No domain could be found. ERROR: VAS_ERR_CONFIG: at ctx.c:414 in _ctx_init_default_realm default_realm not configured in vas.conf. Computer may not be joined to domain

verificar la autenticación de usuario

Para verificar que Quest puede autenticar a los usuarios del dominio a través de PAM, inicie sesión en el VDA de Linux con una cuenta de usuario de dominio que no se haya utilizado antes.

ssh localhost -l domain\\username
id -u
<!--NeedCopy-->

verificar que se ha creado un archivo de caché de credenciales de Kerberos correspondiente para el UID devuelto por el comando id -u:

ls /tmp/krb5cc_uid
<!--NeedCopy-->

verificar que los tickets de la caché de credenciales de Kerberos son válidos y no han caducado:

/opt/quest/bin/vastool klist
<!--NeedCopy-->

Salga de la sesión.

exit
<!--NeedCopy-->

Se puede realizar una prueba similar iniciando sesión directamente en la consola de Gnome o KDE. Continúe con Paso 6: Instalar el VDA de Linux después de la verificación de la unión al dominio.

Centrify DirectControl

Unir un dominio de Windows

Con el agente de Centrify DirectControl instalado, una la máquina Linux al dominio de Active Directory mediante el comando Centrify adjoin:

su –
adjoin -w -V -u user domain-name
<!--NeedCopy-->

El parámetro de usuario es cualquier usuario del dominio de Active Directory que tenga permisos para unir equipos al dominio de Active Directory. El domain-name es el nombre del dominio al que se unirá la máquina Linux.

verificar la pertenencia al dominio

El Delivery Controller requiere que todas las máquinas VDA (VDA de Windows y Linux) tengan un objeto de equipo en Active Directory. Para verificar que una máquina Linux unida con Centrify está en el dominio:

su –
adinfo
<!--NeedCopy-->

verificar que el valor de Joined to domain es válido y que el modo CentrifyDC devuelve connected. Si el modo permanece atascado en el estado de inicio, el cliente de Centrify está experimentando problemas de conexión o autenticación con el servidor.

Hay disponible información de diagnóstico y del sistema más completa mediante:

adinfo --sysinfo all
adinfo –diag
<!--NeedCopy-->

Pruebe la conectividad con los distintos servicios de Active Directory y Kerberos.

adinfo --test
<!--NeedCopy-->

Continúe con Paso 6: Instalar el Linux VDA después de la verificación de la unión al dominio.

SSSD

Si utiliza SSSD, siga las instrucciones de esta sección. Esta sección incluye instrucciones para unir una máquina Linux VDA a un dominio de Windows y proporciona orientación para configurar la autenticación Kerberos.

Para configurar SSSD en RHEL, haga lo siguiente:

  1. Unirse al dominio y crear un archivo keytab de host
  2. Configurar SSSD
  3. Habilitar SSSD
  4. verificar la configuración de Kerberos
  5. verificar la autenticación de usuario

Unirse al dominio y crear un archivo keytab de host

SSSD no proporciona funciones de cliente de Active Directory para unirse al dominio y administrar el archivo keytab del sistema. En su lugar, puede utilizar adcli, realmd o Samba.

Esta sección describe el enfoque adcli para RHEL 8.x/9.x y Rocky Linux 8.x/9.x. Para realmd, consulte la documentación de RHEL. Estos pasos deben seguirse antes de configurar SSSD.

  • Adcli (RHEL 9.x/8.x y Rocky Linux 9.x/8.x):

    Instale o actualice los paquetes necesarios:

     sudo yum -y install samba-common samba-common-tools krb5-workstation authconfig oddjob-mkhomedir realmd oddjob authselect
     <!--NeedCopy-->
    

    Configure la máquina para la autenticación de Samba y Kerberos:

     sudo authselect select sssd with-mkhomedir --force
     <!--NeedCopy-->
    

    Abra /etc/krb5.conf y agregue las entradas en las secciones [realms] y [domain_realm].

    En la sección [realms]:

    REALM = { kdc = fqdn-of-domain-controller }

    En la sección [domain_realm]:

    realm = REALM .realm = REALM

    Únase al dominio de Windows. Asegúrese de que su controlador de dominio sea accesible y de que tenga una cuenta de usuario de Active Directory con permisos para agregar equipos al dominio:

     sudo realm join REALM -U user
     <!--NeedCopy-->
    

    REALM es el nombre del ámbito de Kerberos en mayúsculas y user es un usuario de dominio que tiene permisos para agregar equipos al dominio.

Configurar SSSD

La configuración de SSSD consta de los siguientes pasos:

  • Instale el paquete sssd-ad en el VDA de Linux ejecutando el comando sudo yum -y install sssd.
  • Realice cambios de configuración en varios archivos (por ejemplo, sssd.conf).
  • Inicie el servicio sssd.

(Solo RHEL 9.x/8.x y Rocky Linux 9.x/8.x) Abra /etc/sssd/sssd.conf y agregue las siguientes entradas en la sección [domain/ad.example.com]:

ad_gpo_access_control = permissive full_name_format = %2$s\%1$s fallback_homedir = /home/%d/%u # Kerberos settings krb5_ccachedir = /tmp krb5_ccname_template = FILE:%d/krb5cc_%U

Reemplace ad.example.com, server.ad.example.com con los valores correspondientes. Para obtener más detalles, consulte sssd-ad(5) - página man de Linux.

Establezca la propiedad y los permisos del archivo en sssd.conf:

chown root:root /etc/sssd/sssd.conf chmod 0600 /etc/sssd/sssd.conf restorecon /etc/sssd/sssd.conf

Habilitar SSSD

Para RHEL 9.x/8.x y Rocky Linux 9.x/8.x:

Ejecute los siguientes comandos para habilitar SSSD:

sudo systemctl restart sssd
sudo systemctl enable sssd.service
sudo chkconfig sssd on
<!--NeedCopy-->

verificar la configuración de Kerberos

verificar que el archivo keytab del sistema se ha creado y contiene claves válidas:

sudo klist -ke
<!--NeedCopy-->

Este comando muestra la lista de claves disponibles para las diversas combinaciones de nombres principales y conjuntos de cifrado. Ejecute el comando Kerberos kinit para autenticar la máquina con el controlador de dominio utilizando estas claves:

sudo kinit –k MACHINE\$@REALM
<!--NeedCopy-->

Los nombres de la máquina y del reino deben especificarse en mayúsculas. El signo de dólar ($) debe escaparse con una barra invertida (\) para evitar la sustitución de shell. En algunos entornos, el nombre de dominio DNS es diferente del nombre de reino de Kerberos. Asegúrese de que se utiliza el nombre del reino. Si este comando se ejecuta correctamente, no se muestra ninguna salida.

verificar que el ticket TGT para la cuenta de la máquina se ha almacenado en caché utilizando:

sudo klist
<!--NeedCopy-->

verificar la autenticación de usuario

Utilice el comando getent para verificar que el formato de inicio de sesión es compatible y que el NSS funciona:

sudo getent passwd DOMAIN\\username
<!--NeedCopy-->

El parámetro DOMAIN indica el nombre de dominio de la versión corta. Si se necesita otro formato de inicio de sesión, verificar primero utilizando el comando getent.

Los formatos de inicio de sesión admitidos son:

  • Nombre de inicio de sesión de nivel inferior: DOMAIN\username
  • UPN: username@domain.com
  • Formato de sufijo NetBIOS: username@DOMAIN

Para verificar que el módulo PAM de SSSD está configurado correctamente, inicie sesión en el VDA de Linux con una cuenta de usuario de dominio que no se haya utilizado antes.

sudo ssh localhost –l DOMAIN\\username

id -u
<!--NeedCopy-->

verificar que se ha creado un archivo de caché de credenciales de Kerberos correspondiente para el uid devuelto por el comando:

ls /tmp/krb5cc_{uid}
<!--NeedCopy-->

verificar que los tickets de la caché de credenciales de Kerberos del usuario son válidos y no han caducado.

klist
<!--NeedCopy-->

Continúe con Paso 6: Instalar el VDA de Linux después de la verificación de la unión al dominio.

PBIS

Descargar el paquete PBIS necesario

wget https://github.com/BeyondTrust/pbis-open/releases/download/9.1.0/pbis-open-9.1.0.551.linux.x86_64.rpm.sh
<!--NeedCopy-->

Hacer ejecutable el script de instalación de PBIS

chmod +x pbis-open-9.1.0.551.linux.x86_64.rpm.sh
<!--NeedCopy-->

Ejecutar el script de instalación de PBIS

sh pbis-open-9.1.0.551.linux.x86_64.rpm.sh
<!--NeedCopy-->

Unirse al dominio de Windows

El controlador de dominio debe ser accesible y debe tener una cuenta de usuario de Active Directory con permisos para agregar equipos al dominio:

/opt/pbis/bin/domainjoin-cli join domain-name user
<!--NeedCopy-->

El usuario es un usuario de dominio que tiene permisos para agregar equipos al dominio de Active Directory. El nombre de dominio es el nombre DNS del dominio, por ejemplo, example.com.

Nota: Para establecer Bash como shell predeterminado, ejecute el comando /opt/pbis/bin/config LoginShellTemplate/bin/bash.

verificar la pertenencia al dominio

El Delivery Controller requiere que todas las máquinas VDA (VDA de Windows y Linux) tengan un objeto de equipo en Active Directory. Para verificar que una máquina Linux unida a PBIS está en el dominio:

/opt/pbis/bin/domainjoin-cli query
<!--NeedCopy-->

Si la máquina está unida a un dominio, este comando devuelve la información sobre el dominio de AD y la OU a los que está unida actualmente. De lo contrario, solo aparece el nombre de host.

verificar la autenticación de usuario

Para verificar que PBIS puede autenticar a los usuarios del dominio a través de PAM, inicie sesión en el VDA de Linux con una cuenta de usuario de dominio que no se haya utilizado antes.

ssh localhost -l domain\\user

id -u
<!--NeedCopy-->

verificar que se ha creado un archivo de caché de credenciales de Kerberos correspondiente para el UID devuelto por el comando id -u:

ls /tmp/krb5cc_uid
<!--NeedCopy-->

Salga de la sesión.

exit
<!--NeedCopy-->

Continúe con Paso 6: Instalar el VDA de Linux después de la verificación de la unión al dominio.

Paso 4: Instalar .NET

Antes de instalar el paquete de VDA de Linux, instale .NET según los requisitos del sistema

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 ruta binaria de .NET.

Paso 5: Descargar el paquete de 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 Componentes para encontrar el VDA de Linux. Por ejemplo:

    Componentes de Citrix Virtual Apps and Desktops

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

    Descargas del VDA de Linux

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

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

    Clave pública GPG

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

    rpmkeys --import <path to the public key>
    rpm --checksig --verbose <path to the Linux VDA package>
    <!--NeedCopy-->
    

Paso 6: Instalar el VDA de Linux

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

Paso 6a: Realizar una instalación nueva

  1. (Opcional) Desinstale la versión anterior.

    Si instaló una versión anterior distinta de las dos anteriores y una versión LTSR, desinstálela antes de instalar la nueva versión.

    1. Detenga los servicios del VDA de Linux:

      sudo systemctl stop ctxvda
      
      sudo systemctl stop ctxhdx
      <!--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 reinicia los servicios que detuvo.

    2. Desinstale el paquete:

      sudo rpm -e XenDesktopVDA
      <!--NeedCopy-->
      

    Nota:

    Para ejecutar un comando, se necesita la ruta completa; alternativamente, puede agregar /opt/Citrix/VDA/sbin y /opt/Citrix/VDA/bin a la ruta del sistema.

  2. Descargue el paquete de Linux VDA.

    Vaya a la página de descarga de Citrix Virtual Apps and Desktops. Expanda la versión adecuada de Citrix Virtual Apps and Desktops y haga clic en Components para descargar el paquete de Linux VDA que coincida con su distribución de Linux.

  3. Instale el software de Linux VDA mediante Yum.

    Nota:

    • Para RHEL y Rocky Linux, 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.4/9.2 y Rocky Linux 9.4/9.2, actualice el paquete libsepol a la versión 3.4 o posterior.

    Para RHEL 9.x y Rocky Linux 9.x:

    sudo yum install -y XenDesktopVDA-<version>.el9_x.x86_64.rpm
    <!--NeedCopy-->
    

    Para RHEL 8.x y Rocky Linux 8.x:

    sudo yum install -y XenDesktopVDA-<version>.el8_x.x86_64.rpm
    <!--NeedCopy-->
    

    Lista de dependencias RPM para RHEL 9.x y Rocky Linux 9.x:

    gtk2 >= 2.24.33
    java-17-openjdk >= 17
    tzdata-java >= 2022
    ImageMagick >= 6.9
    firewalld >= 0.6.3
    policycoreutils-python >= 2.8.9
    policycoreutils-python-utils >= 2.8
    python3-policycoreutils >= 2.8
    dbus >= 1.12.8
    dbus-common >= 1.12.8
    dbus-daemon >= 1.12.8
    dbus-tools >= 1.12.8
    dbus-x11 >= 1.12.8
    xorg-x11-server-utils >= 7.7
    xorg-x11-xinit >= 1.3.4
    libXpm >= 3.5.12
    libXrandr >= 1.5.1
    libXtst >= 1.2.3
    pam >= 1.3.1
    util-linux >= 2.32.1
    util-linux-user >= 2.32.1
    xorg-x11-utils >= 7.5
    bash >= 4.3
    findutils >= 4.6
    gawk >= 4.2
    sed >= 4.5
    cups >= 1.6.0
    ghostscript >= 9.25
    libxml2 >= 2.9
    libmspack >= 0.7
    ibus >= 1.5
    nss-tools >= 3.44.0
    cyrus-sasl-gssapi >= 2.1
    python3 >= 3.6~
    qt5-qtbase >= 5.5~
    qt5-qtbase-gui >= 5.5~
    qrencode-libs >= 3.4.4
    imlib2 >= 1.4.9
    fuse-libs >= 2.9
    pulseaudio-utils >= 15.0
    <!--NeedCopy-->
    

    Lista de dependencias RPM para RHEL 8.x y Rocky Linux 8.x:

    java-17-openjdk >= 17
    ImageMagick >= 6.9
    firewalld >= 0.6.3
    policycoreutils-python >= 2.8.9
    policycoreutils-python-utils >= 2.8
    python3-policycoreutils >= 2.8
    dbus >= 1.12.8
    dbus-common >= 1.12.8
    dbus-daemon >= 1.12.8
    dbus-tools >= 1.12.8
    dbus-x11 >= 1.12.8
    xorg-x11-server-utils >= 7.7
    xorg-x11-xinit >= 1.3.4
    libXpm >= 3.5.12
    libXrandr >= 1.5.1
    libXtst >= 1.2.3
    pam >= 1.3.1
    util-linux >= 2.32.1
    util-linux-user >= 2.32.1
    xorg-x11-utils >= 7.5
    bash >= 4.3
    findutils >= 4.6
    gawk >= 4.2
    depends_on sed >= 4.5
    pulseaudio >= 14.0
    pulseaudio-module-x11 >= 14.0
    pulseaudio-module-bluetooth >= 14.0
    alsa-plugins-pulseaudio >= 1.1.9
    cups >= 1.6.0
    ghostscript >= 9.25
    libxml2 >= 2.9
    libmspack >= 0.7
    ibus >= 1.5
    nss-tools >= 3.44.0
    gperftools-libs >= 2.4
    cyrus-sasl-gssapi >= 2.1
    python3 >= 3.6~
    qt5-qtbase >= 5.5~
    qt5-qtbase-gui >= 5.5~
    qrencode-libs >= 3.4.4
    imlib2 >= 1.4.9
    fuse-libs >= 2.9
    <!--NeedCopy-->
    

    Nota:

    Para obtener una matriz de las distribuciones de Linux y las versiones de Xorg que admite esta versión del Linux VDA, consulte Requisitos del sistema.

Paso 6b: Actualizar una instalación existente (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 distribuciones RHEL y Rocky Linux:

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

Nota:

  • La actualización de una instalación existente sobrescribe los archivos de configuración en /etc/xdl. Antes de realizar una actualización, asegúrese de hacer una copia de seguridad de los archivos.

  • Antes de actualizar el Linux VDA en RHEL 9.x y Rocky Linux 9.x, actualice el paquete libsepol a la versión 3.4 o posterior.
  • A partir de la versión 2407, el Linux VDA delega en los administradores de paquetes rpm o dpkg la gestión de los archivos de configuración durante las actualizaciones. A continuación, se describe cómo interactúan rpm y dpkg con los cambios en los archivos de configuración:

    • rpm: de forma predeterminada, mantiene la versión local y guarda la nueva versión del paquete con una extensión .rpmnew.

    • dpkg: le pide interactivamente que elija cómo proceder. Para actualizar el Linux VDA de forma silenciosa, conservando el archivo de configuración local y guardando la nueva versión del paquete como .dpkg-new o .dpkg-dist, utilice el siguiente comando:

       dpkg --force-confold -i package.deb  # Always keep your version, then save new package's version as *.dpkg-new or *.dpkg-dist
       <!--NeedCopy-->
      
  • Reinicie la máquina Linux VDA después de actualizar el software.

Paso 7: Instalar los controladores NVIDIA GRID

Para habilitar HDX 3D Pro, debe instalar los controladores NVIDIA GRID en el 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 VM invitados de NVIDIA GRID, realice los siguientes pasos:

  1. Asegúrese de que la VM invitada esté apagada.
  2. En XenCenter®, asigne una GPU a la VM.
  3. Inicie la VM.
  4. Prepare la VM para el controlador NVIDIA GRID:

    yum install gcc
    
    yum install "kernel-devel-$(uname -r)"
    
    systemctl set-default multi-user.target
    <!--NeedCopy-->
    
  5. Siga los pasos del documento de Red Hat Enterprise Linux para instalar el controlador NVIDIA GRID.

Nota:

Durante la instalación del controlador de GPU, seleccione la opción predeterminada (‘no’) para cada pregunta.

Importante:

Una vez habilitado el paso a través de la GPU, la VM de Linux ya no es accesible a través de XenCenter. Use SSH para conectarse.

Fragmento de código de NVIDIA smi

Establezca la configuración correcta para la tarjeta:

etc/X11/ctx-nvidia.sh

Para aprovechar las grandes resoluciones y las capacidades de varios monitores, necesita una licencia NVIDIA válida. Para solicitar la licencia, siga la documentación del producto de “GRID Licensing Guide.pdf - DU-07757-001 September 2015”.

Paso 8: Configurar el VDA de Linux

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.

Después de instalar el paquete, debe configurar el VDA de Linux ejecutando el script ctxsetup.sh. Antes de realizar cualquier cambio, el script verifica el entorno y se asegura de que todas las dependencias estén instaladas. Si es necesario, puede volver a ejecutar el script en cualquier momento para cambiar la configuración.

Puede ejecutar el script manualmente con indicaciones o automáticamente con respuestas preconfiguradas. Consulte la Ayuda sobre el script antes de continuar:

sudo /opt/Citrix/VDA/sbin/ctxsetup.sh --help
<!--NeedCopy-->

Configuración guiada

Ejecute una configuración manual con preguntas guiadas:

sudo /opt/Citrix/VDA/sbin/ctxsetup.sh
<!--NeedCopy-->

Configuración automatizada

Para una instalación automatizada, proporcione las opciones requeridas por el script de configuración con variables de entorno. Si todas las variables requeridas están presentes, el script no solicitará ninguna información.

Las variables de entorno admitidas incluyen:

  • CTX_XDL_NON_DOMAIN_JOINED=’y|n’ – Si se debe unir 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 debe configurar 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 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 del VDA de Linux se inician cuando la configuración está completa.

  • 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 (por defecto, los puertos 80 y 1494) 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.

    También puede cambiar entre entornos de escritorio ejecutando comandos o utilizando la bandeja del sistema. Para obtener más información, consulte Comandos para cambiar 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.

  • 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 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 detectar 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 DNS CNAME.

Establezca la variable de entorno y ejecute el script de configuración:

export CTX_XDL_NON_DOMAIN_JOINED='n'
export CTX_XDL_AD_INTEGRATION=sssd|winbind|centrify|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'
sudo -E /opt/Citrix/VDA/sbin/ctxsetup.sh --silent
<!--NeedCopy-->

Al ejecutar el comando sudo, escriba la opción -E para pasar las variables de entorno existentes al nuevo shell que crea. 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 todos los parámetros mediante un solo comando:

sudo CTX_XDL_NON_DOMAIN_JOINED='n' \
CTX_XDL_AD_INTEGRATION=winbind|centrify|sssd|pbis|quest \
CTX_XDL_DDC_LIST='<list-ddc-fqdns>' \
CTX_XDL_VDI_MODE='y|n' \
CTX_XDL_HDX_3D_PRO='y|n' \
CTX_XDL_START_SERVICE='y|n' \
CTX_XDL_REGISTER_SERVICE='y|n' \
CTX_XDL_ADD_FIREWALL_RULES='y|n' \
CTX_XDL_DESKTOP_ENVIRONMENT=gnome|gnome-classic|kde|mate|xfce|'<none>' \
CTX_XDL_DOTNET_RUNTIME_PATH='<path-to-install-dotnet-runtime>' \
CTX_XDL_VDA_PORT='<port-number>' \
CTX_XDL_SITE_NAME='<dns-site-name>'|'<none>' \
CTX_XDL_LDAP_LIST='<list-ldap-servers>'|'<none>' \
CTX_XDL_SEARCH_BASE='<search-base-set>'|'<none>' \
CTX_XDL_SUPPORT_DDC_AS_CNAME='y|n' \
/opt/Citrix/VDA/sbin/ctxsetup.sh --silent
<!--NeedCopy-->

Eliminar cambios de configuración

En algunos escenarios, es posible que deba eliminar los cambios de configuración realizados por el script ctxsetup.sh sin desinstalar el paquete de Linux VDA.

Revise la Ayuda sobre este script antes de continuar:

sudo /opt/Citrix/VDA/sbin/ctxcleanup.sh --help
<!--NeedCopy-->

Para eliminar los cambios de configuración:

sudo /opt/Citrix/VDA/sbin/ctxcleanup.sh
<!--NeedCopy-->

Importante:

Este script elimina todos los datos de configuración de la base de datos y deja el Linux VDA inoperable.

Registros de configuración

Los scripts ctxsetup.sh y ctxcleanup.sh muestran errores en la consola, con información adicional escrita en el archivo de registro de configuración /tmp/xdl.configure.log.

Reinicie los servicios de Linux VDA para que los cambios surtan efecto.

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

Después de configurar el Linux VDA mediante el script ctxsetup.sh, puede ejecutar los siguientes comandos para controlar el Linux VDA.

Iniciar el Linux VDA:

Para iniciar los servicios de Linux VDA:

sudo systemctl restart ctxhdx

sudo systemctl restart ctxvda
<!--NeedCopy-->

Detener el Linux VDA:

Para detener los servicios de Linux VDA:

sudo systemctl stop ctxvda

sudo systemctl stop ctxhdx
<!--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

sudo systemctl restart ctxhdx

sudo systemctl restart ctxvda
<!--NeedCopy-->

Comprobar el estado del Linux VDA:

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

sudo systemctl status ctxvda

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

Paso 11: Crear catálogos de máquinas

El proceso para crear catálogos de máquinas y agregar máquinas Linux VDA es similar al enfoque tradicional de Windows VDA. 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 Linux VDA, existen algunas restricciones que diferencian el proceso de la creación de catálogos de máquinas para máquinas Windows VDA:

  • 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 Windows Server OS o Server OS implica un modelo de entrega de escritorios compartidos alojados equivalente. Seleccionar la opción Windows Desktop OS o Desktop OS implica un modelo de entrega de un solo usuario por máquina.

Sugerencia:

Cuando vuelva a unir una máquina eliminada al dominio de Active Directory, elimine la máquina de su catálogo de máquinas y vuelva a añadirla.

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 VDA de Linux es casi idéntico al de las máquinas VDA de Windows. 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 VDA de Linux, 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 VDA de Linux.
  • 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, el VDA de Linux 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.

Instalar el VDA de Linux en RHEL y Rocky Linux manualmente