科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网网络频道防火墙系列连载之五—数据包过滤的技术

防火墙系列连载之五—数据包过滤的技术

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

在应用层,包头含有需被传送的数据。当构成下一层(传输层)的包时,传输控制协议(TCP)或用户数据报协议(UDP)从应用层将数据全部取来,然后在加装上本层的包头。

作者:中国IT实验室 2007年8月16日

关键字: 防火墙 硬件防火墙 软件防火墙 cisco防火墙 防火墙设置 Linux防火墙

  • 评论
  • 分享微博
  • 分享邮件

  数据包过滤是一个网络安全保护机制。它是用来控制流出和流入网络的数据。因此,本文主要讨论以下内容:

  (1) 数据包;

  (2) 数据包过滤是怎样工作的;

  (3) 数据包过滤的主要优点;

  (4) 包过滤路由器的选择与包过滤系统集成。  

  一、 数据包

  为了理解数据包过滤,首先讨论一下数据包,以及它们在每一个TCP/IP协议层的处理过程:

  (1) 应用层(例如,FTP、Telnet和Http);

  (2) 传输层(TCP 或UDP);

  (3) 因特网络层(IP);

  (4) 网络访问(以太网、FDDI、ATM等)。

  包的构造有点像洋葱一样,它是由各层连接的协议组成的。在每一层,包都由包头与包体两部分组成。在包头中存放与这一层相关的协议信息,在包体中存放包在这一层的数据信息。这些数据也包含了上层的全部信息。在每一层上对包的处理是将从上层获取的全部信息作为包体,然后依本层的协议在加上包头。这种对包的层次性操作(每一层均加上一个包头)一般称为封装。

  在应用层,包头含有需被传送的数据。当构成下一层(传输层)的包时,传输控制协议(TCP)或用户数据报协议(UDP)从应用层将数据全部取来,然后在加装上本层的包头。当构筑再下一层(网间网层)的包时,IP协议将上层的包头与包体全部当做本层的包体,然后再加装上本层的包头。在构筑最后一层(网络接口层)的包时,以太网或其它网络协议将IP层的整个包作为包体,再加上本层的包头。  

  与图1封装过程相反,在网络连接的另一边(接收方)的工作是解包。即在另一边,为了获取数据就由下而上依次把包头剥离。

  在数据包过滤系统看来,包的最重要信息是各层依次加上的包头。在下文中将主要介绍各种将被包过滤路由器检查的包的包头内容。  

  二、 数据包过滤是怎样工作的

  包过滤技术可以允许或不允许某些包在网络上传递,它依据以下的根据:

  (1)将包的目的地址作为判断依据;

  (2)将包的源地址作为判断依据;

  (3)将包的传送协议作为判断依据。

  大多数包过滤系统判断是否传送包时都不关心包的具体内容。作为防火墙包过滤系统只能让我们进行类似以下情况的操作:

  (1)不允许任何用户从外部网用Telnet登录;

  (2)允许任何用户使用SMTP往内部网发电子邮件;

  (3)只允许某台机器通过NNTP往内部网发新闻。

  但包过滤不能允许我们进行如下操作:

  (1)允许某个用户从外部网用Telnet登录而不允许其它用户进行这种操作;

  (2)允许用户传送一些文件而不允许用户传送其它文件。

  数据包过滤系统不能识别数据包中的用户信息。同样数据包过滤系统也不能识别数据包中的文件信息。包过滤系统的主要特点是让用户在一台机器上提供对整个网络的保护。以Telnet为例,假定不让客户使用Telnet而将网络中现有机器上的Telnet服务关闭,作为系统管理员在现有的条件下可以作到,但是不能保证在网络中新增机器时,新机器的Telnet服务也被关闭或其它用户就永远不在重新安装Telnet服务。如果有了包过滤系统,由于只要在包过滤中对此进行设置,也就无所谓机器中的Telnet服务是否存在的问题了。

  路由器为所有用户进出网络的数据流提供了一个有用的阻塞点。而对有关的保护只能由网络中的特定位置的过滤路由器来提供。比如,我们考虑这样的安全规则,让网络拒绝任何含有内部邮件的包——就是那种看起来好象来自于内部主机而其实是来自于外部网的包,这种包经常被作为地址伪装入侵的一部分。入侵者总是用这种包把他们伪装成来自于内部网。要用包过滤路由器来实现我们设计的安全规则,唯一的方法是通过参数网络上的包过滤路由器。只有处在这种位置上的包过滤路由器才能通过查看包的源地址,从而辨认出这个包到底是来自于内部网还是来自于外部网。  

  三、 包过滤的优缺点

  1.包过滤的优点

  包过滤方式有许多优点,而其主要优点之一是仅用一个放置在战略要津上的包过滤路由器就可保护整个网络。如果站点与因特网间只有一台路由器,那么不管站点规模有多大,只要在这台路由器上设定合适的包过滤,我们的站点就可以获得很好的网络安全保护。

  包过滤不需要用户软件的支撑,也不要求对客户机做特别的设置,也没有必要对用户做任何培训。当包过滤路由器允许包通过时,它看起来与普通的路由器没有任何区别。此时,用户甚至感觉不到包过滤功能的存在,只有在有些包在禁入和禁出时,用户才认识到它与普通路由器的不同。包过滤工作对用户来讲是透明的。这种透明就是可在不要求用户作任何操作的前提下完成包过滤。

  包过滤产品比较容易获得。在市场上有许多硬件和软件的路由器产品不管是商业产品还是从网上免费下载的都提供了包过滤功能。比如,Cisco公司的路由器产品就包含有包过滤功能。Drawbrige、KralBrige以及Screened也都具有包过滤功能,而且还能从Internet上免费下载。

  2. 包过滤的缺点

  尽管包过滤系统有许多优点,但是它仍有缺点和局限性:

  1) 在机器中配置包过滤规则比较困难;

  2) 对包过滤规则设置的测试也很麻烦;

  3) 许多产品的包过滤功能有这样或那样的局限性,要找一个比较完整的包过滤产品很难。

  包过滤系统本身就存有某些缺陷,这些缺陷对系统的安全性的影响要大大超过代理服务对系统的安全性的影响。因为代理服务的缺陷仅仅会使数据无法传送,而包过滤的缺陷会使得一些平常应该拒绝的包也能进出网络,这对系统的安全性是一个巨大的威胁。

  即使在系统中安装了比较完整的包过滤系统,我们也会发现对有些协议使用包过滤方式不太合适。比如,对Berkeley的“r"命令(rcp、rsh、rlogin)和类似于NFS和NIS/YS协议的RPC,用包过滤系统就不太合适。有些安全规则是难以用包过滤规则来实现的。比如,在包中只有来自于哪台主机的信息而无来自于哪个用户的信息。因此,若要过滤用户就不能使用包过滤。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章