为Solaris服务器配置款安全的防火墙(4)
http://www.itjxue.com 2007-11-14 21:35 来源:IT教学网 点击次数:
四、IPFilter包过滤防火墙规则编写方法
在创建IPFilter包过滤防火墙规则的第一步是与用户咨询确定一个可接受的服务列表。许多公司会有—个可接受的使用策略,该策略会控制哪些端口应当可用和应当赋予用户启动的服务的权限。在你确定了开放的流入端口和外出的端口需求之后,最好是编写一条规则:首先拒绝全部数据包,然后编写另外的规则:允许使用的端口。你还必须设置两个方向启用允许的服务。例如.用户同时接收和发送电子邮件通常是必要的,于是你需要对sendmail(端口25)包括一条入站和出站规则。
1、方法1
要阻止从 IP 地址 192.168.1.0/16 传入的流量,需要在规则列表中包括以下规则:
block in quick from 192.168.1.0/16 to any
下面的例子阻止来自b类网络148.126.0.0的任何数据包:
block in quick from 148.126.0.0/16 to any
2、方法2
通俗来说就是:禁止是block ,通过是pass ,进入流量是in,出去流量是out 。然后配合起来使用就行了,再加上可以指定在哪个网卡上使用,也就是再加个on pcn0,另外还有一个关键字就是all,这是匹配(禁止或者通过)所有的包。基于IP地址和防火墙接口的基本过滤方式:
block in quick on hme0 from 192.168.0.14 to any
block in quick on hme0 from 132.16.0.0/16 to any
pass in all
应用此规则将阻止通过hme0口来自于192.168.0.14和132.16.0.0网段的所有包的进入,但是允许其他网段的包进入到防火墙,同时对出去的包不作任何限制。
3、方法3:基于IP地址和防火墙接口的完全双向过滤方式:
block out quick on hme0 from any to 192.168.0.0/24
block out quick on hme0 from any to 172.16.0.0/16
block in quick on hme0 from 192.168.0.0/24 to any
block in quick on hme0 from 172.16.0.0/16 to any
pass in all
应用此规则后将阻止通过hme0口来自于192.168.0.0和172.16.0.0网段的所有包的进入和外出,但是允许其他网段的包进入到防火墙,同时对出去的包不作任何限制。
4、方法4
使用“port”关键字对TCP和UDP的端口进行过滤:
block in log quick on hme0 proto tcp from any to 192.168.0.0/24 port = 513
block in log quick on hme0 proto tcp from any to 192.168.0.0/24 port = 8080
block in log quick on hme0 proto tcp from any to 192.168.0.0/24 port = 23
pass in all
应用此规则后将阻止从192.168.0.0网段通过8080和23端口对防火墙内的数据通信,但是允许其他网段的包进入到防火墙,同时对出去的包不作任何限制。
5、方法5
quick关键字使用提示:假如你的防火墙有100条规则,最有用的可能只有前10条,那么quick是非常有必要的。
pass in log quick proto tcp from 10.4.128.163/32 to any port = telnet
block in log all from any to any
假如你希望禁止服务器的所有包而只希望一个IP只能够telnet的话,那么就可以加上quick关键字,quick的作用是当包符合这条规则以后,就不再向下进行遍历了。如果没有quick的情况下,每一个包都要遍历整个规则表,这样的开销是十分大的,但是如果滥用quick也是不明智的,因为它毕竟不会产生日志。
6、管理 Solaris IP 过滤器的 NAT 规则
查看活动的 NAT 规则。
# ipnat -l
删除当前的 NAT 规则。
# ipnat -C
将规则附加到 NAT 规则
在命令行上使用 ipnat -f - 命令,将规则附加到 NAT 规则集。
# echo "map dmfe0 192.168.1.0/24 -> 20.20.20.1/32" | ipnat -f -
五、关闭 Solaris IP 过滤防火墙的方法
有些情况可能希望取消激活或禁用包过滤,例如要进行测试另外在认为系统问题是由 Solaris IP 过滤器所导致时,对这些问题进行疑难解答。首先成为管理员权限,
禁用包过滤,并允许所有包传入网络的命令:
# ipf –D
取消激活 Solaris IP 过滤器规则方法:
从内核中删除活动规则集。
# ipf -Fa
此命令取消激活所有的包过滤规则。
删除传入包的过滤规则。
# ipf -Fi
此命令取消激活传入包的包过滤规则。
删除传出包的过滤规则。
# ipf -Fo
此命令取消激活传出包的包过滤规则。