如何确保只有管理员可以更改密码

如何确保只有管理员可以更改密码

如何确保非管理员用户无法更改自己的密码?我只希望管理员可以这样做。

答案1

您可以从二进制文件中删除 SETUID 位passwd

sudo chmod u-s /usr/bin/passwd

尽管我们不推荐这样做。

/usr/bin/passwd二进制文件是 SETUID 可执行文件,所有者为root,因此当passwd被任何人执行时,它都以 的身份运行(因此可以对、文件root进行必要的更改)。通过删除 SETUID 位,我们删除了此功能。/etc/passwd/etc/shadow

相关内容