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 | Sí | Sí | Sí |
| RHEL 6.9 | Sí | Sí | Sí |
| RHEL 6.6 | Sí | Sí | Sí |
| CentOS 7.3 | Sí | Sí | Sí |
| Ubuntu 16.04 | Sí | Sí | Sí |
| SUSE 12.2 | Sí | No | Sí |
Usar la instalación sencilla
Para usar esta función, haz lo siguiente:
-
- Prepara la información de configuración y la máquina Linux.
-
- 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.
-
- 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
adclientencuentre 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:
-
La instalación sencilla ayuda a descargar el paquete de Centrify de Internet automáticamente. Las siguientes son las URL proporcionadas para cada distribución:
-
Obtén el paquete de Centrify de un directorio local. Haz lo siguiente para designar el directorio del paquete de Centrify:
a. Crea el archivo /tmp/ctxinstall.conf en el servidor VDA de Linux si no existe. b. Agrega la línea “centrifypkgpath=<nombre de ruta>” al archivo.
Por ejemplo:
cat /tmp/ctxinstall.conf set “centrifypkgpath=/home/mydir” ls -ls /home/mydir 9548 -r-xr-xr-x. 1 root root 9776688 May 13 2016 adcheck-rhel4-x86_64 4140 -r--r--r--. 1 root root 4236714 Apr 21 2016 centrifyda-3.3.1-rhel4-x86_64.rpm 33492 -r--r--r--. 1 root root 34292673 May 13 2016 centrifydc-5.3.1-rhel4-x86_64.rpm 4 -rw-rw-r--. 1 root root 1168 Dec 1 2015 centrifydc-install.cfg 756 -r--r--r--. 1 root root 770991 May 13 2016 centrifydc-ldapproxy-5.3.1-rhel4-x86_64.rpm 268 -r--r--r--. 1 root root 271296 May 13 2016 centrifydc-nis-5.3.1-rhel4-x86_64.rpm 1888 -r--r--r--. 1 root root 1930084 Apr 12 2016 centrifydc-openssh-7.2p2-5.3.1-rhel4-x86_64.rpm 124 -rw-rw-r--. 1 root root 124543 Apr 19 2016 centrify-suite.cfg 0 lrwxrwxrwx. 1 root root 10 Jul 9 2012 install-express.sh -> install.sh 332 -r-xr-xr--. 1 root root 338292 Apr 10 2016 install.sh 12 -r--r--r--. 1 root root 11166 Apr 9 2015 release-notes-agent-rhel4-x86_64.txt 4 -r--r--r--. 1 root root 3732 Aug 24 2015 release-notes-da-rhel4-x86_64.txt 4 -r--r--r--. 1 root root 2749 Apr 7 2015 release-notes-nis-rhel4-x86_64.txt 12 -r--r--r--. 1 root root 9133 Mar 21 2016 release-notes-openssh-rhel4-x86_64.txt <!--NeedCopy-->
-
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:
- Ejecuta el comando
rm -f /etc/krb5.keytab. - Ejecuta el comando
net ads leave $REALM -U $domain-administrator. - Quita el catálogo de máquinas y el grupo de entrega en el Delivery Controller.
- Ejecuta /opt/Citrix/VDA/sbin/ctxinstall.sh.
- 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:
- Ejecuta el comando
sudo apt-get update. - Ejecuta el comando
sudo apt-get install unity lightdm. - 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:
-
Desde una línea de comandos, escribe pam-auth-update.
-
En la ventana emergente resultante, verifica que la opción Crear inicio de sesión de directorio principal esté seleccionada.

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:
-
Deshabilita SELinux realizando el siguiente cambio en /etc/selinux/config.
SELINUX=disabled
-
Reinicia el VDA.