FreeBSD连载(80):构建防火墙

2009-05-13 12:26:37来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折


构建防火墙
  防火墙的主要目标是控制内部网络和外部Internet之间的连接,有限制的允许内部网络中的计算机访问Internet 上的服务,但限制外部网络访问内部计算机。为了实现这个目的,至少需要一个具有两个(或更多)网络界面的计算机,它的一个网络界面连接外部网络,另一个网络界面连接内部网络。然而如何实现限制网络访问的方法却有所不同,主要就可以分为基于IP数据包过滤的防火墙和基于代理的防火墙。ipfw/natd和ipfilter都是基于包过滤和网络地址转换的软件工具,而代理服务器通常通过代理服务器软件来实现。
  FreeBSD下用于防火墙的最重要的代理软件是fwtk,它提供了多种代理服务器和统一的认证方式。FreeBSD 上也能运行其他的代理服务器,然而那些代理服务器主要用于代理单个协议,不能单独用于构建全面功能的防火墙系统,而fwtk则提供了多种代理服务器,为构建一个完整的防火墙系统提供了基础。然而fwtk不是一个设置完好的防火墙系统,而只是一组构建防火墙的组件。因此要使用fwtk来设定防火墙,仍然是一个复杂的任务。虽然在FreeBSD 下可以使用Ports Collection很方便的编译安装fwtk,但问题的关键是针对具体的服务进行设置。
  fwtk能在多种Unix系统上运行,很多资料和书籍都已经介绍了其使用和设置方法,这里就不再介绍fwtk 的使用和设置。这里主要介绍基于包过滤和NAT的防火墙系统。

  • 选择防火墙的类型

  早期的包过滤防火墙只是建立在路由器的基础上,只支持有限的过滤规则,并且不能保持网络连接状态。更关键的问题是,基于路由器的防火墙不能隐藏内部网络的拓扑结构,这样入侵者就比较容易利用包括IP欺骗在内的方式对内部计算机进行攻击。然而,网络地址转换技术可以改变这种情况,使用ipfw/natd或ipfilter可以建立更安全、更高性能的防火墙系统。
  由于NAT改变了内部计算机的IP地址,因此这种方式也可以称作网络层代理。而其他直接支持应用程序的代理服务器,如squid,fwtk等,被称为应用层代理,应用层代理的好处是可以定义更复杂的访问控制形式,例如针对用户进行认证等,并能提供较详细的日志记录。然而应用层代理的缺点是不方便用户使用,需要对客户端软件进行其他设置,并且不一定会具有所有种类的应用程序的代理程序。
  代理型防火墙的另一个问题是,无法向外部提供网络服务。这也可以算一个优点,因为向外提供网络服务就必然降低网络安全性,然而实际上网络使用者也希望通过自己的网络向外发布信息,而不只是简单的浏览Internet。当然在提供服务的同时也要保证发布信息服务器的安全,因此希望将其放入防火墙内部。对于需要发布信息的要求,NAT通过映射端口(或地址)就能满足要求,但代理服务器不能。
  然而,也能设计这样一种代理服务器,它接收Internet上任意(或受限)主机的访问,而将代理这些访问请求访问内部的服务器,这种代理服务器称为反向代理服务器。
  在不同类型的防火墙之间进行选择主要依赖于不同的需要,一般的情况下,内部网络的使用希望防御外部网络上的入侵者,但又希望能够最大可能的使用各种网络应用程序来访问Internet,而同时也希望系统配置比较简单,这样直接利用FreeBSD提供的ipfw/natd或ipfilter均能满足这种要求,网络地址转换类型的防火墙配置简洁、性能更高,并且对应用程序的支持相当强。
  有些网络内部计算机的使用比较混乱,因此希望针对用户进行认证控制,此后才允许用户能访问Internet,并还希望能限制用户使用访问Internet的应用种类,进行更复杂的日志记录,这些情况下就应该选用应用层代理服务器fwtk。极端的情况下,只打算对内部用户提供有限种类的Internet服务,那么设置一个专用的应用代理服务器也就满足要求了,例如设置squid代理WWW访问。

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:FreeBSD连载(79):设置和使用ipfilter

下一篇:FreeBSD连载(81):超文本传输协议HTTP