Linux权限相关
2019-06-02 本文已影响0人
清风徐来_简
一、sudo权限
-
作用
root把本来只能超级用户执行的命令赋予普通用户执行
sudo的操作对象是系统命令 -
赋予权限步骤
1,
visudo
( 实际修改的是/etc/sudoers
文件 )
2,root ALL=(ALL) ALL
( 将权限信息写入 )
用户 被管理主机地址=(可使用的身份,ALL可以省略) 授权命令(绝对路径)
-
例子
user1 ALL=(ALL) /sbin/shutdown -r now
:可以执行这一条命令(命令越详细,可执行的范围越小)
user1 ALL=/usr/sbin/useradd
:允许添加用户
user1 ALL=/usr/bin/passwd
:允许设置密码(此句危险:普通用户可更改root用户密码)
user1 ALL=/usr/bin/passwd [A-Za-z]*, !/usr/bin/passwd "", !/usr/bin/passwd root
:允许设置密码(但是不能更改root用户密码) -
其他命令
su - user1
:切换用户
sudo -l
:查看可用的sudo命令
sudo 命令
:普通用户执行sudo赋予的命令
whoami
:查看当前使用的用户
hostname
:查看主机名
注意区分
主机名
和用户名
是两个不同的东西使用sudo赋予权限时一定要慎重,尽量写详细,将权限范围缩到最小
二、ACL权限
-
作用
当一个文件的权限分配不够用时,比如文件属主user,属组g1,其他,权限是750,user1不是主也不属于g1组,但是还得有执行权限,那就得使用这个特殊权限了 -
命令
setfacl -m u:user:r-x 文件
:给指定用户添加acl权限
setfacl -m g:group:r-x 文件
:给指定组添加acl权限
getfacl 文件名
:查看acl权限
setfacl -x u:user 文件
:删除指定用户的acl权限
setfacl -b 文件
:删除文件的所有acl权限
setfacl -m u:user:r-x -R dir/
:递归权限,只针对目录,dir下的文件同样有权限(小心权限溢出)
mask值:限制用户的最大权限。用户权限值和mask权限值做与运算,才是用户的真实权限