Web/SaaS 应用的 NetScaler Gateway 配置
要为 Web/SaaS 应用程序创建 NetScaler Gateway,请执行以下步骤:
-
从 https://www.citrix.com/downloads/citrix-secure-private-access/Shell-Script/Shell-Script-for-Gateway-Configuration.html 下载最新的脚本
*ns_gateway_secure_access.sh*.
。 -
将这些脚本上载到 NetScaler 计算机。您可以使用 WinSCP 应用程序或 SCP 命令。例如,
*scp ns_gateway_secure_access.sh nsroot@nsalfa.fabrikam.local:/var/tmp*
。例如,
*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++)来转换脚本。
- 通过 SSH 连接到 NetScaler 并切换到 shell(在 NetScaler CLI 上键入“shell”)。
-
使上载的脚本可执行。使用 chmod 命令来执行此操作。
chmod +x /var/tmp/ns_gateway_secure_access.sh
-
在 NetScaler shell 上运行上载的脚本。
-
如果您打算仅为 Web 和 SaaS 应用程序配置网关,请在启用 TCP/UDP 应用程序类型支持参数中输入 N 。
-
输入所需的参数。有关参数列表,请参阅 必备条件。
对于身份验证配置文件和 SSL 证书,您必须提供 NetScaler 上现有资源的名称。
生成了一个包含多个 NetScaler 命令(默认为 var/tmp/ns_gateway_secure_access)的新文件。
注意:
在脚本执行期间,将检查 NetScaler 和 Secure Private Access 插件的兼容性。如果 NetScaler 支持 Secure Private Access 插件,则该脚本使 NetScaler 功能能够支持智能访问标签,在资源访问受限时发送改进和重定向到新的“拒绝页面”。有关智能标签的详细信息,请参阅对智能访问标签的支持。
/nsconfig/rc.netscaler 文件中保留的 Secure Private Access 插件功能允许在 NetScaler 重新启动后保持启用状态。
-
切换到 NetScaler CLI,然后使用批处理命令从新文件中运行生成的 NetScaler 命令。例如;
batch -fileName /var/tmp/ns_gateway_secure_access -outfile
/var/tmp/ns_gateway_secure_access_output
NetScaler 逐一运行文件中的命令。如果命令失败,则继续执行下一个命令。
如果资源存在或步骤 6 中输入的参数之一不正确,则命令可能会失败。
- 确保所有命令都成功完成。
注意:
如果出现错误,NetScaler 仍会运行其余命令并部分创建/更新/绑定资源。因此,如果您看到由于其中一个参数不正确而出现意外错误,建议从头开始重新进行配置。
更新 Web 和 SaaS 应用程序的现有 NetScaler Gateway 配置
您可以使用现有 NetScaler Gateway 上的 ns_gateway_secure_access_update.sh
脚本来更新 Web 和 SaaS 应用程序的配置。但是,如果您想手动更新现有配置(NetScaler Gateway 版本 14.1—4.42 及更高版本),请使用示例命令更新现有 NetScaler Gateway 配置。此外,您必须更新 NetScaler Gateway 虚拟服务器和会话操作设置。
注意:
从 NetScaler Gateway 14.1—25.56 及更高版本开始,您可以使用 NetScaler Gateway CLI 或 GUI 在 NetScaler Gateway 上启用 Secure Private Access 插件。有关详细信息,请参阅在 NetScaler Gateway 上启用 Secure Private Access 插件。
您还可以在现有 NetScaler Gateway 上使用脚本来支持 Secure Private Access。但是,该脚本不会更新以下内容:
- 现有 NetScaler Gateway 虚拟服务器
- 绑定到 NetScaler Gateway 的现有会话操作和会话策略
确保在执行之前检查每条命令并创建网关配置的备份。
NetScaler Gateway 虚拟服务器设置
添加或更新现有 NetScaler Gateway 虚拟服务器时,请确保将以下参数设置为定义值。有关示例命令,请参阅更新现有 NetScaler Gateway 配置的示例命令。
添加虚拟服务器:
- tcpProfileName:nstcp_default_XA_XD_profile
- deploymentType:ICA_STOREFRONT(仅在
add vpn vserver
命令中可用) - icaOnly:OFF
更新虚拟服务器:
- tcpProfileName:nstcp_default_XA_XD_profile
- icaOnly:OFF
NetScaler Gateway 会话操作设置
会话操作绑定到具有会话策略的网关虚拟服务器。创建或更新会话操作时,请确保将以下参数设置为定义的值。有关示例命令,请参阅更新现有 NetScaler Gateway 配置的示例命令。
-
transparentInterception
:关 -
SSO
:开 -
ssoCredential
:PRIMARY -
useMIP
:NS -
useIIP
:关 -
icaProxy
:关 -
wihome
:"https://storefront.mydomain.com/Citrix/MyStoreWeb"
- 替换为真实的应用商店 URL。存储路径/Citrix/MyStoreWeb
是可选的。 -
ClientChoices
:关 -
ntDomain
:mydomain.com - 用于 SSO(可选) -
defaultAuthorizationAction
:ALLOW -
authorizationGroup
: SecureAccessGroup(确保创建了该组,它用于绑定 Secure Private Access 特定的授权策略) -
clientlessVpnMode
:开 -
clientlessModeUrlEncoding
:TRANSPARENT -
SecureBrowse
:ENABLED -
Storefronturl
:"https://storefront.mydomain.com"
-
sfGatewayAuthType
:domain
更新现有 NetScaler Gateway 配置的示例命令
要添加/更新虚拟服务器,请执行以下操作:
add vpn vserver SecureAccess_Gateway SSL 999.999.999.999 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
要添加会话操作,请执行以下操作:
add vpn sessionAction AC_OSspaonprem -transparentInterception OFF -defaultAuthorizationAction ALLOW -authorizationGroup SecureAccessGroup -SSO ON -ssoCredential PRIMARY -useMIP NS -useIIP OFF -icaProxy OFF -wihome "https://storefront.gwonprem.corp/Citrix/SPAWeb" -ClientChoices OFF -ntDomain gwonprem.corp -clientlessVpnMode ON -clientlessModeUrlEncoding TRANSPARENT -SecureBrowse ENABLED -storefronturl "https://storefront.gwonprem.corp" -sfGatewayAuthType domain
add vpn sessionAction AC_WBspaonprem -transparentInterception OFF -defaultAuthorizationAction ALLOW -authorizationGroup SecureAccessGroup -SSO ON -ssoCredential PRIMARY -useMIP NS -useIIP OFF -icaProxy OFF -wihome "https://storefront.gwonprem.corp/Citrix/SPAWeb" -ClientChoices OFF -ntDomain gwonprem.corp -clientlessVpnMode ON -clientlessModeUrlEncoding TRANSPARENT -SecureBrowse ENABLED -storefronturl "https://storefront.gwonprem.corp" -sfGatewayAuthType domain
要添加会话策略,请执行以下操作:
add vpn sessionPolicy PL_OSspaonprem "HTTP.REQ.HEADER(\"User-Agent\").CONTAINS(\"CitrixReceiver\")" AC_OSspaonprem
add vpn sessionPolicy PL_WBspaonprem "HTTP.REQ.HEADER(\"User-Agent\").CONTAINS(\"CitrixReceiver\").NOT && HTTP.REQ.HEADER(\"User-Agent\").CONTAINS(\"plugin\").NOT" AC_WBspaonprem
要将会话策略绑定到 VPN 虚拟服务器,请执行以下操作:
bind vpn vserver SecureAccess_Gateway -policy PL_OSspaonprem -priority 111 -gotoPriorityExpression NEXT -type REQUEST
bind vpn vserver SecureAccess_Gateway -policy PL_WBspaonprem -priority 110 -gotoPriorityExpression NEXT -type REQUEST
有关会话操作参数的详细信息,请参阅 vpn-sessionAction。
其他信息
有关用于 Secure Private Access 的 NetScaler Gateway 的更多信息,请参阅以下主题: