普通用户对/etc/passwd和/etc/shadow文件都没有写权限,为什么普通用户可以修改自己的密码?
关键的原因在于passwd这个命令的权限的特殊:s即SetUID权限。
所谓SetUID是指:当一个可执行程序(命令、脚本)具有SetUID权限,用户执行这个程序时,将以这个程序所有者的身份执行。
chmod u+s
chmod 4755
SetUID=4
相应的SetGID=2
chmod g+s
chmod 2755
查找具有SetUID或者SetGID的命令
fing / -perm -4000 -o -perm -2000
粘着位t=1:如果一个权限为777的目录呗设置了粘着位,每个用户都可以在该目录创建文件,但只可以删除自己是所有者的文件
比如/tmp。
chmod o+t
关键的原因在于passwd这个命令的权限的特殊:s即SetUID权限。
所谓SetUID是指:当一个可执行程序(命令、脚本)具有SetUID权限,用户执行这个程序时,将以这个程序所有者的身份执行。
chmod u+s
chmod 4755
SetUID=4
相应的SetGID=2
chmod g+s
chmod 2755
查找具有SetUID或者SetGID的命令
fing / -perm -4000 -o -perm -2000
粘着位t=1:如果一个权限为777的目录呗设置了粘着位,每个用户都可以在该目录创建文件,但只可以删除自己是所有者的文件
比如/tmp。
chmod o+t
chmod 1777
Linux用户类型
伪用户
用户组
/etc/group
用户组管理命令
修改用户信息
用户管理命令
批量添加用户
用户组管理命令
用户组权限实例