深入分析Linux防火墙
2006-07-04 12:38:10 来源:WEB开发网关于网络安全的研究分析中,防火墙(Firewall)是被经常强调的重点,它基本功能是过滤并可能阻挡本地网络或者网络的某个部分与Internet之间的数据传送(数据包)。数据包其实就是一段段的数据,其中同时包括了用来把它们发送到各自的目的地所必须的信息。你可以把数据包想象成一个邮包:数据包本身就是邮包中的数据,而信封上则是所有用来把这些信息发送到正确的机器和正确的程序中去的书信抬头,它同时还包含着回信地址等方面的信息。在其具体的过滤工作过程中,防火墙将接管在此之前从网络内部存取Internet和从Internet存取该内部网络的路由设置。
我们的感觉是以前的防火墙专门用来过滤一些非法的数据包,要么为什么其中的一种类型称为包过滤型防火墙呢?发展到现在,它的功能是日益增多,不仅能够过滤数据包,还能够作网络地址转换,作代理等等。Linux内核2.4中防火墙实现NetFilter就是这样的。
先来看看防火墙所处的位置,我的理解是要么它装在一台机器上作个人防火墙,要么装在一台机器上为一个局域网提供网关的功能,而后种情况则如下图所示:
这副图概括了装在网关上的NetFilter的框架结构图,从图中可以看到一个数据包可能经过的路径,其中用[]扩起来的东东,称为检查点,当数据包到达这个点时,就要停下来进行一些检查。这里检查点的名称使用的是iptables中名称,具体到NetFilter中可能就要改为那些所谓的钩子 (Hook)函数了。
NetFilter概括起来说,它有下面的三个基本功能:
1、数据过滤(filter表)
2、网络地址转换(nat表)
3、数据包处理(mangle表)
根据这三个功能,将上面的五个检查点按功能进行了分类。由于每个功能在NetFilter中对应一个表,而每个检查点又有若干个匹配规则,这些规则组成一个链,所以就有下面的说法:“NetFilter是表的容器,表是链的容器,链是规则的容器”
- ››linux下两台服务器文件实时同步方案设计和实现
- ››Linux文件描述符中的close on exec标志位
- ››Linux下管道使用的一些限制
- ››Linux 误删/usr/bin 解决方法
- ››linux 添加新用户并赋予sudo执行权限
- ››linux常用软件安装方法
- ››Linux的分区已经被你从Windows中删除,系统启动后...
- ››linux enable命令大全
- ››Linux实现基于Loopback的NVI(NAT Virtual Interfa...
- ››Linux远程访问windows时,出现"连接被对端重...
- ››linux中使用head命令和tail命令查看文件中的指定行...
- ››linux swap 分区调控(swap分区 lvm管理)
赞助商链接