手动配置 Citrix ADC
从版本 10.1 build 120.1316 开始,NetScaler 包含一个向导,用于配置存储区域控制器数据和连接器所需的设置。
本节中的步骤描述了存储区域控制器所需的 Citrix ADC 设置。所有链接均适用于 NetScaler 10.1 文档。类似的主题也适用于更高版本的 Citrix ADC。
检查所有传入邮件上是否有有效的 URI 签名
- 创建一个名为 sf_callout 的 HTTP 标注:
-
在“配置 HTTP 标注”对话框中,单击 虚拟服务器或 IP 地址 ,然后指定地址。
-
在“请求发送到服务器”下,单击“基于属性”,然后单击“配置请求属性”。
-
选择 获取方法。
-
在主机表达式中,输入任何存储区域控制器的虚拟服务器 IP 地址或主机 IP 地址。
-
在 URL 干表达式中,输入:
"/validate.ashx?RequestURI=" + HTTP.REQ.URL.BEFORE_STR("&h").HTTP_URL_SAFE.B64ENCODE + "&h="+ HTTP.REQ.URL.QUERY.VALUE("h") <!--NeedCopy-->
-
单击“确定”,然后返回“配置 HTTP 标注”对话框。
-
在“服务器响应”下,选择返回布尔类型。
-
在从响应中提取数据的表达式中,输入:
HTTP.RES.STATUS.EQ(200).NOT
-
单击创建。
-
- 按照前面的步骤配置名为 sf_callout_y 的 HTTP 标注。除了表达式之外,使用相同的设置:
-
在 URL 干表达式中,输入:
"/validate.ashx?RequestURI=" + HTTP.REQ.URL.HTTP_URL_SAFE.B64ENCODE + "&h=" <!--NeedCopy-->
-
- 配置响应程序策略:
-
在“配置响应程序策略”对话框中:对于“操作”,选择“删除”。
-
输入表达式:
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) <!--NeedCopy-->
有关详细信息,请参阅响应程序。
-
- 将响应程序策略绑定到负载平衡器虚拟服务器 并配置 基于 SSL 会话的持久性。
实现负载平衡
-
使用规则表达式:
“http.REQ.URL.QUERY.VALUE("uploadid")”
在高可用性部署中,存储区域控制器需要基于令牌的负载平衡。循环负载平衡会导致间歇性下载或上载失败,因为客户端的上载或下载请求可能会被定向到存储区域控制器,而不是收到来自 ShareFile.com 的授权请求的存储区域控制器。
-
将 Citrix ADC 配置为终止 SSL 连接。
有关信息,请参阅 配置 SSL 卸载。
为连接器配置内容切换和身份验证
-
要启用内容切换,请参阅 启用内容切换。
-
为用户从本地存储区域请求 ShareFile 数据创建内容切换策略:
-
在“配置内容交换策略”对话框中。输入内容交换策略的名称。这些步骤使用名称为 Data_Requests。
-
输入表达式:
HTTP.REQ.HOSTNAME.CONTAINS("StorageZonesControllerHostName") && HTTP.REQ.URL.CONTAINS("/cifs/").NOT && HTTP.REQ.URL.CONTAINS("/sp/").NOT <!--NeedCopy-->
-
单击确定。
有关详细信息,请参阅内容交换。
-
-
为用户请求从存储区域连接器访问的数据创建内容交换策略。
-
在“配置内容交换策略”对话框中,指定内容交换策略的名称。这些步骤使用 Connector_Requests 的名称。
-
输入表达式:
HTTP.REQ.HOSTNAME.CONTAINS("StorageZonesControllerFQDN") && (HTTP.REQ.URL.CONTAINS("/cifs/") || HTTP.REQ.URL.CONTAINS("/sp/")) <!--NeedCopy-->
一定要将“StorageZonesControllerFQDN”替换为控制器的 FQDN。
-
单击确定。
-
-
设置内容交换策略目标:
-
在“配置虚拟服务器(内容交换)”对话框中,为 Data_Requests 策略指定 ShareFile 数据的存储区域的负载平衡器虚拟服务器。
此负载平衡器虚拟服务器是在步骤 4 中绑定响应程序策略的服务器,用于检查所有传入消息上的有效 URI 签名并进行负载平衡。
-
对于 Connector_Requests 策略,为存储区域连接器指定负载平衡器虚拟服务器。
-
-
为存储区域控制器配置身份验证虚拟服务器:
尽管对 Citrix ADC 的身份验证是可选的,但这是推荐的最佳做法。
-
在导航窗格中,展开负载平衡,为存储区域连接器选择负载平衡器虚拟服务器的名称,然后单击“打开”。
-
在“配置虚拟服务器(负载平衡)”对话框中,单击“高级”选项卡,然后展开“身份验证设置”。
-
选中基于 401 的身份验证的复选框,然后选择身份验证虚拟服务器。
-
单击“方法和持久性”选项卡。
-
对于“持久性”,选择 COOKIEINSERT。
-
对于超时(分钟),输入 240。
建议使用 240 分钟的超时值。使用大于 10 分钟的最小值。
有关更多信息,请参阅配置身份验证虚拟服务器。
-
-
使用“配置身份验证服务器”对话框创建和配置身份验证服务器。
在 SSO 名称属性中,输入 userPrincipalName。
有关其他设置的更多信息,请参阅身份验证策略。
-
为身份验证服务器配置身份验证策略:
-
在“配置身份验证策略”对话框中:输入策略的名称,然后选择在上一步中配置的身份验证服务器。
-
输入表达式:
ns_true
有关更多信息,请参阅 配置身份验证策略。
-
-
为单点登录配置会话配置文件:
- 在“配置会话配置文件”对话框中,输入配置文件的名称。
- 选中单点登录 Web 应用程序的复选框。
- 对于“凭据索引”,选择“主要”。
- 在单点登录域中,输入存储区域控制器的域名。
- 为前三个项目分别选中“覆盖全局”复选框。
有关更多信息,请参阅 会话配置文件。
-
为单点登录配置会话策略:
-
在“配置会话策略”对话框中,输入策略的名称。
-
对于“请求配置文件”,选择在上一步中配置的会话配置文件的名称。
-
输入表达式:
ns_true
有关更多信息,请参阅 会话策略。
-
-
创建身份验证虚拟服务器:
- 在“配置虚拟服务器(身份验证)”对话框中,输入服务器的名称和 IP 地址。
- 单击身份验证选项卡,然后对于协议,选择 SSL。
- 选中“验证用户”复选框。
- 在“身份验证策略”下,单击“主策略”,然后选择您在步骤 7 中配置的身份验证策略。
- 单击策略选项卡,单击 会话,然后选择您在步骤 9 中配置的会话策略。
有关更多信息,请参阅配置身份验证虚拟服务器。