使用 HTTPS 保护 StoreFront
Citrix 强烈建议使用 HTTPS 保护 StoreFront 与用户设备之间的通信。这可确保客户端与 StoreFront 之间发送的密码和其他数据经过加密。此外,纯 HTTP 连接可能会受到各种攻击(例如中间人攻击)的威胁,尤其是在从公共 Wi-Fi 热点等不安全位置建立连接时。在没有适当的 IIS 配置的情况下,StoreFront 会使用 HTTP 进行通信。
根据您的配置,用户可能通过网关或负载平衡器访问 StoreFront。您可以在网关或负载平衡器处终止 HTTPS 连接。但是,在这种情况下,Citrix 仍然建议您在网关和 StoreFront 之间使用 HTTPS 建立安全连接。使用 NetScaler 负载平衡器时,有关证书要求,请参阅链接 ADC 设备上的服务器证书支持矩阵。
如果 StoreFront 未配置为使用 HTTPS,则会显示以下警告:

创建或导入证书
-
确保用于访问 StoreFront 的基本 URL FQDN 作为主题备用名称 (SANs) 包含在 DNS 字段中。当在 StoreFront 服务器前面使用负载平衡器时,基本 URL 是负载平衡器 FQDN,而不是 StoreFront 服务器 FQDN。IIS 中的创建域证书… 选项不会设置 SAN,因此不应使用。
-
使用第三方 CA(例如 Verisign)或您组织的企业根 CA 签署证书。
-
如果使用内部证书颁发机构且设备直接连接到 StoreFront 服务器,则必须确保在这些设备上安装根证书。如果用户通过负载平衡器或网关访问 StoreFront,则只需在该负载平衡器或网关上安装根证书。
使用 Windows 证书颁发机构创建证书
如果您的域上有一个 Active Directory Certificate Services 服务器,您可以使用它从 StoreFront 服务器或域上的另一台计算机创建证书。
-
按 Start(开始),然后在搜索字段中键入 Manage Computer Certificates(管理计算机证书)。
-
展开 Personal(个人)> Certificates(证书)。
-
右键单击 Certificates(证书),然后从菜单中选择 All Tasks(所有任务)> Request new certificate(请求新证书)。
-
在 Select Certificate Enrolment Policy(选择证书注册策略)屏幕上,选择 Active Directory Enrollment Policy(Active Directory 注册策略)。
-
选择模板 Web server exportable(Web 服务器可导出),或另一个合适的模板。
-
单击 More information is require to enroll this certificate. Click here to configure settings.(需要更多信息才能注册此证书。单击此处配置设置。)
-
在 Certificate Properties(证书属性)屏幕上:
- 在 Subject name(主题名称)下,选择 Common name(公用名)并输入 FQDN。
- 在 Alternative name(备用名称)下,选择 DNS 并输入 FQDN。
- (可选)转到 General(常规)选项卡并输入一个友好名称。
- 按 OK(确定)。

-
按 Enroll(注册)。
如果您在 StoreFront 服务器上创建了证书,则现在可以在 IIS 中使用它。如果您在另一台计算机上创建了证书,则必须将其导出并导入到 StoreFront 服务器。
导入现有证书
您可以导入在其他系统中创建的证书。证书必须采用 PFX 格式并包含私钥。
-
打开 Internet Information Services (IIS) Manager 控制台。
-
在左侧的树视图中,选择服务器。
-
在右侧窗格中,双击 Server Certificates(服务器证书)。

-
在 Server Certificates(服务器证书)屏幕上,按 Import…(导入…)并选择一个证书文件。

配置 IIS 以使用 HTTPS
要在 StoreFront 服务器上配置 Microsoft Internet Information Services (IIS) 以使用 HTTPS:
-
在左侧的树视图中,选择 Default Web Site(默认网站)(或相应的网站)。
-
在 Actions(操作)窗格中,单击 Bindings…(绑定…)。

-
在绑定窗口中,单击 Add…(添加…)。
-
在 Type(类型)下拉列表中,选择 https。
-
在 Windows Server 2022 或更高版本上,单击 Disable Legacy TLS(禁用旧版 TLS)以禁用低于 1.2 的 TLS 版本。
在较旧的 Windows Server 版本上,您可以使用 Windows 注册表设置禁用旧版 TLS 版本,请参阅 Windows Server 文档。
-
选择之前导入的证书。按 OK(确定)。

-
要删除 HTTP 访问,请选择 HTTP 并单击 Remove(删除)。

将 StoreFront 服务器基本 URL 从 HTTP 更改为 HTTPS
如果您在未首先安装和配置 SSL 证书的情况下安装和配置 Citrix StoreFront,则 StoreFront 会使用 HTTP 进行通信。
如果您稍后安装和配置 SSL 证书,请使用以下过程确保 StoreFront 及其服务使用 HTTPS 连接。
- 在 Citrix StoreFront 管理控制台中,在左侧窗格中选择 Server Group(服务器组)。
- 在 Actions(操作)窗格中,选择 Change Base URL(更改基本 URL)。
-
将基本 URL 更新为以
https:开头,然后单击 OK(确定)。
HSTS
即使在服务器端启用了 HTTPS,用户的客户端设备仍然容易受到攻击。例如,中间人攻击者可能会欺骗 StoreFront 服务器,并诱骗用户通过纯 HTTP 连接到欺骗服务器。然后,他们可能会获取敏感信息,例如用户的凭据。解决方案是确保用户的浏览器不会尝试通过 HTTP 访问服务器。您可以通过 HTTP 严格传输安全 (HSTS) 实现此目的。
启用 HSTS 后,服务器会向 Web 浏览器指示对网站的请求应始终仅通过 HTTPS 进行。如果用户尝试使用 HTTP 访问 URL,浏览器将自动切换为使用 HTTPS。这可确保客户端对安全连接的验证以及 IIS 中的服务器端验证。Web 浏览器会在配置的时间段内保持此验证。
注意:
启用 HSTS 会影响同一域上的所有网站。例如,如果网站可通过
https://www.company.com/Citrix/StoreWeb访问,则 HSTS 策略将应用于https://www.company.com下的所有网站,这可能不是期望的结果。
有多种启用 HSTS 的选项。
选项 1 - IIS
在 Windows Server 2019 及更高版本上,您可以在 IIS 中配置 HSTS。
- 打开 Internet Information Services (IIS) Manager(Internet 信息服务 (IIS) 管理器)。
- 选择 Default Web Site(默认网站)(或相应的网站)。
- 在右侧的 Actions(操作)窗格中,单击 HSTS…。
- 选择 Enable(启用)。
- 输入最大使用期限,例如一年为 31536000。
- (可选)选择 Redirect HTTP to HTTPS(将 HTTP 重定向到 HTTPS)。
- 按 OK(确定)。

选项 2 - StoreFront™ 管理控制台
对于每个 Store 网站:
- 选择 Store,然后单击 Manage Receiver for Web Sites(管理 Web 站点版 Receiver)。
- 选择网站,然后单击 Configure…(配置…)。
- 转到 Advanced Settings(高级设置)选项卡。
- 选择 Enable strict transport security(启用严格传输安全)。
- 将 Strict transport security policy duration(严格传输安全策略持续时间)更新为所需值。
- 单击 OK(确定)。
选项 3 - NetScaler® 负载平衡器
如果您在 StoreFront 服务器前面使用 NetScaler 负载平衡器,则可以在虚拟服务器上配置 HSTS。有关详细信息,请参阅 NetScaler 文档。