Firewall builder教程
说明:这篇文档是个人用firewall builder(FWB)所做的几个简单实验的实验记录,包括了一些FWB的基本操作,由于个人有点懒,没怎么看官方说明文档,很多地方都是凭自己感觉做的,所以可能会有一些错误,也欢迎大家留言指正。留个邮件吧: shanhuiyang@gmail.com
FWB的安装:
FWB的安装很简单,对于redhat类的linux有编译好的rpm包。
下载地址: http://www.fwbuilder.org/
需要:libfwbuilder,fwbuilder两个包。安装过程就不在说明了。
利用标准模板发布web server
以redhat linux为例,安装好后启动FWB ,如图1:
clip_p_w_picpath002
图 1
启动后如图2:
确认第一的红圈里是user,以为standard为系统系统内置的模板,是read-only的。右击firewall,选择new firewall,如图3
clip_p_w_picpath004
图 2
下面开始新建一个firewall,如图3:
clip_p_w_picpath006
图 3
在图3中,为firewall输入一个名字,firewall software要选择iptables,os选择linux2.4/2.6,
并勾选use preconfigured template firewall object,因为我们要选用系统预定义的模型,单击next,如图4:
clip_p_w_picpath008
图 4
在图4有几个模型让我们选择,此处选择web server,单击finish。
在图5中看见我们刚刚创建的firewall的默认策略(policy),先来分析一下图中的策略。
其中source代表源地址,(web server是我们刚刚创建的防火墙名,代表着本机),
Destination代表目的地址,source和destination值可以是地址范围(address ranges),网络(network),或者ip地址(address)。
Service代表我们要管理服务,可以是端口或一些特殊标志的数据包。
Interface代表数据包是通过本机哪个网卡流入或流出。
Direction代表数据包是流入还是流出,或是双向。
Action当然就是要采取的动作了,接受或拒绝等,但是我不太清楚deny和reject的区别。
Time定义策略作用时间
Options应该是一些比较高级的选项吧,反正我没有涉及到。
Comment就是注释了。
clip_p_w_picpath010
图 5
认识了policy,现在我们开始设置了,首先设置我们web server的ip地址。如图6
clip_p_w_picpath012
图 6
在右下角输入ip地址。如图7:
clip_p_w_picpath014
图 7
需要注意的是上面的eth0和ip必须是我们系统上的eth0和ip,如果你的系统上是eth1,必须更改相应的名称。
看看还需不需要增加一些策略和服务,如果不需要就可以保存然后编译了。
保存好后开始编译,如图8
clip_p_w_picpath016
图 8
右击web server,点击compile,如图9:
clip_p_w_picpath018
图 9
直接next,如图10:
clip_p_w_picpath020
图 10
完成后在我们的保持路径下江生成一个fw文件,其实他就是一个shell脚本,可以打开看看,学会了shell脚本,就不用FWB来生成了,哈哈…
在shell下面运行刚刚生成的脚本就ok了。现在可以测试一下是否达到了我们的策略要求。如果没有,自已揣摩一下。
开放10000端口
上面大部分都是系统预设好的,下面完全自定义一个防火墙对象,来开放10000端口,因为如果安装了webmin则需要通过10000端口来访问,而系统中也没有端口为10000的service。
下面开始创建firewall,如图11:
clip_p_w_picpath022
图 11
这次不选择use preconfigured template firewall object了,next,如图12
clip_p_w_picpath024
图 12
选择configure interface manually。Next,如图13,添加网卡:
在图中添加eth0和lo网卡,再次提醒名称和ip地址一定要和系统上的一样。
clip_p_w_picpath026
图 13
单击finish。创建好firewall object后,开始对其设置。
首先我们创建一个端口为10000的tcp服务,如图14。
创建好后,单击它,则在右下角部分输入server相关信息,如图15,设置好后单击apply,我们的服务设置好了。接下来添加policy。
clip_p_w_picpath028
图 14 clip_p_w_picpath030
图 15
在图16中:点击右键,选择add rule,将适当的对象拖到适当的位置,有的对象在standard里,有的在我们自定义的user里,编辑好后如图,可以添加自已需要的服务。
clip_p_w_picpath032
图 16
编辑好后,保存,然后按照上面的方式compile,最后运行生成的脚本。就ok。
下面可以找个系统来测试一下看是否能登上webmin的管理台。
简单的NAT
我相信通过上面的实验大家已经基本掌握了FWB的防火墙配置,下面在做一个简单的NAT实验吧。实验架构图:
clip_p_w_picpath034
图 17
这是最简单的模型了,仅用于test。
下面开始创建一个firewall object,如图18:
clip_p_w_picpath036
图 18
单击next,如图19:
clip_p_w_picpath038
图 19
在图20中添加网卡:
clip_p_w_picpath040
图 20
结果如图所示。
接下来需要指明外部网卡,在左边的目录中单击nattest->eth0,在右下角勾选This interface is external(insecure),我们可以顺便看看其他几个选项,我想大概意思应该都能清楚。
clip_p_w_picpath042
图 21
接下来添加一条policy,结果如图22:
clip_p_w_picpath044
图 22
这里就不过滤任何数据包了。
为了指定内部地址范围,我们需要创建一个,通过右击networks,可以创建一个网络,如图23,并设置其属性如图24.
clip_p_w_picpath046
图 23
clip_p_w_picpath048
图 24
现在可以创建NAT策略了,点击nattest->NAT,在右边的空白处创建,将我们定义的inside网络拖入到original Src,将eth0网卡对象拖入到translate Src里如图25
clip_p_w_picpath050
图 25
这里大概解释一下上面的策略吧:
Original Src:原始的原地址。
Original Dst:原始的目的地址。
Original Srv:我猜是原始的要访问的目的端口。
显然translated Src,translated Dst,translated src就是转换后的原地址,转换后的目的地址,转换后的服务端口。
到这里我们的NAT已经设置好,剩下的就是保存,编译,执行脚本。
下面来测试一下,在内网的一台xp系统上,通过
telent 192.168.136.250 22
然后在web server(我的是linux系统)上,执行
#netstat –nt
结果如图26,27.
clip_p_w_picpath052
图 26
clip_p_w_picpath054
图 27
结束语
我们的实验到此做完了,希望能给你带来一些帮助。
不过想说一句:firewall builder并不是一个防火墙软件,而只是一个可视化的软件防火墙配置工具。