Linux 3.18
权限管理
1 UID和GID:每个文件都具有拥有人与拥有组的属性,每个登录的使用者至少都会取得两个ID,一个是使用者ID(UserID,简称UID)、一个是群组ID(Group ID.简称GID)。当我们有要显示文件属性的需求时,系统会根据/ect/password与/etc/group的内容时,找到UID/GID对应的账号与组名再显示出来。
2 Linxu系统上面的用户如果需要登录主机以取得shell的环境来工作时,系统都做了什么工作?
首先找寻/etc/passwd里面对应的UID和GID(在/etc/group中)读出来,另外,该账号的家目录与shell配置也一并读出;
再来则是核对口令表,这时Linux会进入/etc/shadow里面找到对应的账号与ID,然后核对一下你刚刚输入的口令与里面的口令是否相符;
如果一切都没问题,就进入shell控管阶段。
3 /etc/passwd文件结构:首先。每一行都代表一个账号,有几行就代表有几个账号在你的系统中,而bin、daemon、adm、nobody等,都是系统正常所必需的,简称系统账号,这些不能随便杀掉。
文件结构顺序依次是:账号名称、口令、UID、GID、用户信息说明栏、家目录、Shell
(一般口令都是X)
4 /etc/shadow文件结构:账号名称、口令、最近更动的时间、口令不可被更动的天数、口令需要重新变更的天数、口令需要变更期限前的警告天数、口令过期后的账号宽限时间、账号失效日期
5 /etc/group文件结构:组名、群组口令、GID、此群支持的账号名称。
6 账号管理各种命令:新增与删除使用者:useradd
-u 直接指定一个特定的UID给此账号(500起始);
-g 将此账号放到该组下;
-M强制,不要创建用户家目录 ;
-m 强制,要创建家目录;
-d 指定某个目录成为家目录,而不使用默认值;
-r 创建一个系统的账号,该账号的UID会有限制;
配置新口令:passwrd
-l 将/etc/shadow第二栏最前面加上!是口令失效;
-u 与-l相对,是Unlock的意思;
删除用户数据:usrdel
-r 连同删除家目录(默认是不删除家目录的);
查询某人或自己的相关UID/GID等信息:id
添加组:groupadd
-g 后面接某个特定的GID,用来直接给与某个GID;
删除组:groupdel
7 ACL: ACL是Access Control List 的缩写,主要的目的是在提供传统的owner,group,others的read,write,execute权限之外的细部权限配置。ACL可以针对单一使用者,单一文件或目录来进行r,w,x的权限规范,对于需要特殊权限的使用状况非常有帮助。
使用者(user):可以针对使用者来配置权限;
群组(group):针对群组为对象来配置其权限;
默认属性(mask):还可以针对在该目录下在创建新文件/目录时,规范新数据的默认权限;
getfacl:获取某个文件或目录的ACL配置项目;
setfacl:配置某个目录或文件的ACL规范;
setfacl选项:-m 配置后续的acl参数给文件使用,不可与-x合用;
-x 删除后续的acl参数,不可与-m合用;
-R 递归配置acl,亦即包括次目录都会被配置起来;