作者:panda
在这篇3部分的Linux防火墙安装攻略中,你将能了解到安装和配置Linux服务器和防火墙的一些知识。第一部分主要讲的是如何选择和安装一个安全版本的Linux版本。第二部分的内容包含了如何覆盖和更新旧的防火墙系统。第三部分的内容包含了安装防火墙的实际过程。
第一部分:Linux下防火墙的选择
第二部分:商业防火墙产品介绍
第三部分:Linux防火墙纵览
第一部分:Linux下防火墙的选择
这个部分介绍的是如何规划安装一个多功能防火墙和服务器的蓝图。如果你想要把你原来的Linux服务器,小型商务服务器的防火墙进行升级的话,这片文章同样适合你。大家都很关心Linux底下防火墙的安全问题,这篇文章能让你替代你原来的旧的服务器上的多功能防火墙。
为了更好的说明问题,我们将以实例来完成防火墙的安装和设置。假设我们使用的是一套旧的客户端服务器。这台旧的服务器是旧的486计算机,使用的是从Red Hat 5.1.升级到 5.2版本。客户端采用的是基于Linux地GNU系统作为主要的邮件服务和防火墙。随着时间的流逝,这台计算机已经不能适应日益增长的信息处理要求,它只能作为Web的mail服务 , anonymous FTP, login等服务了。所有这台计算机的系统和防火墙需要升级。
安全分析
在决定作什么之前,我们先来对这套系统作一个简单的安全分析。首先值得注意的是这台计算机只安装有小型的应用软件,它的硬件已经没有太大的价值了。它里面唯一重要的是原始资料和代码,我们无论对这台计算机作出什么样的改动,都应当注意不要把它原来的数据弄丢失或受损。其次,对这台客户端服务系统还要找出它原来安全隐患,比如秘密的“后门”,清除这些不安全的因素。然后才能重新安装操作系统,分析Logs等等工作。
作这些工作是要很大的风险的,我们必须小心,按照以下步骤来完成。首先,我们将把CVS(source code revision control:源代码修正控制系统)服务器功能从防火墙上分离开。这样客户端资源代码不至于被这么容易受到攻击。我们还需要对资源代码建立每天的安全备份,这也是为了保证数据的安全,减少潜在的资料丢失。最后,我们将安装新的防火墙和较少的服务程序来大力改善站点的安全。
选择好的操作系统版本
很明显,操作系统版本有免费和非免费两种可以供我们选择,作为商业性的防火墙应用程序,我们可以选择开发资源和多功能的操作系统,因为它们比较的便宜,并且是真正的,完整的操作系统。Linux和BSD是最好的选择。
大家都知道OpenBSD是在操作系统中比较有名气的安全机制。但是很多人对OpenBSD 的安装和调试并不熟悉。它也是比较难以安装的,而且,考虑到这台计算机作为客户端服务器,使用它的很多人员(比如公司职员)都可能对BSD都没有什么实际经验。这也是我们不决定使用OpenBSD的原因。
Red Hat 是一个不错的选择,因为旧的服务器上已经安装了旧版本的Red Hat ,使用它的人员也习惯了操作Red Hat,但可惜的是Red Hat 不是一个专业安全Linux版本的操作系统。另外,Red Hat 里面有很多可用的桌面环境软件,向导软件,这些对我们客户端没有太大用处的软件只会占用硬盘空间和增加不安全因素,许多有经验的黑客会利用这些漏洞来入侵计算机系统。所以我们也不决定使用Red Hat 来作为操作系统和防火墙。
那么,什么样的操作系统采是我们的需要呢?来自Wirex Communications(http://immunix.org/)的Immunix是比较适合我们这台计算机的操作系统。 Immunix是基于Red Hat 6.2设计的Linux版本,具有Red Hat Linux的优点,它所有的程序的编译都是通过StackGuard来编译的。这样能保护大多数的堆栈缓冲溢出的安全。另外,它的extra checking机制能提供10%的性能。同样,Immunix包括了Red Hat 6.2机会所有的应用软件。但在下载这些软件的时候你必须要注册。另外,我们还需要找到Trustix-这个小型的的服务器向导系统,它不包含GUI,例如,这个Trustix版本包含有许多安全服务,有邮件服务,FTP服务,实际上,Trustix也是我们的需要。
安装Trustix 1.1
计算机的硬件配置为Pentium 133 MHz, 32 MB RAM , 2.5GB硬盘,两块以太网卡。一块是PCI,另一块是ISA卡。PCI网卡和客户端的HUB连接。
安装Trustix 1.1之前,首先要从ftp://metalab.unc.edu/pub/Linux/distributions/trustix/trustix-1.1/i586/images/bootnet.img下载一个启动盘的IMG文件。用命令dd if=bootnet.img of=/dev/fd0可以顺利启动计算机。
我们遇到的第一个问题就是在Trustix网络安装的时候它会询问关于以太网卡需要什么驱动程序。这个问题比较容易解决,选择正确的驱动程序即可。实际上这个问题并不大,无论是PCI还是ISA网卡,如果安装驱动程序不正确,那网络就无法连通,可以把网卡拔出来,换一个插槽或换一个驱动程序试一试,直到网络通常为止。
接着,Trustix会询问用户选用哪一种网络安装模式,有 mirror,NFS mount,HTTP,和 FTP可供选择。这是可以选择mirror(镜像)选项,但不幸的是安装失败了,那是因为客户端不允许DNS在防火墙后面工作。Trustix 的安装会使用主机名字来代替镜像的IP地址,如果等待得时间超过5分钟的超时设定,它会进行重试。但这样并不能成功。
接着我们试着从Trustix FTP 官方站点上安装FTP(文件传输协议)。这次也不知道是什么原因失败了。FTP在客户端上不能够使用。最后,当我们从Trustix 网站上下载了完整的Trustix版本,在本地计算机上重新安装FTP,这次采获得了成功,Trustix FTP 能正常的工作了。
总结了一下经验,因为这些开发资源的版本如果不是从本地计算机上安装,或是版本不完成,很容易造成安装的失败。花点时间来下载完成版本的Trustix看起来是值得的。
Trustix的分区工具(Disk Druid)非常直截了当,简单易用,加上它的帮助文件很完整,在完成网络安装后的安全设置中没有遇到太多的麻烦。在默认得情况下,Trustix 使用的是shadow passwords 和MD5散列法。Trustix公司声明在使用ROOT来安装Trustix的时候可以创建非ROOT用户帐号。
在配置TCP/IP,time-zone,LILO的时候,我们可以选择相应的软件包进行安装。安装结束后总共用去了400MB的硬盘空间。再完成内核的编译,硬盘空间占用到了500MB,这是非常合理和占用硬盘少的Linux版本了。