This content has been machine translated dynamically.
Dieser Inhalt ist eine maschinelle Übersetzung, die dynamisch erstellt wurde. (Haftungsausschluss)
Cet article a été traduit automatiquement de manière dynamique. (Clause de non responsabilité)
Este artículo lo ha traducido una máquina de forma dinámica. (Aviso legal)
此内容已经过机器动态翻译。 放弃
このコンテンツは動的に機械翻訳されています。免責事項
이 콘텐츠는 동적으로 기계 번역되었습니다. 책임 부인
Este texto foi traduzido automaticamente. (Aviso legal)
Questo contenuto è stato tradotto dinamicamente con traduzione automatica.(Esclusione di responsabilità))
This article has been machine translated.
Dieser Artikel wurde maschinell übersetzt. (Haftungsausschluss)
Ce article a été traduit automatiquement. (Clause de non responsabilité)
Este artículo ha sido traducido automáticamente. (Aviso legal)
この記事は機械翻訳されています.免責事項
이 기사는 기계 번역되었습니다.책임 부인
Este artigo foi traduzido automaticamente.(Aviso legal)
这篇文章已经过机器翻译.放弃
Questo articolo è stato tradotto automaticamente.(Esclusione di responsabilità))
Translation failed!
在 Delivery Controller 上启用 TLS
默认情况下,HTTP 和 HTTPS 都处于启用状态。 HTTPS 使用将服务器的 FQDN 用作公用名的自签名证书,这不受 StoreFront 或 Web 浏览器信任。
要在 Delivery Controller 上启用 TLS,您必须:
-
在所有 Delivery Controller 上获取、安装和注册服务器证书。 有关详细信息,请参阅请求和安装证书。
-
使用 TLS 证书配置端口。 有关详细信息,请参阅安装证书。
- 为 Monitor Service 启用 HTTPS。
-
通过禁用 HTTP 来强制执行 HTTPS 流量。 有关更多详细信息,请参阅仅强制传输 HTTPS 流量。
- (可选)可以更改 Controller 用于侦听 HTTP 和 HTTPS 流量的端口。 有关更多详细信息,请参阅更改 HTTP 或 HTTPS 端口。
请求和安装证书
要使用 TLS,必须安装公用名或使用者备用名称与服务器的 FQDN 匹配的证书。 如果您在 Delivery Controller 前面使用负载平衡器,则将服务器和负载平衡器的 FQDN 都作为使用者备用名称。 有关详细信息,请参阅证书。 为了使 StoreFront 连接到 Delivery Controller,必须使用 RSA 数字签名算法。 StoreFront 不支持使用 ECDSA 算法的证书。
配置 SSL/TLS 侦听器端口
如果 IIS Windows 组件安装在同一台服务器上(作为 Web Studio 和 Director 的一部分安装),则可以使用 IIS 配置 TLS。 有关详细信息,请参阅在 Web Studio 和 Director 上启用 TLS。 否则,要使用 PowerShell 配置证书,请执行以下操作:
-
要检查是否存在现有证书绑定,请打开命令提示符并运行
netsh http show sslcert
:netsh http show sslcert <!--NeedCopy-->
-
如果存在现有绑定,请将其删除。
netsh http delete sslcert ipport=0.0.0.0:443 <!--NeedCopy-->
如果在现有绑定中指定了 IP 地址和端口,则用特定的 IP 地址和端口替换
0.0.0.0:443
。 -
找到您之前安装的证书的指纹。 要查看指纹,请打开管理计算机证书,浏览到该证书并将其打开,然后转到详细信息选项卡。
或者,也可以使用 PowerShell。 例如,以下脚本查找公用名与服务器的主机名匹配的证书并打印缩略图:
$HostName = ([System.Net.Dns]::GetHostByName(($env:computerName))).Hostname $Thumbprint = (Get-ChildItem -Path Cert:\LocalMachine\My | Where-Object {$_.Subject -match ("CN=" + $HostName)}).Thumbprint -join ';' Write-Host -Object "Certificate Thumbprint for $($HostName): $($Thumbprint)" -Foreground Yellow <!--NeedCopy-->
如果证书公用名与主机名不匹配,此操作将失败。 如果主机名有多个证书,则会返回多个连接在一起的指纹,您必须选择适当的指纹。
以下示例通过友好名称查找证书:
$friendlyName = "My certificate name" $Thumbprint = (Get-ChildItem -Path Cert:\LocalMachine\My | Where-Object {$_.FriendlyName -eq $friendlyNam}).Thumbprint -join ';' Write-Host -Object "Certificate Thumbprint for $friendlyName: $($Thumbprint)" -Foreground Yellow <!--NeedCopy-->
如果有多个具有指定友好名称的证书,则会返回多个连接在一起的指纹,您必须选择适当的指纹。
-
要将证书绑定到端口,请使用
netsh http add sslcert
命令:netsh http add sslcert ipport=[IP address]:443 certhash=[certificate hash] appid=[application GUID] disablelegacytls=enable <!--NeedCopy-->
-
ipport
指定 IP 地址和端口。 使用 0.0.0.0:443 将其应用到所有 IP 地址。 可以指定一个特定 IP 地址。 -
appid
- 用于识别添加了绑定的应用程序的任意 GUID。 可以使用任何有效的 GUID,例如{91fe7386-e0c2-471b-a252-1e0a805febac}
。 -
disablelegacytls=enable
- 禁用旧版本的 TLS。 此参数在 Windows 2022 及更高版本中可用。 Windows 2022 禁用了 TLS 1.0 和 1.1。 在 Windows 2025 中,这是不必要的,因为 TLS 1.0 和 1.1 默认处于禁用状态。
例如,请运行以下命令将指纹为
bc96f958848639fd101a793b87915d5f2829b0b6
的证书绑定到所有 IP 地址上的端口443
:netsh http add sslcert ipport=0.0.0.0:443 certhash=bc96f958848639fd101a793b87915d5f2829b0b6 appid={91fe7386-e0c2-471b-a252-1e0a805febac} disablelegacytls=enable <!--NeedCopy-->
-
启用 HTTPS 后,应将任何 StoreFront 部署和 Netscaler Gateway 配置为使用 HTTPS 而非 HTTP 连接到 Delivery Controller。
为 HTTPS 配置 Monitor Service OData API
Monitor Service 提供 OData v3 和 v4 API,以允许 Citrix 和第三方应用程序查询数据。 Director 使用 OData API V3 连接到监视服务。 要为 HTTPS 配置 Monitor OData API,请完成以下步骤:
-
运行以下 PowerShell:
$serviceGroup = Get-ConfigRegisteredServiceInstance -ServiceType Monitor | Select -First 1 ServiceGroupUid Remove-ConfigServiceGroup -ServiceGroupUid $serviceGroup.ServiceGroupUid & 'C:\Program Files\Citrix\Monitor\Service\citrix.monitor.exe' -ConfigureFirewall -RequireODataTls –OdataPort 443 -RequireODataSdkTls –OdataSdkPort 443 get-MonitorServiceInstance | register-ConfigServiceInstance Get-ConfigRegisteredServiceInstance -ServiceType Config | Reset-MonitorServiceGroupMembership <!--NeedCopy-->
-
使用文本编辑器打开文件
C:\Program Files\Citrix\Monitor\Service\Citrix.Monitor.exe.Config
。 找到元素<add key="owin:baseAddress" value="http://localhost/citrix/monitor/odata/v4" />
并将其更改为<add key="owin:baseAddress" value="https://localhost/citrix/monitor/odata/v4" />
。
配置密码套件
密码套件顺序列表必须包括 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
或 TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
密码套件(或两者);并且这些密码套件必须位于任何 TLS_DHE_
密码套件之前。
- 使用 Microsoft 组策略编辑器,浏览至计算机配置 > 管理模板 > 网络 > SSL 配置设置。
- 编辑策略“SSL 密码套件顺序”。 默认情况下,此策略设置为“未配置”。 将此策略设置为已启用。
- 按正确的顺序安排套件,删除任何不需要使用的密码套件。
确保 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
或 TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
位于任何 TLS_DHE_
密码套件之前。
在 Microsoft Learn 上,另请参阅配置 TLS 密码套件顺序。
仅会强制执行 HTTPS 流量
建议您配置 XML Service 以忽略 HTTP 流量。
- 运行
regedit
- 打开“HKLM\Software\Citrix\DesktopServer\”
- 创建一个名为
XmlServicesEnableNonSsl
的新 DWORD 值并将其设置为 0。 - 重新启动 Broker Service。
可以创建一个相应的注册表 DWORD 值 XmlServicesEnableSsl
以忽略 HTTPS 流量。 请确保未将其设置为 0。
更改 HTTP 或 HTTPS 端口
默认情况下,Controller 上的 XML Service 在端口 80 上侦听 HTTP 流量,在端口 443 上侦听 HTTPS 流量。 尽管可以使用非默认端口,但请注意:将 Controller 暴露在不受信任的网络上存在安全风险。 部署独立 StoreFront 服务器比更改默认值更可取。
要更改 Controller 使用的默认 HTTP 或 HTTPS 端口,请从 Studio 运行以下命令:
BrokerService.exe -StoreFrontPort <http-port> -StoreFrontTlsPort <https-port>
<!--NeedCopy-->
其中 <http-port>
为 HTTP 流量的端口号,<https-port>
为 HTTPS 流量的端口号。
注意:
更改端口后,Studio 可能会显示关于许可证兼容性和升级的消息。 要解决此问题,请使用以下 PowerShell cmdlet 序列重新注册服务实例:
Get-ConfigRegisteredServiceInstance -ServiceType Broker -Binding XML_HTTPS |
Unregister-ConfigRegisteredServiceInstance
Get-BrokerServiceInstance | where Binding -eq "XML_HTTPS" |
Register-ConfigServiceInstance
<!--NeedCopy-->
共享
共享
This Preview product documentation is Citrix Confidential.
You agree to hold this documentation confidential pursuant to the terms of your Citrix Beta/Tech Preview Agreement.
The development, release and timing of any features or functionality described in the Preview documentation remains at our sole discretion and are subject to change without notice or consultation.
The documentation is for informational purposes only and is not a commitment, promise or legal obligation to deliver any material, code or functionality and should not be relied upon in making Citrix product purchase decisions.
If you do not agree, select I DO NOT AGREE to exit.