StoreFront

使用 HTTPS 保护 StoreFront

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

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

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

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

创建或导入证书

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

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

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

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

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

  1. Start(开始),然后在搜索字段中键入 Manage Computer Certificates(管理计算机证书)。

  2. 展开 Personal(个人)> Certificates(证书)。

  3. 右键单击 Certificates(证书),然后从菜单中选择 All Tasks(所有任务)> Request new certificate(请求新证书)。

  4. Select Certificate Enrolment Policy(选择证书注册策略)屏幕上,选择 Active Directory Enrollment Policy(Active Directory 注册策略)。

  5. 选择模板 Web server exportable(Web 服务器可导出),或另一个合适的模板。

  6. 单击 More information is require to enroll this certificate. Click here to configure settings.(需要更多信息才能注册此证书。单击此处配置设置。)

  7. Certificate Properties(证书属性)屏幕上:

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

    证书属性窗口的屏幕截图

  8. Enroll(注册)。

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

导入现有证书

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

  1. 打开 Internet Information Services (IIS) Manager 控制台。

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

  3. 在右侧窗格中,双击 Server Certificates(服务器证书)。

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

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

    IIS 管理服务器证书屏幕的屏幕截图,突出显示了单击导入的位置

配置 IIS 以使用 HTTPS

要在 StoreFront 服务器上配置 Microsoft Internet Information Services (IIS) 以使用 HTTPS:

  1. 在左侧的树视图中,选择 Default Web Site(默认网站)(或相应的网站)。

  2. Actions(操作)窗格中,单击 Bindings…(绑定…)。

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

  3. 在绑定窗口中,单击 Add…(添加…)。

  4. Type(类型)下拉列表中,选择 https

  5. 在 Windows Server 2022 或更高版本上,单击 Disable Legacy TLS(禁用旧版 TLS)以禁用低于 1.2 的 TLS 版本。

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

  6. 选择之前导入的证书。按 OK(确定)。

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

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

    站点绑定窗口的屏幕截图

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

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

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

  1. 在 Citrix StoreFront 管理控制台中,在左侧窗格中选择 Server Group(服务器组)。
  2. Actions(操作)窗格中,选择 Change Base URL(更改基本 URL)。
  3. 将基本 URL 更新为以 https: 开头,然后单击 OK(确定)。

    基本 URL 窗口的屏幕截图

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 Information Services (IIS) Manager(Internet 信息服务 (IIS) 管理器)。
  2. 选择 Default Web Site(默认网站)(或相应的网站)。
  3. 在右侧的 Actions(操作)窗格中,单击 HSTS…
  4. 选择 Enable(启用)。
  5. 输入最大使用期限,例如一年为 31536000。
  6. (可选)选择 Redirect HTTP to HTTPS(将 HTTP 重定向到 HTTPS)。
  7. OK(确定)。

HSTS 设置的屏幕截图

选项 2 - StoreFront™ 管理控制台

对于每个 Store 网站:

  1. 选择 Store,然后单击 Manage Receiver for Web Sites(管理 Web 站点版 Receiver)。
  2. 选择网站,然后单击 Configure…(配置…)。
  3. 转到 Advanced Settings(高级设置)选项卡。
  4. 选择 Enable strict transport security(启用严格传输安全)。
  5. Strict transport security policy duration(严格传输安全策略持续时间)更新为所需值。
  6. 单击 OK(确定)。

选项 3 - NetScaler® 负载平衡器

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

使用 HTTPS 保护 StoreFront