我在虚拟机中运行 Debian,为了方便起见,我想删除 root 上的密码(因为这个盒子发生什么并不重要)。互联网对此没有太大帮助,我认为这没关系,因为这通常不是您想做的事情!
我尝试了 passwd -d root,但 su 不接受空密码。我认为有某种 PAM 策略阻止了我,但我一直无法找到可行的解决方案。任何帮助表示赞赏!
(只是为了澄清:我不想总是以 root 身份运行。我想要一点意外预防,以防万一我发疯了rm -rf /
。只是,当我准备好以 root 身份运行时,我不想待第二次猜测。)
编辑:我也知道 sudoers hack。我只是想知道 Debian 中是什么阻碍了这一点。
答案1
答案2
通常,两者之间是有区别的根登录和根权限。
在第一种情况下,系统将您识别为 root,这意味着您实际上没有任何限制,以 root 身份登录通常比拥有 root 权限的用户危险得多,因为:
- 用户不能仅限于一组或一组预定义的操作/程序
- 所有的安全系统基本上都是无用的,包括系统日志,因为 root 用户可以删除或访问所有内容
- 如果您无法跟踪或信任您的日志,您可能无法回滚更改或有效保护数据
让用户横冲直撞可能从来都不是一个好主意,甚至管理员也不需要不受控制的权力来做自己的事情,因此许多发行版禁止 root 用户/etc/shadow
使用sudo
在没有 root 的情况下授予 root 权限的权利登录的用户还sudo
能够区分多个用户并将他们限制在一组明确定义的权限和组中。
有一个有趣的讨论这里,我还建议阅读一些有关该shadow
文件如何工作的内容。