Linux用户的用户名保存在/etc/passwd
文件中,密码保存在/etc/shadow
中。要禁止用户修改/重置密码,将这两个文件设置为只读即可:
chattr +i /etc/passwd chattr +i /etc/shadow
要允许修改密码,取消文件上的只读标记:
chattr -i /etc/passwd chattr -i /etc/shadow
注意
只设置/etc/passwd为只读不能阻止更改密码,因为更改密码只需更新/etc/shadow文件。将这两个文件设置为只读后,附加效果是无法新建新用户(新建用户会写入/etc/passwd)。例如使用yum安装MySQL,安装程序将无法新建mysql用户,从而无法正常启动MySQL服务。如果设置了文件只读后,建议在yum安装程序时关闭只读。
杂项
i表示immutable,即不可更改。关于文件属性的其他选项,请参考chattr的命令说明:man chattr
。