Q:
我对IPCHAINS的INPUT、OUTPUT、FORWARD链总是不能太理解,有什么必要分成OUTPUT和FORWARD两种呢?我看过一些别人写的IPCHAINS的文件,他们也往往只是对INPUT、OUTPUT链或是INPUT、FORWARD链进行操作,所以怎么理解这三种链呢?
另外,我用REDHAT6.2装了一台机器,双网卡,想让内部网能出去,外面进不来。我的IPCHAINS大致是这样的:
IPCHAINS -P INPUT ACCEPT
IPCHAINS -P OUTPUT ACCEPT
IPCHAINS -P FORWARD DENY
IPCHAINS -A FORWARD -S 192.168.168.0/24 -D 0.0.0.0/0 -J ACCEPT
现在是里面的出不去,外面的进不来,为什么?
还有,我的IPFORWARD也很奇怪,明明我在网络设置里设置了IPFORWARD_IPV4=“YES”,但启动网络的时候看到的IPFORWARD总是为0,我需要手工把它改成1才行,真是怪哉!
乱糟糟问了一堆,希望得到大家的帮助!
A:
为什么不用 ipchains -A forward -s 192.168.1.0/24 -j MASQ
Q:
我把FORWARD链的ACCEPT改成MASQ,已经可以出去了。但不太明白为什么,我的IPFORWARD也还是不明白是怎么回事。
另外我测试INPUT链的时候,POLICY是ACCEPT,规则是内部到外部DENY的话,表现正常,内部出不去;但POLICY改成DENY,RULE改成内部到外部ACCEPT的话,内部却还是出不去,不知道为什么?
A:
我已经明白了,INPUT的POLICY是DENY的时候,要考虑到FORWARD的MASQ,因此除了要加内部到外部的ACCEPT外,还要考虑RESPONSE的包回来的时候要ACCEPT。说了这么些废话,希望对大家以后有帮助。
*A:
怎样用ipchains构建防火墙
作者:白云炜 [云南省玉溪市玉溪师专计算机系]
提示:防火墙是提供网络安全性的重要手段之一,RedHat6.1提供了用于实现过滤型防火墙的工具
包——ipchains。实现防火墙的策略一般有两种:在第一种方式下,首先允许所有的包,然后在禁止有危险的包通过防火墙;第二种方式则相反,首先禁止所有的包,然后再根据所需要的服务允许特定的包通过防火墙。相比较而言,第二种方式更能保证网络的安全性。但对于第二种方式,要求使用者知道Server/Client交互的基本原理和特定服务所对应的具体端口。本文将从一个具体的实列出发,讨论怎样采用第二种方式构建企业的防火墙系统。
一、Server/Client的交互原理
首先让我们看一下服务器/客户机的交互原理。服务器提供某特定功能的服务总是由特定的后台程
序提供的。在TCP/IP网络中,常常把这个特定的服务绑定到特定的TCP或UDP端口。之后,该后台程序就不断地监听(listen)该防火墙设置一问(1)
Q:
我对IPCHAINS的INPUT、OUTPUT、FORWARD链总是不能太理解,有什么必要分成OUTPUT和FORWARD两种呢?我看过一些别人写的IPCHAINS的文件,他们也往往只是对INPUT、OUTPUT链或是INPUT、FORWARD链进行操作,所以怎么理解这三种链呢?
另外,我用REDHAT6.2装了一台机器,双网卡,想让内部网能出去,外面进不来。我的IPCHAINS大致是这样的:
IPCHAINS -P INPUT ACCEPT
IPCHAINS -P OUTPUT ACCEPT
IPCHAINS -P FORWARD DENY
IPCHAINS -A FORWARD -S 192.168.168.0/24 -D 0.0.0.0/0 -J ACCEPT
现在是里面的出不去,外面的进不来,为什么?
还有,我的IPFORWARD也很奇怪,明明我在网络设置里设置了IPFORWARD_IPV4=“YES”,但启动网络的时候看到的IPFORWARD总是为0,我需要手工把它改成1才行,真是怪哉!
乱糟糟问了一堆,希望得到大家的帮助!
A:
为什么不用 ipchains -A forward -s 192.168.1.0/24 -j MASQ
Q:
我把FORWARD链的ACCEPT改成MASQ,已经可以出去了。但不太明白为什么,我的IPFORWARD也还是不明白是怎么回事。
另外我测试INPUT链的时候,POLICY是ACCEPT,规则是内部到外部DENY的话,表现正常,内部出不去;但POLICY改成DENY,RULE改成内部到外部ACCEPT的话,内部却还是出不去,不知道为什么?
A:
我已经明白了,INPUT的POLICY是DENY的时候,要考虑到FORWARD的MASQ,因此除了要加内部到外部的ACCEPT外,还要考虑RESPONSE的包回来的时候要ACCEPT。说了这么些废话,希望对大家以后有帮助。
*A:
怎样用ipchains构建防火墙
作者:白云炜 [云南省玉溪市玉溪师专计算机系]
提示:防火墙是提供网络安全性的重要手段之一,RedHat6.1提供了用于实现过滤型防火墙的工具
包——ipchains。实现防火墙的策略一般有两种:在第一种方式下,首先允许所有的包,然后在禁止有危险的包通过防火墙;第二种方式则相反,首先禁止所有的包,然后再根据所需要的服务允许特定的包通过防火墙。相比较而言,第二种方式更能保证网络的安全性。但对于第二种方式,要求使用者知道Server/Client交互的基本原理和特定服务所对应的具体端口。本文将从一个具体的实列出发,讨论怎样采用第二种方式构建企业的防火墙系统。
一、Server/Client的交互原理
首先让我们看一下服务器/客户机的交互原理。服务器提供某特定功能的服务总是由特定的后台程
序提供的。在TCP/IP网络中,常常把这个特定的服务绑定到特定的TCP或UDP端口。之后,该后台程序就不断地监听(listen)该端口,一旦接收到符合条件的客户端请求,该服务进行TCP握手后就同客户端建立一个连接,响应客户请求。与此同时,再产生一个该绑定的拷贝,继续监听客户端的请求。
举一个具体的例子:假设网络中有一台服务器A(IP地址为a.b.c.1)提供WWW服务,另有客户机
B(a.b.c.4)、C(a.b.c.7)。首先,服务器A运行提供WWW服务的后台程序(比如Apache)并且把该服务绑定到端口80,也就是说,在端口80进行监听。当B发起一个连接请求时,B将打开一个大于1024的连接端口(1024内为已定义端口),假设为1037。A在接收到请求后,用80端口与B建立连接以响应B的请求,同时产生一个80端口绑定的拷贝,继续监听客户端的请求。假如A又接收到C的连接请求(设连接请求端口为1071),则A在与C建立连接的同时又产生一个80端口绑定的拷贝继续监听客端的请求。如下所示,
每个连接都是唯一的。