我看到了很多有趣的程序,这些程序只能通过在系统中添加“ PPA”来获得,但是,如果我正确理解的话,我们应该保留在官方“存储库”中,以便将软件添加到系统中。

新手有什么办法可以知道“ PPA”是否安全还是应该避免?用户在使用PPA时应了解哪些提示?。

评论

另请参阅:askubuntu.com/questions/7662/…

您可以检查是否也有一个快速的软件包。它们往往受到安全规则的限制。尽管一般问题是相同的(您需要信任发布者),但是您必须显式地授予某些快照某些权限。

#1 楼

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个用户说我的PPA比Scott Ritchie在winehq官方网站上提供的ppa:ubuntu-wine / ppa糟透了。它有成千上万的用户(包括我)使用他的PPA并信任他的工作。这是一项落后了数年的工作。

如何更新PPA-假设您使用的是Ubuntu 10.04或10.10,并且您想使用特殊的PPA。您发现该PPA的最新更新是20年前。您使用THAT PPA的机会为空。为什么?。因为PPA所需的软件包依赖项很旧,并且更新后的软件包依赖项更改了太多代码,以至于如果您将该PPA的任何软件包安装到系统中,它们将无法与PPA一起使用,并且有可能破坏您的系统。

如果PPA想要使用THAT PPA,更新PPA的方式将影响使用PPA的决定。如果不是这样,他们宁愿去寻找另一个最新的。您不希望Banshee 0.1或Wine 0.0.0.1或OpenOffice 0.1 Beta Alpha Omega Thundercat Edition与最新的Ubuntu一起使用。您需要的是一个已更新到当前Ubuntu的PPA。请记住,PPA提到了要使用的Ubuntu版本或所使用的多个Ubuntu版本。

作为示例,这里是Wine PPA支持的版本的图像:



在这里您可以看到从恐龙开始就支持此PPA。

如果PPA维护者倾向于将特定软件包的最新,最先进和最前沿的版本推入PPA,则有关PPA更新的一小点缺点。不利的一面是,如果您要测试最新的内容,则会发现一些错误。尝试坚持使用已更新为稳定版本而非不稳定,测试或开发版本的PPA,因为它可能/将包含错误。拥有最新消息的想法也是为了测试,并说出发现了什么问题并加以解决。日常Xorg PPA和Daily Mozilla PPA就是一个例子。如果您每天获得有关X.org或Firefox的每日更新,则将获得3次每日更新。这是因为要进行的工作,如果您使用他们的日常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-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质量软件可能会损坏整个系统(在最坏的情况下)。杰里米(Jeremy)提到了许多例子。

评论


您是否需要安装大量PPA才能获得诸如春分,基本等主题?

– abel
2011年8月13日在17:42

是。它适用于任何PPA。请记住,PPA是一种通过某个人来升级他们的程序来更新程序或程序组的简便方法。因此,这里是有人专门花费时间进行更新或与最新/旧系统兼容的地方。但是,由于这样做是人的,所以途中可能会出错。

–路易斯·阿尔瓦拉多(Luis Alvarado)
11年8月13日在21:40

如何发现PPA有多少用户?

–达明
2013年9月16日下午3:57

添加PPA是否会给黑客带来一些漏洞?

–床垫
18年4月28日在10:25

@mathmaniage源代码必须由系统上载和构建,因此可以随时检查源代码。

–肯·夏普
19年6月26日在18:00

#2 楼

要在启动板上开发PPA,贡献者必须已经签署了ubuntu行为准则。这表示开发人员必须遵守最低标准。

通常,人们应咨询ubuntuforums,以了解谁使用了特定的ppa,以及是否可能引起任何问题。

对于“新手”或“菜鸟”-我的最佳建议是避免使用PPA,直到您确信自己了解命令行的一些知识,潜在的错误消息以及一些如何诊断问题的知识为止。 />
要消除ppa的问题,大多数时候可以使用“ ppa_purge”。如果您感到紧张,请考虑使用诸如clonezilla之类的工具来备份计算机的映像。这样,如果出现问题并且无法解决问题,至少您可以使用一种快速的方法将计算机恢复到开始播放之前的状态。

话虽这么说,ppa是获取最新版本的软件非常有用-特别是对于那些不尝试每6个月升级一次并坚持使用LTS版本的ubuntu的用户。

评论


我希望您的回答在顶部,仅是对新手的建议。 :(

–脑袋
2013年9月5日23:42

@fossFreedom:如果我通过ppa或apt-get install实用程序安装,我会收到自动更新吗

–拉贾特·古普塔(Rajat Gupta)
2013年9月14日12:32



@ user01-如果创建PPA的人使用新版本更新了软件包,是的-如果您先添加了PPA,然后apt-get install软件包,则将自动获得更新。

–fossfreedom♦
2013年9月14日在12:39

当然,恶意用户不会因为必须签署行为准则而被阻止...

– evilsoup
2014年8月5日14:38

备份不会使您免于数字盗窃(例如,恶意的PPA将您的浏览器Cookie或ssh密钥发送回了家)。如果您真的感到紧张,则可以在虚拟机,容器或schroot中安全地安装和运行PPA。

– joeytwiddle
17年1月2日在7:26

#3 楼

正如已经说过的,这不仅仅是恶意软件的问题。同样,某些软件实际上可能仍处于测试阶段,尚未准备好用于生产。如果安装它并依靠它完成工作,则可能会发现它有故障,不可靠并且可能崩溃-从而使您无法完成工作。

其中一些可能也没有与Ubuntu的其他方面(例如Unity或Gnome)相处融​​洽,会导致难以跟踪的问题,甚至可能使您的系统不稳定。

这不是因为软件不好,而是因为它可能尚未经过完全测试,或者是因为它已经可用,以便人们可以对其进行测试,但尚未打算作为生产软件发布。因此,尽管其中的某些功能确实非常不错,但您应该谨慎使用。

几个月前,我从一个特定的PPA安装了一个推荐的程序包,它浪费了我的系统,以至于我不得不重新安装Ubuntu 。我是新用户,不知道该怎么办。有了更多的知识,我可能能够解决问题并无需重新安装就可以还原它(尽管这对我学习Ubuntu也很有用,但是如果我保存在我的计算机上,那我会丢失它的) 。

因此请小心,提出问题,进行频繁备份(!!!),并知道不太可能(尽管并非不可能)恶意软件。

#4 楼

其他人在这里列出的所有关注点都非常重要。就是说,由于它是开源的,因此我们可以准确地告诉您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


该命令的输出大约三百行,因此,我将其放置在pastebin上,而不是直接放置在窗口中。现在,由于我并不真正了解C ++,所以我不能保证代码的性能,但是它似乎在执行它所声称的内容,而不是恶意的内容。

评论


+1,但您的pastebin链接已损坏。

–unforgettableidSupportsMonica
2015年12月4日在20:22

这是一个很好的示例,说明如何检查PPA软件包已完成的操作。到pastebin的链接完全无关紧要。 +1

–肯·夏普
19年6月26日在18:02

#5 楼

PPA是一个Web文件夹,其中包含可以安装的软件。确实没有那么复杂。安装软件包时,请使用root特权执行此操作,并且该软件包具有运行的脚本,因此它们以root身份运行。这意味着安装任何软件都是危险的,您确实需要信任开发人员或发行人。

定期轮询apt存档(无论是PPA还是其他格式),以获取对已安装软件的更新。这样做的“问题”是,任何人都可以提供您已安装的更新软件包。例如,您可以添加PPA以获得漂亮的主题并自动更新该主题。但是,一旦您添加了该存储库,所有者就可以添加一个打补丁的openssh-server软件包,该软件包将在Ubuntu中显示为更新。这可以在添加PPA一年后完成,因此您需要注意更新。

PPA系统确实可以防止第三方篡改软件包,因此,如果您确实信任开发者/发行者,则PPA是非常安全的。例如,如果您安装了Google Chrome浏览器,则他们会添加一个PPA,以便您会收到自动更新。他们添加了“ deb http://dl.google.com/linux/chrome/deb/稳定主程序”。如果您使用的DNS服务器被黑客入侵,将dl.google.com指向其他位置,则他们可以将已补丁的软件推送给所有安装Chrome的人。但是Ubuntu无法拒绝安装它们,因为它们无法使用Google的私钥进行签名。因此,就此而言,PPA非常安全。

无法说PPA是安全的还是不安全的。这取决于使用它分发软件的人员。有了免费软件,人们就可以查看源,看看它是否安全。当很多人使用档案(例如Ubuntu常规档案)时,您就会得到同行评审。拥有很少用户的小型档案馆没有这样做,因此它们的可信度较低。主要的教训是,无论您使用什么系统,在安装软件时都应该小心。

#6 楼

在路易斯·阿尔瓦拉多(Luis Alvarado)的答案的基础上,您应该意识到以下风险:恶意软件包-软件包可能会危害您。对于他们来说,这很容易,因为他们可以使用管理权限运行任何代码。

质量差或软件不兼容-应用程序可能无法正常运行。它可能会因例如干扰其他软件,破坏您的数据或泄露私人信息而意外造成损害。

,并且您应注意以下因素:



维护者的诚实-维护者是否可能暗中伤害您?

维护者的安全性-维护者是否容易受到第三方的攻击?

维护人员的可靠性-维护人员是否会在合理的时间内响应更新需求?他们是否致力于长期维护PPA?

存储库的安全性-软件包是否由维护者签名?

软件的性能-软件缺陷吗? -free并且与您的系统兼容吗?


#7 楼

不检查PPA上的软件包是否包含恶意软件。因此,尽管有人可能在为您打包XBMC之类的东西,但他们也很容易添加一些间谍软件/恶意软件。这就是为什么您不应该仅添加任何随机PPA的原因。

评论


你能说XBMC到底是什么吗,我是一个新的ubu

–内核恐慌
2011年12月1日于20:25

XBMC是媒体中心软件。这是好又安全的软件。他仅以它为例,它可以是任何软件。

–匿名
2011年12月1日于20:29

恶意软件在ubuntu中可以做什么,应该对所有事情都征得许可?

–kernel_panic
2011年12月1日在20:30

安装完成后(即,授予其将文件复制到系统目录并运行自定义脚本的root权限),它就可以对系统执行任何操作。因此,从受信任的来源安装软件包很重要。

–安排
2011年12月1日20:39

不正确安装软件时,您是root用户。获得许可并开始做坏事是很容易的。

–tgm4883
2011年12月1日于20:40

#8 楼

添加ppa并通过它安装程序时。

基本上,您可以将该程序驻留在允许的可执行区域(/ bin / / sbin / / usr / bin /)中。

现在,如果程序本身就是某种恶意软件,那么系统就不会抱怨它,因为您是添加ppa的人,因为它值得信赖。

当程序来自Ubuntu存储库时,它们就是首先检查(我想透彻地说,但我不知道:P),以便确保来自Ubuntu系统信息库的那些程序肯定没有恶意软件/间谍软件。

对于其他任何ppa,取决于您/用户决定是否信任它。

评论


恶意软件在ubuntu中可以做什么,应该对所有事情都征得许可?

–kernel_panic
2011年12月1日于20:27

在安装软件时,它将要求获得root许可(屏幕变暗,然后输入密码)。在这一点上,它可以做任何事情:从包装盒中删除所有内容,安装键盘记录程序,将桌面背景更改为hello kitty。

– SCdF
2011年12月1日于20:29

@sanjayasanjuubuntu:在安装时会请求允许其驻留在可执行区域中,一旦存在,它便可以轻松访问任何非Su信息。有些程序需要su权限才能执行,但是,如果程序本身在打包时添加了额外的行李(读取恶意软件),则在您输入密码时它可以毫无问题地执行。

–wisemonkey
2011年12月1日于20:35

开发人员PPA是最安全的路线,还需要在Launchpad上查看贡献者的持续时间。这些因素保证了使用PPA进行最新程序的安全,稳定的系统。我发现这条路线可以使我的LTS在我使用的特定新版本程序中长期运行。

– Arup Roy Chowdhury
15年10月15日在7:30