云防火墙
云防火墙规则允许您以集中但细粒度的方式控制大量计算实例的网络流量。
对于基于KVM的计算实例,您还可以使用平台的流量过滤包(IPTables,ufw)和配置管理器(如Chef或Puppet)将规则分发到您的计算实例。
您可以通过操作界面将云防火墙规则添加到您的计算实例。
概览
云防火墙规则是适用于启用了云防火墙功能的数据中心中的所有计算实例的TCP、UDP和ICMP流量规则。默认情况下,“云端防火墙规则”不适用于使用CloudAPI配置的新计算实例,您必须启用能使用此功能。对于Docker容器,根据Docker文件中暴露的端口规范自动创建和启用防火墙规则。
云防火墙规则允许您指定是否应根据特定条件允许或阻止计算实例的网络流量:
- 一个特定的TCP、UDP或ICMP端口
- 一个具体的计算实例
- 一个特定的IP地址
- 特定子网中的所有计算实例
- 数据中心的所有计算实例
- 具有特定标签的所有计算实例
请注意,所有云防火墙规则都适用于启用了云防火墙功能的计算实例。您可以使用计算实例UUID、IP地址、子网地址和标签来指定单个计算实例或者多个实例。
规则如何应用
默认的“云端防火墙规则”是相当严格的。它们适用于启用了此功能的数据中心中的所有计算实例。
- 阻止从任意来源到达数据中心启用云防火墙的计算实例的所有流量。
- 允许从数据中心启用云防火墙计算实例到达任意目的地的所有流量。
始终启用此规则以允许ping您的实例。
- 允许任何来源的 ICMP type 8 code 0到数据中心启用了云防火墙的所有计算实例。
用户自定义的云端防火墙规则始终优先于默认规则。规则不是按顺序进行评估,而是按照它们的限制。 对于传入流量,限制最少的规则胜出。传入流量的默认规则阻止所有内容,因此允许传入流量的任何规则限制较少。 对于传出流量,最严格的规则胜出。传出流量的默认规则允许所有内容,因此阻止传出流量的任何规则都将受到更严格的限制。
启用和禁用“云端防火墙规则”功能
云防火墙规则仅适用于数据中心中启用了云防火墙功能的的计算实例。
要启用或禁用操作界面中的计算实例的“云防火墙规则”功能:
导航到要启用“云端防火墙规则”的计算实例的“实例详细信息”页面。
滚动到页面的防火墙规则部分。
单击开/关。
创建云防火墙规则
看看防火墙规则引用,了解如何指定规则。云防火墙规则与其它防火墙规则(如pf或ipfilter)相似。 由于默认规则会阻止您的计算实例的所有流量,您可能要添加的第一个规则是允许您使用SSH登录到您的计算机的规则。 查看防火墙规则参考将有助于了解如何编写“云端防火墙规则”。
要在界面中创建云防火墙规则:
1、点击虚拟机的详细信息页面。
2、点击创建防火墙规则按钮。
3、选择是否启用规则。
4、选择该规则应用于的数据中心。
5、选择协议。
6、选择发送方以指定流量来源。
7、选择行为,禁止或允许。
8、选择接收方以指定流量去处。
9、输入规则适用的目标的端口号。
10、选择启用该规则。
11、点击保存。
12、如果您将规则创建为已禁用,请单击规则旁边的启用按钮启用它。
列出机器的所有防火墙规则
在虚拟机的详细信息页面,滚动到防火墙模块,列出了该机器的所有防火墙规则,如图:
修改云端防火墙规则
在防火墙模块,点击修改按钮修改防火墙规则。
启用和禁用云端防火墙规则
在要启用或者禁用防火墙规则的列表末尾,点击开启或者禁用开关。
删除云防火墙规则
在防火墙规则列表末尾,点击垃圾桶按钮,删除防火墙规则。
云防火墙规则和IPFilter之间有什么关系?
云防火墙规则适用于启用了云防火墙功能的同一数据中心中的所有计算实例。 IPFilter规则仅适用于定义它们的计算实例。
对于传入流量,首先应用“云端防火墙规则”。如果一个计算实例具有IPFilter规则,那么它们将被应用于下一个。
+----------+ +----------+
| Cloud | | instance |
Internet ------>| Firewall +-------->| IPFilter +------> vm
| Rules | | rules |
+----------+ +----------+
对于传出流量,为该实例定义的任何IPFilter规则首先应用于“云防火墙规则”。
+----------+ +----------+
| Cloud | | instance |
Internet <------+ Firewall |<--------+ IPFilter |<------ vm
| Rules | | rules |
+----------+ +----------+