今天,Ubuntu(和其他一些发行版)提供了一种安装软件的新方法,即snaps。它是与所有依赖项一起打包的软件,以某种容器化方式运行并自动更新。这可能听起来像是绝对是一个更安全的选择,但是当您考虑它时,它实际上取决于几个因素,并且可能最重要的是:
- 容器化听起来是件好事,但它究竟是一种什么样的容器化呢?它真的有帮助吗?另外,安装软件包时不会询问您要允许或禁止什么,所以我想应用程序本身决定了它想在系统上访问的任何内容。我想只有在应用程序受到开发人员(或打包它的人)正确限制的情况下,它可能会阻止利用某些漏洞,但它是否有助于抵御受损或恶意应用程序?
- snaps 的维护似乎要好得多,它们似乎都是最新的(最新的分支和补丁),并且在新版本可用时更新得很快。官方 repos 中的软件总是旧版本(尽管希望已修补,但从版本号中看不出来),因此不清楚在 repos 中修补的速度和内容(如果有的话)。然而 snaps 和 repos 的问题是:到底是谁在维护软件,供应链在这两种情况下是否同样安全(或不安全)?我尝试在官方 repos 中检查维护者是否有几个流行的包,它总是“Ubuntu Developers”(不管那是什么意思)。如果您对 snap (
snap find <whatever>
) 执行相同操作,您将看到许多不同的“发布者”(无论这意味着什么)。gimp
ffmpeg
,android-studio
还有很多其他的都是由“snapcrafters”出版的;vlc
由带有绿色复选标记的“videolan”发布(经过验证的发布者,无论“验证”是什么意思,因为目前甚至没有办法验证,我猜它只是“Canonical 的朋友”);keepassxc
由“keepassxreboot”发布;john-the-ripper
由“claudioandre-br”发布,他在 GitHub 上似乎是一个开发者,他对官方的 John The Ripper 进行了分叉和修补。所以这一切都非常混乱。
所以问题是:snap 是比官方 repos 更安全的替代品吗?如果用户想安装,比如说,Keepassxc,从官方 repos 或 snap 安装它会更安全吗?或者用户在做出选择之前需要检查什么?
请注意,例如 Keepassxc 的最新版本是 2.6.6(来自官方网站),并且 snap 提供了 2.6.6 版本(因此很容易看到这是完全修补的),而 Ubuntu 的官方 repos 有 2.4.3+dfsg.1 -1build1(我想并希望它是一个旧版本,已针对安全问题进行了全面修补,但从名称中并不清楚)。您肯定会很想从 snap 中安装它,直到您记得 snap 是一个相对较新的东西,我不知道我对整个过程有多少信任。这就是让我问这个问题的原因。