Protocolo TLS no servidor de impressão universal
O protocolo TLS (Transport Layer Security) é suportado para conexões baseadas em TCP entre o Virtual Delivery Agent (VDA) e o Servidor de impressão universal.
Aviso:
Nas tarefas que incluem trabalhar no registro do Windows, tenha muito cuidado: editar o registro incorretamente pode causar sérios problemas que podem exigir que você reinstale seu sistema operacional. A Citrix não pode garantir que os problemas resultantes do uso incorreto do Editor do Registro possam ser resolvidos. Use o Editor do Registro por sua conta e risco. Tenha o cuidado de fazer backup do registro antes de editá-lo.
Tipos de conexões de impressão entre o VDA e o Servidor de impressão universal
Conexões de texto não criptografado
As seguintes conexões relacionadas à impressão são originadas no VDA e se conectam às portas no Servidor de impressão universal. Essas conexões são estabelecidas somente quando a configuração da políticaSSL habilitadoé definida comoDesativado(o padrão).
- Conexões de serviço Web de impressão de texto não criptografado (porta TCP 8080)
- Conexões de fluxo de dados de impressão (CGP) de texto não criptografado (porta TCP 7229)
O artigo de suporte da MicrosoftVisão geral do serviço e requisitos de porta de rede para Windowsdescreve as portas usadas pelo serviço de Spooler de Impressão do Microsoft Windows. As configurações SSL/TLS neste documento não se aplicam às conexões NETBIOS e RPC estabelecidas pelo serviço de Spooler de impressão do Windows. O VDA usa o Provedor de Impressão de Rede do Windows (win32spl.dll) como fallback se a configuração da política deAtivação do Servidor de Impressão Universalestiver definida comoEnabled with fallback to Windows’ native remote printing.
Conexões criptografadas
Essas conexões SSL/TLS relacionadas à impressão são originadas no VDA e se conectam às portas no Servidor de impressão universal. Essas conexões são estabelecidas somente quando a configuração de políticaSSL habilitadoé definida comoAtivado.
- Conexões de serviço Web de impressão criptografadas (porta TCP 8443)
- Conexões de fluxo de dados de impressão (CGP) criptografadas (porta TCP 443)
Configuração cliente SSL/TLS
O VDA funciona como o cliente SSL/TLS.
Use a Política de Grupo da Microsoft e o registro para configurar o Microsoft SCHANNEL SSP nas conexões de serviço Web de impressão criptografadas (porta TCP 8443). O artigo de suporte da MicrosoftConfigurações do Registro do protocolo TLSdescreve as configurações do registro para Microsoft SCHANNEL SSP.
Usando o Editor de Política de Grupo no VDA (Windows Server 2016 ou Windows 10), vá paraConfiguração do Computador > Modelos Administrativos > Rede > Definições de configuração de SSL > Ordem do Pacote de Codificação de SSL. Selecione na seguinte ordem:
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
Nota:
Ao estabelecer esta configuração da política de grupo, o VDA seleciona um pacote de codificação de conexões de serviço Web de impressão criptografadas (porta padrão: 8443) somente se as conexões aparecerem nas duas listas do pacote de codificação SSL:
- Lista ordenada de pacotes de codificação SSL da política de grupo
- Lista correspondente à configuração da política do Pacote de codificação SSL selecionada (COM, GOV ou ALL)
Essa configuração de política de grupo também afeta outros aplicativos e serviços TLS no VDA. Se seus aplicativos precisarem de pacotes de codificação específicos, será necessário adicioná-los à lista ordenada de pacotes de codificação da política de grupo.
Importante:
As alterações da política de grupo para a configuração TLS entram em vigor somente após a reinicialização do sistema operacional.
Use uma política Citrix para definir as configurações SSL/TLS das conexões criptografadas de fluxo de dados de impressão (CGP) (porta TCP 443).
Configuração de servidor SSL/TLS
O Servidor de Impressão Universal funciona como o servidor SSL/TLS.
Use o scriptEnable-UpsSsl.ps1
do PowerShell para definir as configurações SSL/TLS.
Instalar o certificado de servidor TLS no servidor de impressão universal
帕拉HTTPS, o servidor de impressao普遍aceita recursos TLS usando certificados de servidor. Os certificados cliente não são usados. Use os Serviços de Certificados do Microsoft Active Directory ou outra autoridade de certificação para solicitar um certificado para o Servidor de Impressão Universal.
Tenha em mente as seguintes considerações ao registrar/solicitar um certificado usando os Serviços de Certificados do Microsoft Active Directory:
- Coloque o certificado no armazenamento de certificadospessoaisdo computador local.
- Configure o atributo de nome comumCommon Namedo DN (nome diferenciado) da entidade do certificado com o nome de domínio totalmente qualificado (FQDN) do Servidor de Impressão Universal. Especifique isso no modelo de certificado.
- Defina o provedor de serviços de criptografia (CSP) usado para gerar a solicitação de certificado e a chave privada comoMicrosoft Enhanced RSA and AES Cryptographic Provider (Encryption). Especifique isso no modelo de certificado.
- Defina o tamanho da chave para pelo menos 2048 bits. Especifique isso no modelo de certificado.
Configurar o SSL no servidor de impressão universal
O serviço XTE no servidor de impressão universal escuta as conexões de entrada. Ele funciona como um servidor SSL quando o SSL está habilitado. As conexões de entrada têm dois tipos: conexões de serviço Web de impressão, que contêm comandos de impressão, e conexões de fluxo de dados de impressão, que contêm trabalhos de impressão. O SSL pode ser habilitado nessas conexões. O SSL protege a confidencialidade e a integridade dessas conexões. Por padrão, o SSL está desativado.
O script do PowerShell usado para configurar SSL está na mídia de instalação e tem este nome de arquivo:\ \ \ SslSupport \ Enable-UpsSsl.ps1工具的支持。
Configurar números de porta de escuta no servidor de impressão universal
Estas são portas padrão para o serviço XTE:
- Porta TCP de serviço Web de impressão de texto não criptografado (HTTP): 8080
- Porta TCP de fluxo de dados de impressão (CGP) de texto não criptografado: 7229
- Porta TCP de serviço Web de impressão criptografada (HTTPS): 8443
- Porta TCP de fluxo de dados de impressão criptografada (CGP): 443
Para alterar as portas usadas pelo serviço XTE no servidor de impressão universal, execute os seguintes comandos no PowerShell como administrador (consulte a seção a seguir para ler as observações sobre o uso do script do PowerShell Enable-UpsSsl.ps1):
Stop-Service CitrixXTEServer, UpSvc
Enable-UpsSsl.ps1 -Enable -HTTPSPort
ou-CGPSSLPort Enable-UpsSsl.ps1 -Disable -HTTPPort
-CGPPort Start-Service CitrixXTEServer
Configurações de TLS no servidor de impressão universal
Se você tiver vários servidores de impressão universal em uma configuração de balanceamento de carga, certifique-se de que as configurações TLS estejam configuradas de forma consistente em todos os servidores de impressão universal.
Quando você configura o TLS no servidor de impressão universal, as permissões no certificado TLS instalado são alteradas, dando ao serviço de impressão universal acesso de leitura à chave privada do certificado e informando o serviço universal de impressão sobre o seguinte:
- Qual certificado no armazenamento de certificados usar para TLS.
- Quais números de porta TCP usar para conexões TLS.
O Firewall do Windows (se ativado) deve ser configurado para permitir conexões de entrada nessas portas TCP. Essa configuração é feita para você quando você usa o script Enable-UpsSsl.ps1 do PowerShell.
- Quais versões do protocolo TLS permitir.
O servidor de impressão universal suporta as versões 1.2, 1.1 e 1.0 do protocolo TLS. Especifique a versão mínima permitida.
A versão padrão do protocolo TLS é 1.2.
- Quais pacotes de codificação TLS permitir.
Um pacote de codificação seleciona os algoritmos de criptografia que são usados para uma conexão. Os VDAs e o servidor de impressão universal podem suportar diferentes conjuntos de pacotes de codificação. Quando um VDA se conecta e envia uma lista de pacotes de codificação TLS suportados, o servidor de impressão universal faz a correspondência de um dos pacotes de codificação de cliente com um dos pacotes de codificação em sua própria lista de pacotes de codificação configurados e aceita a conexão. Se não houver um pacote de codificação correspondente, o servidor de impressão universal rejeita a conexão.
O servidor de impressão universal suporta os seguintes conjuntos de pacotes de codificação chamados GOV (governo), COM (comercial) e ALL (todos) para os modos OPEN, FIPS e os modos SP800-52 nativos do Crypto Kit. Os pacotes de codificação aceitáveis também dependem da configuração da política deModo SSL FIPSe do modo FIPS do Windows. Consulte esteartigo de suporte da Microsoftpara obter informações sobre o modo FIPS do Windows.
Pacote de codificação (em ordem de prioridade decrescente) | 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 |
Configurar o TLS em um servidor de impressão universal usando o script do PowerShell
Instale o certificado TLS na área de armazenamento de certificados:Computador local > Pessoal > Certificates. Se mais de um certificado residir nesse local, forneça a impressão digital do certificado para o scriptEnable-UpsSsl.ps1
do PowerShell.
Nota:
O script do PowerShell encontra o certificado correto com base no FQDN do servidor de impressão universal. Você não precisa fornecer a impressão digital do certificado quando apenas um único certificado estiver presente para o FQDN do servidor de impressão universal.
O scriptEnable-UpsSsl.ps1
ativa ou desativa as conexões TLS originadas no VDA para o servidor de impressão universal. Esse script está disponível na pastaSupport > Tools > SslSupportda mídia de instalação.
Quando você habilita o TLS, o script desativa todas as regras de Firewall do Windows existentes das portas TCP do servidor de impressão universal. Em seguida, adiciona novas regras que permitem que o serviço XTE aceite conexões de entrada somente nas portas TLS TCP e UDP. Também desativa as regras de Firewall do Windows para:
- Conexões de serviço Web de impressão de texto não criptografado (padrão: 8080)
- Conexões de fluxo de dados de impressão (CGP) de texto não criptografado (padrão: 7229)
O efeito é que o VDA pode fazer essas conexões somente quando utiliza o TLS.
Nota:
Ativar o TLS não afeta as conexões RPC/SMB do Spooler de impressão do Windows originadas no VDA e que seguem para o servidor de impressão universal.
Importante:
EspecifiqueEnableouDisablecomo o primeiro parâmetro. O parâmetro CertificateThumbprint é opcional se apenas um certificado no armazenamento de certificados pessoais do computador local tiver o FQDN do servidor de impressão universal. Os outros parâmetros são opcionais.
Sintaxe
Enable-UpsSSL.ps1 -Enable [-HTTPPort ] [-CGPPort ] [–HTTPSPort ] [-CGPSSLPort ] [-SSLMinVersion ] [-SSLCipherSuite ] [-CertificateThumbprint ] [-FIPSMode ] [-ComplianceMode ] Enable-UpsSSL.ps1 -Disable [-HTTPPort ] [-CGPPort ]
Parâmetro | Descrição |
---|---|
Enable | Habilita SSL / TLS没有servidor XTE。存在parametro ou o parâmetro Disable é necessário. |
Disable | Desabilita SSL/TLS no servidor XTE. Esse parâmetro ou o parâmetro Enable é necessário. |
CertificateThumbprint" |
Impressão digital do certificado TLS no armazenamento de certificados pessoais do computador local, entre aspas. O script usa a impressão digital especificada para selecionar o certificado que você deseja usar. |
HTTPPort
|
Porta de serviço Web de impressão de texto não criptografado (HTTP/SOAP). Padrão: 8080 |
CGPPort
|
Porta de fluxo de dados de impressão (CGP) de texto não criptografado. Padrão: 7229 |
HTTPSPort
|
Porta de serviço Web de impressão criptografada (HTTPS/SOAP). Padrão: 8443 |
CGPSSLPort
|
Porta de fluxo de dados de impressão criptografada (CGP). Padrão: 443 |
SSLMinVersion" |
Versão mínima do protocolo TLS, entre aspas. Valores válidos: “TLS_1.0”, “TLS_1.1” e “TLS_1.2”. Padrão: TLS_1.2. |
SSLCipherSuite" |
Nome do pacote de codificação TLS, entre aspas. Valores válidos: “GOV”, “COM” e “ALL” (padrão). |
FIPSMode
|
Ativa ou desativa o modo FIPS 140 no servidor XTE. Valores válidos: $true para habilitar o modo FIPS 140, $false para desabilitar o modo FIPS 140. |
Exemplos
O script a seguir habilita o TLS. A impressão digital (representada como “12345678987654321” neste exemplo) é usada para selecionar o certificado a ser usado.
Enable-UpsSsl.ps1 –Enable -CertificateThumbprint "12345678987654321"
O script a seguir desabilita o TLS.
Enable-UpsSsl.ps1 –Disable
Configuração do modo FIPS
Habilitar o modo FIPS (Federal Information Processing Standards) dos EUA garante que apenas a criptografia compatível com FIPS 140 seja usada para conexões criptografadas do servidor de impressão universal.
Configure o modo FIPS no servidor antes de configurar o modo FIPS no cliente.
Consulte o site de documentação da Microsoft para habilitar/desabilitar o modo FIPS do Windows.
Habilitar o modo FIPS no cliente
No Delivery Controller, execute o Web Studio e defina a configuração da políticaSSL FIPS Modeda Citrix comoEnabled. Habilite a política da Citrix.
Faça isso em cada VDA:
- Habilite o modo FIPS do Windows.
- Reinicie o VDA.
Habilitar o modo FIPS no servidor
Faça isso em cada servidor de impressão universal:
- Habilite o modo FIPS do Windows.
- Execute este comando do PowerShell como administrador:
stop-service CitrixXTEServer, UpSvc
- Execute o script
Enable-UpsSsl.ps1
com os parâmetros-Enable -FIPSMode $true
. - Reinicie o servidor de impressão universal.
Desabilitar o modo FIPS no cliente
No Web Studio, defina a configuração da políticaSSL FIPS Modeda Citrix comoDisabled. Habilite a política da Citrix. Você também pode excluir a configuração da políticaSSL FIPS Modeda Citrix.
Faça isso em cada VDA:
- Desabilite o modo FIPS do Windows.
- Reinicie o VDA.
Desabilitar o modo FIPS no servidor
Faça isso em cada servidor de impressão universal:
- Desabilite o modo FIPS do Windows.
- Execute este comando do PowerShell como administrador:
stop-service CitrixXTEServer, UpSvc
- Execute o script
Enable-UpsSsl.ps1
com os parâmetros-Enable -FIPSMode $false
. - Reinicie o servidor de impressão universal.
Configurar a versão do protocolo SSL/TLS
A versão padrão do protocolo SSL/TLS é TLS 1.2. O TLS 1.2 é a única versão de protocolo SSL/TLS recomendada para uso em produção. Para a solução de problemas, pode ser necessário alterar temporariamente a versão do protocolo SSL/TLS para um ambiente que não seja de produção.
SSL 2.0 e SSL 3.0 não são suportados no servidor de impressão universal.
Definir a versão do protocolo SSL/TLS no servidor
Faça isso em cada servidor de impressão universal:
- Execute este comando do PowerShell como administrador:
stop-service CitrixXTEServer, UpSvc
- Execute o script
Enable-UpsSsl.ps1
com os parâmetros de versão-Enable -SSLMinVersion
. Lembre-se de reverter para TLS 1.2 quando terminar de testar. - Reinicie o servidor de impressão universal.
Definir a versão do protocolo SSL/TLS no cliente
Faça isso em cada VDA:
No Delivery Controller, defina a configuração da política deSSL Protocol Versioncomo a versão desejada do protocolo e habilite a política.
O artigo de suporte da MicrosoftConfigurações do Registro do protocolo TLSdescreve as configurações do registro para Microsoft SCHANNEL SSP. HabiliteTLS 1.0, TLS 1.1 ou TLS 1.2do lado do cliente usando as configurações do registro.
Importante:
Lembre-se de restaurar as configurações do registro para seus valores originais quando terminar o teste.
Reinicie o VDA.
Solução de problemas
Se ocorrer um erro de conexão, verifique o arquivo de log C:\Program Files (x86)\Citrix\XTE\logs\error.log no servidor de impressão universal.
A mensagem de erroSSL handshake from client failedaparece no arquivo de log se o handshake SSL/TLS falhar. Tais falhas podem ocorrer se as versões do protocolo SSL/TLS no VDA e no servidor de impressão universal não corresponderem.
Use o FQDN do Servidor de Impressão Universal nas seguintes configurações de política que contêm nomes de host do servidor de impressão universal:
- Session printers
- Printer assignments
- Universal Print Servers for load balancing
Assegure-se de que o clock do sistema (data, hora e fuso horário) esteja correto nos servidores de impressão universal e nos VDAs.
Neste artigo
- Tipos de conexões de impressão entre o VDA e o Servidor de impressão universal
- Configurar o SSL no servidor de impressão universal
- Configurar números de porta de escuta no servidor de impressão universal
- Configurações de TLS no servidor de impressão universal
- Configuração do modo FIPS
- Configurar a versão do protocolo SSL/TLS
- Solução de problemas