通过第三方防火墙实现VPC和云下数据中心互访流量清洗
操作场景
用户IDC数据中心和华为云通过云专线(DC)或虚拟专用网络(VPN)通信成功,在华为云的内网上使用第三方虚拟化防火墙,使得云上云下的业务流量经过自定义的第三方防火墙,对云上的业务进行灵活的安全控制。
本文以用户同区域的多VPC与本地IDC连通为例,介绍混合云使用第三方防火墙的应用场景。
方案优势
- 支持用户的第三方防火墙。
- 用户云上云下流量经过第三方防火墙。
- 支持用户自定义的更加灵活的安全策略。
典型拓扑
假设用户业务部署在VPC1、VPC2、VPC3及本地IDC中,并且需要在云上使用第三方虚拟化防火墙。用户可以将第三方虚拟化防火墙配置在VPC2的弹性云服务器中,使用对等连接及路由规则将VPC间进行连通。同时,在VPC3中创建云专线,使云上VPC与云下IDC实现连通。
实现方式如下:
前提条件
VPC1与VPC2,VPC3子网网段不能重叠,否则对等连接无法通信成功。
配置步骤
- 创建VPC
创建VPC1,VPC2,VPC3。
具体操作请参见创建虚拟私有云和子网。
创建的VPC1,VPC2,VPC3网段不能重叠。例如VPC1:10.0.1.0/24;VPC2:10.0.2.0/24;VPC3:172.16.0.0/16
- 创建弹性云服务器
- 创建ECS1,ECS2,分别属于VPC1的子网,VPC2的子网。
具体方法请参见自定义购买ECS。
ECS2的网卡要关闭源/目的检查。
- 在弹性云服务器ECS2中部署第三方防火墙。
第三方防火墙软件,您可以通过云商店下载,或者自行下载。
- 打开ECS2的IP转发功能。
- 执行以下命令,切换root用户。
- 执行以下命令,查看IP转发功能是否已开启。
cat /proc/sys/net/ipv4/ip_forward
回显结果:1为开启,0为关闭。
- 回显为1,任务结束。
- 回显为0,继续执行以下操作。
- 执行以下配置,打开IP转发功能。
- 执行以下命令,打开“/etc/sysctl.conf”文件。
vim /etc/sysctl.conf
- 按i进入编辑模式。
- 修改或者添加以下内容。
net.ipv4.ip_forward = 1 # 开启IPv4转发 net.ipv6.conf.all.forwarding = 1 # 若需要支持IPv6,开启IPv6转发
- 按ESC退出,并输入:wq!保存配置。
- 执行以下命令,打开“/etc/sysctl.conf”文件。
- 执行以下命令,使修改生效。
以上配置为永久生效,重启后不会失效。
- 创建ECS1,ECS2,分别属于VPC1的子网,VPC2的子网。
- 创建对等连接
VPC1和VPC2,VPC2和VPC3,分别创建对等连接,实现VPC间的连通。
- 如果您的VPC在同一个账号内,具体方法请参见创建对等连接连通同账户下的两个VPC网络,您只需要执行该章节的“创建VPC对等连接”小节。
- 如果您的VPC在不同一个账号内,具体方法请参见创建对等连接连通不同账户下的两个VPC网络,您需要执行该章节的“创建VPC对等连接”小节和“接受对等连接”小节。
- 创建子网路由表
创建自定义路由表,关联VPC2的子网,控制VPC2的子网的出流量走向。
具体操作请参见创建自定义路由表。
- 创建虚拟IP并绑定弹性云服务器(可选)
您可以在VPC2中创建主备服务器,并绑定同一虚拟IP,当主服务器发生故障无法对外提供服务时,动态将虚拟IP切换到备服务器,继续对外提供服务。如果不需要备用服务器,此步骤可以省略。
- 在VPC2的子网下创建虚拟IP。
具体操作请参见申请虚拟IP地址。
- 将创建的虚拟IP绑定到弹性云服务器ECS2上。
具体操作请参考虚拟IP绑定云服务器。
- 在VPC2的子网下创建虚拟IP。
- 创建云专线
使用VPC3创建专线,使云上VPC与云下IDC实现连通。具体操作参见创建云专线。
- 配置路由规则
通过配置路由规则将指向目的地址的流量转发到指定的下一跳地址。
- 修改VPC1的默认路由表,增加一条路由规则:
- 修改VPC2的默认路由表,增加一条路由规则:
如果涉及主备部署,创建了虚拟IP的情况下,此处下一跳是虚拟IP的地址。
- 修改VPC2的子网路由表,增加两条规则:
- VPC2 > VPC1,目的地址:VPC1的CIDR,下一跳:VPC1与VPC2的对等连接。
- VPC2 > 用户IDC,目的地址:用户IDC的CIDR,下一跳:VPC2与VPC3的对等连接。
- 修改VPC3的默认路由表,增加一条路由规则:
目的地址:0.0.0.0/0,下一跳:VPC2和VPC3的对等连接。
由于上述的创建云专线创建了专线,此处有一条系统自动下发的到专线的路由。
配置验证
登录弹性云服务器ECS1访问用户IDC,在ECS2中可以收到ECS1发给用户IDC的报文,报文经过ECS2中的防火墙,被防火墙规则过滤。