读完这个:https ://stackoverflow.com/questions/11700690/how-do-i-completely-remove-root-password我的印象是一个空白的 root 密码,就像修改/etc/shadow文件一样根条目是这样的:
root::0:0:99999:7:::
应该允许我在没有提示输入密码的情况下 su 到 root。
请注意,我不是在寻找一种实用或安全的方法来做到这一点。我知道公钥身份验证是通过 authorized_keys 和 SSH 以理智的方式执行此操作的可行方法。这不是这个问题所关心的。
预期的行为是不提示输入密码或至少在提示时接受空白密码(输入密钥,仅此而已)应该允许用户成为 root。
实际行为是用户确实收到输入密码的提示,并且不接受空白密码(输入密钥)。我也试过su -
,,su root
。su - root
相同的行为。为了确定我确实更改了影子文件,我还尝试了我的旧密码,但它也不起作用,尽管只是一个影子文件的猫应该足以确认这个更改确实被执行了。从我的 shadow.bak 恢复原始影子文件恢复了原始功能。
这是在 Debian 9 系统上,来自 util-linux 2.32.1 的 su。
我的语法不正确吗?是否应该root::0:0:99999:7:::
不再能够使用空白密码?从什么时候删除的?
由于
su
通常是通过pam_unix配置的,因此在 Debian 系统上通常使用nullok_secure指令进行配置:将该默认值更改为 just
nullok
应该可以启用无密码su
使用。