ADC

预配置检查工具

注意:

您可以从公共 GitHub 下载最新版本的 NSPEPI 和预配置检查工具。有关如何下载工具的信息,请参阅 GitHub NEPEPIGitHub 预配置。我们建议您使用该工具的最新版本,以获得最完整和最新的版本。

预配置检查工具可从 NetScaler 版本 12.1 中获得。您可以使用此工具来检查任何功能配置中是否仍使用任何无效、已删除或已弃用的功能。该工具将验证配置文件是否包含已从 NetScaler 版本 13.1 中删除或弃用的参数或命令。该工具仅验证来自已保存配置的配置文件,例如 ns.conf

如果验证结果显示使用了已删除或无效的命令,则在升级设备之前,必须先将配置修改为 NetScaler 推荐的替代方案。

该工具还会检查功能配置中是否存在不再支持经典表达式的经典策略表达式。您可以使用 nspepi 工具将经典配置转换为高级配置。成功运行后,该工具会生成两个文件,一个用于无效命令,另一个用于已弃用的参数或命令。带有无效命令的文件与输入文件同名,但前缀为“issues_”。带有已弃用命令的文件带有“deprecated_”前缀。

该工具可验证以下内容:

  1. 内容交换、缓存重定向、AppFW、SSL 和 CMP 功能中的经典策略表达式。
  2. 筛选功能(也称为内容过滤)-操作、策略和绑定。
  3. HTTP 配置文件中的SPDY、确保连接 (SC)、优先级队列 (PQ)、HTTP 拒绝服务 (DoS) 和 HTML 注入功能。
  4. 负载平衡持久性规则中的经典表达式。
  5. 重写操作中的“Pattern”和“bypassSafetyCheck”参数。
  6. “patclass”配置实体。
  7. “HTTP.REQ.BODY”在高级表达式中没有参数。
  8. 高级表达式中的 Q 和 S 前缀。
  9. cmp 参数设置的“PolicyType”参数。
  10. 已弃用的命令和参数。

在 UNIX Shell 中运行预配置检查工具

在命令提示符下,键入:

check_invalid_config <config_file> -buildVersion <build version>
<!--NeedCopy-->

在命令语法中,

  • <config file> 指的是 NetScaler 配置文件。该文件必须来自保存的配置,例如 ns.conf
  • <build version> 指您想知道已弃用和已删除命令的版本。如果未指定构建版本,则默认情况下,该工具会检测 NetScaler 版本 13.1 中已弃用和已删除的命令。

示例:

root@ns# check_invalid_config /nsconfig/ns.conf 13.1

使用 GUI 运行预配置检查工具

您可以使用 GUI 在升级过程中运行预配置检查工具。要运行该工具,请执行以下步骤:

  1. 在网络浏览器中,键入 NetScaler 的 IP 地址,然后使用用户名和密码登录。
  2. 导航到“系统”>“升级”。
  3. 在“系统升级”页面上,选中“启用 NSPEPI 工具”复选框。
  4. 单击 Upgrade(升级)。

包含无效命令的示例输出

以下是包含无效命令的配置文件的示例输出:

root@ns# check_invalid_config sample_conf_1.conf

The following configuration lines will get errors in 13.1 and both they and dependent configuration will be removed from the configuration:
add cmp policy cmp_pol -rule ns_true -resAction GZIP
add cs policy cs_pol_2 -rule ns_true
add cs policy cs_pol_3 -domain www.abc.com
add cs policy cs_pol_4 -url "/abc"
add rewrite action act_1 replace_all "http.req.body(1000)" http.req.url -pattern abcd
add rewrite action act_123 replace_all http.req.url ""aaaa"" -pattern abcd
add responder action ract respondwith "Q.URL + Q.HEADER("abcd")"
add appfw policy aff_pol_1 "http.req.body.length.gt(10)" APPFW_BYPASS
add appfw policy aff_pol ns_true APPFW_BYPASS

The nspepi upgrade tool can be useful in converting your configuration - see the documentation at https://docs.citrix.com/en-us/citrix-adc/current-release/appexpert/policies-and-expressions/introduction-to-policies-and-exp/converting-policy-expressions-nspepi-tool.html.

NOTE: the nspepi tool doesn't convert the following configurations:
        1. SureConnect commands
        2. PriorityQueuing commands
        3. HTTP Denial of Service Protection commands
        4. Classic SSL commands
        5. HTMLInjection commands.

NOTE: No deprecated commands detected in the configuration.

<!--NeedCopy-->

如果您遇到上述错误,则可以使用 nspepi 升级工具转换配置或手动转换配置。有关更多信息,请参阅 nspepi 工具

注意:

您只能在 NetScaler 12.1、13.0 及更高版本上运行 nspepi 工具。

包含无效和已弃用命令的示例输出

以下是包含无效和已弃用命令的配置文件的示例输出:

root@ns# check_invalid_config sample_conf_2.conf

The following configuration lines will get errors in 13.1 and both they and dependent configuration will be removed from the configuration:
add cmp policy cmp_pol -rule ns_true -resAction GZIP
add cs policy cs_pol_2 -rule ns_true
add cs policy cs_pol_3 -domain www.abc.com
add cs policy cs_pol_4 -url "/abc"
add rewrite action act_1 replace_all "http.req.body(1000)" http.req.url -pattern abcd
add rewrite action act_123 replace_all http.req.url ""aaaa"" -pattern abcd
add responder action ract respondwith "Q.URL + Q.HEADER("abcd")"
add appfw policy aff_pol_1 "http.req.body.length.gt(10)" APPFW_BYPASS
add appfw policy aff_pol ns_true APPFW_BYPASS

The nspepi upgrade tool can be useful in converting your configuration - see the documentation at https://docs.citrix.com/en-us/citrix-adc/current-release/appexpert/policies-and-expressions/introduction-to-policies-and-exp/converting-policy-expressions-nspepi-tool.html.

NOTE: the nspepi tool doesn't convert the following configurations:
        1. SureConnect commands
        2. PriorityQueuing commands
        3. HTTP Denial of Service Protection commands
        4. Classic SSL commands
        5. HTMLInjection commands.

NOTE: some deprecated commands have also been detected in the config file, please check ./deprecated_sample_conf_2.conf file for the deprecated commands.
<!--NeedCopy-->

没有无效命令但包含已弃用命令的示例输出

以下是包含已弃用命令但没有无效命令的配置输出示例:

root@ns# check_invalid_config sample_conf_3.conf

The following configuration lines have been deprecated in 13.1 and will be removed in future releases:
[add authentication localPolicy lpol ns_true] command has been deprecated, please use the advanced authentication policy command
[add authentication certPolicy auth_pol_1 ns_true auth_act] command has been deprecated, please use the advanced authentication policy command
[add authentication negotiatePolicy auth_pol_2 ns_true auth_act] command has been deprecated, please use the advanced authentication policy command
[add authentication tacacsPolicy auth_pol_3 ns_true auth_act] command has been deprecated, please use the advanced authentication policy command
[add authentication samlPolicy auth_pol_4 ns_true auth_act] command has been deprecated, please use the advanced authentication policy command
[add authentication radiusPolicy auth_pol_5 ns_true auth_act] command has been deprecated, please use the advanced authentication policy command
[add authentication ldapPolicy auth_pol_6 ns_true auth_act] command has been deprecated, please use the advanced authentication policy command
[add authentication webAuthPolicy auth_pol_1 -rule ns_true -action auth_act] command has been deprecated, please use the advanced authentication policy command
[add authentication dfaPolicy auth_pol_1 -rule ns_true -action auth_act] command has been deprecated, please use the advanced authentication policy command

For the complete deprecated commands, please see the output of ./deprecated_sample_conf_3.conf file.

No invalid config detected with the configuration.

<!--NeedCopy-->

没有验证错误和警告的示例输出

以下是配置文件的输出示例,其中没有无效、已删除或已弃用的命令:

root@ns# check_invalid_config /var/tmp/new_ns.conf  
No invalid or deprecated config detected with the configuration.
<!--NeedCopy-->