全文阅读传送门:http://www.ustack.com/wp-content/uploads/2013/11/Neutron%E9%98%B2%E7%81%AB%E5%A2%99.pdf

原作者:http://www.ustack.com/

以下是我的摘录:

数据模型
防火墙服务底层数据模型由三个类组成:FirewallPolicy, FirewallRule和Firewall。
FirewallRule是我们所说的防火墙规则,定义了包过滤所需的信息和匹配后的动作。
FirewallPolicy由若干个FirewallRule组成,它被作为模板来创建Firewall。
Firewall是系统最终要实现的防火墙。
Neutron作为多租户的网络服务模型,防火墙的这几个类都有租户ID属性。这样租户A的防火墙信息和租户B的防火墙信息就隔开了。FirewallPolicy有个audited属性,在参考实现中还没有实现。参考实现目前只支持一个租户只有一个Firewall。

防火墙与安全组
安全组很像防火墙参考实现,它们都是使用IPTables规则来做包过滤。他们之间的区别在于:
1. 安全组由L2 Agent来实现,也就是说L2 Agent,比如neutron­openvswitch­agent和neutron­linuxbridge­agent,会将安全组规则转换成IPTables规则,而且一般发生在所有计算节点上。防火墙由L3 Agent来实现,它的规则会在租户的Router所在的L3 Agent节点上转化成IPTables规则。
2. 防火墙保护只能作用于跨网段的网络流量,而安全组则可以作用于任何进出虚拟机的流量。
3.防火墙作为高级网络服务,将被用于服务链中,而安全组则不能。
在Neutron中同时部署防火墙和安全组可以达到双重防护。外部恶意访问可以被防火墙过滤掉,避免了计算节点的安全组去处理恶意访问所造成的资源损失。即使防火墙被突破,安全组作为下一到防线还可以保护虚拟机。最重要的是,安全组可以过滤掉来自内部的恶意访问。

总结
Neutron的防火墙服务是一个高级网络服务,目标是作为网络服务链中的一个服务节点而存在。它和安全组构成了双重防护。防火墙的参考实现作用在Neutron的路由器上,所以只对跨子网的流量起作用。对于来自同网段的恶意攻击,我们还需要安全组来防护。
防火墙Policy的规则是有顺序的,而且每个规则可以被单独禁用和激活。这个特性给防火墙规则的部署和调试都提供了很强的灵活性。

 

[转]Openstack neutron 防火墙的更多相关文章

  1. openstack neutron中涉及的网络设备

    一.openstack neutron网络设备介绍 Bridge(网桥) 用于将两个LAN连接起来,主要靠的MAC地址学习机制.当网桥的Port收到包时会将包的源mac和port ID关联起来记入ma ...

  2. openstack——neutron网络服务

    一.neutron 介绍:   Neutron 概述 传统的网络管理方式很大程度上依赖于管理员手工配置和维护各种网络硬件设备:而云环境下的网络已经变得非常复杂,特别是在多租户场景里,用户随时都可能需要 ...

  3. Openstack Neutron:三层技术和实现

    目录 - 1.Neutron 三层技术简介 - 2.集中式router - 1.在节点上安装L3 agent - 2.配置外部网络 - 3.通过CLI或者Horizon 来创建路由 - 4.连接租户网 ...

  4. Openstack neutron:云数据中心底层网络架构

    目录 - 目录 - 云数据中心流量类型 - NSX整体网络结构 - 管理网络(API网络) - 租户网络 - 外联网络 - 存储网络 - openstack整体网络结构 - 管理网络:(上图中蓝线) ...

  5. Openstack neutron:目录

    为什么? 最近一直在学习SDN方面的知识,本着"最好的学习就是分享"的精神,记录下本系列的文章,尝试更好地去理解SDN这一正当红的技术. 如何? SDN领域现在已经充斥了大量的公司 ...

  6. Openstack Neutron OVS ARP Responder

    ARP – Why do we need it? In any environment, be it the physical data-center, your home, or a virtual ...

  7. Openstack Neutron L2 Population

    Why do we need it, whatever it is? VM unicast, multicast and broadcast traffic flow is detailed in m ...

  8. 深入浅出新一代云网络——VPC中的那些功能与基于OpenStack Neutron的实现(一)

    VPC的概念与基于vxlan的overlay实现很早就有了,标题中的"新"只是一个和传统网络的相对概念.但从前年开始,不同于以往基础网络架构的新一代SDN网络才真正越来越多的走进国 ...

  9. [转]OpenStack Neutron运行机制解析概要

    转载自:http://panpei.net.cn/2013/12/04/openstack-neutron-mechanism-introduce/ 自从开学以来,玩OpenStack也已经3个月了, ...

随机推荐

  1. Linux 使用退格键时出现^H解决方法

    当我们再和脚本交互的时候,在终端上输错了内容,使用退格键,屏幕上会出现乱码,比如 ^H.^H不是H键的意思,是backspace. 主要是当你的终端backspace有问题的时候才需要设置. 解决方法 ...

  2. How to begin Python learning?

    如何开始Python语言学习? 1. 先了解它,Wiki百科:http://zh.wikipedia.org/zh-cn/Python 2. Python, Ruby等语言来自开源社区,社区的学法是V ...

  3. Hiberante+jpa,注解生成32字符的Id

    @Id @GenericGenerator(name = "id-generator", strategy = "uuid") @GeneratedValue( ...

  4. 非阻塞io与记录锁

    非阻塞io 1.对比 阻塞io的例子:scanf从终端获取输入时,如果不输入程序就会一直停在那; 对一个已经有写锁的文件请求读时, 会一直空等直到前面的进程释放锁... 非阻塞的例子:读取文件内容, ...

  5. ASP.NET从数据库中取出数据,有数据的复选框为选中

    在KS系统中在更新菜单的时候,当查出菜单的时候要查出菜单下面已经有了哪些界面了我用了一下的方法弄的.代码如下: 界面代码: <%@ Page Language="C#" Au ...

  6. [转]DataGridView绑定泛型List的种种

    1.DataGridView数据绑定对比(DataTable与泛型List):当DataGridView的DataSource是DataTable的时候,DataTable的数据改变时,DataGri ...

  7. 再也不要说,jquery动画呆板了

    1 show()方法和hide()方法 $("selector").show()  从display:none还原元素默认或已设置的display属性$("selecto ...

  8. java 格式化日期(DateFormat)

    import java.text.DateFormat; import java.util.Date; /** * 格式化时间类 DateFormat.FULL = 0 * DateFormat.DE ...

  9. boost-内存管理

    Boost智能指针——scoped_ptr boost::scoped_ptr和std::auto_ptr非常类似,是一个简单的智能指针,它能够保证在离开作用域后对象被自动释放. boost::sco ...

  10. Underscore 源码

    Underscore 源码 作者:韩子迟 What? 不知不觉间,「Underscore 源码解读系列」进入了真正的尾声,也请允许我最后一次 po 下项目的原始地址 https://github.co ...