Administrar las claves de seguridad
Nota:
Debe utilizar esta función en combinación con StoreFront 1912 LTSR CU2 o una versión posterior.
La función Secure XML se admite solo en Citrix ADC y Citrix Gateway 12.1 y versiones posteriores.
Esta función permite especificar que solo las máquinas StoreFront y Citrix Gateway aprobadas se comuniquen con los Delivery Controllers de Citrix. Después de habilitar esta función, se bloquearán todas las solicitudes que no contengan la clave. Utilice esta función para agregar una capa adicional de seguridad y protegerse contra ataques que se originen en la red interna.
He aquí un flujo de trabajo general para utilizar esta función:
-
Muestre los parámetros de las claves de seguridad en Studio. (Use Remote PowerShell SDK)
-
Configure los parámetros para su implementación. (Use Studio o Remote PowerShell SDK).
-
Configure los parámetros en StoreFront. (Use PowerShell).
-
Configure los parámetros en Citrix ADC.
Mostrar los parámetros de las claves de seguridad en Studio
De forma predeterminada, los parámetros de las claves de seguridad están ocultos en Studio. Para mostrarlas en esa interfaz, utilice el SDK de PowerShell remoto. Para obtener más información sobre el SDK de PowerShell remoto, consulte SDK y API.
Estos son los pasos detallados:
- Ejecute el SDK de PowerShell remoto.
- En una ventana de comandos, ejecute los siguientes comandos:
-
Add-PSSnapIn Citrix*
. Este comando agrega los complementos de Citrix. Set-ConfigSiteMetadata -Name "Citrix_DesktopStudio_SecurityKeyManagementEnabled" -Value "True"
-
Configurar los parámetros para su implementación
Puede configurar los parámetros de la implementación mediante Studio o PowerShell.
Usar Studio
Una vez habilitada la función, vaya a Parámetros > Administrar clave de seguridad y haga clic en Modificar. Aparecerá la hoja Administrar clave de seguridad. Haga clic en Guardar para aplicar los cambios y cerrar la hoja.
Importante:
- Hay dos claves disponibles para uso. Puede utilizar la misma clave o claves diferentes para las comunicaciones a través de los puertos XML y STA. Le recomendamos usar solo una tecla a la vez. La clave no utilizada solo se utiliza para la rotación de claves.
- No haga clic en el icono de actualización para actualizar la clave que ya está en uso. Si lo hace, se producirá una interrupción del servicio.
Haga clic en el icono de actualización para generar nuevas claves.
Requerir clave para las comunicaciones a través del puerto XML (solo para StoreFront). Si se selecciona, se necesita una clave para autenticar las comunicaciones a través del puerto XML. StoreFront se comunica con Citrix Cloud a través de este puerto. Para obtener información acerca de cómo cambiar el puerto XML, consulte el artículo CTX127945 de Knowledge Center.
Requerir clave para las comunicaciones a través del puerto STA. Si se selecciona, se necesita una clave para autenticar las comunicaciones a través del puerto STA. Citrix Gateway y StoreFront se comunican con Citrix Cloud a través de este puerto. Para obtener información sobre cómo cambiar el puerto STA, consulte el artículo CTX101988 de Knowledge Center.
Después de aplicar los cambios, haga clic en Cerrar para salir de la hoja Administrar clave de seguridad.
Usar el SDK de PowerShell remoto
Estos son los pasos en PowerShell equivalentes a las operaciones en Studio.
-
Ejecute el SDK de PowerShell remoto.
- En una ventana de comandos, ejecute el siguiente comando:
Add-PSSnapIn Citrix*
- Ejecute los siguientes comandos para generar una clave y configurar Key1:
New-BrokerXmlServiceKey
Set-BrokerSite -XmlServiceKey1 <the key you generated>
- Ejecute los siguientes comandos para generar una clave y configurar Key2:
New-BrokerXmlServiceKey
Set-BrokerSite -XmlServiceKey2 <the key you generated>
- Ejecute uno o estos dos comandos para habilitar el uso de una clave en la autenticación de comunicaciones:
- Para autenticar las comunicaciones a través del puerto XML:
Set-BrokerSite -RequireXmlServiceKeyForNFuse $true
- Para autenticar las comunicaciones a través del puerto STA:
Set-BrokerSite -RequireXmlServiceKeyForSta $true
- Para autenticar las comunicaciones a través del puerto XML:
Consulte la ayuda de los comandos de PowerShell para ver instrucciones y sintaxis.
Configurar los parámetros en StoreFront
Tras completar los parámetros de su implementación, debe configurar los parámetros relevantes en StoreFront mediante PowerShell.
En el servidor de StoreFront, ejecute estos comandos de PowerShell:
Para configurar la clave para las comunicaciones a través del puerto XML, use el comando Set-STFStoreFarm. Por ejemplo:
$store = Get-STFStoreService -VirtualPath [Path to store]
$farm = Get-STFStoreFarm -StoreService $store -FarmName [Resource feed name]
Set-STFStoreFarm -Farm $farm -XMLValidationEnabled $true -XMLValidationSecret [secret]
<!--NeedCopy-->
Introduzca los valores adecuados para los siguientes parámetros:
Path to store
Resource feed name
secret
Para configurar la clave para las comunicaciones a través del puerto STA, utilice los comandos New-STFSecureTicketAuthority
y Set-STFRoamingGateway
. Por ejemplo:
$gateway = Get-STFRoamingGateway -Name [Gateway name]
$sta1 = New-STFSecureTicketAuthority -StaUrl [STA1 URL] -StaValidationEnabled $true -StaValidationSecret [secret]
$sta2 = New-STFSecureTicketAuthority -StaUrl [STA2 URL] -StaValidationEnabled $true -StaValidationSecret [secret]
Set-STFRoamingGateway -Gateway $gateway -SecureTicketAuthorityObjs $sta1,$sta2
<!--NeedCopy-->
Introduzca los valores adecuados para los siguientes parámetros:
Gateway name
STA URL
Secret
Consulte la ayuda de los comandos de PowerShell para ver instrucciones y sintaxis.
Configurar los parámetros en Citrix ADC
Nota:
No es necesario configurar esta función en Citrix ADC, a no ser que utilice Citrix ADC como puerta de enlace. Si utiliza Citrix ADC, siga los pasos que se indican a continuación.
-
Asegúrese de que ya está implementada la siguiente configuración de requisitos previos:
- Se configuran las siguientes direcciones IP relacionadas con Citrix ADC.
- Dirección IP de administración (NSIP) de Citrix ADC para acceder a la consola de Citrix ADC. Para obtener más información, consulte Configurar la dirección IP de NetScaler.
- Dirección IP de subred (SNIP) para permitir la comunicación entre el dispositivo Citrix ADC y los servidores back-end. Para obtener más información, consulte Configurar direcciones IP de subred.
- Dirección IP virtual de Citrix Gateway y dirección IP virtual del equilibrador de carga para iniciar sesión en el dispositivo ADC para el lanzamiento de sesiones. Para obtener más información, consulte Crear un servidor virtual.
- Los modos y las funciones requeridos en el dispositivo Citrix ADC están habilitados.
- Para habilitar los modos, en la GUI de Citrix ADC vaya a System > Settings > Configure Mode.
- Para habilitar las funciones, en la GUI de Citrix ADC vaya a System > Settings > Configure Basic Features.
- Se han completado las configuraciones relacionadas con los certificados.
- Se crea la solicitud de firma de certificado (CSR). Para obtener más información, consulte Crear un certificado.
- Los certificados de CA y del servidor y los certificados raíz están instalados. Para obtener más información, consulte Instalación, enlace y actualizaciones.
- Se ha creado un Citrix Gateway para Citrix DaaS (anteriormente, Citrix Virtual Apps and Desktops Service). Pruebe la conectividad. Para ello, haga clic en el botón Test STA Connectivity para confirmar que los servidores virtuales están conectados. Para obtener más información, consulte Configurar Citrix ADC para Citrix Virtual Apps and Desktops.
- Se configuran las siguientes direcciones IP relacionadas con Citrix ADC.
-
Agregue una acción de reescritura. Para obtener más información, consulte Configurar una acción de reescritura.
- Vaya a AppExpert > Reescribir > Acciones.
- Haga clic en Add para agregar una nueva acción. Puede asignar a la acción el nombre “set Type to INSERT_HTTP_HEADER”.
- En Type, seleccione INSERT_HTTP_HEADER.
- En Header Name, escriba X-Citrix-XmlServiceKey.
- En Expression, agregue
<XmlServiceKey1 value>
con las comillas. Puede copiar el valor XmlServiceKey1 desde la configuración de Desktop Delivery Controller.
- Agregue una directiva de reescritura. Para obtener más información, consulte Configurar una directiva de reescritura.
-
Vaya a AppExpert > Reescribir > Directivas.
-
Haga clic en Add para agregar una nueva directiva.
- En Action, seleccione la acción creada en el paso anterior.
- En Expression, agregue HTTP.REQ.IS_VALID.
- Haga clic en OK.
-
-
Configure el equilibrio de carga. Debe configurar un servidor virtual de equilibrio de carga por cada servidor STA. En caso contrario, no se iniciarán las sesiones.
Para obtener más información, consulte Configurar el equilibrio de carga básico.
- Cree un servidor virtual de equilibrio de carga.
- Vaya a Traffic Management > Load Balancing > Servers.
- En la página Virtual Servers, haga clic en Add.
- En Protocol, seleccione HTTP.
- Agregue la dirección IP virtual de equilibrio de carga y, en Port, seleccione 80.
- Haga clic en OK.
- Cree un servicio de equilibrio de carga.
- Vaya a Traffic Management > Load Balancing > Services.
- En Existing Server, seleccione el servidor virtual creado en el paso anterior.
- En Protocol, seleccione HTTP y, en Port, seleccione 80.
- Haga clic en OK y, a continuación, en Done.
- Enlace el servicio al servidor virtual.
- Seleccione el servidor virtual creado anteriormente y haga clic en Edit.
- En Services and Service Groups, haga clic en No Load Balancing Virtual Server Service Binding.
- En Service Binding, seleccione la instancia de Citrix DaaS creada anteriormente.
- Haga clic en Bind.
- Vincule la directiva de reescritura creada anteriormente al servidor virtual.
- Seleccione el servidor virtual creado anteriormente y haga clic en Edit.
- En Advanced Settings, haga clic en Policies, y, a continuación, en la sección Policies haga clic en +.
- En Choose Policy, seleccione Rewrite y, en Choose Type, seleccione Request.
- Haga clic en Continuar.
- En Select Policy, seleccione la directiva de reescritura creada anteriormente.
- Haga clic en Bind.
- Haga clic en Listo.
- Configure la persistencia para el servidor virtual, si es necesario.
- Seleccione el servidor virtual creado anteriormente y haga clic en Edit.
- En Advanced Settings, haga clic en Persistence.
- Seleccione el tipo de persistencia Others.
- Seleccione DESTIP para crear sesiones de persistencia basadas en la dirección IP del servicio seleccionado por el servidor virtual (la dirección IP de destino)
- En IPv4 Netmask, agregue una máscara de red igual que la del Desktop Delivery Controller.
- Haga clic en OK.
- Repita estos pasos para el otro servidor virtual.
- Cree un servidor virtual de equilibrio de carga.
La configuración cambia si el dispositivo Citrix ADC ya está configurado con Citrix DaaS
Si ya ha configurado el dispositivo Citrix ADC con Citrix DaaS, para utilizar la funcionalidad Secure XML, debe realizar los siguientes cambios de configuración.
- Antes de iniciar la sesión, cambie la URL de Secure Ticket Authority (STA) de la puerta de enlace para que utilice utilizar los nombres de dominio completos (FQDN) de los servidores virtuales de equilibrio de carga.
- Compruebe que el parámetro
TrustRequestsSentToTheXmlServicePort
esté establecido en False. De forma predeterminada, el parámetroTrustRequestsSentToTheXmlServicePort
se establece en False. Sin embargo, si el cliente ya ha configurado Citrix ADC para Citrix DaaS,TrustRequestsSentToTheXmlServicePort
se establece en True.
- En la GUI de Citrix ADC, vaya a Configuration > Integrate with Citrix Products y haga clic en XenApp and XenDesktop.
-
Seleccione la instancia de puerta de enlace y haga clic en el icono de modificación.
-
En el panel StoreFront, haga clic en el icono de modificación.
- Agregue la URL de Secure Ticket Authority
- Si la funcionalidad Secure XML está habilitada, la URL de STA debe ser la URL del servicio de equilibrio de carga.
- Si la funcionalidad Secure XML está inhabilitada, la URL de STA debe ser la URL de STA (la dirección del Desktop Delivery Controller) y el parámetro TrustRequestsSentToTheXmlServicePort del Desktop Delivery Controller debe establecerse en True.