小技巧:手把手配置Linux透明防火墙
一般而言,防火墙的两个网络接口应分属两个不同的网络,根据系统管理员定义的访问规则在两个接口之间转发数据包,或者、丢弃数据包。实际上,防火墙不单单是访问控制的功能,而且还充当了由器的角色。
一般而言,防火墙的两个网络接口应分属两个不同的网络,根据系统管理员定义的访问规则在两个接口之间转发数据包,或者、丢弃数据包。实际上,防火墙不单单是访问控制的功能,而且还充当了由器的角色。当然,这并非有什么不妥当的地方,但是当你把你配置好的linux防火墙放入运行网络,来现有系统安全的时候,你不得不重新考虑和更改你的网络架构。另外一个可能的麻烦是,当防火墙发生意外时,如果没有防火墙的硬件备份的话,那么你将面临巨大的心理压力,因为防火墙的故障,整个网络瘫痪了。假如你把防火墙配置成透明模式(可称为伪网桥),就无需更改网络架构,即使是防火墙不能工作了,要做的仅仅是拔出网线,把网线直接插在由器的内部接口就可以让网络正常工作,然后你就有时间慢慢恢复发生故障的防火墙。
好了,既然透明防火墙有那么多方便,我们赶快动手来配置吧!准备一台pc机,两块网卡(用3com网卡),网线若干,redhatlinux9安装盘一套。打开机箱,把两块网卡插入计算机的pci插槽,用网线把计算机分别与网关和交换机相连;盖上计算机的盖子,插上电源,开机。在光驱里放上Linux9安装光盘,由光盘引导计算机,从而安装Linux系统。选择定制安装,不要保守,多花一点时间体验一下图形界面的安装乐趣,取消防火墙(nofirewall),在安装快结束时选择以文本方式登录系统,完成安装。
透明防火墙功能配置:
这里需要注意两个地方,第一个是要区分清楚那一个网卡是eth0,那一个是eth1.这个问题十分关键,如果搞混了就会导致防火墙不能连通网络。至于怎样区分eth0和eth1,我将在文章的末尾作简单的描述。在这里假定与由器相连的网卡是eth0。
4、指定由。由于两块网卡(eth0,eth1)使用同样的ip,如果不专门指定转发径,一定会导致由混乱,从而使防火墙以内的计算机没法访问Internet。还是用命令vi修改文件/etc/rc.d/rc.local,插入如下几行。保存文件,重新启动计算机。
定制防火墙策略:
都是2.4.20的内核版本,当然要用netfilter/iptables。由于安装Linux系统的时候,选择了“无防火墙”这个选项,那么在/etc/sysconfig下将没有iptables这个文件存在。还是让我们的来定制防火墙访问策略吧。
规则只了较少的允许访问的策略(可以ping,收发邮件,浏览网页,ssh,https,telnet,ftp,其它的访问则全部丢弃)。$IPT–AOUTPUTACCEPT没有设置成DROP的原因是由于大部分网络服务所使用的协议是tcp协议,众所周知,tcp协议是面向连接的,如果设置$IPT–AOUTPUTDROP,那么任何协议为tcp的连接就要写两条了。况且防火墙对外的访问总是允许的,因此这样做是为了简化规则。
修改完成后保存,然后在当前目录运行命令./myfirewall.sh,在上述脚本没有书写错误的情况下,规则生效,但它仅仅在内存里,用命令serviceiptablessave将自动生成文件/etc/sysconfig/iptables,前面设定的访问策略就被保存到硬盘,系统重启时,系统将自动地从文件/etc/sysconfig/iptables获得定制的访问策略。
到这里,一个透明的linux防火墙就架设好了。更改计算机的BIOS设置,使它可以在没有键盘的情况下启动系统。启用ftp,以便可以在需要时可以向防火墙主机拷贝文件。把键盘和显示器拿掉,剩下的操作只是摁一下电源开关。
防火墙的管理:
可能有时候我们需要更改防火墙的某些规则,或者做些别的管理,既然我们是系统管理员,再插上键盘和接上显示器坐在防火墙面前可能会被人,因此这些管理工作当然通过网络来进行。Ssh和webmin是我的偏好,ssh的协议端口是22,webmin的默认协议端口是10000。其中ssh是linux系统的默认服务,只要安装客户端就可以(windows下的程序securecrt是个不错的选择,据说ssh连接速度没有vnc快)对防火墙进行所有的管理(和直接操作防火墙主机一样);webmin是基于web的图形界面管理方式,非常的方便和直观,尽管它不能象ssh那样对系统进行完全的管理,但是对于我们的工作需求还是可以满足,在防火墙系统安装webmin服务器程序。Ssh与webmin两者结合使用,可以帮助我们较快较深入地掌握Linux。