手动配置 Citrix ADC

从版本 10.1 版本 120.1316 开始,Citrix ADC 包含一个向导,用于配置 StorageZones Controller 数据和连接器所需的设置。

本节中的步骤介绍 StorageZones Controller 所需的 Citrix ADC 设置。所有链接都适用于 NetScaler 10.1 文档。类似的主题适用于更高版本的 Citrix ADC。

检查所有传入消息上的有效 URI 签名

  1. 创建一个名为 sf_callout 的 HTTP 标注:
    1. 在 “配置 HTTP 标注” 对话框中,单击 “虚拟服务器” 或 “IP 地址” 并指定地址。

    2. 在 “请求发送到服务器” 下,单击 “ 基于属 性”,然后单击 “ 配置请求属性 ”。

    3. 选择 获取方法

    4. 在“主机表达式”中,输入任何 StorageZones Controller 的虚拟服务器 IP 地址或主机 IP 地址。

    5. 在 URL 干表达式中,输入:

      "/validate.ashx?RequestURI=" + HTTP.REQ.URL.BEFORE_STR("&h").HTTP_URL_SAFE.B64ENCODE + "&h="+ HTTP.REQ.URL.QUERY.VALUE("h")
      
    6. 击确定 ,然后返回到配置 HTTP 标注对话框。

    7. 在服务器响应下,选择 Bool 的返回类型

    8. 在 “表达式” 中,要从响应中提取数据,请输入:

      HTTP.RES.STATUS.EQ(200).NOT

    9. 单击创建。有 关更多信息,请参阅HTTP 标注

  2. 按照上述步骤配置名为 sf_callout_y 的 HTTP 标注。除表达式外,使用相同的设置:
    • 在 URL 干表达式中,输入:

      "/validate.ashx?RequestURI=" + HTTP.REQ.URL.HTTP\_URL\_SAFE.B64ENCODE + "\&h="

  3. 配置响应程序策略:
    1. 在 “配置响应程序策略” 对话框中:“对于操作”,选择 “删除”。

    2. 在 “表达式” 中,输入:

      http.REQ.URL.CONTAINS("&h=") && http.req.url.contains("/crossdomain.xml").not && http.req.url.contains("/validate.ashx?requri").not && SYS.HTTP_CALLOUT(sf_callout) || http.REQ.URL.CONTAINS("&h=").NOT && http.req.url.contains("/crossdomain.xml").not && http.req.url.contains("/validate.ashx?requri").not && SYS.HTTP_CALLOUT(sf_callout_y)
      

      有关详细信息,请参阅响应方

  4. 将响应程序策略绑定到负载均衡器虚拟服务器并配置基于 SSL 会话的持久性

要负载平衡

  1. 配置基于令牌的负载平衡

    使用规则表达式:“http.REQ.URL.QUERY.VALUE("uploadid")”

    高可用性部署中的 StorageZones Controller 需要基于令牌的负载平衡。循环负载平衡将导致间歇性下载或上载失败,因为客户端上载或下载请求可能会被定向到 StorageZones Controller,而不是从 ShareFile.com 接收授权请求的控制器。

  2. 配置 Citrix ADC 以终止 SSL 连接。

    有关信息,请参阅配置 SSL 卸载及其子主题。

配置连接器的内容切换和身份验证

  1. 启用内容切换,如中所述启用内容切换

  2. 为用户从本地存储区域请求 ShareFile 数据创建内容交换策略:

    1. 在 “配置内容交换策略” 对话框中:输入内容交换策略的名称。这些步骤使用名称 “数据请求”。

    2. 输入表达式:

      HTTP.REQ.HOSTNAME.CONTAINS("StorageZonesControllerHostName") && HTTP.REQ.URL.CONTAINS("/cifs/").NOT && HTTP.REQ.URL.CONTAINS("/sp/").NOT

    3. 单击确定

      有关详细信息,请参阅内容交换

  3. 为用户请求从存储区域连接器访问的数据创建内容交换策略。

    1. 在 “配置内容交换策略” 对话框中:为内容交换策略指定名称。这些步骤使用名称连接器 _ 请求。

    2. 输入表达式:

      HTTP.REQ.HOSTNAME.CONTAINS("StorageZonesControllerFQDN") && (HTTP.REQ.URL.CONTAINS("/cifs/") || HTTP.REQ.URL.CONTAINS("/sp/"))

      请务必将 “存储 Controller 控制器 FQDN” 替换为控制器的 FQDN。

    3. 单击确定

  4. 创建内容交换虚拟服务器

  5. 设置内容切换策略目标:

    • 在 “配置虚拟服务器(内容交换)” 对话框中:对于 Data_Rel求策略,为 ShareFile 数据的存储区域指定负载均衡器虚拟服务器。

      此负载均衡器虚拟服务器是您在步骤 4 中将响应程序策略绑定到的服务器,以检查所有传入邮件上的有效 URI 签名并进行负载平衡。

    • 对于 Connector_Rel求策略,为存储区域连接器指定负载均衡器虚拟服务器。

  6. 为存储区域连接器配置身份验证虚拟服务器:

    尽管对 Citrix ADC 的身份验证是可选的,但建议采用最佳做法。

    1. 在导航窗格中,展开负载平衡,为存储区域连接器选择负载均衡器虚拟服务器的名称,然后单击 “打开”。

    2. 在配置虚拟服务器(负载平衡)对话框中,单击 高级 选项卡,然后展开 身份验证设置

    3. 选中基于 401 的身份验证的复选框,然后选择身份验证虚拟服务器。

    4. 单击方 法和持久性 选项卡。

    5. 对于持久性,请选择 COOKIEINSERT

    6. 对于超时(最小),请输入 240

      建议使用 240 分钟的超时值。最小值应大于 10 分钟。

      有关详细信息,请参阅配置身份验证虚拟服务器

  7. 使用 “配置身份验证服务器” 对话框创建和配置身份验证服务器。

    在 SSO 名称属性中,输入 用户主体名称

    有关其他设置的更多信息,请参阅身份验证策略

  8. 为刚创建的身份验证服务器配置身份验证策略:

    1. 在 “配置身份验证策略” 对话框中:输入策略的名称,然后选择在上一步中配置的身份验证服务器。

    2. 输入表达式:

      ns_true

    有关详细信息,请参阅配置身份验证策略

  9. 为单点登录配置会话配置文件:

    1. 在 “配置会话配置文件” 对话框中,输入配置文件的名称。
    2. 选中单点登录 Web 应用程序的复选框。
    3. 对于凭据索引,选择 “ 主要”。
    4. 在单点登录域中,输入 StorageZones Controller 的域名。
    5. 为上述三个项目中的每个项目选中 “覆盖全局” 复选框。

    有关详细信息,请参阅会话配置文件

  10. 为单点登录配置会话策略:

    1. 在 “配置会话策略” 对话框中,输入策略的名称。

    2. 对于 请求配置文件,选择在上一步中配置的会话配置文件的名称。

    3. 输入表达式:

      ns_true

    有关详细信息,请参阅会话策略

  11. 创建身份验证虚拟服务器:

    1. 在 “配置虚拟服务器(身份验证)” 对话框中,输入服务器的名称和 IP 地址。
    2. 单击 “ **身份验证 ” 选项卡,然后选择 “ 议”。**
    3. 选中身份验证用户的复选框。
    4. 在 “身份验证策略” 下,单击 “ ”,然后选择您在步骤 7 中配置的身份验证策略。
    5. 单击 “ 略” 选项卡,单击 “ 会话 ”,然后选择您在步骤 9 中配置的会话策略。

    有关详细信息,请参阅配置身份验证虚拟服务器