我有Ubuntu 14.04 LTS
我从这里下载了电报。该文件使用扩展名压缩tar.xz
。
我已经解压缩了该文件,并Telegram
使用普通用户(而非admin)运行该文件(无扩展名)。该应用程序启动并运行正常。
但是,Ubuntu为什么不告诉我“不要运行此应用程序,因为它不安全”?
运行不需要安装且双击即可轻松运行的应用程序真的安全吗?
像这样的应用又叫什么?他们叫什么名字?“便携式”?
我有Ubuntu 14.04 LTS
我从这里下载了电报。该文件使用扩展名压缩tar.xz
。
我已经解压缩了该文件,并Telegram
使用普通用户(而非admin)运行该文件(无扩展名)。该应用程序启动并运行正常。
但是,Ubuntu为什么不告诉我“不要运行此应用程序,因为它不安全”?
运行不需要安装且双击即可轻松运行的应用程序真的安全吗?
像这样的应用又叫什么?他们叫什么名字?“便携式”?
Answers:
该文件是二进制可执行文件。它已经从其源代码编译成您的CPU可以执行的形式,而您只需要请求执行它即可运行。
通常,在运行程序包管理器(例如APT)时下载的软件还包括预编译的二进制文件,因此这种文件没有什么特别之处。文件的打包可以做一些有用的事情,例如告诉包管理器二进制文件需要复制到文件系统中的哪个位置,并提供脚本来确保程序可以找到任何共享库和它所依赖的其他程序以及所需的环境。根据需要进行设置。
您可能认为此程序不安全的原因是,它来自未知来源,而来自Ubuntu存储库的软件包来自已知来源,并受到签名验证过程的保护,以确保其在进入系统时不会被篡改。
基本上,从未知来源下载和运行可执行文件是不安全的,除非您信任提供者并且可以验证下载是否完整无损。对于后一种情况,分发者可以提供某种校验和,您可以使用该校验和来检查他们上载的文件是否具有与您下载的文件相同的内容。
关于一件令人鼓舞的事情 特别是 Telegram的是它是开源的:
该软件已获得GPL v3许可。
源代码可在GitHub上获得。
这意味着任何人都可以阅读该程序的源代码,以确保它不会对您的系统造成不良影响。实际上,大多数最终用户都不希望花时间去做或学习如何做,而是阅读源代码来确保程序的安全性。尽管如此,我仍然对所涉社区充满信心,可以在开放源代码软件中找到安全漏洞和错误。
至于为什么Ubuntu不会抱怨该程序不安全的原因,那么让用户了解他们的可疑决定并不是Linux的传统。Linux系统通常被设计用来执行您要求的操作,而没有其他操作。用户被认为有责任了解安全问题和其他潜在的陷阱,并且几乎不会被警告他们即将损害或破坏系统。
我使用PPA for Telegram,请参阅此答案以了解安装Telegram的所有方法。PPA使用APT的签名验证机制,但是它们仍然存在一些风险,因为您信任维护者。PPA确实提供了一些便利,可以在您运行更新时进行更新(如果维护者更新了PPA),从而使程序包管理器知道您拥有该软件等。
下载(或以任何方式在本地复制)并在本地(从您的用户那里运行)的软件可以执行不需要管理员权限的任何操作。这包括删除您的(个人)文件,这对我们大多数人来说都是有害的。
如果您已登录任何内容,并且该软件以您的用户(同上)的身份运行,但还会考虑您可能已添加到sudoers文件中的脚本或命令。
如果您拥有管理员帐户,并且该软件要求您输入密码而您不小心提供了该密码,则可能会发生任何事情。
如果不提供密码,则潜在的损害将仅限于您自己的帐户。您不希望Ubuntu有意或无意地针对您运行的每个命令发出警告。
这就是为什么除非您完全理解代码,否则根本不应该从不知道是否可以信任它们的来源运行代码。