Citrix ADC

与 Citrix ADC 的内联器件集成

入侵防护系统 (IPS) 和下一代防火墙 (NGFW) 等安全设备可保护服务器免受网络攻击。这些设备部署在第 2 层内联模式中,其主要功能是保护服务器免受网络攻击,并报告网络上的安全威胁。

为了防止易受威胁并提供高级安全保护,Citrix ADC 设备与一个或多个内联设备集成。内联设备可以是任何安全设备,如 IPS,NGFW。

以下是一些有利于将内联设备与 Citrix ADC 设备集成的用例:

  • 检查加密流量。大多数 IPS 和 NGFW 设备都会绕过加密流量,从而使服务器容易受到攻击。Citrix ADC 设备可以解密流量并将其发送到内联设备以进行检查。这增强了客户的网络安全性。
  • 从 TLS/SSL 处理中卸载内联设备。TLS/SSL 处理费用很高,如果 IPS 或 NGFW 设备解密流量,则 此问题可能会导致系统 CPU 较高。随着加密流量的快速增长,这些系统无法解密和检查加密流量。Citrix ADC 有助于从 TLS/SSL 处理中卸载内联设备。这导致内联设备支持大量流量检测。
  • 加载平衡内联设备。Citrix ADC 设备在存在大量流量时负载平衡多个内联设备。
  • 智能选择流量。流入设备的每个数据包都可能会被检查内容,例如文本文件的下载。用户可以将 Citrix ADC 设备配置为选择要检查的特定流量(例如 .exe 文件),并将流量发送到内联设备以处理数据

Citrix ADC 如何与内联器件集成

下图显示了 Citrix ADC 如何与内联安全设备集成。 内联设备集成

当您将内联设备与 Citrix ADC 设备集成时,该组件按以下所示进行交互:

  1. 客户端向 Citrix ADC 设备发送请求。
  2. 设备接收请求并根据策略评估将其发送到内联设备。 注意:如果有两个或多个内联设备,则设备负载均衡设备并发送流量。 如果传入流量是加密流量,则设备将解密数据并将其作为纯文本发送到内联设备以进行内容检查。
  3. 内联设备检查数据是否存在威胁,并决定是删除、重置或将数据发回设备。
  4. 如果存在安全威胁,设备将修改数据并将其发送到设备。
  5. Citrix ADC 反过来会重新加密数据并将请求转发到后端服务器。
  6. 后端服务器将响应发送到 Citrix ADC 设备。
  7. 设备再次解密数据并将其发送到内联设备进行检查。
  8. 设备重新加密数据并将响应发送到客户端

軟體許可證

要部署内联设备集成,您的 Citrix ADC 设备必须使用下面给出的许可证之一进行配置:

  1. ADC 铂金
  2. ADC 企业版
  3. 電信高級公司
  4. 電信高级版
  5. SWG 许可证

配置内联设备集成

您可以通过三种不同的方式使用内联设备配置 Citrix ADC 设备。配置方案如下所示。

使用单个内联设备的方案 1

如果要在内联模式下集成安全设备(IPS 或 NGFW),首先必须启用内容检查功能,然后在全局模式下启用基于 MBF(基于 MAC 的转发)的 Citrix ADC。启用这些功能后,您必须添加内容检查配置文件,为内联设备添加内容检查操作,以便根据检查重置、阻止或删除流量。然后,为设备添加“内容检查”策略,以确定要向内联设备发送的流量子集。然后,在服务器上启用了第 2 层连接的情况下配置负载平衡虚拟服务器。最后,将内容检查策略绑定到负载平衡虚拟服务器。

使用单一内联设备

启用 MBF(基于 MAC 的转发)模式

如果希望 Citrix ADC 设备集成到内联设备(如 IPS 或防火墙),则必须启用此模式。有关 MBF 的详细信息,请参阅配置基于 MAC 的转发主题。

在命令提示窗口中,键入:

enable ns mode mbf

启用内容检查

如果希望 Citrix ADC 设备解密,然后将内容发送到内联设备以进行检查,则必须启用“内容检查”和“负载平衡”功能。

enable ns feature contentInspection LoadBalancing

添加第 2 层连接方法

为了处理内联设备生成的响应,设备使用 VLAN 通道作为与内联设备进行通信的第 2 层方法 (L2ConnMethod)。

在命令提示窗口中,键入:

set l4param -l2ConnMethod <l2ConnMethod>

示例 set l4param –l2ConnMethod VlanChannel

为服务添加内容检查配置文件

Citrix ADC 设备的内联设备配置可以在名为内容检查配置文件的实体中指定。配置文件包含一系列设置,用于说明如何与内联设备集成。

在命令提示窗口中,键入:

add contentInspection profile <name> -type InlineInspection -egressInterface <interface_name> -ingressInterface <interface_name>[-egressVlan <positive_integer>] [-ingressVlan <positive_integer>]

示例

add contentInspection profile Inline_profile1 -type InlineInspection -ingressinterface “1/2” -egressInterface “1/3”

添加 IPS-TCP 监视器

如果要配置监视器,请添加用户定义的监视器。 注意:如果要配置监视器,则必须使用自定义监视器。添加监视器时,必须启用透明参数。

在命令提示窗口中,键入:

add lb monitor <monitorName> <type> [-destIP <ip_addr|ipv6_addr>] [-destPort <port>] [-transparent ( YES | NO )]

示例

add lb monitor ips_tcp TCP -destIP 192.168.10.2 -destPort 80 -transparent YES

添加服务

添加服务。指定不属于任何设备(包括内联设备)所拥有的虚拟 IP 地址。将use source IP address (USIP) 设置为是。设置useproxyport 为否。通过 defaut,运行状况监视处于开启状况,将服务绑定到运行状况监视器,并在监视器中设置透明选项为开。在命令提示窗口中,键入:

add service <Service_name> <IP> TCP * - contentinspectionProfileName <Name> -healthMonitor YES -usip ON –useproxyport OFF

示例

add service ips_service 198.51.100.2 TCP * -healthMonitor YES -usip YES -useproxyport NO -contentInspectionProfileName ipsprof

添加运行状况监视器

默认情况下,运行状况监视器处于打开状况,您还可以选择禁用该监视器(如果需要)。在命令提示窗口中,键入:

add lb monitor <name> TCP -destIP <ip address> -destPort 80 -transparent <YES, NO>

示例:

add lb monitor ips_tcp TCP -destIP 192.168.10.2 -destPort 80 -transparent YES

将服务绑定到运行状况监视器

配置运行状况监视器后,必须将服务绑定到运行状况监视器。在命令提示窗口中,键入:

`bind service <name> -monitorName <name>

示例:

bind service ips_svc -monitorName ips_tcp

为服务添加内容检查操作

启用内容检查功能,然后添加内联配置文件和服务后,您必须添加内容检查操作来处理请求。根据内容检测操作,内联设备可以在检查数据后删除、重置或阻止操作。

如果内联服务器或服务关闭,则可以在设备中配置 ifserverdown 参数以执行以下任一操作。

继续:如果用户希望在远程服务器关闭时绕过内容检查,则可以选择“继续”操作,作为默认值。 RESET(默认):此操作通过关闭与 RST 的连接来响应客户端。 DROP:此操作以静默方式丢弃数据包,而不向用户发送响应。

在命令提示窗口中,键入:

add contentInspection action <name> -type <type> (-serverName <string> [-ifserverdown <ifserverdown>] [-reqTimeout <positive_integer>] [-reqTimeoutAction <reqTimeoutAction>]

add ContentInspection action <action_name> -type InlineINSPECTION -serverName Service_name/Vserver_name>

示例

add ContentInspection action <Inline_action> -type InlineSPECTION –serverName Inline_service1

为检查添加内容检查策略

创建内容检查操作后,必须添加内容检查策略以评估检查请求。策略基于由一个或多个表达式组成的规则。策略根据规则评估并选择要检查的流量。

在命令提示窗口中,键入以下内容:

add contentInspection policy <policy_name> –rule <Rule> -action <action_name>

示例 add contentInspection policy Inline_pol1 –rule true –action Inline_action

添加 HTTP/SSL 类型的内容交换或负载平衡虚拟服务器

要接收 Web 流量,您必须添加负载平衡虚拟服务器。此外,您必须在虚拟服务器上启用 layer2 连接。

在命令提示窗口中,键入:

add lb vserver <name> <vserver name> -l2Conn ON

示例

add lb vserver HTTP_vserver HTTP 10.102.29.200 8080 –l2Conn ON

将内容检查策略绑定到 HTTP/SSL 类型的内容交换虚拟服务器或负载平衡虚拟服务器

必须将负载平衡虚拟服务器或 HTTP/SSL 类型的内容交换虚拟服务器绑定到内容检查策略。 在命令提示窗口中,键入以下内容:

bind lb vserver <vserver name> -policyName < policy_name > -priority < priority > -type <REQUEST>

示例

bind lb vserver HTTP_vserver -policyName Inline_pol1 -priority 100 -type REQUEST

场景 2:使用专用接口对多个内联设备进行负载平衡

如果使用两个或多个内联设备,则必须在专用 VLAN 设置中使用不同内容检查服务对设备进行负载平衡。在这种情况下,Citrix ADC 设备在通过专用接口向每个设备发送流量子集之上对设备进行负载平衡。 有关基本配置步骤,请参阅方案 1。

使用专用 VLAN 进行内联设备集成

为服务 1 添加内容检查配置文件 1

Citrix ADC 设备的内联配置可以在名为内容检查配置文件的实体中指定。配置文件包含设备设置的集合。内容检查配置文件 1 是针对内联服务 1 创建的,通信是通过 1/2 和 1/3 专用接口进行的。

在命令提示窗口中,键入:

add contentInspection profile <name> -type InlineInspection -egressInterface <interface_name> -ingressInterface <interface_name>[-egressVlan <positive_integer>] [-ingressVlan <positive_integer>]

示例

add contentInspection profile Inline_profile1 -type InlineInspection -ingressinterface“1/2”-egressInterface“1/3”

为服务 2 添加内容检查配置文件 2

为服务 2 添加了内容检查配置文件 2,内联设备通过 1/4 和 1/5 专用接口与设备进行通信。 在命令提示窗口中,键入:

add contentInspection profile <name> -type InlineInspection -egressInterface <interface_name> -ingressInterface <interface_name>[-egressVlan <positive_integer>] [-ingressVlan <positive_integer>]

示例

add contentInspection profile Inline_profile2 -type InlineInspection -ingressinterface “1/4” -egressInterface “1/5”

为内联设备 1 添加服务 1

启用内容检查功能并添加内联配置文件后,您必须为内联设备 1 添加内联服务 1,才能成为负载平衡设置的一部分。您添加的服务提供了所有内联配置详细信息。

在命令提示窗口中,键入:

add service <Service_name_1> <Pvt_IP1> TCP * -contentInspectionProfileName <Inline_Profile_1> -healthmonitor OFF –usip ON –useproxyport OFF

示例

add service Inline_service1 10.102.29.200 TCP 80 -contentInspectionProfileName Inline_profile1 -healthmonitor OFF -usip ON -useproxyport OFF

为内联设备 2 添加服务 2

启用内容检查功能并添加内联配置文件后,您必须为内联设备 2 添加内联服务 2。您添加的服务提供了所有内联配置详细信息。

在命令提示窗口中,键入:

add service <Service_name_1> <Pvt_IP1> TCP * -contentInspectionProfileName <Inline_Profile_2> -healthmonitor OFF –usip ON –useproxyport OFF

示例

add service Inline_service1 10.29.20.205 TCP 80 -contentInspectionProfileName Inline_profile2 -healthmonitor OFF -usip ON -useproxyport OFF

添加负载平衡虚拟服务器

添加内联配置文件和服务后,必须添加负载平衡虚拟服务器来平衡服务。

在命令提示窗口中,键入:

add lb vserver <vserver_name> TCP <Pvt_IP3> <port>

示例

add lb vserver lb-Inline_vserver TCP *

将服务 1 绑定到负载平衡虚拟服务器

添加负载平衡虚拟服务器后,现在将负载平衡虚拟服务器绑定到第一个服务。

在命令提示窗口中,键入:

bind lb vserver <Vserver_name> <Service_name_1>

示例

bind lb vserver lb-Inline_vserver Inline_service1

将服务 2 绑定到负载平衡虚拟服务器

添加负载平衡虚拟服务器后,现在将服务器绑定到第二个服务。

在命令提示窗口中,键入:

bind lb vserver <Vserver_name> <Service_name_1>

示例

bind lb vserver lb-Inline_vserver Inline_service2

为服务添加内容检查操作

启用内容检查功能后,必须添加用于处理内联请求信息的内容检查操作。根据所选操作,内联设备在检查给定的流量子集后删除、重置或阻止。

在命令提示窗口中,键入:

add contentInspection action <name> -type <type> (-serverName <string> [-ifserverdown <ifserverdown>] [-reqTimeout <positive_integer>] [-reqTimeoutAction <reqTimeoutAction>]

add ContentInspection action < action_name > -type InlineINSPECTION -serverName Service_name/Vserver_name>

示例

add ContentInspection action Inline_action -type InlineINSPECTION –serverName lb-Inline_vserver

为检查添加内容检查策略

创建内容检查操作后,必须添加内容检查策略以评估服务请求。策略基于由一个或多个表达式组成的规则。该规则与内容检查操作相关联,如果请求与规则匹配,则该操作相关联。

在命令提示窗口中,键入以下内容:

add contentInspection policy <policy_name> –rule <Rule> -action <action_name>

示例

add contentInspection policy Inline_pol1 –rule true –action Inline_action

添加 HTTP/SSL 类型的内容交换或负载平衡虚拟服务器

添加内容交换或负载平衡虚拟服务器以接受 Web 流量。此外,您必须在虚拟服务器上启用 layer2 连接。有关负载平衡 的更多信息,请参阅负载平衡的工作原理主题。

在命令提示窗口中,键入:

add lb vserver <name> <vserver name> -l2Conn ON

示例

add lb vserver http_vserver HTTP 10.102.29.200 8080 –l2Conn ON

将内容检查策略绑定到 HTTP/SSL 类型虚拟服务器的负载平衡

必须将 HTTP/SSL 类型的内容交换或负载平衡虚拟服务器绑定到内容检查策略。

在命令提示窗口中,键入以下内容:

bind lb vserver <vserver name> -policyName < policy_name > -priority <> -type <L7InlineREQUEST | L4Inline-REQUEST>

示例

bind lb vserver http_vserver -policyName Inline_pol1 -priority 100 -type REQUEST

方案 3:使用共享接口对多个内联设备进行负载平衡

如果您使用多个内联设备,并且要在共享 VLAN 接口中使用不同服务对设备进行负载平衡,则可以参考此配置。这种使用共享 VLAN 接口的配置类似于用例 2。有关基本配置,请参阅场景 2。

使用共享 VLAN 对多个内联设备进行负载平衡

在启用共享选项的情况下绑定 VLAN A

在命令提示窗口中,键入以下内容:

bind vlan <id> -ifnum <interface> -tagged

示例

bind vlan 100 –ifnum 1/2 tagged

绑定 VLAN B 并启用共享选项

在命令提示窗口中,键入以下内容:

bind vlan <id> -ifnum <interface> -tagged

示例

bind vlan 200 –ifnum 1/3 tagged

绑定 VLAN C 并启用共享选项

在命令提示窗口中,键入以下内容:

bind vlan <id> -ifnum <interface> -tagged

示例

bind vlan 300 –ifnum 1/2 tagged

绑定 VLAN D 并启用共享选项

在命令提示窗口中,键入以下内容:

bind vlan <id> -ifnum <interface> -tagged

示例

bind vlan 400 –ifnum 1/3 tagged

为服务 1 添加内容检查配置文件 1

Citrix ADC 设备的内联配置可以在名为内容检查配置文件的实体中指定。配置文件包含设备设置的集合。内容检查配置文件 1 是针对内联服务 1 创建的,通信是通过 1/2 和 1/3 专用接口进行的。

在命令提示窗口中,键入:

add contentInspection profile <name> -type InlineInspection -egressInterface <interface_name> -ingressInterface <interface_name>[-egressVlan <positive_integer>] [-ingressVlan <positive_integer>]

示例

add contentInspection profile Inline_profile1 -type InlineInspection -ingressinterface “1/2” -egressInterface “1/3” –egressVlan 100 -ingressVlan 300

为服务 2 添加内容检查配置文件 2

为服务 2 添加了内容检查配置文件 2,内联设备通过 1/2 和 1/3 专用接口与设备进行通信。

在命令提示窗口中,键入:

add contentInspection profile <name> -type InlineInspection -egressInterface <interface_name> -ingressInterface <interface_name>[-egressVlan <positive_integer>] [-ingressVlan <positive_integer>]

示例

add contentInspection profile Inline_profile2 -type InlineInspection -ingressinterface “1/2” -egressInterface “1/3” –egressVlan 200 -ingressVlan 400

使用 Citrix ADC GUI 配置内联服务集成

  1. 登录到 Citrix ADC 设备并导航到配置选项卡页面。
  2. 导航到系统 > 设置 > 配置模式
  3. 配置模式页面中,选择基于 Mac 的转发
  4. 单击确定关闭

    内联服务集成

  5. 导航到 系统 > 设置 > 配置高级功能
  6. 配置高级功能页面中,选择内容检查
  7. 单击确定关闭

    选择内容检查

  8. 导航到安全 > 内容检查>“内 容检查配置文件
  9. 在“内 容检查配置文件页中,单击添加
  10. 创建内容检查配置文件页中,设置以下参数。

    1. 配置文件名称。内容检查配置文件的名称。
    2. 类型。选择配置文件类型作为在线检查。
    3. 导出界面。设备通过该接口将流量从 Citrix ADC 发送到内联设备。
    4. 入口界面。设备接收从内联设备到 Citrix ADC 的流量的接口。
    5. 导出 VLAN. 通过其将流量发送到内联设备的接口 VLAN ID。
    6. 进入无线局域网。设备通过接口 VLAN ID 接收从内联到 Citrix ADC 的流量(如果已配置)。

    内容检查配置文件

  11. 点击 创建关闭
  12. 导航到 流量管理 > 负载平衡 > 服务 ,然后单击 添加
  13. 服务页面中,设置以下参数:

    1. 服务名称。负载平衡服务的名称。
    2. IP 地址。使用虚拟 IP 地址。注意:地址不应由任何设备所有。
    3. 协议。选择协议类型作为 TCP。
    4. Port(端口)。输入 *
    5. 健康监测。关闭此选项并仅在您想要将服务绑定到 TCP 类型监视器时启用此选项。如果您想将监视器绑定到服务,那么监视器中的透明选项应该是开的。请参阅有关如何添加监视器以及如何将其绑定到服务的步骤 14。
    6. 单击确定

    负载平衡服务设置

  14. 设置部分,编辑以下内容并单击确定

    1. 使用代理端口:将其关闭
    2. 使用源 IP 地址:将其打开

    配置文件设置

  15. 高级设置部分中,单击配置文件
  16. 转到 配置文件 部分,并添加内联内容检查配置文件,然后单 击确定

    配置文件高级设置

  17. 转到监视器部分,添加绑定 > 选择监视器 > 添加
    1. 名称:显示器名称
    2. 类型:选择 TCP 类型
    3. 目标 IP, 端口:目标 IP 地址和端口.
    4. 透明:打开

    注意:监视数据包应流经内联设备以监视内联设备状态。

  18. 单击创建

    创建监视器

  19. 单击完成
  20. 导航到流量管理 > 负载平衡 > 虚拟服务器。添加 HTTP 或 SSL 类型的虚拟服务器。
  21. 输入服务器详细信息后,单 击确定 ,然后再次 确定
  22. 在负载平衡虚拟服务器的流量设置”部分中,启用第 2 层参数。
  23. 高级设置部分中,单击策略
  24. 转到 略”部分并单击“+”图标以配置内容检查策略。
  25. 选择策略页上,选择“内容检查”。单击继续
  26. 策略绑定 部分中,单击 添加 以添加内容检查策略。

    内容检查策略滑块

  27. 创建内容检查策略页中,输入内联内容检查策略的名称。
  28. 作字段中,单击 添加 以创建内联内容检查操作。
  29. 创建 CI 操 作”页面中,设置以下参数:

    1. 名称。内容检查内联策略的名称。
    2. 类型。选择类型作为 在线检查。
    3. 服务器。选择服务器/服务作为内联设备。
    4. 如果服务器关闭。如果服务器出现故障,请选择一个操作。
    5. 请求超时。选择超时值。您可以使用默认值。
    6. 请求超时操作。选择超时操作。您可以使用默认值。
  30. 单击创建

    内容检查操作

  31. 单击创建
  32. 创建 CI 策略 页面中,输入其他详细信息:
  33. 单击确定关闭

与 Citrix ADC 的内联器件集成