扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
2、/etc/shorewall/zones
在zones这个档案中,您可以定义您的网络区域代码,限制在5个或5个字符之下,总共有三个字段,分别说明如下:
ZONE:定义的名称,限制在5个或5个字符以下。
DISPLAY:这个接口所显示的名称,通常和ZONE设定是一样的。
COMMENTS:对这个接口的简略说明。
那么在这个例子中,笔者就定义了二个接口,在zones的设定内容如下所示:
#ZONEDISPLAYCOMMENTS loc Local Localhost net Net Internet #LAST LINE - ADD YOUR ENTRIES ABOVE THIS ONE - DO NOT REMOVE |
其中loc就是对内的网络接口,而net就是对外部网络的网络接口。
3、/etc/shorewall/interfaces
接下来就要建立网络接口及ZONE的对照表了,前面说过eth0是对因特网的接口,而eth1是对内部局域网络的接口,那么设定的内容如下所示:
#ZONE INTERFACE BROADCAST OPTIONS net eth0 xxx.xxx.xxx.128 loc eth1 192.168.1.255 dhcp #LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE |
其中第一个字段就是对应到/etc/shorewall/zones的ZONE名称,而第二个字段就是对应到在Linux系统中的接口名称,在这个例子中,eth0是对外部网络的接口,所以对应到net,而eth1是对内部局域网络的接口,所以对应到loc,第三个字段是设定该网络接口的BROADCAST,如果是Cclass的话,就是设定成x.x.x.255。而最后一个OPTIPNS的字段就是这个接口要用什么样的功能,比方说在这个例子中,eth1接口还要负责DHCP配发的动作,所以就在OPTIONS的字段上加入dhcp的记录,其它的功能请参照interfaces的批注,在此不做太多的说明。
4、/etc/shorewall/policy
这个档案是设定整个大方向的防火墙政策,通常建议较安全的方案是先将所有由外而内的政策都设定成为拒绝,然后再一个一个的打开可用的port号,所以policy的设定内容如下:
#SOURCE DEST POLICY LOG LIMIT:BURST loc net ACCEPT net all DROP info all all REJECT info #LAST LINE -- DO NOT REMOVE |
其中第一行是允许由内部局域网络连到外部网络,第二行是将所有外部来的封包都丢弃,并记录到记录文件中,第三行的功能也是一样。
5、/etc/shorewall/masq
这个档案是设定让内部的虚拟IP可以伪造真实的IP联机出去,也就是NAT的功能,设定内容如下:
#INTERFACE SUBNET ADDRESS eth0 eth1 xxx.xxx.xxx.xxx #LAST LINE -- ADD YOUR ENTRIES ABOVE THIS LINE -- DO NOT REMOVE |
其中INTERFACE是对外的网络卡,而SUBNET则是对内部虚拟网络的网络卡,最后的字段ADDRESS则是对外网卡的真实IP,输入完后就存档离开。
最后再重新启动shorewall的防火墙,请依照下列指令重新启动
#shorewall check #shorewall restart #chkconfig --level2345 shorewall on |
完成!
虽然这样子就完成了最基本的防火墙建置,所有由外部对内部的服务全部都被关闭,只让内部的虚拟IP以NAT的方式联机到外部网络,这样子就算是成功的建立一座防火墙了。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。