对于我个人笔记本上的个人 Linux,我通常将环境设置为以root身份自动登录即使在 X 或更低的运行级别下也是如此。我发现我的工作流程非常愉快和快速,不需要任何繁琐的输入su
或被sudo
密钥环或身份验证或其他东西询问。
到目前为止我还没有遇到过任何问题,所以为什么大多数人对此感到害怕?人们的担忧是否被高估了?当然,这假设用户知道他们在做什么并且并不真正关心系统可靠性和安全问题。
答案1
出于同样的原因,每个守护进程都应该拥有最低限度的权限。 Apache 可以以 root 身份运行。它被设计为执行一项任务,肯定不会发生任何不好的事情吗?
但假设 apache 并非没有错误。不时会发现错误。有时甚至可以是任意代码执行或类似的。现在,apache 以 root 身份运行,它可以访问任何内容——例如,它可以将 rootkit 加载到内核中并隐藏自身。
另一方面,编写用户级rootkit 非常困难。它必须覆盖ps
内部的不同程序(例如)/home
,这可能会因使用额外的磁盘空间而引起怀疑。它可能不知道确切的配置并忘记包含例如gnome-system-monitor
因此暴露自己。它必须覆盖bash
,tcsh
以及您碰巧使用的任何外壳(以启动自身)。它必须使用不同的配置,而不是“简单地”覆盖一堆回调。
考虑一下不久前在 Adobe Reader 中发现的任意代码执行行为。
其他原因是用户错误。最好在通过一个命令擦除整个磁盘之前发出警告。
第三个原因是外壳不同。应安装root shell,/
以备需要执行系统救援时使用。可以安装用户的 shell /usr
(例如用户可以使用 zsh)。
第四个原因是不同的程序不能以 root 身份运行。他们特别知道他们不应该这样做,因此您需要修补系统。
第五个原因是/root
不应该位于单独的分区上,而/home
可以(并且应该)。/home
由于各种原因有单独的帮助。
还:为什么不作为普通用户使用。通常情况下,您并不需要 root 权限。这是一个非常小的安全成本。
答案2
你也可以裸体骑摩托车,也可能不会发生任何事情。但我敢打赌,如果你撞坏自行车时你会感觉更好......
答案3
除了明显的安全点之外,很明显,您从未因在 shell 中错误输入命令或失误而对系统进行冲洗。如果它发生了,你就会明白为什么人们会对此感到恐慌。然后你会惊恐地哭泣,并意识到这是一次非常有教育意义的经历,但无论如何你都无法恢复你的系统。
一个想法:如果您在正常使用系统期间被要求输入 root 密码(即不安装软件包或执行某些其他系统管理任务),你这样做是错的。
答案4
采纳您对另一个答案的评论
但 Linux 是关于自由的,包括销毁自己的数据、隐私和安全的自由
甚至强迫人们通过sudo
,Linux 也提供了这种自由。您想要回避的整个安全论点是为了保护您免受某些事情的影响不是您(阅读:恶意程序或由恶意人员控制的程序)。
将其视为安全带。需要一秒钟才能使用。可以从其他白痴(以及你自己)手中拯救你的生命。
如果您不想一直输入密码,sudoedit /etc/sudoers
但如果您继续以 root 身份运行,有一天您可能会运行一些会破坏您的系统和所有数据的东西。
如果您很高兴知道即使像 Flash 这样蹩脚的东西也可以重新格式化您的计算机,那么这里没有人关心您做了什么。以 root 身份运行。