Instalación sencilla

La instalación sencilla es compatible oficialmente a partir de la versión 7.13 del VDA de Linux. La instalación sencilla te ayuda a configurar el entorno de ejecución del VDA de Linux instalando los paquetes necesarios y personalizando los archivos de configuración automáticamente.

Distribuciones compatibles

  Winbind SSSD Centrify
RHEL 7.3
RHEL 6.9
RHEL 6.6
CentOS 7.3
Ubuntu 16.04
SUSE 12.2 No

Usar la instalación sencilla

Para usar esta función, haz lo siguiente:

    1. Prepara la información de configuración y la máquina Linux.
    1. Instala el paquete de VDA de Linux.
  • Ve al sitio web de Citrix® y descarga el paquete de VDA de Linux adecuado según tu distribución de Linux.
    1. Configura el entorno de ejecución para completar la instalación del VDA de Linux.
  • Paso 1: Prepara la información de configuración y la máquina Linux

Recopila la siguiente información de configuración necesaria para la instalación sencilla:

  • 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 dominio Kerberos: el nombre de dominio Kerberos
  • FQDN de Active Directory: nombre de dominio completo

Importante:

  • Para instalar el VDA de Linux, verifica que los repositorios se hayan agregado correctamente en la máquina Linux.
  • Para iniciar una sesión, verifica que el sistema X Window y los entornos de escritorio estén instalados.

Paso 2: Instala el paquete de VDA de Linux

Ejecuta los siguientes comandos para configurar el entorno del VDA de Linux.

Para distribuciones RHEL y CentOS:

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

Para distribuciones Ubuntu:

-  sudo dpkg -i <PATH>/<Linux VDA deb>
-  sudo apt-get install -f
<!--NeedCopy-->
  • Para distribuciones SUSE:
-  zypper -i install <PATH>/<Linux VDA RPM>
<!--NeedCopy-->
  • Paso 3: Configura el entorno de ejecución para completar la instalación

  • Después de instalar el paquete de VDA de Linux, configura el entorno de ejecución mediante el script ctxinstall.sh. Puedes ejecutar el script en modo interactivo o en modo silencioso.

  • Modo interactivo:

  • Para realizar una configuración manual, ejecuta el siguiente comando y escribe el parámetro correspondiente en cada solicitud.
-  sudo /opt/Citrix/VDA/sbin/ctxinstall.sh
<!--NeedCopy-->

Modo silencioso:

Para usar la instalación sencilla en modo silencioso, establece las siguientes variables de entorno antes de ejecutar ctxinstall.sh.

  • CTX_EASYINSTALL_HOSTNAME=nombre-de-host: indica el nombre de host del servidor VDA de Linux.
  • CTX_EASYINSTALL_DNS=dirección-ip-de-dns: dirección IP de DNS.
  • CTX_EASYINSTALL_NTPS=dirección-de-ntps: dirección IP o nombre de cadena del servidor NTP.
  • CTX_EASYINSTALL_DOMAIN=nombre-de-dominio: el nombre NetBIOS del dominio.
  • CTX_EASYINSTALL_REALM=nombre-de-dominio-kerberos: el nombre de dominio Kerberos.
  • CTX_EASYINSTALL_FQDN=nombre-fqdn-ad
  • CTX_EASYINSTALL_ADINTEGRATIONWAY=winbind | sssd | centrify: indica el método de integración de Active Directory.
  • CTX_EASYINSTALL_USERNAME=nombre-de-usuario-de-dominio: indica el nombre del usuario de dominio; se usa para unirse al dominio.
  • CTX_EASYINSTALL_PASSWORD=contraseña: especifica la contraseña del usuario de dominio; se usa para unirse al dominio.

El script ctxsetup.sh usa las siguientes variables:

  • 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_XDL_DDC_LIST=lista-de-fqdn-ddc: el VDA de Linux requiere una lista de nombres de dominio completos (FQDN) de Delivery Controller separados por espacios para registrarse en un Delivery Controller. Se debe especificar al menos un FQDN o CNAME.
    • CTX_XDL_VDA_PORT=número-de-puerto: el VDA de Linux se comunica con los Delivery Controllers a través de un puerto TCP/IP.
  • CTX_XDL_REGISTER_SERVICE=Y | N: los servicios de Linux Virtual Desktop se inician después del arranque de la máquina.
  • CTX_XDL_ADD_FIREWALL_RULES=Y | N: los servicios de Linux Virtual Desktop requieren que se permitan las conexiones de red entrantes a través del firewall del sistema. Puedes abrir automáticamente los puertos necesarios (puertos 80 y 1494 de forma predeterminada) en el firewall del sistema para Linux Virtual Desktop.
  • 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_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, establece el valor en Y.
  • CTX_XDL_SITE_NAME=nombre-dns: 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, especifica un nombre de sitio DNS. Si no es necesario, se puede establecer en <none>.
  • CTX_XDL_LDAP_LIST=lista-de-servidores-ldap: el VDA de Linux consulta DNS para detectar servidores LDAP. Si DNS no puede proporcionar registros de servicio LDAP, puedes proporcionar una lista de FQDN de LDAP separados por espacios con el puerto LDAP. Por ejemplo, ad1.mycompany.com:389. Si no es necesario, se puede establecer en <none>.
  • CTX_XDL_SEARCH_BASE=conjunto-de-base-de-búsqueda: 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, puedes especificar una base de búsqueda (por ejemplo, OU=VDI,DC=mycompany,DC=com). Si no es necesario, se puede establecer en <none>.
  • CTX_XDL_START_SERVICE=Y | N: si los servicios del VDA de Linux se inician o no cuando se completa la configuración.

Si no se establece ningún parámetro, la instalación vuelve al modo interactivo, con una solicitud de entrada del usuario. El script ctxinstall.sh no solicita respuestas cuando todos los parámetros ya están establecidos a través de las variables de entorno.

En modo silencioso, debes ejecutar los siguientes comandos para establecer las variables de entorno y, a continuación, ejecutar el script ctxinstall.sh.

export CTX_EASYINSTALL_HOSTNAME=host-name

export CTX_EASYINSTALL_DNS=ip-address-of-dns

export CTX_EASYINSTALL_NTPS=address-of-ntps

export CTX_EASYINSTALL_DOMAIN=domain-name

-  export CTX_EASYINSTALL_REALM=realm-name

export CTX_EASYINSTALL_FQDN=ad-fqdn-name

export CTX_EASYINSTALL_ADINTEGRATIONWAY=winbind | sssd | centrify

export CTX_EASYINSTALL_USERNAME=domain-user-name

export CTX_EASYINSTALL_PASSWORD=password

export CTX_XDL_SUPPORT_DDC_AS_CNAME=Y | N

-  export CTX_XDL_DDC_LIST=list-ddc-fqdns

export CTX_XDL_VDA_PORT=port-number

export CTX_XDL_REGISTER_SERVICE=Y | N

    -  export CTX_XDL_ADD_FIREWALL_RULES=Y | N

export CTX_XDL_HDX_3D_PRO=Y | N

export CTX_XDL_VDI_MODE=Y | N

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_START_SERVICE=Y | N

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

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

Alternativamente, puedes especificar todos los parámetros mediante un solo comando:

sudo CTX_EASYINSTALL_HOSTNAME=host-name \

CTX_EASYINSTALL_DNS=ip-address-of-dns \

CTX_EASYINSTALL_NTPS=address-of-ntps \

CTX_EASYINSTALL_DOMAIN=domain-name \

CTX_EASYINSTALL_REALM=realm-name \

......

-  CTX_XDL_SEARCH_BASE=search-base-set \

CTX_XDL_START_SERVICE=Y \

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

Consideraciones

  • El nombre del grupo de trabajo es el nombre de dominio de forma predeterminada. Para personalizar el grupo de trabajo en tu entorno, haz lo siguiente:

    a. Crea el archivo /tmp/ctxinstall.conf en la máquina VDA de Linux. b. Agrega la línea workgroup=<tu grupo de trabajo> al archivo.

  • Centrify no admite la configuración de DNS solo con IPv6. Se requiere al menos un servidor DNS que use IPv4 en /etc/resolv.conf para que adclient encuentre los servicios de AD correctamente.

  • Para Centrify en CentOS, la instalación sencilla puede fallar en adcheck, la herramienta de comprobación del entorno de Centrify, e informar del siguiente error:

    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 ocurre debido a la configuración especial de Centrify. Haz lo siguiente para resolver este problema:

    a. Abre Herramientas administrativas en el Delivery Controller. b. Selecciona Sitios y servicios de Active Directory. c. Agrega una dirección de subred correcta para Subredes.

  • Si eliges Centrify como método para unirte a un dominio, el script ctxinstall.sh necesita el paquete de Centrify. Hay dos formas en que ctxinstall.sh puede obtener el paquete de Centrify:

Solución de problemas

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

Error al unirse a un dominio mediante SSSD

Puede producirse un error al intentar unirse a un dominio, con una salida similar a (verifica los registros para la salida 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. Ejecuta el comando rm -f /etc/krb5.keytab.
  2. Ejecuta el comando net ads leave $REALM -U $domain-administrator.
  3. Quita el catálogo de máquinas y el grupo de entrega en el Delivery Controller.
  4. Ejecuta /opt/Citrix/VDA/sbin/ctxinstall.sh.
  5. Crea 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 al iniciar una sesión, que luego se bloquea en un escritorio en blanco. Además, la consola de la máquina del SO del servidor también muestra una pantalla gris al iniciar sesión con una cuenta de usuario local.

Para resolver este problema:

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

Error al iniciar sesiones de escritorio de Ubuntu debido a la falta del 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 del dominio.

Para resolver este problema:

  1. Desde una línea de comandos, escribe pam-auth-update.

  2. En la ventana emergente resultante, verifica que la opción Crear inicio de sesión de directorio principal esté seleccionada.

    Imagen de Ubuntu no puede iniciar sesión

La sesión no se puede iniciar 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, usa 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, Citrix recomienda que reinicies el sistema y lo intentes 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/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. Deshabilita SELinux realizando el siguiente cambio en /etc/selinux/config.

    SELINUX=disabled

  2. Reinicia el VDA.

Instalación sencilla