Citrix Virtual Apps and Desktops 7 2311

Sécurité de la couche de transport (TLS) sur le serveur d’impression universel

Le protocole Transport Layer Security (TLS) est pris en charge pour les connexions basées sur TCP entre le Virtual Delivery Agent (VDA) et le serveur d’impression universel.

Avertissement :

Pour les tâches qui impliquent de travailler dans le registre Windows, une modification incorrecte du registre peut entraîner de graves problèmes pouvant nécessiter la réinstallation de votre système d’exploitation. Citrix® ne peut garantir que les problèmes résultant d’une utilisation incorrecte de l’Éditeur du Registre pourront être résolus. Utilisez l’Éditeur du Registre à vos propres risques. Assurez-vous de sauvegarder le registre avant de le modifier.

Types de connexions d’impression entre le VDA et le serveur d’impression universel

Connexions en texte clair

Les connexions suivantes liées à l’impression proviennent du VDA et se connectent aux ports du serveur d’impression universel. Ces connexions ne sont établies que lorsque le paramètre de stratégie SSL activé est défini sur Désactivé (par défaut).

  • Connexions de service web d’impression en texte clair (port TCP 8080)
  • Connexions de flux de données d’impression en texte clair (CGP) (port TCP 7229)

L’article de support Microsoft Vue d’ensemble du service et exigences de port réseau pour Windows décrit les ports utilisés par le service Spouleur d’impression Microsoft Windows. Les paramètres SSL/TLS de ce document ne s’appliquent pas aux connexions NetBIOS et RPC établies par le service Spouleur d’impression Windows. Le VDA utilise le fournisseur d’impression réseau Windows (win32spl.dll) comme solution de secours si le paramètre de stratégie Activer le serveur d’impression universel est défini sur Activé avec repli vers l’impression à distance native de Windows.

serveur d'impression universel sécurisé

Connexions chiffrées

Ces connexions SSL/TLS liées à l’impression proviennent du VDA et se connectent aux ports du serveur d’impression universel. Ces connexions ne sont établies que lorsque le paramètre de stratégie SSL activé est défini sur Activé.

  • Connexions de service web d’impression chiffrées (port TCP 8443)
  • Connexions de flux de données d’impression chiffrées (CGP) (port TCP 443)

serveur d'impression universel sécurisé 2

Configuration du client SSL/TLS

Le VDA fonctionne comme client SSL/TLS.

Utilisez la stratégie de groupe Microsoft et le registre pour configurer Microsoft SCHANNEL SSP pour les connexions de service web d’impression chiffrées (port TCP 8443). L’article de support Microsoft Paramètres de registre TLS décrit les paramètres de registre pour Microsoft SCHANNEL SSP.

Dans l’Éditeur de stratégie de groupe sur le VDA, accédez à Configuration ordinateur > Modèles d’administration > Réseau > Paramètres de configuration SSL > Ordre des suites de chiffrement SSL. Sélectionnez l’ordre suivant lorsque TLS 1.3 est défini :

TLS_AES_256_GCM_SHA384 TLS_AES_128_GCM_SHA256

Sélectionnez l’ordre suivant lorsque TLS 1.2 est défini :

TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384_P384 TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384_P256 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256 TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA_P384 TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA_P256

Remarque :

Lorsque ce paramètre de stratégie de groupe est configuré, le VDA sélectionne une suite de chiffrement pour les connexions de service web d’impression chiffrées (port par défaut : 8443) uniquement si les connexions apparaissent dans les deux listes de suites de chiffrement SSL :

  • Liste d’ordre des suites de chiffrement SSL de la stratégie de groupe
  • Liste correspondant au paramètre de stratégie de suite de chiffrement SSL sélectionné (COM, GOV ou ALL)

Cette configuration de stratégie de groupe affecte également d’autres applications et services TLS sur le VDA. Si vos applications nécessitent des suites de chiffrement spécifiques, vous devrez peut-être les ajouter à cette liste d’ordre des suites de chiffrement de la stratégie de groupe.

Important :

Les modifications de la stratégie de groupe pour la configuration TLS ne prennent effet qu’après le redémarrage du système d’exploitation.

Utilisez une stratégie Citrix pour configurer les paramètres SSL/TLS pour les connexions de flux de données d’impression chiffrées (CGP) (port TCP 443).

Configuration du serveur SSL/TLS

Le serveur d’impression universel fonctionne comme le serveur SSL/TLS.

Utilisez le script PowerShell Enable-UpsSsl.ps1 pour configurer les paramètres SSL/TLS.

Installer le certificat de serveur TLS sur le serveur d’impression universel

Pour HTTPS, le serveur d’impression universel prend en charge les fonctionnalités TLS en utilisant des certificats de serveur. Les certificats clients ne sont pas utilisés. Utilisez les services de certificats Microsoft Active Directory ou une autre autorité de certification pour demander un certificat pour le serveur d’impression universel.

Gardez à l’esprit les considérations suivantes lors de l’inscription/la demande d’un certificat à l’aide des services de certificats Microsoft Active Directory :

  1. Placez le certificat dans le magasin de certificats Personnel de l’ordinateur local.
  2. Définissez l’attribut Nom commun du nom distinctif du sujet (Subject DN) du certificat sur le nom de domaine complet (FQDN) du serveur d’impression universel. Spécifiez ceci dans le modèle de certificat.
  3. Définissez le fournisseur de services cryptographiques (CSP) utilisé pour générer la demande de certificat et la clé privée sur Microsoft Enhanced RSA and AES Cryptographic Provider (Encryption). Spécifiez ceci dans le modèle de certificat.
  4. Définissez la taille de clé sur au moins 2048 bits. Spécifiez ceci dans le modèle de certificat.

Configuration de SSL sur le serveur d’impression universel

Le service XTE sur le serveur d’impression universel écoute les connexions entrantes. Il fonctionne comme un serveur SSL lorsque SSL est activé. Les connexions entrantes sont de deux types : les connexions de service web d’impression, qui contiennent des commandes d’impression, et les connexions de flux de données d’impression, qui contiennent des tâches d’impression. SSL peut être activé sur ces connexions. SSL protège la confidentialité et l’intégrité de ces connexions. Par défaut, SSL est désactivé.

Le script PowerShell utilisé pour configurer SSL se trouve sur le support d’installation et porte ce nom de fichier : \Support\Tools\SslSupport\Enable-UpsSsl.ps1.

Configuration des numéros de port d’écoute sur le serveur d’impression universel

Voici les ports par défaut pour le service XTE :

  • Port TCP du service web d’impression en clair (HTTP) : 8080
  • Port TCP du flux de données d’impression en clair (CGP) : 7229
  • Port TCP du service web d’impression chiffré (HTTPS) : 8443
  • Port TCP du flux de données d’impression chiffré (CGP) : 443

Pour modifier les ports utilisés par le service XTE sur le serveur d’impression universel, exécutez les commandes suivantes dans PowerShell en tant qu’administrateur (voir la section ultérieure pour des notes sur l’utilisation du script PowerShell Enable-UpsSsl.ps1) :

  1. Stop-Service CitrixXTEServer, UpSvc
  2. Enable-UpsSsl.ps1 -Enable -HTTPSPort <port> -CGPSSLPort <port> ou Enable-UpsSsl.ps1 -Disable -HTTPPort <port> -CGPPort <port>
  3. Start-Service CitrixXTEServer

Paramètres TLS sur le serveur d’impression universel

Si vous avez plusieurs serveurs d’impression universels dans une configuration équilibrée en charge, assurez-vous que les paramètres TLS sont configurés de manière cohérente sur tous les serveurs d’impression universels.

Lorsque vous configurez TLS sur le serveur d’impression universel, les autorisations sur le certificat TLS installé sont modifiées, donnant au service d’impression universel un accès en lecture à la clé privée du certificat, et informant le service d’impression universel des éléments suivants :

  • Quel certificat utiliser pour TLS dans le magasin de certificats.
  • Quels numéros de port TCP utiliser pour les connexions TLS.

Le pare-feu Windows (s’il est activé) doit être configuré pour autoriser les connexions entrantes sur ces ports TCP. Cette configuration est effectuée automatiquement lorsque vous utilisez le script PowerShell Enable-UpsSsl.ps1.

  • Quelles versions du protocole TLS autoriser.

Universal Print Server prend en charge les versions 1.3 et 1.2 du protocole TLS. Spécifiez la version minimale autorisée.

La version par défaut du protocole TLS est 1.2.

Remarque :

TLS 1.1 et 1.0 ne sont plus pris en charge à partir de la version 2311 de Citrix Virtual Apps and Desktops.

  • Quelles suites de chiffrement TLS autoriser.

Une suite de chiffrement sélectionne les algorithmes cryptographiques utilisés pour une connexion. Les VDA et Universal Print Server peuvent prendre en charge différents ensembles de suites de chiffrement. Lorsqu’un VDA se connecte et envoie une liste de suites de chiffrement TLS prises en charge, Universal Print Server fait correspondre l’une des suites de chiffrement du client avec l’une des suites de chiffrement de sa propre liste de suites de chiffrement configurées et accepte la connexion. S’il n’y a pas de suite de chiffrement correspondante, Universal Print Server rejette la connexion.

Universal Print Server prend en charge les ensembles de suites de chiffrement suivants, nommés GOV(ernment), COM(mercial) et ALL, pour les modes de kit de chiffrement natif OPEN, FIPS et SP800-52. Les suites de chiffrement acceptables dépendent également du paramètre de stratégie Mode FIPS SSL et du mode FIPS de Windows. Consultez cet article de support Microsoft pour plus d’informations sur le mode FIPS de Windows.

Suite de chiffrement (par ordre de priorité décroissant) OPEN ALL OPEN COM OPEN GOV FIPS ALL FIPS COM FIPS GOV SP800-52 ALL SP800-52 COM SP800-52 GOV
TLS_ECDHE_RSA_ AES256_GCM_SHA384 X   X X   X X   X
TLS_ECDHE_RSA_ AES256_CBC_SHA384 X   X X   X X   X
TLS_ECDHE_RSA_ AES256_CBC_SHA X X   X X   X X  

Configurer TLS sur un serveur d’impression universel à l’aide du script PowerShell

Installez le certificat TLS dans la zone Ordinateur local > Personnel > Certificats du magasin de certificats. Si plusieurs certificats se trouvent à cet emplacement, fournissez l’empreinte numérique du certificat au script PowerShell Enable-UpsSsl.ps1.

Remarque :

Le script PowerShell trouve le certificat correct en fonction du nom de domaine complet (FQDN) du serveur d’impression universel. Vous n’avez pas besoin de fournir l’empreinte numérique du certificat lorsqu’un seul certificat est présent pour le FQDN du serveur d’impression universel.

Le script Enable-UpsSsl.ps1 active ou désactive les connexions TLS provenant du VDA vers le serveur d’impression universel. Ce script est disponible dans le dossier Support > Tools > SslSupport sur le support d’installation.

Lorsque vous activez TLS, le script désactive toutes les règles de pare-feu Windows existantes pour les ports TCP du serveur d’impression universel. Il ajoute ensuite de nouvelles règles qui permettent au service XTE d’accepter les connexions entrantes uniquement sur les ports TCP et UDP TLS. Il désactive également les règles du pare-feu Windows pour :

  • Connexions de service web d’impression en texte clair (par défaut : 8080)
  • Connexions de flux de données d’impression en texte clair (CGP) (par défaut : 7229)

L’effet est que le VDA ne peut établir ces connexions que lors de l’utilisation de TLS.

Remarque :

L’activation de TLS n’affecte pas les connexions RPC/SMB du spouleur d’impression Windows provenant du VDA et allant vers le serveur d’impression universel.

Important :

Spécifiez Enable ou Disable comme premier paramètre. Le paramètre CertificateThumbprint est facultatif si un seul certificat dans le magasin de certificats personnel de l’ordinateur local possède le FQDN du serveur d’impression universel. Les autres paramètres sont facultatifs.

Syntaxe

Enable-UpsSSL.ps1 -Enable [-HTTPPort <port>] [-CGPPort <port>] [–HTTPSPort <port>] [-CGPSSLPort <port>] [-SSLMinVersion <version>] [-SSLCipherSuite <name>] [-CertificateThumbprint <thumbprint>] [-FIPSMode <Boolean>] [-ComplianceMode <mode>]
Enable-UpsSSL.ps1 -Disable [-HTTPPort <portnum>] [-CGPPort <portnum>]
Paramètre Description
Enable Active SSL/TLS sur le serveur XTE. Ce paramètre ou le paramètre Disable est requis.
Disable Désactive SSL/TLS sur le serveur XTE. Ce paramètre ou le paramètre Enable est requis.
CertificateThumbprint "<thumbprint>" Empreinte numérique du certificat TLS dans le magasin de certificats personnels de l’ordinateur local, entre guillemets. Le script utilise l’empreinte numérique spécifiée pour sélectionner le certificat que vous souhaitez utiliser.
HTTPPort <port> Port du service web d’impression en texte clair (HTTP/SOAP). Par défaut : 8080
CGPPort <port> Port du flux de données d’impression en texte clair (CGP). Par défaut : 7229
HTTPSPort <port> Port du service web d’impression chiffré (HTTPS/SOAP). Par défaut : 8443
CGPSSLPort <port> Port du flux de données d’impression chiffré (CGP). Par défaut : 443
SSLMinVersion "<version>" Version minimale du protocole TLS, entre guillemets. Valeurs valides : « TLS_1.2 » et « TLS_1.3 ». Par défaut : TLS_1.2.
SSLCipherSuite "<name>" Nom du package de suites de chiffrement TLS, entre guillemets. Valeurs valides : « GOV », « COM » et « ALL » (par défaut).
FIPSMode <Boolean> Active ou désactive le mode FIPS 140 dans le serveur XTE. Valeurs valides : $true pour activer le mode FIPS 140, $false pour désactiver le mode FIPS 140.

Exemples

Le script suivant active TLS. L’empreinte numérique (représentée par « 12345678987654321 » dans cet exemple) est utilisée pour sélectionner le certificat à utiliser.

Enable-UpsSsl.ps1 –Enable -CertificateThumbprint "12345678987654321"

Le script suivant désactive TLS.

Enable-UpsSsl.ps1 –Disable

Configuration du mode FIPS

L’activation du mode FIPS (Federal Information Processing Standards) des États-Unis garantit que seule la cryptographie conforme à la norme FIPS 140 est utilisée pour les connexions chiffrées du Universal Print Server.

Configurez le mode FIPS sur le serveur avant de configurer le mode FIPS sur le client.

Consultez le site de documentation de Microsoft pour l’activation/désactivation du mode FIPS de Windows.

Activation du mode FIPS sur le client

Sur le Delivery Controller™, exécutez Web Studio et définissez le paramètre de stratégie Citrix Mode FIPS SSL sur Activé. Activez la stratégie Citrix.

Effectuez cette opération sur chaque VDA :

  1. Activez le mode FIPS de Windows.
  2. Redémarrez le VDA.

Activation du mode FIPS sur le serveur

Procédez comme suit sur chaque serveur d’impression universel :

  1. Activez le mode FIPS de Windows.
  2. Exécutez cette commande PowerShell en tant qu’administrateur : stop-service CitrixXTEServer, UpSvc
  3. Exécutez le script Enable-UpsSsl.ps1 avec les paramètres -Enable -FIPSMode $true.
  4. Redémarrez le serveur d’impression universel.

Désactivation du mode FIPS sur le client

Dans Web Studio, définissez le paramètre de stratégie Citrix Mode FIPS SSL sur Désactivé. Activez la stratégie Citrix. Vous pouvez également supprimer le paramètre de stratégie Citrix Mode FIPS SSL.

Procédez comme suit sur chaque VDA :

  1. Désactivez le mode FIPS de Windows.
  2. Redémarrez le VDA.

Désactivation du mode FIPS sur le serveur

Procédez comme suit sur chaque serveur d’impression universel :

  1. Désactivez le mode FIPS de Windows.
  2. Exécutez cette commande PowerShell en tant qu’administrateur : stop-service CitrixXTEServer, UpSvc
  3. Exécutez le script Enable-UpsSsl.ps1 avec les paramètres -Enable -FIPSMode $false.
  4. Redémarrez le serveur d’impression universel.

Remarque :

Le mode FIPS n’est pas pris en charge lorsque la version du protocole SSL est définie sur TLS 1.3.

Configuration de la version du protocole SSL/TLS

La version par défaut du protocole SSL/TLS est TLS 1.2. TLS 1.2 et TLS 1.3 sont les versions de protocole SSL/TLS recommandées pour une utilisation en production. Pour le dépannage, il peut être nécessaire de modifier temporairement la version du protocole SSL/TLS dans un environnement hors production.

SSL 2.0 et SSL 3.0 ne sont pas pris en charge sur le serveur d’impression universel.

Définition de la version du protocole SSL/TLS sur le serveur

Effectuez cette opération sur chaque serveur d’impression universel :

  1. Exécutez cette commande PowerShell en tant qu’administrateur : stop-service CitrixXTEServer, UpSvc
  2. Exécutez le script Enable-UpsSsl.ps1 avec les paramètres de version -Enable -SSLMinVersion. N’oubliez pas de le redéfinir sur TLS 1.2 ou TLS 1.3 une fois le test terminé.
  3. Redémarrez le serveur d’impression universel.

Définition de la version du protocole SSL/TLS sur le client

Effectuez cette opération sur chaque VDA :

  1. Sur le Delivery Controller, définissez le paramètre de stratégie Version du protocole SSL sur la version de protocole souhaitée et activez la stratégie.

  2. L’article de support Microsoft Paramètres de registre TLS décrit les paramètres de registre pour Microsoft SCHANNEL SSP. Activez le TLS 1.2 ou TLS 1.3 côté client à l’aide des paramètres de registre.

    Important :

    N’oubliez pas de restaurer les paramètres du registre à leurs valeurs d’origine une fois les tests terminés.

  3. Redémarrez le VDA.

Dépannage

Si une erreur de connexion se produit, vérifiez le fichier C:\Program Files (x86)\Citrix\XTE\logs\error.log sur le Universal Print Server.

Le message d’erreur SSL handshake from client failed apparaît dans ce fichier journal si la négociation SSL/TLS échoue. De telles défaillances peuvent se produire si la version du protocole SSL/TLS sur le VDA et le Universal Print Server ne correspondent pas.

Utilisez le nom de domaine complet (FQDN) du Universal Print Server dans les paramètres de stratégie suivants qui contiennent les noms d’hôte du Universal Print Server :

  • Imprimantes de session
  • Attributions d’imprimantes
  • Universal Print Servers pour l’équilibrage de charge

Assurez-vous que l’horloge système (date, heure et fuseau horaire) est correcte sur les Universal Print Servers et les VDA.

Sécurité de la couche de transport (TLS) sur le serveur d’impression universel