学文件的特殊权限Sudo-SUID-SGID-SBIT-chattr
sudo 给普通用户赋予管理员权限
在 / sbin/ /usr/sbin/ 此目录只有超级用户才能使用
sudo -l 显示自己的权限,及可以执行的命令
visudo 命令 查看 普通用户对一些文件的权限
第三行 root ALL=(ALL) ALL
用户名/组名(组名前面要加%) 被管理主机的地址 授权命名
user1 ALL=/sbin/shutdown -r now
注:就算赋予user1关机的权限还不能直接使用 shutdown -r now ,还得写完整 sudo /sbin/shutdown -r now
若user1 是 ALL=/sbin/shutdown,则可以使用shutdown全部命令
[user@localhost ~]$ shutdown -r now
User root is logged in on sshd.
Please retry operation after closing inhibitors and logging out other users.
Alternatively, ignore inhibitors and users with 'systemctl reboot -i'.
[user@localhost ~]$ sudo /sbin/shutdown -r now
root授权user1账户添加账户和设置初始密码的特权
修改 visudo文件
查询命令的绝对路径
whereis ueradd ,whereis passwd,whereis userdel
切换到该用户
su - 用户名
查看用户的允许命令是否生效
sudo -l
执行命令
sudo /usr/sbin/useradd user2
查看所有用户
/etc/passwd or /etc/shadow
SUID,SGID,SBIT权限的区别
SUID:只针对执行程序(命令)
SGID:针对执行文件(命令),也可对目录有效果
目录授权SGID权限,目录下创建的文件的所属组也是目录的所属组
SBIT:只针对目录文件
注:赋予文件/目录权限时是将X(执行)权限改为s
判断该文件是否有SUID/SGID/SBIT权限
若 -rws------ s在所有者,代表有SUID权限
若----rws--- s在所属组,代表有SGID权限
若-------rws s在其他者,代表有SBIT权限
SUID(set UID)
特点: 1、可执行的命令/脚本才能设定SUID权限
2、用户对程序有X执行权限,这样X符号变成S
3、sUID权限在程序执行时有效
作用:将该用户暂时UID改为0,暂时获得root权限
赋予权限: chmod u+s 、chmod g+s 、chmod o+t 文件名
[root@localhost ~]# vi 333
[root@localhost ~]# ls
111 123 123~ 222 333 333~ anaconda-ks.cfg install.sh
[root@localhost ~]#
[root@localhost ~]# vi 333
[root@localhost ~]# ls
111 123 123~ 222 333 333~ anaconda-ks.cfg install.sh
[root@localhost ~]#
S:代表设置失败,s:代表成功
4代表SUID,2代表SGID,1代表SBIT
注:chmod u+s 111 和 chmod 4755 的区别
前者是在添加111的所有者权限x改成s
后者直接重置111的所有者权限x改成s
SBIT(sticky bit)
特点:只对目录有效
用户对具有SBIT权限的目录有w和x权限
若没SBIT权限,对目录有w权限,则可以删除目录下文件
若有SBIT权限,对目录有w权限,只有root可以删除目录下文件,而用户只能删除自己建的文件
chmod 1755 txt1
文件系统属性chattr权限(可限制)
命令格式 : chattr [+-=] [选项] 文件/目录名
选项 : i 对文件:不允许对文件删除,改名,添加和修改数据;
对目录:只能修改目录下文件的数据,不允许建立和删除文件
a: 对文件:只能增加数据(vi不行,echo命令),不能删除和修改数据
对目录:只能建立和修改文件,不允许删除文件
添加文件i权限
注:用ls查看文件是查看不到i的标识的,只能用lsattr命令来查看文件i标识
查看目录权限要加 -d命令
语录:生命可以随心所欲,但不能随波逐流。--《猫的报恩》