配置 NetScaler Gateway

重要:

我们建议您在应用这些更改之前创建 NetScaler 快照或保存 NetScaler 配置。

  1. https://www.citrix.com/downloads/citrix-secure-private-access/Shell-Script/Shell-Script-for-Gateway-Configuration.html 中下载脚本。

    要创建新的 NetScaler Gateway,请使用 ns_gateway_secure_access.sh。 要更新现有 NetScaler Gateway,请使用 ns_gateway_secure_access_update.sh

  2. 将这些脚本上载到 NetScaler 计算机。您可以使用 WinSCP 应用程序或 SCP 命令。例如,*scp ns_gateway_secure_access.sh nsroot@nsalfa.fabrikam.local:/var/tmp*

    注意:

    • 建议使用 NetScaler /var/tmp 文件夹来存储临时数据。
    • 确保文件以 LF 行结尾保存。FreeBSD 不支持 CRLF。
    • 如果您看到错误 -bash: /var/tmp/ns_gateway_secure_access.sh: /bin/sh^M: bad interpreter: No such file or directory,则表示行尾不正确。您可以使用任何富文本编辑器(例如 Notepad++)来转换脚本。
  3. 通过 SSH 连接到 NetScaler 并切换到 shell(在 NetScaler CLI 上键入“shell”)。
  4. 使上载的脚本可执行。使用 chmod 命令来执行此操作。

    chmod +x /var/tmp/ns_gateway_secure_access.sh

  5. 在 NetScaler shell 上运行上载的脚本。

    NetScaler 配置 1

  6. 输入所需的参数。有关参数列表,请参阅 必备条件

    对于身份验证配置文件和 SSL 证书,您必须在 NetScaler 上提供名称。

    生成了一个包含多个 NetScaler 命令(默认为 var/tmp/ns_gateway_secure_access)的新文件。

    NetScaler 配置 2

  7. 切换到 NetScaler CLI,然后使用批处理命令从新文件中运行生成的 NetScaler 命令。例如, batch -fileName /var/tmp/ns_gateway_secure_access -outfile /var/tmp/ns_gateway_secure_access_output

    NetScaler 逐一运行文件中的命令。如果命令失败,则继续执行下一个命令。

    如果资源存在或步骤 6 中输入的参数之一不正确,则命令可能会失败。

  8. 确保所有命令都成功完成。

注意:

如果出现错误,NetScaler 仍会运行其余命令并部分创建/更新/绑定资源。因此,如果您看到由于其中一个参数不正确而出现意外错误,建议从头开始重新进行配置。

使用现有配置在 NetScaler Gateway 上配置 Secure Private Access

您还可以在现有 NetScaler Gateway 上使用脚本来支持 Secure Private Access。但是,该脚本不会更新以下内容:

  • 现有 NetScaler Gateway 虚拟服务器
  • 绑定到 NetScaler Gateway 的现有会话操作和会话策略

确保在执行之前检查每条命令并创建网关配置的备份。

NetScaler Gateway 虚拟服务器上的设置

添加或更新现有 NetScaler Gateway 虚拟服务器时,请确保将以下参数设置为定义值。

tcpProfileName: nstcp_default_XA_XD_profile deploymentType: ICA_STOREFRONT icaOnly: OFF

示例:

要添加虚拟服务器,请执行以下操作:

`add vpn vserver _SecureAccess_Gateway SSL 192.0.2.210 443 -Listenpolicy NONE -tcpProfileName nstcp_default_XA_XD_profile -deploymentType ICA_STOREFRONT -vserverFqdn gateway.mydomain.com -authnProfile auth_prof_name -icaOnly OFF`

要更新虚拟服务器,请执行以下操作:

`set vpn vserver  _SecureAccess_Gateway -icaOnly OFF`

有关虚拟服务器参数的详细信息,请参阅 vpn-sessionAction

NetScaler Gateway 会话操作

会话操作绑定到具有会话策略的网关虚拟服务器。创建会话操作时,请确保将以下参数设置为已定义的值。

  • transparentInterception:关
  • SSO:开
  • ssoCredential:PRIMARY
  • useMIP:NS
  • useIIP:关
  • icaProxy:关
  • wihome: "https://storefront.mydomain.com/Citrix/MyStoreWeb" - 替换为真实的应用商店 URL
  • ClientChoices:关
  • ntDomain:mydomain.com - 用于 SSO
  • defaultAuthorizationAction:ALLOW
  • authorizationGroup: SecureAccessGroup(确保创建了该组,它用于绑定 Secure Private Access 特定的授权策略)
  • clientlessVpnMode:开
  • clientlessModeUrlEncoding:TRANSPARENT
  • SecureBrowse:ENABLED
  • Storefronturl: "https://storefront.mydomain.com"
  • sfGatewayAuthType:domain

示例:

要添加会话操作,请执行以下操作:

add vpn sessionAction AC_OS_SecureAccess_Gateway -transparentInterception OFF -SSO ON -ssoCredential PRIMARY -useMIP NS -useIIP OFF -icaProxy OFF -wihome "https://storefront.mydomain.com/Citrix/MyStoreWeb" -ClientChoices OFF -ntDomain mydomain.com -defaultAuthorizationAction ALLOW -authorizationGroup SecureAccessGroup -clientlessVpnMode ON -clientlessModeUrlEncoding TRANSPARENT -SecureBrowse ENABLED -storefronturl "https://storefront.mydomain.com" -sfGatewayAuthType domain

要更新会话操作,请执行以下操作:

set vpn sessionAction AC_OS_SecureAccess_Gateway -transparentInterception OFF -SSO ON

有关会话操作参数的详细信息,请参阅 https://developer-docs.netscaler.com/en-us/adc-command-reference-int/13-1/vpn/vpn-sessionaction

与 ICA 应用程序的兼容性

为支持 Secure Private Access 插件而创建或更新的 NetScaler Gateway 也可用于枚举和启动 ICA 应用程序。在这种情况下,您必须配置 Secure Ticket Authority (STA) 并将其绑定到 NetScaler Gateway。 注意:STA 服务器通常是 Citrix Virtual Apps and Desktops DDC 部署的一部分。

有关详细信息,请参阅以下主题:

支持智能访问标签

在以下版本中,NetScaler Gateway 会自动发送标签。您不必使用网关回调地址来检索智能访问标签。

  • 13.1.48.47 及更高版本
  • 14.1—4.42 及更高版本

智能访问标签作为标头添加到 Secure Private Access 插件请求中。

在这些 NetScaler 版本上,使用开关 ns_vpn_enable_spa_onpremns_vpn_disable_spa_onprem 启用/禁用此功能。

  • 您可以使用命令进行切换(FreeBSD shell):

    nsapimgr_wr.sh -ys call=ns_vpn_enable_spa_onprem

  • 运行以下命令(FreeBSD shell),为 HTTP 标注配置启用 SecureBrowse 客户端模式。

    nsapimgr_wr.sh -ys call=toggle_vpn_enable_securebrowse_client_mode

  • 要禁用,请再次运行相同的命令。

  • 要验证开关处于开启还是关闭状态,请运行 nsconmsg 命令。

  • 要在 NetScaler Gateway 上配置智能访问标签,请参阅在 NetScaler Gateway 上配置自定义标签(SmartAccess 标签)。

已知限制

  • 现有的 NetScaler Gateway 可以使用脚本进行更新,但可能有无限数量的 NetScaler 配置,单个脚本无法涵盖。
  • 请勿在 NetScaler Gateway 上使用 ICA 代理。配置 NetScaler Gateway 时,此功能将被禁用。
  • 如果您使用部署在云端的 NetScaler,则必须在网络中进行一些更改。例如,允许 NetScaler 与其他组件在特定端口上进行通信。
  • 如果您在 NetScaler Gateway 上启用 SSO,请确保 NetScaler 使用私有 IP 地址与 StoreFront 通信。您可能需要使用 StoreFront 私有 IP 地址向 NetScaler 添加一条新的 StoreFront DNS 记录。

上载公共网关证书

如果无法从 Secure Private Access 计算机访问公共网关,则必须将公共网关证书上载到 Secure Private Access 数据库。

执行以下步骤上载公共网关证书:

  1. 使用管理员权限打开 PowerShell 或命令提示符窗口。
  2. 将目录更改为 Secure Private Access 安装文件夹下的 Admin\AdminConfigTool 文件夹(例如,cd “C:\Program Files\Citrix\Citrix Access Security\Admin\AdminConfigTool”)
  3. 请运行以下命令:

    \AdminConfigTool.exe /UPLOAD_PUBLIC_GATEWAY_CERTIFICATE <PublicGatewayUrl> <PublicGatewayCertificatePath>