Amazon Virtual Private Cloud
网络管理员指南
AWS 服务或AWS文档中描述的功能,可能因地区/位置而异。点 击 Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

示例:带边界网关协议的检查点设备

本部分包含您的整合团队提供的示例配置信息 (如果您的客户网关是在 R77.10 或更高版本上运行的检查点安全网关设备并且使用 Gaia 操作系统)。

客户网关的宏观视图

下面的示意图显示您的客户网关的详细信息。请注意,VPN 由两个隧道构成。使用冗余隧道确保某个设备发生故障情况下的持续可用性。

 带 BGP 的检查点宏观示意图

配置文件

您的整合团队将为您提供一个配置文件,该配置文件包含为 VPN 设备配置每条隧道以及 IKE 和 IPsec 设置所需的值。该配置文件包括有关如何使用 Gaia Web 门户和检查点 SmartDashboard 来配置设备的说明。下一部分中提供了相同的步骤。

以下是示例配置文件的提取。该文件包含两个部分:IPSec Tunnel #1IPSec Tunnel #2。您必须使用每个部分中提供的值来配置每条隧道。

Copy
! Amazon Web Services ! Virtual Private Cloud ! AWS uses unique identifiers to manipulate the configuration of ! a VPN connection. Each VPN connection is assigned an identifier and is ! associated with two other identifiers, namely the ! customer gateway identifier and virtual private gateway identifier. ! ! Your VPN connection ID : vpn-12345678 ! Your virtual private gateway ID : vgw-12345678 ! Your customer gateway ID : cgw-12345678 ! ! ! This configuration consists of two tunnels. Both tunnels must be ! configured on your customer gateway. ! ! -------------------------------------------------------------------------------- ! IPSec Tunnel #1 ! -------------------------------------------------------------------------------- ! #1: Tunnel Interface Configuration ... ! -------------------------------------------------------------------------------- ! -------------------------------------------------------------------------------- ! IPSec Tunnel #2 ! -------------------------------------------------------------------------------- ! #1: Tunnel Interface Configuration ...

配置检查点设备

以下过程演示如何配置 VPN 隧道、网络对象和 VPN 连接安全性。您必须将过程中的示例值替换为配置文件中提供的值。

注意

有关更多信息,请转至检查点支持中心的 Amazon Web Services (AWS) VPN BGP 一文。

步骤 1:配置隧道接口

第一步是创建 VPN 隧道并为每条隧道提供客户网关和虚拟专用网关的私有 (内部) IP 地址。对于第一条隧道,请使用配置文件的 IPSec Tunnel #1 部分下提供的信息。对于第二条隧道,请使用配置文件的 IPSec Tunnel #2 部分中提供的值。

配置隧道接口

  1. 通过 SSH 连接到您的安全网关。如果您使用的是非默认 Shell,请通过运行以下命令来更改为 clish:clish

  2. 通过运行以下命令设置客户网关 ASN (在 AWS 中创建客户网关时提供的 ASN):

    Copy
    set as 65000
  3. 使用配置文件的 IPSec Tunnel #1 部分下提供的信息,为第一条隧道创建隧道接口。为您的隧道提供唯一名称,例如 AWS_VPC_Tunnel_1

    Copy
    add vpn tunnel 1 type numbered local 169.254.44.234 remote 169.254.44.233 peer AWS_VPC_Tunnel_1 set interface vpnt1 state on set interface vpnt1 mtu 1436
  4. 重复这些命令以使用配置文件的 IPSec Tunnel #2 部分下提供的信息创建第二条隧道。为您的隧道提供唯一名称,例如 AWS_VPC_Tunnel_2

    Copy
    add vpn tunnel 1 type numbered local 169.254.44.38 remote 169.254.44.37 peer AWS_VPC_Tunnel_2 set interface vpnt2 state on set interface vpnt2 mtu 1436
  5. 设置虚拟专用网关 ASN:

    Copy
    set bgp external remote-as 7224 on
  6. 使用配置文件的 IPSec Tunnel #1 部分提供的信息为第一条隧道配置 BGP:

    Copy
    set bgp external remote-as 7224 peer 169.254.44.233 on set bgp external remote-as 7224 peer 169.254.44.233 holdtime 30 set bgp external remote-as 7224 peer 169.254.44.233 keepalive 10
  7. 使用配置文件的 IPSec Tunnel #2 部分中提供的信息为第二条隧道配置 BGP:

    Copy
    set bgp external remote-as 7224 peer 169.254.44.37 on set bgp external remote-as 7224 peer 169.254.44.37 holdtime 30 set bgp external remote-as 7224 peer 169.254.44.37 keepalive 10
  8. 保存配置:

    Copy
    save config

步骤 2:配置 BGP

在此步骤中,您将创建一个 BGP 策略,允许导入 AWS 传播的路由,然后将您的客户网关配置为将其本地路由传播到 AWS。

创建 BGP 策略

  1. 在 Gaia WebUI 中,选择 Advanced RoutingInbound Route Filters。选择 Add,然后选择 Add BGP Policy (Based on AS)

  2. 对于 Add BGP Policy,在第一个字段中选择一个介于 512 和 1024 之间的值,然后在第二个字段中输入虚拟专用网关 ASN;例如,7224

  3. 选择 Save

以下步骤适用于分配本地接口路由。您也可以从不同的源重新分配路由;例如,静态路由或通过动态路由协议获取的路由。有关更多信息,请转至 Gaia 高级路由 R77 版本管理指南

传播本地路由

  1. 在 Gaia WebUI 中,选择 Advanced RoutingRouting Redistribution。选择 Add Redistribution From,然后选择 Interface

  2. 对于 To Protocol,选择虚拟专用网关 ASN;例如,7224

  3. 对于 Interface,选择一个内部接口。选择 Save

步骤 3:创建网络对象

在此步骤中,您将为每条 VPN 隧道创建一个网络对象,并指定虚拟专用网关的公有 (外部) IP 地址。您稍后将这些网络对象作为 VPN 社区的卫星网关进行添加。您还需要创建一个空组以用作 VPN 域的占位符。

定义新的网络对象

  1. 打开检查点 SmartDashboard。

  2. 对于 Groups,打开上下文菜单并选择 GroupsSimple Group。您可以对每个网络对象使用相同的组。

  3. 对于 Network Objects,打开上下文 (右键单击) 菜单并选择 NewInteroperable Device

  4. 对于 Name,输入您在步骤 1 中为隧道提供的名称,例如,AWS_VPC_Tunnel_1AWS_VPC_Tunnel_2

  5. 对于 IPv4 Address,输入配置文件中提供的虚拟专用网关的外部 IP 地址,例如,54.84.169.196。保存您的设置并关闭对话框。

     “Check Point Interoperable Device”对话框
  6. 在左侧类别窗格中,选择 Topology

  7. VPN Domain 部分中,选择 Manually defined,然后浏览找到并选择您在步骤 2 中创建的空组。选择 OK

  8. 重复这些步骤以使用配置文件的 IPSec Tunnel #2 部分下的信息创建另一个网络对象。

  9. 转到您的网关网络对象,打开您的网关或集群对象,然后选择 Topology

  10. VPN Domain 部分中,选择 Manually defined,然后浏览找到并选择您在步骤 2 中创建的空组。选择 OK

    注意

    您可以保留已配置的任何现有 VPN 域;不过,请确保新的 VPN 连接使用或提供的主机和网络未在该 VPN 域中声明,尤其是在 VPN 域自动派生的情况下。

注意

如果您使用的是集群,则编辑拓扑并将接口定义为集群接口。使用配置文件中指定的 IP 地址。

步骤 4:创建 VPN 社区并配置 IKE 和 IPsec

在此步骤中,您将在检查点网关上创建一个 VPN 社区 (为每条隧道将网络对象 (可互操作设备) 添加到该社区)。您还将配置 Internet 密钥交换 (IKE) 和 IPsec 设置。

创建和配置 VPN 社区、IKE 和 IPsec 设置

  1. 从网关属性中,选择类别窗格中的 IPSec VPN

  2. 选择 CommunitiesNewStar Community

  3. 为您的社区提供名称 (例如,AWS_VPN_Star),然后选择类别窗格中的 Center Gateways

  4. 选择 Add,并将您的网关或集群添加到参与者网关列表。

  5. 在类别窗格中,选择 Satellite GatewaysAdd,然后将您之前创建的可互操作设备 (AWS_VPC_Tunnel_1AWS_VPC_Tunnel_2) 添加到参与者网关列表。

  6. 在类别窗格中,选择 Encryption。在 Encryption Method 部分中,选择 IKEv1 for IPv4 and IKEv2 for IPv6。在 Encryption Suite 部分中,选择 CustomCustom Encryption

    注意

    您必须为 IKEv1 功能选择 IKEv1 for IPv4 and IKEv2 for IPv6 选项;但当前不支持 IKEv2 和 IPv6。

  7. 在对话框中,配置如下加密属性,并在完成后选择 OK

    • IKE 安全关联 (第 1 阶段) 属性:

      • Perform key exchange encryption with:AES-128

      • Perform data integrity with:SHA1

    • IPsec 安全关联 (第 2 阶段) 属性:

      • Perform IPsec data encryption with:AES-128

      • Perform data integrity with:SHA-1

  8. 在类别窗格中,选择 Tunnel Management。选择 Set Permanent TunnelsOn all tunnels in the community。在 VPN Tunnel Sharing 部分中,选择 One VPN tunnel per Gateway pair

  9. 在类别窗格中,展开 Advanced Settings,然后选择 Shared Secret

  10. 选择第一条隧道的对等名称,选择 Edit,然后输入配置文件的 IPSec Tunnel #1 部分中指定的预共享密钥。

  11. 选择第二条隧道的对等名称,选择 Edit,然后输入配置文件的 IPSec Tunnel #2 部分中指定的预共享密钥。

     “Check Point Interoperable Shared Secret”对话框
  12. 仍然在 Advanced Settings 类别中,选择 Advanced VPN Properties,配置如下属性,并在完成后选择 OK

    • IKE (第 1 阶段):

      • Use Diffie-Hellman groupGroup 2 (1024 bit)

      • Renegotiate IKE security associations every 480 minutes

    • IPsec (第 2 阶段):

      • 选择 Use Perfect Forward Secrecy

      • Use Diffie-Hellman groupGroup 2 (1024 bit)

      • Renegotiate IPsec security associations every 3600 seconds

步骤 5:配置防火墙

在此步骤中,您将配置一个具有防火墙规则和定向匹配规则的策略,这些规则允许 VPC 和本地网络之间的通信。然后在网关上安装该策略。

创建防火墙规则

  1. 在 SmartDashboard 中,选择您的网关的 Global Properties。在类别窗格中,展开 VPN,然后选择 Advanced

  2. 选择 Enable VPN Directional Match in VPN Column,然后选择 OK

  3. 在 SmartDashboard 中,选择 Firewall,然后创建一个具有以下规则的策略:

    • 允许 VPC 子网通过所需协议与本地网络进行通信。

    • 允许本地网络通过所需协议与 VPC 子网进行通信。

  4. 打开 VPN 列中的单元格的上下文菜单,并选择 Edit Cell

  5. VPN Match Conditions 对话框中,选择 Match traffic in this direction only。通过为以下每个定向匹配规则选择 Add 来创建该规则,并在完成后选择 OK

    • internal_clear > VPN 社区 (您先前创建的 VPN 星级社区,例如,AWS_VPN_Star)

    • VPN 社区 > VPN 社区

    • VPN 社区 > internal_clear

  6. 在 SmartDashboard 中,选择 PolicyInstall

  7. 在对话框中,选择您的网关并选择 OK 以安装策略。

步骤 6:启用失效对端检测和 TCP MSS 固定

您的检查点网关可使用失效对端检测 (DPD) 来标识 IKE 关联中断的时间。

要为永久隧道配置 DPD,永久隧道必须是在 AWS VPN 社区中配置 (参考步骤 4:创建 VPN 社区并配置 IKE 和 IPsec中的步骤 8)。

默认情况下,VPN 网关的 tunnel_keepalive_method 属性设置为 tunnel_test。您必须将该值更改为 dpd。VPN 社区中每个需要 DPD 监控的 VPN 网关都必须通过 tunnel_keepalive_method 属性配置,包括任何第三方 VPN 网关 (不能为同一网关配置不同监控机制)。

可以使用 GuiDBedit 工具来更新 tunnel_keepalive_method 属性。

修改 tunnel_keepalive_method 属性

  1. 打开检查点 SmartDashboard,然后依次选择 Security Management ServerDomain Management Server.

  2. 选择 FileDatabase Revision Control...,然后创建修订快照。

  3. 关闭所有 SmartConsole 窗口,例如 SmartDashboard、SmartView Tracker 和 SmartView Monitor。

  4. 启动 GuiBDedit 工具。有关更多信息,请参阅检查点支持中心上的文章检查点数据库工具

  5. 依次选择 Security Management ServerDomain Management Server

  6. 在左上窗格中,依次选择 TableNetwork Objectsnetwork_objects

  7. 在右上窗格中,依次选择相关的 Security GatewayCluster 对象。

  8. 按 Ctrl+F,或者使用 Search 菜单搜索以下内容:tunnel_keepalive_method

  9. 在下方窗格中,打开 tunnel_keepalive_method 的上下文菜单,并选择 Edit...。选择 dpd,然后选择 OK

  10. 对属于 AWS VPN 社区的每个网关重复步骤 7 - 9。

  11. 依次选择 FileSave All

  12. 关闭 GuiDBedit 工具。

  13. 打开检查点 SmartDashboard,然后依次选择 Security Management ServerDomain Management Server.

  14. 在相关的 Security GatewayCluster 对象上安装策略。

有关更多信息,请参阅检查点支持中心上的文章 R77.10 中的新增 VPN 功能

TCP MSS 固定减小了 TCP 数据包的最大段大小以防止数据包分段。

启用 TCP MSS 固定

  1. 导航到以下目录:C:\Program Files (x86)\CheckPoint\SmartConsole\R77.10\PROGRAM\

  2. 通过运行 GuiDBEdit.exe 文件打开检查点数据库工具。

  3. 选择 TableGlobal Propertiesproperties

  4. 对于 fw_clamp_tcp_mss,选择 Edit。将值更改为 true 并选择 OK

如何测试客户网关配置

您可以测试每条隧道的网关配置。

如需测试每条隧道的客户网关配置

  1. 在客户网关上确定 BGP 状态是 Active

    BGP 对等体变为活跃状态约需 30 秒。

  2. 确保客户网关在向虚拟专用网关发布路由。路由可以是默认路由 (0.0.0.0/0),也可以是您选择的更具体的路由。

正确建立后,您的 BGP 对等体应该从虚拟专用网关接收一条路由,该网关对应您的 VPC 整合团队为该 VPC 指定的前缀(例如 10.0.0.0/24)。如果 BGP 对等体已建立并且您正在接收和发布前缀,那么您的隧道就已正确配置。请确保两条隧道均处于该状态。

然后,您必须测试每个隧道的连接性,方法是在您的 VPC 中启动一个实例,从您的家庭网络 Ping 该实例。在您开始之前,确保完成以下操作:

  • 使用可以响应 Ping 请求的 AMI。我们建议您使用 Amazon Linux AMI 之一。

  • 配置实例的安全组和网络 ACL,以启用入站 ICMP 流量。

  • 确保已配置 VPN 连接路由:您的子网路由表必须包含到虚拟专用网关的路由。有关更多信息,请参阅Amazon VPC 用户指南中的在路由表中启用路由传播

如需测试各条隧道的端到端连接性

  1. 请将 Amazon Linux AMI 的任一实例启动到您的 VPC。当您从 Amazon EC2 控制台中启动实例时,在启动向导中将会列出 Amazon Linux AMI。有关更多信息,请参阅 Amazon VPC 入门指南

  2. 当实例开始运行后,获取其私有 IP 地址(例如 10.0.0.4)。 控制台显示的地址是实例详细信息的一部分。

  3. 在您的本地网络中的系统上,对实例的 IP 地址使用 ping 命令。确保您发出 ping 的计算机位于客户网关后。成功的响应内容应类似如下所示。

    Copy
    ping 10.0.0.4
    Pinging 10.0.0.4 with 32 bytes of data:
    
    Reply from 10.0.0.4: bytes=32 time<1ms TTL=128
    Reply from 10.0.0.4: bytes=32 time<1ms TTL=128
    Reply from 10.0.0.4: bytes=32 time<1ms TTL=128
    
    Ping statistics for 10.0.0.4:
    Packets: Sent = 3, Received = 3, Lost = 0 (0% loss),
    
    Approximate round trip times in milliseconds:
    Minimum = 0ms, Maximum = 0ms, Average = 0ms

    注意

    如果您从客户网关路由器向实例发出 ping,请确保您的 ping 消息信源为内部 IP 地址,而非隧道 IP 地址。部分 AMI 不响应从隧道 IP 地址发出的 ping 消息。

  4. (可选) 为测试隧道故障转移,您可临时禁用您的客户网关上的一个隧道,然后重复上一步。您无法禁用 VPN 连接的 AWS 端的隧道。

在检查点网关侧,您可以通过在专家模式下从命令行工具运行以下命令来验证隧道状态:

Copy
vpn tunnelutil

在显示的选项中,选择 1 可验证 IKE 关联,选择 2 可验证 IPsec 关联。

您也可以使用检查点智能跟踪器日志来验证通过连接传输的数据包是否已加密。例如,以下日志指示数据包通过隧道 1 发送到 VPC 并且已加密。

 检查点日志文件