Linux的用户与用户组(权限管理)
用户管理 useradd 创建用户
-c ---指定用户描述 -d---指定家目录,默认家目录/home下同名的目录
-g—指定主组 -G---指定附加组【一个用户啊主组只能有一个,但附加组可以有多个】
-s---指定shell程序 【特殊:/sbin/nologin---不允许登陆系统的用户】
-u—指定UID -M 不创建家目录
Userdel -r 带着家目录一起删除
Usermod -d指定家目录 -m移动 -u –o -g -G -s -c
Passwd -l锁定密码 -u解锁 -d 删除密码
Echo “密码”| passwd –stdin “用户名”
组管理:
Groupadd -g 修改组ID
-o 允许重复
Groupdel 删除组
Groupmod -g
-o
-n 修改组名
-p 指定组密码 【如果一个文件输入这个用户的附加组,而你要访问这个文件,别人就可以为这个组设置密码】
常用文件
/etc/passwd
Uname:x:uid:gid:描述:家目录:shell程序
系统用户1-499 1-999 普通用户 500-65535 1000-65535
超级用户root 0
/etc/shadow
Uname:uid:密码:各种事件…
/etc/group
组:组密码:组ID:附加组
/etc/gshadow
/etc/skel---这个目录下的文件均会被复制到每一个普通用户的家目录中,一般用来警告。
用户权限:r w x 读写执行 421
R 100 w 010 r 001
Chmod [a|o|g|u] [+|-] 文件
Chown 修改组权限 chown user1:文件 chown :user1文件 chown user1:user1文件
ACL的授权管理
Setfacl -m u:b:rw atest
Getfacl atest
通过权限管理,给指定用户添加指定权限
Setfacl -m u:用户名:所添加的权限 文件 //文件一定要是该用户的文件
Setfacl -x u:用户名 取消文件权限
Getfacl ---- 查看acl添加的权限
特殊权限
临时借位 例如 有A B 两个用户分别属于AA组和BB组;A创建一个用户a.txt,B默认情况下去访问a.txt使用other。当B想要访问a.txt,但是如果想要越权,借用A的权限去访问,需要将SUID位置为1;同时也可以,去借SGID的权限去访问文件。
粘粘位作用:授权给一个目录,在该目录下所有用户只能删除自己的文件,但是不能删除别人的文件,给目录文件授予的
SUID
Chmod u+s 文件 //授予SUID的特殊权限
如果属主权限有x 显示s
如果数主权限没有x 显示S
【如何借位的问题?】
SGID
Chmod g+s 文件 //授予SUID的特殊权限
如果属主权限有x 显示s
如果数主权限没有x 显示S
【如何借位的问题?】
Sticky
Chmod o+t 文件 //授予粘黏位的权限
Su 授权 find / -d
/etc/sudoers //在这文件里面添加权限即可
Su-
Sudo – 介入的权限 没有切换用户