下一代防火墙,NGFW(Next generation firewall)是近几年出现的一类新产品,它的定义可以参考Gartner report
(http://www.paloaltonetworks.com/literature/research/docloader.php?docURL=/literature/research/Gartner-NGFW-Research-Note.pdf&docName=PDF%3A+Gartner+NGFW+Report)
这类产品的始作俑者是PAN(Palo Alto Networks http://www.paloaltonetworks.com/),我们来看看
这里面有些什么新东西。
先贴张图:
PAN在policy里面引入了三个元素:
APP-ID:application identity,应用的类型
User-ID:用户的id
Content-ID:资源或者内容ID
这些ID是什么意思哪?
APP-ID是DPI/DFI(或者AI(application identification))的结果。怎么理解哪?现在很多应用协议都可以运行在http上,http变成了一个承载协议,如果只控制http,显然是粒度太大,如果能区分出里面的QQ, p2p(emule, bt等),facebook, twitter,控制的粒度更细,对用户就越友好。
点评:这里面有几个问题我还没有搞明白
对应用识别的粒度倒底有多细?从DNS或者domain name(http协议里面)应该能区分出qq, facebook, twitter等,为什么还需要DPI? 是不是APP-ID可以深入到QQ里面的某一个服务(比如blog,qmail之类的),假如是这样,如此细的控制粒度,管理起来是不是不太方便, app-id的库是不是太大了?如果不是深入到某个服务,那么需要DPI这么复杂的技术吗?
为什么需要细粒度的控制,比如GFW这么粗放的服务(一扫一大片)不也在用吗,也没见有多大的抱怨:)
User-ID需要和企业内部的Auth服务或者UAC/NAC服务结合起来用。用户登录以后,就会有与之绑定的ip地址,policy里面可以匹配相应的用户id。这应该不是什么新东西,很早的防火墙里面就有这个功能了。如果用户登录以后,在防火墙上会下载相应的访问控制策略,这样还有点新意,也就是说,访问控制策略是和用户动态绑定的,并不需要静态加载到防火墙上。但这需要单独的策略服务器,而且如何策略服务器失效,用户是允许访问,还是不允许访问哪?系统里面交互的部件越多,控制越复杂,出错的几率就越高。
点评:协议里面没有User-id,所以需要把User-id映射到ip地址或者mac地址。用户需要通过防火墙认证才能访问资源(防火墙本地认证, 或者远程认证,使用已有的认证体系)。如果能够一次登录(Single sign on),处处可用,就更方便了。但不同的服务有不同的认证, 授权体系,想统一起来,难。
Content-ID顾名思义,应该是访问对象的ID。这个和APP-ID的问题是一样的,那就是粒度。Content-ID应该在DLP(data leakage prevention)里面会用到,或者是URL filtering。什么是content?是URL,还是URL指向的内容,还是更深一层的内容。
点评:细粒度的控制会增加管理的难度,如果没有好的管理工具,会很难用。
从PAN的产品来看,硬件方面基本上没有什么新意(PAN没有chassis-based的产品,也就是说,在高端的竞争力会差一点,不过PAN的目标市场是企业市场,产品应该足够用了)。不过在它的产品图里面有一个content id的卡,不知道是不是一个专用的卡,做这么一个卡的用途是什么哪?提高性能,难道说multi-core的性能不够用,还需要专门的协处理器?还是PAN有卖这个卡的想法?
PAN创新的地方在于把app-id, user-id, content-id引入policy,这应该是安全理念的创新。传统的防火墙控制的是5-tuple,粒度太粗了,对IT管理员不怎么友好。总的来说,防火墙就是一个访问控制的设备(NAT是网络功能;VPN保护数据安全,这些是防火墙的基本功能,至于UTM, IDP是另外一个话题,这里就不说了),控制source到destination的访问。如果把source换成User-ID,而把destinaton换成app-id和content-id,是不是更直观一点哪?当然是了。但是,管理简单了,所对应的底层逻辑就会很复杂。因为,不管是user-id,还是app-id,content-id最终还是要映射到packet,要做到上层的策略和底层的实现一致,这个相当难。
PAN还宣传什么single-pass的架构,这个基本上就是在恶心人。比如攻击旧防火墙的firewall policy/av policy/vpn policy等等,有多套,需要match多次,而PAN只需要match一次。能发现这个问题应该还是了不起的,但是新公司,新产品,总得有一点不一样的东西,传统的防火墙已经是补丁摞补丁了,要做新衣服,就比较困难;而PAN算是做件新衣服,如果还是补丁摞补丁,那才叫寒碜。
安全和易用是对立的。因为安全基本上就是在给用户上枷锁。如何让用户在可忍受范围内,实现整个业务流程的安全,是每个从事安全行业的人需要考虑的问题。比如采用三种不同的密码保护用户帐号是很安全的,但是如果登录时需要用户用三种不同的方式认证,估计会把用户搞疯掉。多重方式保护用户帐号,需要区分出主次;需要区分出用户的不同操作;需要区分出帐号的重要程度。(这个话题可以展开说,应该还有很多可以挖掘的东西)。
从这个角度来说,NGFW提升了防火墙的易用性,使防火墙与用户的业务结合更紧密。至于在实际环境中的效果如何,还需要看它能从传统防火墙哪里抢多大的蛋糕过来。
本文来自弯曲评论:http://www.tektalk.org/2011/02/14/ngfw%E8%AF%84%E6%9E%90/