当使用`sudoers`文件授予`sudo`访问权限时,`apt-get install`命令有多安全?

3
如果我在我的Linux机器上(Ubuntu11.10)有十几个用户,给每个用户sudo访问apt-get install的安全问题是什么?
我希望我的用户能够自由安装和使用程序,而不用每次都发电子邮件给我。然而,apt-get命令会不会导致问题?如果是这样,可以提供一些例子吗?
3个回答

3
这很大程度上取决于您的用户可以使用哪些软件库。如果您允许用户将自己的存储库添加到 /etc/apt/sources.list 或 /etc/apt/sources.list.d/*,那么您就给了他们一个无限制的 root 帐户。如果您坚持使用默认的 Ubuntu 存储库和默认的 Ubuntu 软件包,则相对安全——至少我不知道有哪些软件包会安装明显不安全的 setuid 程序或明显不安全的守护程序,我希望 Ubuntu 安全团队会认真处理任何此类漏洞。更新:Ubuntu 提供几种不同类型的存储库:several different kinds of repositories
                    Free software    Almost free software    Proprietary software
Ubuntu Supported       main             restricted
Community Supported    universe                                 multiverse
Vendor Supported                                                  partner

mainrestricted中的所有内容都得到了Ubuntu安全团队的很好支持和审核。 universemultiverse没有包含在CD / DVD中,Ubuntu安全团队会尽最大努力提供支持(根据我的经验,这种支持相当不错,但他们不会为其中任何内容提供长期支持)。

partner中的所有内容都是直接从软件供应商那里传递而来,没有经过Ubuntu安全团队的任何监督努力(尽管他们会严格要求不安全产品的供应商)。由于供应商希望保持易用性(并且总体上是诚实的),因此他们不会故意做出愚蠢的事情来危及您的系统安全。

由于轻松设置自己的存储库,因此重要的是确保不受信任的用户无法将其自己的存储库添加到apt中。


我更倾向于Ubuntu默认设置。但是我不太了解apt-get的工作原理。据我所知,它安装二进制文件。但是谁决定哪些内容列入“官方二进制文件”列表?是否有一组12个人秘密会面并制定此列表? - puk

2

apt-get通常是完全无害的,它只能安装和下载文件。

最坏的情况是有人意外安装了恶意软件。


Sarnold解决了我的问题,但我想知道谁有权利宣传他们的程序?如果我创建了一个程序,在下载时使用sudo apt-get install puk,它基本上会发出命令rm -f -r /。这种情况可能发生吗? - puk
这种情况确实可能发生,无论是在已安装的程序中还是通过软件包的后安装脚本。这就是为什么坚持使用知名度高的流行资源可能是个好主意的原因。 - sarnold

1
如果你的意思是“用户现在可以以root身份运行任何他们喜欢的东西”,那么答案是肯定的——因此这是不安全的
有一些方法可以从dpkgrpm运行shell。例如:dpkg会在配置文件发生冲突时提示,其中一个选项是启动shell来检查情况。如果通过sudo运行了apt-get,那么这将作为root启动一个shell
同样,如果您可以从工具中运行编辑器,因为大多数编辑器允许您从其中运行任意shell命令(例如,在vi中使用!command)。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接