一、用户与组的管理
1.用户的配置文件
/etc/passwd: 存储用户的基本信息(排查可疑用户: cat /etc/passwd | grep /bin/bash)
/etc/shadow:存储用户的密码信息
2.用户组的配置文件
/etc/group: 存储用户组的基本信息
/etc/gshadow:存储用户组的密码信息
问题:如果我们要查看用户是否设置密码应该怎么做?cat /etc/shadow|grep stu1
如果我们要查看系统有哪些用户组应该怎么做?cat /etc/group
如果我们要查看用户组的成员和管理员就该怎么做?cat /etc/gshadow|grep student
3.用户的管理(新建用户、删除用户、修改用户、设置密码,查找用户)
新建用户:useradd 【选项】 用户名
useradd stu2: 新建用户stu2、在home目录下产生stu2主目录、
产生一个stu2的组(基本组),产生一个stu2的邮箱
设置密码:passwd 【选项】 用户名
默认情况下只有root用户可以为每个用户设置密码
普通用户只能为自己设置密码
查看用户是否是空密码:passwd -S stu5
锁定用户:passwd -l 用户名
解锁用户:passwd -u 用户名
删除用户:userdel [选项] 用户名 (不跟选项默认删除只删除用户和组)
-r 删除主目录和邮件池
修改用户的基本信息:usermod
修改用户的密码信息:chage
修改用户的注释信息:chfn
修改用户的登录类型:chsh
查看用户id信息:id
查找用户的技巧:
查看系统中可以登录的用户有哪些?
#cat /etc/passwd | grep /bin/bash$
统计可以登录系统的用户个数?
# cat /etc/passwd | grep /bin/bash$|wc -l
查看用户所在的组
# groups
4、用户组的管理(新建、删除组、成员管理、设置组长、设置组密码)
概念:基本组 附加组
新建组:groupadd
查看系统中有哪些用户组:cat /etc/group
成员管理:gpasswd 【选项】 用户名 组名
gpasswd -a student rsb 添加成员
gpasswd -d student rsb 删除成员
设置组长:gpasswd -A 用户名 组名 (组长的权限只限于添加删除成员)
gpasswd -A student rsb
设置组密码:gpasswd 组名
组设置密码后,用户可以使用 newgrp 组名 临时加入到这个组,
使用exit命令退出就不再有这个组的权限了
修改组:groupmod -n 新组名 源组名
二、文件权限
1.基本权限
2.ACL权限
赋ACL权限:
setfacl -m u:zjl:rwx files/ 或setfacl -m u:zjl:rwx ./files/或setfacl -m u:zjl:rwx 绝对路径
查看富裕的权限:
getfacl 组名
回收ACL权限:
setfacl -x u:zjl:rwx files/
删除某个文件中关于某个文件的所有的ACL权限
setfacl -b files/
直接跟文件名
赋予ACL权限后后面会出现+号,即便用-x的命令去除ACL权限,用ll查看文件依旧有+后缀,该后缀需要使用-b命令来即可消除。
mask的值限制了ACL的最大权限
3.特殊权限
SUID: chmod u+s files chmod u-s files
SGID:chmod g+s files chmod g-s files
SBIT:chmod o+t files chmod o-t files
4.chattr权限 (文件属性权限,扩展权限)
防止意外删除时使用,也经常被黑客使用。
chattr +a files chattr -a files
chattr +i files chattr -i files
lsattr files
5.sudo提权
/etc/sudoers