互联网上有许多企业公司和组织采用Linux作为服务器平台。当这些服务器与互联网连接以提供应用服务时,不可避免地会成为攻击目标。本文讨论Linux系统安全配置的一些基本知识,以帮助你保护Linux系统。虽然在这里以Red Hat 6.0为例子,但也应该适用于其它Linux发行版本。
1、安装
配置系统安全的头一步最好是在系统的开始--操作系统的安全。因为配置的是防火墙,所以你绝对不能信任任何以前的系统安装和配置,而应该从全新安装开始,才能真正保证系统安全的完整性。
使你的系统处于单独(或隔离)的网络中。决不要让未受保护的系统连接到其它网络或互联网中受到可能的攻击。按我个人的经验,一个连接到互联网的新安装系统可以在15分钟内被扫描和入侵取得完全控制权。你可能需要另一台机器从互联网获取重要工具和安全补丁等等,然后再从这些机器将其传送到单独的"配置网络"中。
当把将要作为未来防火墙的机器放置于隔离的网络中时,就可以开始下一步了。
第一步是选择操作系统将要安装的软件包。对于Red Hat 6.0,提供了三种安装选择:Workstation(工作站)、Server(服务器)、Custom(定制,缺省选项)。我个人强烈推荐"定制",因为这允许你选择添加哪些服务和硬盘如何分区。安装策略是在维持最大化效率时进行"最小化"安装。系统中的软件越少,潜在的安全漏洞就会越少。例如,如果你不需要News或Real Audio Server,就不要安装它。Linux系统有一个好处就是如果你后来改变了想法,也是很容易添加所需软件包的。不管选择了哪种安装方式,手册页和HOWTO文档都应该是必不可缺的。虽然可能会使系统增加一点点风险,但它们有时确实特别有用。
如果选择了"定制"安装,会被提示进行硬盘分区。我个人通常喜欢使根分区尽可能地大,并且把所有东西都放在那里。然后,我们确实需要创建几个分区以保护根分区。因为如果根分区被例如系统日志或电子邮件等数据塞满的话,就会出现拒绝服务,甚至有可能使系统崩溃。
因此,我总是推荐为/var设置一个单独的分区。/var是用于存放系统所有日志和电子邮件的地方,将/var分区独立出来,就能够有效地保护根分区被这些数据塞满。对于许多网络环境,为/var分区设置不少于400MB基本上就足够了。另外可以考虑为某些特定的服务或应用创建或保留单独的分区,特别是敏感的日志记录。如果系统中存在不可完全信任的用户,也许应该为/home创建单独的分区,这样可以避免恶意用户轻易攻击/根分区。对于一台独立服务器以下是一个分区实例:
/ - everything else