StoreFront

Securing StoreFront with HTTPS

Citrix 强烈建议使用 HTTPS 保护 StoreFront 与用户设备之间的通信。这可确保客户端与 StoreFront 之间发送的密码和其他数据经过加密。此外,纯 HTTP 连接可能会受到各种攻击(例如中间人攻击)的威胁,尤其是在从公共 Wi-Fi 热点等不安全位置建立连接时。如果没有适当的 IIS 配置,StoreFront 将使用 HTTP 进行通信。

根据您的配置,用户可以通过网关或负载平衡器访问 StoreFront。您可以在网关或负载平衡器处终止 HTTPS 连接。但是,在这种情况下,Citrix 仍然建议您使用 HTTPS 在网关和 StoreFront 之间建立安全连接。使用 NetScaler 负载平衡器时,有关证书要求,请参阅链接 ADC 设备上的服务器证书支持矩阵

如果 StoreFront 未配置为使用 HTTPS,它将显示以下警告:

状态警告“服务使用 HTTP 而非 HTTPS”

创建或导入证书

  • 确保用于访问 StoreFront 的基本 URL FQDN 作为主题备用名称 (SAN) 包含在 DNS 字段中。在 StoreFront 服务器前面使用负载平衡器时,基本 URL 是负载平衡器 FQDN,而不是 StoreFront 服务器 FQDN。IIS 中的“创建域证书…”选项不设置 SAN,因此不应使用。

  • 使用第三方 CA(例如 Verisign)或您组织的企业根 CA 签署证书。

  • 如果使用内部证书颁发机构并且设备直接连接到 StoreFront 服务器,则必须确保在这些设备上安装根证书。如果用户通过负载平衡器或网关访问 StoreFront,则只需在该负载平衡器或网关上安装根证书。

使用 Windows 证书颁发机构创建证书

如果您的域中有一个 Active Directory 证书服务服务器,您可以使用它从您的 StoreFront 服务器或域中的另一台计算机创建证书。

  1. 按“开始”,然后在搜索字段中键入“管理计算机证书”。

  2. 展开“个人 > 证书”。

  3. 右键单击“证书”,然后从菜单中选择“所有任务”>“请求新证书”。

  4. 在“选择证书注册策略”屏幕上,选择“Active Directory 注册策略”。

  5. 选择模板 Web server exportable,或另一个合适的模板。

  6. 单击 需要更多信息才能注册此证书。单击此处配置设置。

  7. 证书属性 屏幕上:

    1. 主题名称 下,选择 公用名 并输入 FQDN。
    2. 备用名称 下,选择 DNS 并输入 FQDN。
    3. (可选)转到“常规”选项卡并输入一个友好名称。
    4. 确定

    证书属性窗口的屏幕截图(/zh-cn/storefront/2402-ltsr/media/install/create-certificate-properties.png)

  8. 注册

如果您在 StoreFront 服务器上创建了证书,则现在可以在 IIS 中使用它。如果您在另一台计算机上创建了证书,则必须将其导出并导入到 StoreFront 服务器。

导入现有数字证书

您可以导入在其他系统中创建的证书。证书必须是 PFX 格式并包含私钥。

  1. 打开 Internet 信息服务 (IIS) 管理器控制台

  2. 在左侧的树状视图中选择服务器。

  3. 在右侧窗格中双击 服务器证书

    IIS 管理控制台屏幕截图,突出显示单击服务器证书的位置

  4. 在“服务器证书”屏幕中,按“导入…”并选择一个证书文件。

    IIS 管理服务器证书屏幕截图

配置 Internet 信息服务 以支持 HTTPS

要在 StoreFront 服务器上配置 微软 Internet 信息服务 (IIS) 以支持 HTTPS,请执行以下操作:

  1. 在左侧的树视图中,选择“默认网站”(或相应的网站)

  2. 在“操作”窗格中,单击“绑定…

    IIS 管理服务器默认网站主屏幕截图,突出显示绑定链接

  3. 在“绑定”窗口中,单击“添加…

  4. 在“类型”下拉列表中选择“https

  5. 在 Windows Server 2022 或更高版本上,单击“禁用旧版 TLS”以禁用早于 1.2 的 TLS。

    在较旧的 Windows Server 版本上,您可以使用 Windows 注册表设置禁用旧版 TLS 版本,请参阅 Windows Server 文档

  6. 选择之前导入的证书。按“确定”

    “添加站点绑定”窗口屏幕截图

  7. 要删除 HTTP 访问,请选择 HTTP 并单击“删除”。

    站点绑定窗口的屏幕截图(/zh-cn/storefront/2402-ltsr/media/install/iis-site-bindings.png)

将 StoreFront 服务器的基本 URL 从 HTTP 协议更改为 HTTPS 协议

如果您在未首先安装和配置 SSL 证书的情况下安装和配置 Citrix StoreFront,StoreFront 将使用 HTTP 进行通信。

如果您稍后安装并配置 SSL 证书,请使用以下过程以确保 StoreFront 及其服务使用 HTTPS 连接。

  1. 在 Citrix StoreFront 管理控制台中,在左侧窗格中选择 服务器组
  2. 在“操作”窗格中,选择 更改基本 URL
  3. 更新基本 URL 使其以 https: 开头,然后单击 确定

    基本 URL 窗口的屏幕截图(/zh-cn/storefront/2402-ltsr/media/change-base-url-https.png)

HTTP 严格传输安全 (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。

  1. 打开 Internet 信息服务 (IIS) 管理器
  2. 选择 默认网站(或相应的网站)。
  3. 在右侧的“操作”窗格中,单击 HSTS…
  4. 选择 启用
  5. 输入最大使用期限,例如一年为 31536000。
  6. (可选)选择 将 HTTP 重定向到 HTTPS
  7. 确定

HSTS 设置的屏幕截图

选项 2 - StoreFront™ 管理控制台

对于每个应用商店网站:

  1. 选择应用商店,然后单击 管理 Web 站点版 Receiver
  2. 选择网站,然后单击 配置…
  3. 转到 高级设置 选项卡
  4. 选择 启用严格传输安全性
  5. 更新严格传输安全策略持续时间为所需值。
  6. 单击确定

选项 3 - NetScaler® 负载平衡器

如果您在 StoreFront 服务器前端使用 NetScaler 负载平衡器,则可以在虚拟服务器上配置 HSTS。有关详细信息,请参阅 NetScaler 文档

选项 4 - NetScaler 网关的配置方法

如果用户通过 NetScaler Gateway 连接到 StoreFront,则可以在 VPN 虚拟服务器上配置 HSTS。这样做的好处是,它也适用于 NetScaler 登录表单以及 StoreFront 托管的页面。

Securing StoreFront with HTTPS