在 AWS 上部署 NetScaler Web App Firewall
NetScaler Web App Firewall 可以作为第 3 层网络设备安装,也可以作为客户服务器和客户用户之间的第 2 层网桥安装,通常位于客户公司的路由器或防火墙后面。 NetScaler Web App Firewall 必须安装在可以拦截网络服务器与用户访问这些网络服务器的集线器或交换机之间的流量的位置。 然后,用户将网络配置为将请求发送到 Web Application Firewall(而不是直接发送到其 Web 服务器),并将响应发送到 Web Application Firewall(而不是直接发送给用户)。 Web Application Firewall 在将流量转发到最终目标之前,会使用其内部规则集以及用户添加和修改来过滤该流量。 它会阻止或使其检测到有害的任何活动变得无害,然后将剩余的流量转发到 Web 服务器。 上图概述了筛选过程。
有关详细信息,请参阅 NetScaler Web App Firewall 的工作原理。
AWS 上用于生产部署的 NetScaler Web App Firewall 架构
该图显示了一个具有默认参数的虚拟专用云 (VPC),该虚拟专用云 (VPC) 在 AWS 云中构建 NetScaler Web App Firewall 环境。
在生产部署中,为 NetScaler Web App Firewall 环境设置了以下参数:
-
该架构假定使用 AWS CloudFormation 模板。
-
一个跨越两个可用区的 VPC,根据 AWS 最佳实践配置了两个公有子网和四个专用子网,以便在 AWS 上为您提供自己的虚拟网络,该网络具有 /16 无类域间路由 (CIDR) 块(一个拥有 65,536 个专用 IP 地址的网络)。
-
两个 NetScaler Web App Firewall 实例(主实例和辅助实例),每个可用性区域一个。
-
三个安全组,每个网络接口(管理、客户端、服务器)一个,它们充当虚拟防火墙来控制其关联实例的流量。
-
每个实例有三个子网 - 一个用于管理,一个用于客户端,一个用于后端服务器。
-
连接到 VPC 的 Internet网关,以及与公有子网关联以允许访问Internet的公有子网路由表。 Web App Firewall 主机使用此网关来发送和接收流量。 有关 Internet 网关的更多信息,请参阅:Internet 网关。
-
5 个路由表 - 一个与主要 Web App Firewall 和辅助 Web App Firewall 的客户端子网关联的公共路由表。 其余 4 个路由表分别链接到 4 个私有子网(主 Web App Firewall 和辅助 Web App Firewall 的管理和服务器端子网)。
-
Web App Firewall 中的 AWS Lambda 负责以下几点:
-
在 HA 模式的每个可用区中配置两个 Web App Firewall
-
创建示例 Web App Firewall 配置文件,从而推送与 Web App Firewall 相关的此配置
-
-
AWS Identity and Access Management (IAM),用于安全地控制用户对 AWS 服务和资源的访问。 默认情况下,CloudFormation (CFT) 会创建所需的 IAM 角色。 但是,用户可以为 NetScaler ADC 实例提供自己的 IAM 角色。
-
在公有子网中,两个托管网络地址转换 (NAT) 网关,允许对公有子网中的资源进行出站 Internet 访问。
注意:
将 NetScaler Web App Firewall 部署到现有 VPC 的 CFT Web App Firewall 模板会跳过标有星号的组件,提示用户输入其现有 VPC 配置。
后端服务器不是由 CFT 部署的。
成本和许可
用户负责在运行 AWS 部署时使用的 AWS 服务的费用。 可用于此部署的 AWS CloudFormation 模板包含用户可以根据需要自定义的配置参数。 其中一些设置(例如实例类型)会影响部署成本。 要了解成本估算,用户应参阅他们正在使用的每项 AWS 服务的定价页面。 价格可能会发生变化。
AWS 上的 NetScaler Web App Firewall 需要许可证。 要获得NetScaler Web App Firewall的许可,用户必须将许可密钥放入S3存储桶中,并在启动部署时指定其位置。
注意:
当用户选择自带许可证 (BYOL) 许可模式时,他们应确保已启用 AppFlow 功能。 有关 BYOL 许可的更多信息,请参阅:AWS Marketplace/Citrix VPX - 客户许可。
以下许可选项适用于在 AWS 上运行的 Citrix ADC Web App Firewall。 用户可以根据吞吐量等单一因素选择 AMI(Amazon 系统映像)。
-
许可证模式:按使用量付费(PAYG,适用于生产许可证)或自带许可证(BYOL,适用于客户许可的 AMI - Citrix ADC 池容量)。 有关 Citrix ADC 池容量的更多信息,请参阅:Citrix ADC 池容量。
-
对于 BYOL,有 3 种许可模式:
-
配置 NetScaler 池容量:配置 Citrix ADC 池容量
-
NetScaler VPX 签入和签出许可 (CICO):Citrix ADC VPX 签入和签出许可
提示:
如果用户选择 VPX-200、VPX-1000、VPX-3000、VPX-5000 或 VPX-8000 应用平台类型的 CICO 许可,则应确保他们的 NetScaler 控制台许可服务器中存在相同的吞吐量许可。
- NetScaler 虚拟 CPU 许可: NetScaler 虚拟 CPU 许可
-
-
注意:
如果用户想要动态修改 VPX 实例的带宽,则应选择 BYOL 选项,例如 NetScaler 池容量,他们可以在其中从 NetScaler 控制台分配许可,或者他们可以根据实例的最小和最大容量按需签出 NetScaler 的许可,无需重启。 仅当用户想要更改许可证版本时才需要重新启动。
-
吞吐量:200 Mbps 或 1 Gbps
-
捆绑包:高级
部署选项
本部署指南提供了两个部署选项:
-
第一个选项是使用快速入门指南格式和以下选项进行部署:
-
将 NetScaler Web App Firewall 部署到新的 VPC(端到端部署)。 此选项构建了一个由 VPC、子网、安全组和其他基础设施组件组成的新 AWS 环境,然后将 NetScaler Web App Firewall 部署到这个新 VPC 中。
-
将 NetScaler Web App Firewall 部署到现有 VPC 中。 此选项在用户现有 AWS 基础设施中预置 NetScaler Web App Firewall。
-
-
第二种选择是使用 NetScaler 控制台通过 Web App Firewall 样书进行部署
AWS 快速入门
第 1 步:登录用户 AWS 帐户
-
登录 AWS 的用户帐户:具有 IAM(身份和访问管理)用户角色的 A W S,该角色具有创建亚马逊帐户(如有必要)或登录亚马逊帐户的必要权限。
-
使用导航栏中的区域选择器选择用户希望在 AWS 可用区中部署高可用性的 AWS 区域。
-
确保用户 AWS 帐户配置正确,有关更多信息,请参阅本文档的技术要求部分。
第 2 步:订阅 NetScaler Web App Firewall AMI
-
此部署需要在 AWS Marketplace 中订阅适用于 NetScaler Web App Firewall 的 AMI。
-
登录用户 AWS 帐户。
-
选择下表中的链接之一,打开 NetScaler Web App Firewall 产品的页面。
- 当用户在下面的步骤 3 中启动《快速入门指南》以部署 NetScaler Web App Firewall 时,他们会使用 NetScaler Web App Firewall Image 参数来选择与其 AMI 订阅相匹配的捆绑和吞吐量选项。 以下列表显示了 AMI 选项和相应的参数设置。 VPX AMI 实例最低需要 2 个虚拟 CPU 和 2 GB 内存。
注意:
要检索 AMI ID,请参阅 GitHub 上的 AWS Marketplace 上的 NetScaler 产品页面:AWS Marketplace 上的 Citrix 产品。
-
AWS Marketplace AMI
-
NetScaler Web Application Firewall (Web App Firewall) - 200 Mbps:Citrix Web App Firewall(Web App Firewall)-200 Mbps
-
NetScaler Web Application Firewall (Web App Firewall) - 1000 Mbps:Citrix Web App Firewall(Web App Firewall)-1000 Mbps
-
-
在 AMI 页面上,选择 继续订阅。
-
查看软件使用条款和条件,然后选择“接受条款”。
注意:
用户会收到确认页面,并向帐户所有者发送一封确认电子邮件。 有关订阅的详细说明,请参阅 AWS Marketplace 文档: 入门中的入门。
-
订阅流程完成后,退出 AWS Marketplace,无需采取进一步操作。 请勿从 AWS Marketplace 配置软件 — 用户将使用快速入门指南部署 AMI。
第 3 步:启动 AWS 快速入门
-
登录用户 AWS 帐户,然后选择以下选项之一以启动 AWS CloudFormation 模板。 有关选择选项的帮助,请参阅本指南前面的部署选项。
-
使用位于此处的 AWS CloudFormation 模板之一,将 NetScaler VPX 部署到 AWS 上的新 VPC 中:
-
重要:
如果用户在现有 VPC 中部署 NetScaler Web App Firewall,则必须确保其 VPC 跨越两个可用区,每个可用区中为工作负载实例提供一个公有子网和两个专用子网,并且子网不共享。 本部署指南不支持共享子网,请参阅使用共享 VPC: 使用共享 VPC。 这些子网的路由表中需要有 NAT 网关,以允许实例下载软件包和软件,而不会将它们暴露给 Internet。 有关 NAT 网关的更多信息,请参阅 NAT 网关。 配置子网,使子网不会重叠。
此外,用户应确保 DHCP 选项中的域名选项按照此处的 Amazon VPC 文档中的说明进行配置:DHCP 选项集 DHCP 选项集。 启动快速入门指南时,系统会提示用户输入其 VPC 设置。
-
每个部署大约需要 15 分钟才能完成。
-
检查显示在导航栏右上角的 AWS 区域,并在必要时进行更改。 这是构建 Citrix Web App Firewall 网络基础架构的地方。 默认情况下,模板在美国东部(俄亥俄)区域启动。
注意:
此部署包括 NetScaler Web App Firewall,目前并非所有 AWS 区域都支持该部署。 有关受支持区域的最新列表,请参阅 AWS 服务端点:AWS 服务端点。
-
在“选择模板”页面上,保留模板 URL 的默认设置,然后选择“下一步”。
-
在“指定详细信息”页面上,根据用户的需要指定堆栈名称。 查看模板的参数。 为需要输入的参数提供值。 对于所有其他参数,请查看默认设置并根据需要对其进行自定义。
-
在下表中,按类别列出了部署选项的参数,并分别对其进行了说明:
-
将 NetScaler Web App Firewall 部署到新的或现有 VPC 的参数(部署选项 1)
-
当用户完成对参数的查看和自定义后,他们应选择“下一步”。
将 NetScaler Web App Firewall 部署到新 VPC 的参数
VPC 网络配置
参数标签(名称) | 默认值 | 说明 |
---|---|---|
主可用性区域 (PrimaryAvailabilityZone) | 需要输入 | 主要部署 NetScaler Web App Firewall 的可用性区域 |
辅助可用性区域 (SecondaryAvailabilityZone) | 需要输入 | 二级 NetScaler Web App Firewall 部署的可用性区域 |
VPC CIDR (VPCCIDR) | 10.0.0.0/16 | VPC 的 CIDR 块。 必须是格式为 x.x.x.x/x 的有效 IP CIDR 范围。 |
远程 SSH CIDR IP(管理) (RestrictedSSHCIDR) | 需要输入 | 可通过 SSH 连接到 EC2 实例的 IP 地址范围(端口:22)。 |
例如,使用 0.0.0.0/0 将允许所有 IP 地址使用 SSH 或 RDP 访问用户实例。 注意:仅授权特定 IP 地址或地址范围访问用户实例,因为在生产环境中使用它并不安全。 | ||
远程 HTTP CIDR IP(客户端) (RestrictedWebAppCIDR) | 0.0.0.0/0 | 可通过 HTTP 连接到 EC2 实例的 IP 地址范围(端口:80) |
远程 HTTP CIDR IP(客户端) (RestrictedWebAppCIDR) | 0.0.0.0/0 | 可通过 HTTP 连接到 EC2 实例的 IP 地址范围(端口:80) |
主管理专用子网 CIDR (PrimaryManagementPrivateSubnetCIDR) | 10.0.1.0/24 | 位于可用区 1 的主管理子网的 CIDR 块。 |
主管理专用 IP (PrimaryManagementPrivateIP) | — | 从主管理子网 CIDR 分配给主管理 ENI 的专用 IP(最后一个二进制八位数必须在 5 到 254 之间)。 |
主客户端公有子网 CIDR (PrimaryClientPublicSubnetCIDR) | 10.0.2.0/24 | 位于可用区 1 的主客户端子网的 CIDR 块。 |
主客户端专用 IP (PrimaryClientPrivateIP) | — | 从主客户端子网 CIDR 的主客户端 IP 分配给主客户端 ENI 的专用 IP(最后一个二进制八位数必须在 5 到 254 之间)。 |
主服务器专用子网 CIDR (PrimaryServerPrivateSubnetCIDR) | 10.0.3.0/24 | 位于可用区 1 的主服务器的 CIDR 块。 |
主服务器专用 IP (PrimaryServerPrivateIP) | — | 从主服务器子网 CIDR 分配给主服务器 ENI 的专用 IP(最后一个二进制八位数必须在 5 到 254 之间)。 |
辅助管理专用子网 CIDR (SecondaryManagementPrivateSubnetCIDR) | 10.0.4.0/24 | 位于可用区 2 的辅助管理子网的 CIDR 块。 |
二级管理专用 IP (SecondaryManagementPrivateIP) | — | 分配给辅助管理 ENI 的专用 IP(最后一个二进制八位数必须在 5 到 254 之间)。 它将从辅助管理子网 CIDR 分配辅助管理 IP。 |
辅助客户端公有子网 CIDR (SecondaryClientPublicSubnetCIDR) | 10.0.5.0/24 | 位于可用区 2 的辅助客户端子网的 CIDR 块。 |
辅助客户端专用 IP (SecondaryClientPrivateIP) | — | 分配给辅助客户端 ENI 的专用 IP(最后一个二进制八位数必须在 5 到 254 之间)。 它将从辅助客户端子网 CIDR 分配辅助客户端 IP。 |
辅助服务器专用子网 CIDR (SecondaryServerPrivateSubnetCIDR) | 10.0.6.0/24 | 位于可用区 2 中的辅助服务器子网的 CIDR 块。 |
辅助服务器专用 IP (SecondaryServerPrivateIP) | — | 分配给辅助服务器 ENI 的专用 IP(最后一个二进制八位数必须在 5 到 254 之间)。 它将从辅助服务器子网 CIDR 分配辅助服务器 IP。 |
VPC 租期属性 (VPCTenancy ) |
default | 在 VPC 中启动的实例的允许租期。 选择专用租赁可启动专用于单个客户的 EC2 实例。 |
堡垒主机配置
参数标签(名称) | 默认值 | 说明 |
---|---|---|
需要堡垒主机 (LinuxBastionHostEIP) | 否 | 默认情况下,不会配置堡垒主机。 但是,如果用户想选择沙盒部署,请从菜单中选择“是”,该菜单将在公有子网中部署 Linux 堡垒主机 ,该 EIP 将使用户可以访问私有和公有子网中的组件。 |
NetScaler Web App Firewall 配置
参数标签(名称) | 默认值 | 说明 |
---|---|---|
密钥对名称 (KeyPairName) | 需要输入 | 公钥/私钥对,允许用户在启动后安全地连接到用户实例。 这是用户在其首选 AWS 区域中创建的密钥对;请参阅技术要求部分。 |
NetScaler 实例类型 (CitrixADCInstanceType) | m4.xlarge | 用于 ADC 实例的 EC2 实例类型。 确保选择的实例类型与 AWS 市场中可用的实例类型一致,否则 CFT 可能会失败。 |
NetScaler ADC AMI ID (CitrixADCImageID) | — | 用于 NetScaler Web App Firewall 部署的 AWS Marketplace AMI。 这必须与步骤 2 中订阅的 AMI 用户匹配。 |
NetScaler ADC VPX IAM 角色 (iam:GetRole ) |
— | 此模板:AWS-Quickstart/Quickstart-Citrix-ADC-VPX/Templates 创建 NetScaler VPX 所需的 IAM 角色和实例配置文件。 如果留空,CFT 将创建所需的 IAM 角色。 |
客户端 PubliceIP(EIP) (ClientPublicEIP) | 否 | 如果用户想要将公共 EIP 分配给用户的客户端网络接口,请选择“是”。 否则,即使在部署之后,用户仍然可以选择稍后根据需要进行分配。 |
池许可配置
参数标签(名称) | 默认值 | 说明 |
---|---|---|
NetScaler 控制台池许可 | 否 | 如果为许可选择 BYOL 选项,请从列表中选择 yes。 这允许用户上载他们已经购买的许可证。 在用户开始之前,他们应配置 NetScaler ADC 池容量,以确保 NetScaler 控制台池化许可可用,请参阅配置 NetScaler 池容量 |
可访问的 NetScaler 控制台/NetScaler 控制台代理 IP | 需要输入 | 对于客户许可选项,无论用户是在本地部署 NetScaler 控制台还是在云端部署 NetScaler 控制台,都要确保有一个可访问的 NetScaler 控制台 IP,然后将其用作输入参数。 |
许可模式
|
可选
|
用户可以从 3 种许可模式中进行选择:
|
以 Mbps 为单位的许可证带宽 | 0 Mbps | 仅当许可模式为池化许可时,此字段才会出现在图片中。 它分配许可证的初始带宽(以 Mbps 为单位),以便在创建 BYOL ADC 之后进行分配。 它应该是 10 Mbps 的倍数。 |
许可证版本 | Premium | 池容量许可模式的许可证版本为 Premium。 |
设备平台类型 | 可选 | 仅当用户选择 CICO 许可模式时,才选择所需的设备平台类型。 用户可以获得列出的选项:VPX-200、VPX-1000、VPX-3000、VPX-5000、VPX-8000。 |
许可证版本 | Premium | 基于 vCPU 的许可的许可证版本为 Premium。 |
AWS 快速入门配置
注意:
我们建议用户保留以下两个参数的默认设置,除非他们为自己的部署项目自定义《快速入门指南》模板。 更改这些参数的设置将自动更新代码引用,使其指向新的《快速入门指南》位置。 有关更多详细信息,请参阅此处的 AWS 快速入门指南贡献者指南: AWS 快速入门/选项 1-采用快速入门。
参数标签(名称) | 默认值 | 说明 |
---|---|---|
快速入门指南 S3 存储桶名称 (QSS3BucketName) | aws-quickstart |
用户为其《快速入门指南》资产副本创建的 S3 存储桶(如果用户决定自定义或扩展快速入门指南以供自己使用)。 存储桶名称可以包含数字、小写字母、大写字母和连字符,但不应以连字符开头或结尾。 |
快速入门指南 S3 密钥前缀 (QSS3KeyPrefix) | quickstart-citrix-adc-vpx/ | 如果用户决定自定义或扩展快速入门指南以供自己使用,则 S3 密钥名称前缀来自对象键和元数据:对象密钥和元数据,用于模拟快速入门指南资产的用户副本的文件夹。 此前缀可以包括数字、小写字母、大写字母、连字符和正斜杠。 |
-
在 选项 页面上,用户可以为堆栈中的资源指定资源标签或键值对,并设置高级选项。 有关资源标签的更多信息,请参阅 资源标签。 有关设置 AWS CloudFormation 堆栈选项的更多信息,请参阅 设置 AWS CloudFormation 堆栈选项。 用户完成后,应选择“下一步”。
-
在“查看”页面上,查看并确认模板设置。 在“功能”下,选中两个复选框以确认模板创建 IAM 资源并且可能需要自动展开宏的功能。
-
选择 创建 以部署堆栈。
-
监视堆栈的状态。 当状态为 CREATE_COMPLETE 时,NetScaler Web App Firewall 实例已准备就绪。
-
使用堆栈的“输出”选项卡中显示的 URL 查看已创建的资源。
第 4 步:测试部署
我们将此部署中的实例称为 主 实例和 辅助实例。 每个实例都有不同的 IP 地址与其关联。 成功部署快速入门后,流量将流经在可用区 1 中配置的主要 NetScaler Web App Firewall 实例。 在故障转移条件下,当主实例不响应客户端请求时,辅助 Web App Firewall 实例将接管。
主实例的虚拟 IP 地址的弹性 IP 地址将迁移到辅助实例,后者将接管新的主实例。
在故障转移过程中,NetScaler Web App Firewall 会执行以下操作:
-
NetScaler Web App Firewall 会检查连接了 IP 集的虚拟服务器。
-
NetScaler Web App Firewall 从虚拟服务器正在监听的两个 IP 地址中找到具有相关公有 IP 地址的 IP 地址。 一个直接连接到虚拟服务器,另一个通过 IP 集连接。
-
NetScaler Web App Firewall 将公共弹性 IP 地址重新关联到属于新主虚拟 IP 地址的专用 IP 地址。
要验证部署,请执行以下操作:
- 连接到主实例
例如,使用代理服务器、跳转主机(在 AWS 中运行的 Linux/Windows/FW 实例或堡垒主机)或可访问该 VPC 的其他设备,或者如果处理本地连接,则使用直接连接。
- 执行触发操作以强制故障转移,并检查辅助实例是否接管。
提示:
要进一步验证与 NetScaler Web App Firewall 相关的配置,请在连接到主 NetScaler Web App Firewall 实例后运行以下命令:
Sh appfw profile QS-Profile
使用堡垒主机连接到 NetScaler Web App Firewall HA 对
如果用户选择沙盒部署(例如,作为 CFT 的一部分,用户选择配置堡垒主机),则部署在公有子网中的 Linux 堡垒主机将被配置为访问 Web App Firewall 接口。
在 AWS CloudFormation 控制台中(可通过在此处 登录来访问):登录,选择主堆栈,然后在“输出”选项卡上找到 LinuxBastionHostEIP1 的值。
-
PrivateManagementPrivateNSIP 和 PrimaryADCInstanceID 键的值将在后面的步骤中使用 SSH 进入 ADC。
-
选择“服务”。
-
在 计算 选项卡上,选择 EC2。
-
在 资源下,选择 正在运行的实例。
-
在主 Web App Firewall 实例的说明选项卡上,记下 IPv4 公有 IP 地址。 用户需要该 IP 地址来构建 SSH 命令。
-
- 要将密钥存储在用户钥匙串中,请运行命令
ssh-add -K [your-key-pair].pem
在 Linux 上,用户可能需要省略-K 标志。
- 使用以下命令登录堡垒主机,使用用户在步骤 1 中记下的 LinuxBastionHostEIP1 的值。
ssh -A ubuntu@[LinuxBastionHostEIP1]
- 用户可以在堡垒主机上使用 SSH 连接到主 Web App Firewall 实例。
ssh nsroot@[Primary Management Private NSIP]
密码:[主 ADC 实例 ID]
现在,用户已连接到主 NetScaler Web App Firewall 实例。 要查看可用的命令,用户可以运行 help 命令。 要查看当前的高可用性配置,用户可以运行 show HA 节点命令。
NetScaler 控制台
NetScaler 应用程序交付管理服务提供一种简单且可扩展的解决方案,用于管理 NetScaler 部署,包括 NetScaler MPX、NetScaler VPX、NetScaler Gateway、NetScaler Secure Web Gateway、NetScaler SDX、NetScaler ADC CPX 和 NetScaler 部署在本地或云端的 SD-WAN 设备。
NetScaler 控制台服务文档包括有关如何开始使用该服务的信息、该服务支持的功能列表以及该服务解决方案的特定配置。
有关更多信息,请参阅 NetScaler 控制台概述。
使用 NetScaler 控制台在 AWS 上部署 NetScaler VPX 实例
当客户将其应用程序迁移到云端时,作为其应用程序一部分的组件会增加,变得更加分散,需要进操作态管理。
有关更多信息,请参阅在 AWS 上配置 NetScaler VPX 实例。
NetScaler Web App Firewall 和 OWASP 前十名 — 2017
开放网络应用程序安全项目:OWASP 发布了 2017 年 OWASP Web 应用程序安全性十强。 此列表记录了最常见的 Web 应用程序漏洞,是评估 Web 安全性的一个很好的起点。 这里我们将详细介绍如何配置 NetScaler Web App Firewall(Web App Firewall)以缓解这些缺陷。 Web App Firewall 作为 NetScaler (Premium Edition) 中的集成模块以及全系列设备提供。
完整的 OWASP 十大文档可在 OWASP 十大文章中找到。
签名提供以下部署选项,以帮助用户优化对用户应用程序的保护:
-
负面安全模型:在负面安全模型中,用户使用一组丰富的预配置签名规则来应用模式匹配的威力来检测攻击并防范应用程序漏洞。 用户只屏蔽他们不想要的内容,而允许其余的内容。 用户可以根据用户应用程序的特定安全需求添加自己的签名规则,以设计自己的定制安全解决方案。
-
混合安全模式:除了使用签名外,用户还可以使用积极的安全检查来创建非常适合用户应用程序的配置。 使用签名阻止用户不想要的内容,并使用积极的安全检查来强制执行允许的内容。
要使用签名保护用户应用程序,用户必须配置一个或多个配置文件以使用其签名对象。 在混合安全配置中,用户签名对象中的 SQL 注入和跨站点脚本模式以及 SQL 转换规则不仅由签名规则使用,而且还用于在 Web Application Firewall 配置文件中配置的肯定安全检查,该安全检查正在使用签名对象。
Web Application Firewall 会检查流向受用户保护的网站和 Web 服务的流量,以检测与签名匹配的流量。 仅当规则中的每个模式与流量匹配时,才会触发匹配。 发生匹配时,将调用规则的指定操作。 当请求被阻止时,用户可以显示错误页面或错误对象。 日志消息可以帮助用户识别针对用户应用程序发起的攻击。 如果用户启用统计信息,则 Web Application Firewall 会保留与 Web Application Firewall 签名或安全检查相匹配的请求的相关数据。
如果流量同时匹配签名和正面安全检查,则强制执行这两个操作中的限制性更强。 例如,如果请求与禁用阻止操作的签名规则匹配,但请求也匹配该操作被阻止的 SQL 注入正面安全检查,则请求将被阻止。 在这种情况下,尽管请求被 SQL 注入检查阻止,但签名冲突可能会被记录为 [未阻止]。
自定义:如有必要,用户可以将自己的规则添加到签名对象。 用户还可以自定义 SQL/XSS 模式。 根据用户应用程序的特定安全需求,可以选择添加自己的签名规则,使用户可以灵活地设计自己的自定义安全解决方案。 用户只屏蔽他们不想要的内容,而允许其余的内容。 指定位置中的特定快速匹配模式可显著降低处理开销,以优化性能。 用户可以添加、修改或删除 SQL 注入和跨站点脚本模式。 内置的正则表达式和表达式编辑器可帮助用户配置用户模式并验证其准确性。
NetScaler Web App Firewall
Web App Firewall 是一种企业级解决方案,为现代应用提供最先进的保护。 NetScaler Web App Firewall 可缓解针对面向公众的资产(包括网站、Web 应用程序和 API)的威胁。 NetScaler Web App Firewall 包括基于 IP 信誉的过滤、机器人缓解、OWASP 十大应用程序威胁防护、第 7 层 DDoS 防护等。 还包括强制执行身份验证、强 SSL/TLS 密码、TLS 1.3、速率限制和重写策略的选项。 NetScaler Web App Firewall 同时使用基本和高级 Web App Firewall 保护,以无与伦比的易用性为您的应用程序提供全面保护。 启动和运行只需几分钟。 此外,NetScaler Web App Firewall 使用一种称为动态分析的自动学习模型,为用户节省了宝贵的时间。 通过自动学习受保护应用的工作原理,即使开发人员部署和更改应用,Web App Firewall 也能适应该应用。 NetScaler Web App Firewall 有助于遵守所有主要的监管标准和机构,包括 PCI-DSS、HIPAA 等。 借助我们的 CloudFormation 模板,快速启动和运行变得前所未有的简单。 借助 auto Scaling,用户可以放心,他们的应用程序即使在流量增加时仍会受到保护。
Web App Firewall 部署策略
部署 Web Application Firewall 的第一步是评估哪些应用程序或特定数据需要最大程度的安全保护,哪些应用程序或特定数据不太容易受到攻击,哪些应用程序或特定数据可以安全绕过安全检查。 这有助于用户提出最佳配置,并设计适当的策略和绑定点来隔离流量。 例如,用户可能希望将策略配置为绕过对静态 Web 内容(如图像、MP3 文件和电影)请求的安全检查,并配置另一个策略以对动态内容请求应用高级安全检查。 用户可以使用多个策略和配置文件来保护同一应用程序的不同内容。
下一步是确定部署基准。 首先创建一个虚拟服务器,然后通过它运行测试流量,以了解流经用户系统的流量速率和流量。
然后,部署 Web App Firewall。 使用 NetScaler 控制台和 Web App Firewall 样书配置 Web App Firewall。 有关详细信息,请参阅本指南下方的“样书”部分。
在 Web App Firewall 部署和配置 Web App Firewall 样书之后,下一个有用的步骤是实施 NetScaler ADC Web App Firewall 和 OWASP Top 10。
最后,三种 Web App Firewall 保护措施对抵御常见类型的 Web 攻击特别有效,因此比其他任何一种保护措施都更常用。 因此,它们应该在初始部署时实施。
NetScaler 控制台
NetScaler 控制台提供管理 NetScaler ADC 部署的可扩展解决方案,包括 NetScaler ADC MPX、NetScaler ADC VPX、NetScaler Gateway、NetScaler Secure Web Gateway、NetScaler Secure Web Gateway、NetScaler ADC SDX、NetScaler ADC CPX 和 NetScaler 部署在本地或云端的 SD-WAN 设备。
NetScaler 控制台应用程序 分析和管理功能
NetScaler 控制台支持的功能是 NetScaler 控制台在“应用程序安全性”中扮演角色的关键。
有关功能的更多信息,请参阅功能和解决方案。
必备条件
在尝试在 AWS 中创建 VPX 实例之前,用户应确保满足必备条件。 有关更多信息,请参阅 先决条件:
局限性与用法指南
在 AWS 上部署 Citrix ADC VPX 实例时,适用 限制和使用指南 中的限制和使用指南。
技术要求
在用户启动《快速入门指南》开始部署之前,必须按照下方资源表中指定的方式配置用户帐户。 否则,部署可能会失败。
资源
如有必要,请登录用户的亚马逊帐户,并在此处请求提高以下资源的服务限制: AWS/登录。 如果您已有使用这些资源的现有部署,并且您认为此部署可能会超出默认限制,则可能需要执行此操作。 有关默认限制,请参阅 AWS 文档:AWS 服务配额中的 AWS 服务配额。
AWS Trusted Advisor(可在此处找到:AWS/登录)提供服务限制检查,显示某些服务的某些方面的使用情况和限制。
资源 | 此部署使用 |
---|---|
VPC | 1 |
弹性 IP 地址 | 0/1(适用于堡垒主机) |
IAM 安全组 | 3 |
IAM 角色 | 1 |
Subnets | 6(3 个/可用区) |
Internet 网关 | 1 |
路由表 | 5 |
Web App Firewall VPX 实例 | 2 |
堡垒主机 | 0/1 |
NAT 网关 | 2 |
区域
目前,并非所有 AWS 区域都支持 AWS 上的 NetScaler Web App Firewall。 有关受支持区域的最新列表,请参阅 AWS 文档中的“AWS 服务端点”:AWS 服务端点。
有关 AWS 区域以及云基础设施为何如此重要的更多信息,请参阅:全球基础设施。
Key Pair(密钥对)
使用快速入门指南,确保用户计划部署的区域中的用户 AWS 帐户中至少存在一个 Amazon EC2 密钥对。 记下密钥对名称。 在部署期间,系统会提示用户输入此信息。 要创建密钥对,请按照 AWS 文档 Amazon EC2 密钥对和 Linux 实例中有关 Amazon EC2 密钥对和 Linux 实例的说明进行操作。
如果用户部署快速入门指南是为了测试或概念验证,我们建议他们创建一个新的密钥对,而不是指定生产实例已经在使用的密钥对。