Rob Asked: 2011-04-18 08:31:22 +0800 CST2011-04-18 08:31:22 +0800 CST 2011-04-18 08:31:22 +0800 CST 将 PPA 添加到我的系统是否安全?需要注意哪些“危险信号”? 772 我看到很多有趣的程序只能通过向系统添加“PPA”来获得,但如果我理解正确,我们应该留在官方“存储库”中以向我们的系统添加软件。 新手有什么方法可以知道“PPA”是否安全或是否应该避免?用户在处理 PPA 时应该了解哪些提示? security 8 个回答 Voted Best Answer Luis Alvarado 2011-04-18T09:57:46+08:002011-04-18T09:57:46+08:00 PPA(个人软件包存档)用于将特定软件包含到您的 Ubuntu、Kubuntu 或任何其他与 PPA 兼容的发行版中。PPA的“安全性”主要取决于三件事: 谁制作了 PPA - 来自 WINE 或 LibreOffice 的官方 PPA,例如ppa:libreoffice/ppa和我自己创建的 PPA 并不相同。你不知道我是 PPA 维护者,所以信任问题和安全性对我来说非常低(因为我可能制作了损坏的包、不兼容的包或其他任何不好的东西),但是对于 LibreOffice 和他们在他们的网站上提供的 PPA , 这给了它一定的安全网。因此,取决于谁制定了 PPA,他或她制定和维护 PPA 的时间将在一定程度上影响 PPA 对您的安全性。上述评论中提到的 PPA 未经 Canonical 认证。 有多少用户使用了 PPA - 例如,我的个人 PPA 中有一个来自http://winehq.org的 PPA。你会相信我有 10 个用户确认使用我的 PPA,其中有 6 个说它比 Scott Ritchie在官方 winehq 网站上提供的ppa:ubuntu-wine/ppa更糟糕。它有成千上万的用户(包括我)使用他的 PPA 并信任他的工作。这项工作已经落后了几年。 您可以使用PPA Stats网页查看 PPA 的下载次数。 PPA 的更新程度- 假设您使用的是 Ubuntu 10.04 或 10.10,并且您想使用那个特殊的 PPA。您发现该 PPA 的最后一次更新是在 20 年前。哦,您使用该 PPA 的机会是空的。为什么?。因为 PPA 需要的包依赖项非常旧,并且可能更新的依赖项更改了太多代码,以至于它们无法与 PPA 一起使用,并且如果您将该 PPA 的任何包安装到您的系统,可能会破坏您的系统。 如果他/她想使用那个 PPA,那么更新的 PPA 如何影响使用它的决定。如果不是,他们宁愿去寻找另一个更新的。您不想要带有最新 Ubuntu 的 Banshee 0.1 或 Wine 0.0.0.1 或 OpenOffice 0.1 Beta Alpha Omega Thundercat Edition。你想要的是一个更新到你当前 Ubuntu 的 PPA。请记住,PPA 提到了 Ubuntu 版本的用途或多个 Ubuntu 版本的用途。 作为一个例子,这里是 Wine PPA 支持的版本的图像: 在这里你可以看到这个 PPA 从 Dinosaurs 开始就被支持了。 如果 PPA 维护者倾向于将特定软件包的最新、最伟大和最前沿的版本推送到 PPA 中,那么关于 PPA 如何更新的一件坏事。不利的一面是,如果你要测试最新的东西,你会发现一些错误。尝试坚持使用更新到稳定版本而不是不稳定、测试或开发版本的 PPA,因为它可能/将包含错误。拥有最新的想法也是为了测试并说出发现了什么问题并解决它们。这方面的一个例子是每日 Xorg PPA 和每日 Mozilla PPA。如果您获得日报,您将获得大约 3 次 X.org 或 Firefox 的每日更新。这是因为在那里投入的工作,如果您使用他们的日常 PPA,这意味着您希望帮助寻找错误或开发,而不是用于生产环境。 基本上坚持这3个,你会安全的。始终寻找 PPA 的制造商/维护者。始终查看是否有许多用户使用过它,并始终查看 PPA 的更新情况。像OMGUbuntu、Phoronix、Slashdot、The H、WebUp8甚至在 AskUbuntu 中的地方都是很好的来源,可以找到许多用户和文章谈论和推荐他们测试过的一些 PPA。 稳定的 PPA 示例——根据我的经验,LibreOffice、OpenOffice、Banshee、Wine、Kubuntu、Ubuntu、Xubuntu、PlayDeb、GetDeb、VLC 都是不错且安全的 PPA。 半稳定 PPA - X-Swat PPA 是介于出血边缘和稳定之间的中间 PPA。 Bleeding Edge PPA - Xorg-Edgers 是一个前沿 PPA,尽管我应该提到,在 12.04 之后,这个 PPA 变得越来越稳定。我仍然会将它标记为最前沿,但它对于最终用户来说足够稳定。 可选 PPA - Handbrake在这里为用户提供了一种选择方式,您想要一个稳定的版本还是您想要最前沿的(也称为快照)版本。在这种情况下,您可以选择要使用的内容。 请注意,在将 X-Swat ppa 与 Xorg-Edgers PPA 一起使用的情况下,您将得到两者之间的混合(优先于 Xorg-Edgers)。这是因为两者都试图包含几乎相同的包,因此它们将相互覆盖,并且只有最新的一个会显示在您的存储库中(除非您手动告诉它从 X-Swat 获取包)。 当您将某些 PPA 添加到存储库时,它们可能会更新您的某些包,因为它们会用自己的版本覆盖某个包,以使 PPA 软件在您的系统上正确运行。这可能是一些代码包、python 版本等。其他如 LibreOffice PPA 将从您的系统中删除所有存在的 OpenOffice 以在那里安装 LibreOffice 包。基本上阅读其他用户对特定软件包的评论,并阅读该软件包是否与您的 Ubuntu 版本兼容。 正如 Jeremy Bicha 在下面的评论中所建议的那样,一些前沿(保持最新的 PPA,包括在 PPA 中添加 Alpha、Beta 或 RC 质量软件)可能会损坏您的整个系统(在最坏的情况下)。杰里米提到了很多例子。 fossfreedom 2011-04-18T09:27:21+08:002011-04-18T09:27:21+08:00 要在启动板上开发 PPA,贡献者必须签署ubuntu 行为准则。这意味着开发人员必须遵守最低限度的标准。 通常人们应该咨询 ubuntuforums 以查看谁使用了特定的 ppa 以及它们是否会导致任何问题。 对于“新手”或“菜鸟”——我最好的建议是避免使用 PPA,直到您确信自己了解有关命令行的一些内容、潜在的错误消息以及如何诊断问题的一些内容。 要消除 ppa 引起的问题,您大多数时候可以使用“ ppa_purge ” 如果您感到紧张,请考虑使用clonezilla之类的工具对您的计算机进行映像备份。这样,如果出现问题并且您无法解决它,至少您可以快速将计算机恢复到开始播放之前的状态。 话虽如此,ppa 对于获取最新版本的软件非常有用——尤其是对于那些不尝试每 6 个月升级一次并坚持使用 ubuntu 的 LTS 版本的人。 andrewsomething 2012-06-06T06:14:50+08:002012-06-06T06:14:50+08:00 其他人在这里列出的所有问题都非常重要,需要理解。也就是说,由于这是开源的,我们可以准确地知道 PPA 与 Ubuntu 中的软件包版本相比发生了哪些变化。我们将使用此副本中的 PPA作为示例。 首先,我们将从 PPA 中获取源代码,该dget工具将下载 Debian 源代码包的所有部分,并提供dsc文件链接: dget -u https://launchpad.net/~anton0/+archive/unity/+files/unity_5.12-0ubuntu2~ppa1.dsc 我通过单击“查看包详细信息”找到了该链接: 接着: 接下来,我们将在 Ubuntu 存档中获取软件包的源代码: apt-get source unity 最后,我们debdiff来看看这两个包的源码的区别: debdiff unity_5.12-0ubuntu1.1.dsc unity_5.12-0ubuntu2~ppa1.dsc 该命令的输出大约有 300 行长,所以我将它放在一个 pastebin中,而不是直接放到窗口中。现在,我不能保证代码有多好,因为我并不真正了解 C++,但它似乎在做它声称的事情,而不是任何恶意。 Kelley 2011-12-02T12:52:32+08:002011-12-02T12:52:32+08:00 正如已经说过的,这不仅仅是恶意软件的问题。还有一些软件可能真的还处于测试阶段,还没有准备好投入生产使用。如果您安装它并依靠它来完成工作,您可能会发现它有缺陷、不可靠并且可能崩溃——让您没有完成的工作。 其中一些也可能无法与 Ubuntu 的其他方面(例如 Unity 或 Gnome)配合得很好,从而导致难以追踪的问题,甚至可能使您的系统不稳定。 这并不是因为该软件不好,而是因为它可能还没有经过全面测试,或者因为它是可用的,以便人们可以测试它,但还没有打算作为生产软件普遍发布。因此,您应该谨慎使用,尽管其中一些确实非常好。 几个月前,我从一个特定的 PPA 安装了一个推荐的软件包,它破坏了我的系统,以至于我不得不重新安装 Ubuntu。我是新用户,不知道还能做什么;有了更多的知识,我可能能够解决问题并在不重新安装的情况下恢复它(尽管这对我学习 Ubuntu 也很有用,但如果我在我的机器上保存了工作,我会丢失它) . 所以要小心,提出问题,经常备份(!!!),并知道恶意软件不太可能(尽管并非不可能)。 Jo-Erlend Schinstad 2011-08-30T10:50:26+08:002011-08-30T10:50:26+08:00 PPA 是一个 Web 文件夹,其中包含您可以安装的软件。它真的没有比这复杂得多。当您安装一个包时,您需要使用 root 权限来执行此操作,并且该包有运行的脚本,因此它们以 root 身份运行。这意味着安装任何软件都是危险的,您确实需要信任开发人员或分销商。 定期轮询 apt 存档(PPA 或其他方式)以获取您已安装的软件的更新。这样做的“问题”是任何人都可以提供您已安装的较新软件包。例如,您可以添加 PPA 以获得漂亮的主题并自动更新该主题。但是,一旦您添加了该存储库,所有者就可以添加一个修补过的 openssh-server 包,例如,它将在 Ubuntu 中显示为更新。这可以在您添加 PPA 一年后完成,因此您需要注意更新。 但是,PPA 系统确实可以防止第三方篡改软件包,因此,如果您确实信任开发人员/分销商,那么 PPA 是非常安全的。例如,如果您安装 Google Chrome,那么他们会添加 PPA,以便您收到自动更新。他们添加了“deb http://dl.google.com/linux/chrome/deb/ stable main”。如果您使用的 DNS 服务器被黑客入侵,将 dl.google.com 指向其他地方,那么他们可以将修补软件推送给安装了 Chrome 的每个人。但 Ubuntu 会拒绝安装它们,因为它们无法使用 Google 的私钥进行签名。所以在这方面,PPA 是非常安全的。 不可能说 PPA 是否安全。这取决于使用它来分发软件的人。使用免费软件,人们可以查看源代码,看看它是否安全。当很多人使用存档时,比如 Ubuntu 常规存档,那么你就有了同行评审。用户很少的小型档案没有这个,因此它们的可信度较低。主要的教训是,无论您使用什么系统,安装软件时都应该小心。 ændrük 2013-11-07T09:48:11+08:002013-11-07T09:48:11+08:00 基于Luis Alvarado 的回答,您应该意识到这些风险: 恶意程序包——程序包可能会试图伤害您。这对他们来说很容易,因为他们可以以管理权限运行任何代码。 质量差或不兼容的软件——应用程序可能无法正常运行。它可能会因干扰其他软件、破坏您的数据或泄露私人信息等而意外造成损害。 你应该注意这些因素: 维护者的诚实——维护者会暗中伤害你吗? 维护者的安全性——维护者是否容易受到第三方的攻击? 维护者的可靠性——维护者会在合理的时间范围内响应更新需求吗?他们是否致力于长期维护 PPA? 存储库的安全性——包是否由维护者签名? 软件的性能——软件是否没有错误并与您的系统兼容? tgm4883 2011-12-02T12:16:37+08:002011-12-02T12:16:37+08:00 PPA 上的软件包不会检查恶意软件之类的东西。因此,虽然有人可能会为您打包 XBMC 之类的东西,但他们也很容易添加一些间谍软件/恶意软件。这就是为什么您不应该只添加任何随机 PPA。 wisemonkey 2011-12-02T12:22:41+08:002011-12-02T12:22:41+08:00 当您添加 ppa 并通过它安装程序时。 基本上,您允许将该程序驻留在允许的可执行区域(/bin/ /sbin/ /usr/bin/)中。 现在,如果程序本身是/具有某种恶意软件,那么系统不会抱怨它,因为您是添加 ppa 的人,因为它是值得信赖的。 当程序来自 Ubuntu 存储库时,首先会检查它们(我想说彻底,但我不知道:P),因此来自 Ubuntu 存储库的程序肯定没有恶意软件/间谍软件。 对于任何其他 ppa,由您/用户决定是否信任它。
PPA(个人软件包存档)用于将特定软件包含到您的 Ubuntu、Kubuntu 或任何其他与 PPA 兼容的发行版中。PPA的“安全性”主要取决于三件事:
谁制作了 PPA - 来自 WINE 或 LibreOffice 的官方 PPA,例如ppa:libreoffice/ppa和我自己创建的 PPA 并不相同。你不知道我是 PPA 维护者,所以信任问题和安全性对我来说非常低(因为我可能制作了损坏的包、不兼容的包或其他任何不好的东西),但是对于 LibreOffice 和他们在他们的网站上提供的 PPA , 这给了它一定的安全网。因此,取决于谁制定了 PPA,他或她制定和维护 PPA 的时间将在一定程度上影响 PPA 对您的安全性。上述评论中提到的 PPA 未经 Canonical 认证。
有多少用户使用了 PPA - 例如,我的个人 PPA 中有一个来自http://winehq.org的 PPA。你会相信我有 10 个用户确认使用我的 PPA,其中有 6 个说它比 Scott Ritchie在官方 winehq 网站上提供的ppa:ubuntu-wine/ppa更糟糕。它有成千上万的用户(包括我)使用他的 PPA 并信任他的工作。这项工作已经落后了几年。
您可以使用PPA Stats网页查看 PPA 的下载次数。
PPA 的更新程度- 假设您使用的是 Ubuntu 10.04 或 10.10,并且您想使用那个特殊的 PPA。您发现该 PPA 的最后一次更新是在 20 年前。哦,您使用该 PPA 的机会是空的。为什么?。因为 PPA 需要的包依赖项非常旧,并且可能更新的依赖项更改了太多代码,以至于它们无法与 PPA 一起使用,并且如果您将该 PPA 的任何包安装到您的系统,可能会破坏您的系统。
如果他/她想使用那个 PPA,那么更新的 PPA 如何影响使用它的决定。如果不是,他们宁愿去寻找另一个更新的。您不想要带有最新 Ubuntu 的 Banshee 0.1 或 Wine 0.0.0.1 或 OpenOffice 0.1 Beta Alpha Omega Thundercat Edition。你想要的是一个更新到你当前 Ubuntu 的 PPA。请记住,PPA 提到了 Ubuntu 版本的用途或多个 Ubuntu 版本的用途。
作为一个例子,这里是 Wine PPA 支持的版本的图像:
在这里你可以看到这个 PPA 从 Dinosaurs 开始就被支持了。
如果 PPA 维护者倾向于将特定软件包的最新、最伟大和最前沿的版本推送到 PPA 中,那么关于 PPA 如何更新的一件坏事。不利的一面是,如果你要测试最新的东西,你会发现一些错误。尝试坚持使用更新到稳定版本而不是不稳定、测试或开发版本的 PPA,因为它可能/将包含错误。拥有最新的想法也是为了测试并说出发现了什么问题并解决它们。这方面的一个例子是每日 Xorg PPA 和每日 Mozilla PPA。如果您获得日报,您将获得大约 3 次 X.org 或 Firefox 的每日更新。这是因为在那里投入的工作,如果您使用他们的日常 PPA,这意味着您希望帮助寻找错误或开发,而不是用于生产环境。
基本上坚持这3个,你会安全的。始终寻找 PPA 的制造商/维护者。始终查看是否有许多用户使用过它,并始终查看 PPA 的更新情况。像OMGUbuntu、Phoronix、Slashdot、The H、WebUp8甚至在 AskUbuntu 中的地方都是很好的来源,可以找到许多用户和文章谈论和推荐他们测试过的一些 PPA。
稳定的 PPA 示例——根据我的经验,LibreOffice、OpenOffice、Banshee、Wine、Kubuntu、Ubuntu、Xubuntu、PlayDeb、GetDeb、VLC 都是不错且安全的 PPA。
半稳定 PPA - X-Swat PPA 是介于出血边缘和稳定之间的中间 PPA。
Bleeding Edge PPA - Xorg-Edgers 是一个前沿 PPA,尽管我应该提到,在 12.04 之后,这个 PPA 变得越来越稳定。我仍然会将它标记为最前沿,但它对于最终用户来说足够稳定。
可选 PPA - Handbrake在这里为用户提供了一种选择方式,您想要一个稳定的版本还是您想要最前沿的(也称为快照)版本。在这种情况下,您可以选择要使用的内容。
请注意,在将 X-Swat ppa 与 Xorg-Edgers PPA 一起使用的情况下,您将得到两者之间的混合(优先于 Xorg-Edgers)。这是因为两者都试图包含几乎相同的包,因此它们将相互覆盖,并且只有最新的一个会显示在您的存储库中(除非您手动告诉它从 X-Swat 获取包)。
当您将某些 PPA 添加到存储库时,它们可能会更新您的某些包,因为它们会用自己的版本覆盖某个包,以使 PPA 软件在您的系统上正确运行。这可能是一些代码包、python 版本等。其他如 LibreOffice PPA 将从您的系统中删除所有存在的 OpenOffice 以在那里安装 LibreOffice 包。基本上阅读其他用户对特定软件包的评论,并阅读该软件包是否与您的 Ubuntu 版本兼容。
正如 Jeremy Bicha 在下面的评论中所建议的那样,一些前沿(保持最新的 PPA,包括在 PPA 中添加 Alpha、Beta 或 RC 质量软件)可能会损坏您的整个系统(在最坏的情况下)。杰里米提到了很多例子。
要在启动板上开发 PPA,贡献者必须签署ubuntu 行为准则。这意味着开发人员必须遵守最低限度的标准。
通常人们应该咨询 ubuntuforums 以查看谁使用了特定的 ppa 以及它们是否会导致任何问题。
对于“新手”或“菜鸟”——我最好的建议是避免使用 PPA,直到您确信自己了解有关命令行的一些内容、潜在的错误消息以及如何诊断问题的一些内容。
要消除 ppa 引起的问题,您大多数时候可以使用“ ppa_purge ”
如果您感到紧张,请考虑使用clonezilla之类的工具对您的计算机进行映像备份。这样,如果出现问题并且您无法解决它,至少您可以快速将计算机恢复到开始播放之前的状态。
话虽如此,ppa 对于获取最新版本的软件非常有用——尤其是对于那些不尝试每 6 个月升级一次并坚持使用 ubuntu 的 LTS 版本的人。
其他人在这里列出的所有问题都非常重要,需要理解。也就是说,由于这是开源的,我们可以准确地知道 PPA 与 Ubuntu 中的软件包版本相比发生了哪些变化。我们将使用此副本中的 PPA作为示例。
首先,我们将从 PPA 中获取源代码,该
dget
工具将下载 Debian 源代码包的所有部分,并提供dsc
文件链接:我通过单击“查看包详细信息”找到了该链接:
接着:
接下来,我们将在 Ubuntu 存档中获取软件包的源代码:
最后,我们
debdiff
来看看这两个包的源码的区别:该命令的输出大约有 300 行长,所以我将它放在一个 pastebin中,而不是直接放到窗口中。现在,我不能保证代码有多好,因为我并不真正了解 C++,但它似乎在做它声称的事情,而不是任何恶意。
正如已经说过的,这不仅仅是恶意软件的问题。还有一些软件可能真的还处于测试阶段,还没有准备好投入生产使用。如果您安装它并依靠它来完成工作,您可能会发现它有缺陷、不可靠并且可能崩溃——让您没有完成的工作。
其中一些也可能无法与 Ubuntu 的其他方面(例如 Unity 或 Gnome)配合得很好,从而导致难以追踪的问题,甚至可能使您的系统不稳定。
这并不是因为该软件不好,而是因为它可能还没有经过全面测试,或者因为它是可用的,以便人们可以测试它,但还没有打算作为生产软件普遍发布。因此,您应该谨慎使用,尽管其中一些确实非常好。
几个月前,我从一个特定的 PPA 安装了一个推荐的软件包,它破坏了我的系统,以至于我不得不重新安装 Ubuntu。我是新用户,不知道还能做什么;有了更多的知识,我可能能够解决问题并在不重新安装的情况下恢复它(尽管这对我学习 Ubuntu 也很有用,但如果我在我的机器上保存了工作,我会丢失它) .
所以要小心,提出问题,经常备份(!!!),并知道恶意软件不太可能(尽管并非不可能)。
PPA 是一个 Web 文件夹,其中包含您可以安装的软件。它真的没有比这复杂得多。当您安装一个包时,您需要使用 root 权限来执行此操作,并且该包有运行的脚本,因此它们以 root 身份运行。这意味着安装任何软件都是危险的,您确实需要信任开发人员或分销商。
定期轮询 apt 存档(PPA 或其他方式)以获取您已安装的软件的更新。这样做的“问题”是任何人都可以提供您已安装的较新软件包。例如,您可以添加 PPA 以获得漂亮的主题并自动更新该主题。但是,一旦您添加了该存储库,所有者就可以添加一个修补过的 openssh-server 包,例如,它将在 Ubuntu 中显示为更新。这可以在您添加 PPA 一年后完成,因此您需要注意更新。
但是,PPA 系统确实可以防止第三方篡改软件包,因此,如果您确实信任开发人员/分销商,那么 PPA 是非常安全的。例如,如果您安装 Google Chrome,那么他们会添加 PPA,以便您收到自动更新。他们添加了“deb http://dl.google.com/linux/chrome/deb/ stable main”。如果您使用的 DNS 服务器被黑客入侵,将 dl.google.com 指向其他地方,那么他们可以将修补软件推送给安装了 Chrome 的每个人。但 Ubuntu 会拒绝安装它们,因为它们无法使用 Google 的私钥进行签名。所以在这方面,PPA 是非常安全的。
不可能说 PPA 是否安全。这取决于使用它来分发软件的人。使用免费软件,人们可以查看源代码,看看它是否安全。当很多人使用存档时,比如 Ubuntu 常规存档,那么你就有了同行评审。用户很少的小型档案没有这个,因此它们的可信度较低。主要的教训是,无论您使用什么系统,安装软件时都应该小心。
基于Luis Alvarado 的回答,您应该意识到这些风险:
你应该注意这些因素:
PPA 上的软件包不会检查恶意软件之类的东西。因此,虽然有人可能会为您打包 XBMC 之类的东西,但他们也很容易添加一些间谍软件/恶意软件。这就是为什么您不应该只添加任何随机 PPA。
当您添加 ppa 并通过它安装程序时。
基本上,您允许将该程序驻留在允许的可执行区域(/bin/ /sbin/ /usr/bin/)中。
现在,如果程序本身是/具有某种恶意软件,那么系统不会抱怨它,因为您是添加 ppa 的人,因为它是值得信赖的。
当程序来自 Ubuntu 存储库时,首先会检查它们(我想说彻底,但我不知道:P),因此来自 Ubuntu 存储库的程序肯定没有恶意软件/间谍软件。
对于任何其他 ppa,由您/用户决定是否信任它。