最近,我国政府内部一个使用Communifire的客户将其原使用ASP.NET的公众网站迁移到了Drupal,一个开源的CMS平台。
在新的Drupal版本上线两个星期后,网站被位于菲律宾的黑客联盟黑掉了。整个情节很是尴尬。他们不得不连续5天关闭了该网站,然后重新启用了基于.NET的旧网站。
它的管理者深信FOSS(自由和开源系统)应当在各政府机构中广泛遍及并推广。
我自己是一个开源的追随者,但我认为在切换到FOSS之前应该考虑所有的利弊,而不是因为其“自由和开放”而一味崇尚开源平台。
通常来说我绝不会建议使用一个开源的CMS平台来做敏感的政府网站,因为它们可能拥有机密数据。
开源有其自身的优势,但人们大多会忽视其缺点。
让我们来强调下其中的一些问题。
许多人坚称协作和大家对等公平的工作可以让开源平台稳定而且bug更少。不过也存在这样的事实:任何具有编程知识的黑客都可以对这样一个系统的源代码进行查看,并提出多种对其攻击的方法。
与此相反,封闭式源代码产品攻击起来将更困难些。这样的系统更多的受到重复试错攻击或者暴力攻击,而不像开放源代码平台那样易受到提前规划好的、具有针对性的攻击。
“那么,Linux是什么样的呢?”,一些人争辩说与Windows相比Linux更安全。然而他们忘记了Linux是基于Unix的,Unix是最最安全的系统之一,在构建时已经考虑到安全性了。
而像Drupal、Joomla、Wordpress等开源CMS平台却没有考虑到安全性。因此攻击开源系统比攻击闭源系统至少要容易10倍(或者更多倍)。
这就是对安全敏感的美国政府网站和系统使用私有的安全系统而不使用开放源代码系统的主要原因。连白宫都使用的是由NASA特别构建的私有操作系统。
大多数人错误地认为开放源代码默认是“自由的"。其实不是这样的。
通常来说,BSD(伯克利软件发布)/MIT许可的软件实际上才是自由的,而且可以用于商业发布。另外还有GPL(通用公共许可)和LGPL(开发库通用公共许可),这两个许可在在许多地方都受到限制。
我建议在选择开放源代码平台前仔细阅读授权许可条件。
一些开放源代码系统都比大多数商业系统的质量要好很多。例如Memecached,Lucene和Linux都不仅仅比其对应的商业平台要优秀,而其在代码质量上也高于代码质量标准。
不过,大量的开放源代码协同软件代码编写很差,管理也很差。这不仅仅降低了性能,而且还在负载增长的情况下无法扩展。
请记住推特的经历:他们不得不放弃Rails平台,因为Rails不能如他们期望那样进行扩展。
摘自 http://www.lambdassociates.org/blog/the_problems_of_open_source.htm:
为什么自由软件在质量方面这么差?
大多数自由软件都很差或者说不可用。但是由于倡导者喜欢使用孤点谬论来兜售FOSS是非常伟大的这个理念而使得这种情况看起来不那么明显。孤点谬论关注图形中的高分值点而忽略其他分值点。所以,FOSS的得胜者都是那些标准的成功案列-Start Office, Emacs,Red Hat Linux和SBSL-而忽略了充斥在SourceForge上大量的漂浮的被软件漏洞半淹没的或者废弃的项目(超过120,000个)。 这就像穆加贝在电视上所使用的那种技术。如果你指控整个国家都处在饥饿中,他就会推出一小部分营养良好的孩子给人们看。‘看看,我们的国家很好;看看这些孩子多么健康’。而把那些在贫民窟里大量不幸死于霍乱的排除在外。
实际上,人们关于BSD/MIT,GPL与封闭式源代码的大争论关注的是软件开发越来越模糊这样一个重要的事实。这绝对是一个 根本问题。现在依然是这样。
当一个或者更多很优秀的开发人员在一起近距离全职进行开发、维护和改进工作后,才能生成好的软件。 确实是这样,理由非常简单。除非不是这样, 因为如果你足够幸运地吸引一个团队的话,你就需要把他们聚在一起。要做到这些 ,你就需要资金,这一点正是FOSS失败之处。
大多数开源软件平台可客户支持都很糟糕--有一些压根就没有。所以,如果你被卡住了,你不得不依靠社区的反馈来得到支持,不像专业的有时限的SLAs软件支持协议。
有时你迫切需要一个解决方案,并且等待2 3 天或更久之后才得到答复你的关键问题不是一个可行的方案。
所以这时候有个专业的管理支持就方便多了。
总计一下,开源软件是IT产业发生的最伟大的事情之一,并且还会持续增长下去。现在有了很多令人惊奇的开源工具,但是在面向公众的敏感社区中使用开源软件还是有风险的。
从长远角度看,维护一个“免费”开源平台将会比一个商业解决方案付出得更多。
本文中的所有译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接。 2KB翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。2KB项目(www.2kb.com,源码交易平台),提供担保交易、源码交易、虚拟商品、在家创业、在线创业、任务交易、网站设计、软件设计、网络兼职、站长交易、域名交易、链接买卖、网站交易、广告买卖、站长培训、建站美工等服务