软件安全的衡量标准通常是主观的,因为程序代码的每一行都有出现安全漏洞的风险。每个安全漏洞都有严重程度,但是,这种严重程度对最终用户也许很重要,也许不重要。这个结果就是对安全有很多不同的解释,特别是对于Windows或者Linux操作系统软件这样复杂的应用程序。
评定安全等级的更客观的方法是跟踪一个特定的套装软件发布的修复漏洞的补丁数量。当与Linux进行对比的时候,这种衡量方法表明Windows似乎安全漏洞更多。美国计算机应急反应小组最近发表的安全漏洞测评报告称,微软的Windows出现了250次安全漏洞,其中有39个安全漏洞的危险程度达到了40分或者40分以上。而Red Hat Linux只有46次安全漏洞,其中只有3个安全漏洞的危险程度在40分以上。对于这两个操作系统的对比已经有数千份报告了。但是,像这种独立的政府机构发布的报告是最值得考虑的。
在安全方面存在这种差别是有充分理由的。例如,Linux的开源软件开发方式有助于更容易地暴露错误。这是微软不具备的优势。微软Windows的另一个不利因素是其许多应用程序依靠远程程序调用。远程程序调用是计算机内部通信的一种方式,无法预知地和主动地分配通信通路。与限制使用远程程序调用的Linux相比,这种方式将迫使Windows的防火墙没有Linux那样严格。
有些安全差别不仅系统管理员可以看到,最终用户也可以看到。例如,Windows受到的病毒感染肯定最多,促使大多数用户购买杀毒软件以保证自己的系统安全。最近,间谍软件开始入侵Windows系统,在用户浏览网络时不明智地下载和启动间谍软件之后,间谍软件就会暗地里获取和发布用户的个人信息。微软最近收购了一些杀毒软件和反间谍软件公司以帮助它对付这种威胁。
使用管理员权限和普通的用户账号都可以操作Windows和Linux系统。但是,但是某些第三方Windows应用软件没有严格坚持这个特点,经常需要管理员的权限才能正确运行软件。因此,这些用户发起的病毒攻击的破坏性是很大的。Linux应用软件通常都遵守这个安全要求,因此很少被攻击者利用。
开发人员要创建一种简单易用的软件的愿望也是Windows受到影响的一个原因。Windows易学易用的目的达到了,但是,其代价是牺牲了全面的安全。此外,Windows需要兼容不安全的老版本的软件也是一个不利的条件。这个缺点是Linux所没有的。
Linux确实有自己的安全弱点。我认为最普通的弱点是对于某些高级技术缺乏可靠的本地支持。厂商一般开发硬件和相关的驱动程序软件只为大多数Windows用户使用。Linux团体通常对这些产品做逆向工程处理,使这些产品兼容开源软件操作系统。这首先就使他们的工作没有预见性。在某些情况下,可接受的Linux硬件兼容要比Windows落后几个月甚至几年。幸运的是由于IBM和Novell支持开源软件标准,帮助优化兼容过程,这个问题并没有引起多大麻烦。
在Linux的图形界面接口之外,Linux的命令行是非常复杂的,通常是不容易学会的。这就延缓了管理员掌握正确加强系统安全的时间。Linux主要用作支持网络功能的操作系统,缺省安装时不必要地启动了很多网络应用程序。这就可能造成可以被利用的不为人知的安全漏洞。幸运的是,让管理员操作更方便的严格的缺省安全和简单的命令行工具弥补了这些弱点。
最好是了解这两种操作系统相对的优点,在充分注意各个系统的弱点的同时,根据你的业务的主要需求来选择这些操作系统。
在增强Linux功能方面,有很多Linux工具可以改善安全。Nessus安全漏洞扫描器可以远程检查与网络有关的安全漏洞以及丢失的软件补丁和系统上的其它漏洞。Nessus软件可用来测试新安装的系统,也可以在维护期内检测工作中的服务器。
nmap工具是另一种网络扫描器,不过应用不广泛。这个工具在Linux中可缺省安装。这个工具对于那些不适应配置Linux软件的IT工作人员来说是非常有用的。
非常关注安全的公司将把以太网接口连接到具有防火墙保护的接口。这些公司还在这些接口连接能够检测网络通信的专用的包检测服务器。然后用ACID等工具分析这个信息,并且把这个信息同能够通过防火墙的以前的攻击进行比较。
ACID能够创建一个报警的电子邮件,并且通过网络GUI(图形用户界面)显示有关可疑的数据包的详细信息。我向所有的能够让一名雇员专门负责IT安全的公司推荐这个产品。ACID还能产生虚假的报告,需要有人不断地调试。
无论使用哪一种操作系统,不适当的做法都可能破坏你的业务的持续性。要尽可能避免不充分的备份、糟糕的口令政策、共享的用户账户以及不包含多种纪律条款和不经常审计的安全计划。
Linux安全是一个整体。企业不应该把防范措施仅局限于操作系统的表面特点上。
(责任编辑:zhaohb)