尽管开源软件是坚定不移的主流,广泛应用的企业,政府,和每个人都拥有手机或电脑,问题反复出现:“开源软件安全吗?“一般来说,答案是肯定的。但是值得审视我们所说的“安全”,开源软件与专有软件,对比和讨论时你应该谨慎使用。

定义软件“安全”

让我们首先定义我们所说的“安全”,因为它是一个非特异性术语,可能对不同的人意味着不同的东西。

安全,在这里,包括安全、稳定、可持续发展,和遵从性。

具体来说,开源软件是否满足一个合理的安全与期望或比专有软件吗?是开源软件和其他软件一样稳定吗?是可持续的,——将继续开发和维护长期的软件,可以预见的是,这样你就可以依靠吗?最后,开源软件是否随身携带任何风险法律合规吗?

最后,让我们澄清我们所讨论的“开源软件。“任何人都可以一巴掌一个开源许可软件并把它在线。我们的酒吧比这更高。我们不应对爱好项目或那些没有一个活跃的社区。

当讨论到开源软件,我们谈论正在进行的项目与一个健康的社区,大量采用。我们将讨论如何评估,当选择一个项目。

让我们开始大,安全。

开源软件安全吗?

当一个项目的源代码可用,安全并不是落后的问题。如何安全的东西如果有人可以检查代码,寻找安全漏洞?

潜在的攻击者可以梳理源代码发现安全漏洞。有时他们做!但它也允许“白帽子”类型检查开源项目,试图找到并修复漏洞攻击者发现他们之前和使用它们。它允许组织识别潜在的漏洞,报告,和应用补丁不取决于一个供应商

相对安全的开源软件已被研究人员反复检查自2000年代初。开源软件不含缺陷平均比专有软件。在某些情况下,它可能更少的漏洞。

通过模糊的安全——期待软件更安全如果攻击者看不到源代码,是行不通的。攻击者发现和利用漏洞在专有软件。Log4Shell漏洞在Apache Log4j的软件在2021年大头条,但它并不是唯一一个。考虑ProxyShell——一组在Microsoft Exchange漏洞,可能导致远程代码执行(远端控制设备)

这只是一个例子。你可以阅读微软的应答为一长串漏洞的安全报告发现的各种研究人员发现漏洞的软件没有源头e代码。

因此,开源软件安全吗?按绝对值计算,没有漏洞的软件应考虑免费。但是,相对而言,我们可以说是的。开源软件相对于私有软件是安全的,在某些情况下,我们会说比专有软件安全。

所有情况下,开源软件允许任何人检查软件和尝试提供修复,如果他们发现一个漏洞。开源软件是不依赖于一个供应商完全控制软件。

开源软件稳定吗?

用户可能也想知道开源软件是稳定的,无论是安全在生产环境中,使用开源软件之类的东西。

答案是肯定的,但有几个警告值得呼唤。让我们先从一些主要的例子使用开源软件的稳定是至关重要的。

看“使用开源软件优化和解决你的MySQL环境”视频会议

开源软件的权力网络。例如,Linux是应用最广泛的操作系统使用日常运行服务。所有主要的云提供商使用Linux,你的手机公司可能使用Linux提供电话,使用流媒体服务,社交媒体公司,等等。如果你是一个Android用户,你的手机。

这就是最明显的例子。开源数据库MySQL和PostgreSQL一样,是使用最广泛的和流行的数据库大型和小型的工作负载。

还有WordPress和Drupal内容管理系统(cms),全球数以百万计的网站。(事实上,WordPress权力这个博客,并使用一个MySQL数据库来存储它的内容)。

在小方面,你有工具如旋度和SQLite嵌入在数以百万计的设备用于各种用途。开源甚至去火星

开源软件的说明

可以写一本书的成功使用开放源码和栈,stability-wise,专有软件。注意事项是什么?

你需要评估开源软件以同样的方式你会评估任何软件。看看它是如何产生的,它的社区或供应商的健康,并把它在概念验证(POC)测试或者评估验证它适合你的需要。

健康的社区是一个广泛的话题,我不会试图探索在这里完全。但是,简而言之,查看项目的历史。看到有多少贡献,是否有供应商的支持,如果你需要支持,并确保它仍然被维持。

如果你检查Linux、MySQL、PostgreSQL Kubernetes, WordPress, Apache卡夫卡,和成千上万的其他项目,你会发现项目有悠久的历史,广泛采用和供应商谁将超越只提供软件提供支持。

这给我们带来了可持续性。

开源软件是可持续的吗?

可持续发展是一个短语很多用来描述环保问题。但当我们说“可持续”在这里,我们讨论的是是否生产软件的开发过程是可持续的。换句话说:我们能依靠软件来这里明天,下个月,还是明年?更长时间吗?

这个问题不是开源软件独有的!同样的力量,导致软件公司倒闭或取消开源项目可以影响。

专有软件消失,尤其是在软件即服务的时代。考虑所有的项目在谷歌的墓地,像谷歌阅读器,视距,G +,太多的消息传递应用程序甚至试图重新计票。

维护人员不是供应商

然而,开源的一个额外的皱纹,我们想讨论它。开源项目通常由维护者不支付直接这些项目。

维护者不一样的供应商和供应商。一个开源项目不一定是一样的产品。

例如,许多的Apache软件基金会(ASF)项目贡献者来自许多不同的公司。有些人可能支付项目全职工作,以及其他可能造成作为日常工作的一部分使用的软件是他们的工作,但他们有其他的责任。

所以如果你评价一个开源项目使用在您的业务,你需要做一些关于项目的尽职调查健康来验证它的寿命。再一次,这类似于在软件供应商做尽职调查。

如何评估开源项目

你可以相信,微软将在10年左右,仍然支持Windows和SQL Server。同样,Linux和PostgreSQL几乎肯定将在10年左右。苹果不太可能破产和iOS很快下降。WordPress多年来一直稳步前行和权力一块巨大的互联网,它仍然会被用于博客进入未来。

开源数据管理软件的调查

另一方面,你可以看到很多专有软件已达到生命结束时,厂商收购或管理改变。微软杀死VisualBasic虽然仍是受欢迎的,例如。Twitter抢购葡萄树,然后关闭。Adobe(主要)退休的Flash,尽管你会发现很少有人悼念Flash和不少人很高兴看到它。

开源软件也可以达到生命的结束。ASF,例如,有其“阁楼”——一个过程和回家ASF项目已经过时或未能保持足够大的社区的维护者。

你怎么能知道一个开源项目将在长期的和接收更新吗?

一个好的经验法则?寻找广泛采用开源软件以优秀的成绩,这是更好,如果多个供应商的工作支持的软件

如果它可以由多个供应商的开发,这是一个更安全的赌注。例如MySQL和PostgreSQL,伟大的项目与产品对应的例子支持选项相当于专有软件没有专有的缺点。

开源软件合规呢?

最后,在许多人的思想的问题是开放源码软件安全从合规的角度来看。也就是说,开源软件介绍法律要求吗?

我不是律师,我也不玩一个在电视上,所以这不是混淆的法律建议。如果你需要一个真正的法律意见,你一定会想要咨询律师,如果你想要一样的法律建议的最终用户许可协议(EULA)专有软件。

也就是说——满足的许可证开源定义(OSD)开放源代码倡议(OSI)触发条件分布而不是使用。如果你安装和运行软件但不销售它,然后你没有任何需求满足。分布是当你需要检验遵从性。

开源的分布是什么?

分布是什么?如果您的组织可以传达软件其他实体,通常是分布。例如,如果您的组织使得电子设备嵌入式软件在开放源码许可和卖给客户,这是分布。根据许可,您可能需要包括一个注意到软件,或者你可能需要使源代码可用于客户请求。

至少一个开源许可,Affero GNU公共许可证(AGPL)分布的概念扩展到包括通过网络交互。所以,如果你使用“AGPL”软件在一个SaaS提供,可能需要你分发源代码或向用户提供一种机制用于分发源代码SaaS。

所以,如果你的组织船只开放源码许可下软件,那么你需要有一个计划符合许可要求。如果你简单地使用开源软件,也许你有一堆服务器运行Linux和开源数据库MySQL,但不要分发软件?然后你没有任何特殊要求可担心的。

最流行的开放源码许可

OSI已经批准了不少遵从osd的许可,但在实践中,你会看到只有少数人在使用。大多数开源软件使用四个或五个宽容协议之一(Apache 2.0,麻省理工学院,BSD 2,或BSD 3是最有可能)或互惠GPL变体之一。

这些许可证是容易理解的。你能找到足够的指导工作。

终极指南开源数据库

eula,另一方面,是标准的和不断变化的。如果你使用苹果软件,例如,你可能熟悉不得不同意EULA改变每次更新您的软件。如果你使用专有的企业软件,它可能有限制和合规需求跟踪你部署它。

关于eula的好消息是,你不必担心修改或分布——因为你不可以这样做,你不需要问做什么如果你修改,想分发。问题解决了!

所以…这是安全的吗?

当然,真正的答案是令人失望的,但现实的“视情况而定”。开源软件并不是天生比专有软件安全或更不安全。

雷竞技下载官网Percona数据库软件解决方案

订阅
通知的
客人

0评论
内联反馈
查看所有评论