Linux下用户分为3类:超级用户(root)、系统用户、普通用户。
超级用户的用户名为root,它具有一切操作权力,因此为安全起见,建议不要轻易的在root账户下面对文件进行操作。在Linux操作系统的字符界面,root账户的提示符为#,且默认情况下,root用户的UID为0。
系统用户通常用于运行服务,但是此用户无家目录,也不能用于登录系统。例如,在yum安装apache、nginx等服务后,就会自动创建apache和nginx的用户和同名用户组。在CentOS6系统中,系统用户的UID范围是1-499,在CentOS7系统中,系统用户的ID是1-999。
普通用户是为了让使用者能够使用Linux系统资源而建立的,用户新建的账号一般就是普通账号。在Linux操作系统的字符界面,普通用户的提示符为$,且普通用户的UID默认为1000~60000。
1)基本组(私有组):在创建用户的同时就自动会建一个与用户同名的组。如建立user用户会同时建立一个user组,user这个用户就属于user组
2)附加组(公共组):用户所属的除基本组外的其他组
GID:组的身份标识,是系统识别组的唯一标识
/etc/passwd(用户账户文件,所有账户都可以访问)总计7段,格式为如下:
用户名:密码:UID:GID:账户信息:账户目录:Shell版本
/etc/shadow(用户密码文件,root才可以访问),总计9段,格式如下:
用户名:密码:最后一次修改时间的天数:两次修改密码最小间隔天数:多少天后需要再次修改密码:从发出警告到密码正式失效的天数:禁止登陆前用户名还有效的天数:用户被禁止登陆的时间:标志字段,无意义
注意:shadow中,密码字段为*表示用户被禁止登陆,为"!!"表示用户为设置密码,为"!"表示用户被锁定。
passwd的密码为影子密码用X表示,而shadow中为加密后保存的密文。
与用户组有关的文件是:
/etc/group(用户组文件,所有账户都可以访问),总计4段,格式如下:
用户组名称:组密码:GID:组成员
/etc/gshadow(用户组密码文件,root权限才可以访问)总计4段,格式如下:
用户组名称:组密码:组管理者:组成员
1.创建名为 sysmgrs 的组
2.创建用户 natasha 同时指定sysmgrs作为natasha的附加组
3.创建用户 harry 同时指定 sysmgrs作为harry的附加组
4.创建用户 sarah 指定shell类型为/sbin/false(无权访问系统上的交互式 shell)
且不是 sysmgrs 的成员
5.设置natasha 、 harry 和 sarah 的密码都是 123
6.创建用户lockuser, 并指定家目录为/home/lock, 然后锁定该用户
7.创建用户limituser, gid为1555,userid为1666, 让其密码在10天后过期
8.解锁lockuser, 并设定下次登录时必须修改密码
9.让natasha具备修改 harry密码的权限(sudo)
使用 visudo 进入以下页面加入参数
10. 创建用户testuser并设置密码,修改用户名为normaluser
11.删除lockuser
4创建文件,并赋予权限611(两种方式,一种guoa,一种nnn)
5.创建目录,并赋予权限755(两种方式,一种guoa,一种nnn)
6.创建文件,并将文件的属主和属组修改其他用户
7.设置suid,为文件设置suid(两种方式 u+s和nnnn)的方式
8.设置sgid, 为文件设置sgid(两种方式 g+s和nnnn)的方式
9.设置sbit,为目录设置sbit(两种方式 o+t和nnnn)的方式
10.创建文件,查询文件的acl
为文件设置acl 用户为testuser1 权限为 rwx
为文件设置acl的mask: 权限为r-x