Linux的用户与用户组(权限管理)

时间:2022-06-14 21:52:10

linux用户与用户、权限管理

用户管理:
1、useradd 创建用户
  -c 指定用户描述
  -d 指定家目录 默认家目录 /home下同名的目录
  -g 指定主组
  -G 指定附加组
【注意:一个用户主组只能有一个,而附加组可以有多个】
  -s 指定shell程序
特殊:/sbin/nologin --> 不容许登陆系统的用户
  -u 指定UID
  -M 不创建家目录

2、userdel
  -r 带着家目录一块删除

3、usermod - 修改
  -c -d -m -g -G -s -u -o(容许UID相同,和-u一起使用)

4、passwd
  -l lock
  -u unlock
  -d 删密码

  *echo "密码" | passwd --stdin "用户名"* 一步创建用户名和密码

组管理:
groupadd
  -g 修改组ID
  -o 容许重复
groupdel 删除组属性
groupmod 修改组属性
  -g
  -o
  -n 修改组名
  -p 指定组密码
【注意:如果一个文件输入这个用户的附加组,而你要访问这个文件,别人就可以为这个组设置密码;】

常用文件
/etc/passwd
uname:x:uid:gid:描述:家目录:shell程序
超级用户 - root
系统用户 1-499 1-999 普通用户 500 - 65535 1000-65535
/etc/shadow
uname:uid:密码:各种时间...
。。。
脚本文件
/etc/group
组:组密码:组ID:附加组
/etc/gshadow
。。。
/etc/skel
这个目录下的文件均会被复制到每一个普通用户的家目录中,一般用来做警告;

==============================================================

用户权限:
r w x
读写执行
4 2 1
r 100
w 010
x 001

chmod [a|o|g|u] [+|-] 文件
chown :user10 文件
chown user10: 文件
chown user10:user10 文件

===================================================

acl的授权管理:
通过权限管理,给指定用户添加指定权限;
setfacl -- 添加权限
setfacl -m u:用户名:所添加的权限 文件 //文件一定要是该用户的文件
setfacl -x u:用户名 文件 //取消文件权限
getfacl
查看acl添加的权限

特殊权限:
临时借权限;例如:有A B两个用户分别输入AA组和BB组;A创建了一个用户a.txt,B默认情况下去访问a.txt使用other;但是,我如果想要越权,借用A的权限去访问a.txt,就需要将SUID位置位为1;同时也可以,去借SGID的权限去访问这个文件;
粘粘位作用:授权给一个目录,在该目录下所有用户只能删除自己的文件,别人不能删除自己的文件;--给目录文件授予的;
SUID
chmod u+s 文件 //授予SUID的特殊权限
如果属主权限有 x 显示为 s
如果属主权限没有x 显示为S
【如何借位?】
SGID
chmod g+s 文件 //授予GUID的特殊权限
如果属主权限有 x 显示为 s
如果属主权限没有x 显示为S
【如何借位?】
Sticky
chmod o+t 文件 //授予粘粘位的特殊权限
如果属主权限有 t 显示为 s
如果属主权限没有T 显示为S
【如何借位?】

=============================================

su 授权
/etc/sudoers //在这个文件里面去添加权限即可;
su - / su
sudo