linuxag命令 linux agl( 二 )


实现用户的管理 , 要完成的工作主要有如下几个方面linuxag命令:
1、用户账号的添加、删除和修改 。
2、用户口令的管理 。
3、用户组的管理 。
首先Linux用户类别有:
管理员,UID:root,0
系统用户,UID:1-499(CentOS 6),1-999(CentOS 7)
登陆用户,UID:500(CentOS 6),1000(CentOS 7)
用户组类别:
管理员组,GID:root,0
系统组,GID:1-499(CentOS 6),1-1000(CentOS 7)
普通组,GID:500(CentOS 6),1000(CentOS 7)
Linux组的类别:
用户的主要组(主组):每个有且仅有一个主要组,当用户创建时 , 自动创建一个与用户同名的组作为主要组 。
用户的附加组(辅助组):一个用户可以属于零个或多个辅助组 。
CentOS6和7的默认UID和GID不同,这个是由于/etc/login.defs文件里面的默认值所决定的
Linux用户和组的主要配置文件
/etc/passwd:用户及其属性信息(名称、UID、主组ID等)
该文件里面一共有7项,包括
# [root@centos ~]# cat/etc/passwd
# root(用户名):x(密码):0(UID):0(GID):root(注释):/root(家目录):/bin/bash(默认SHELL)
假如把普通用户的UID更改成0 , 该普通用户会变成管理员账号,因为在Linux系统里面 , 识别管理员是否为管理员,就是查看用户的UID号码 , 为0则为管理员,在生产环境中,可能会把管理员root的账号改成其他名字,这样做是以防止黑客攻击root账号来进行破解 。
/etc/group:组及其属性信息
getent group [groupname]
# [root@centos7 ~]# cat /etc/group
# root(主组):x(组密码):0(GID):gentoo(附加组的用户列表)
组成员:将该组作为辅助组的成员列表 。当成员先把该组当作辅助组 , 再转成主要组时,不改变 。当成员离开该组时,被删除 。
/etc/shadow:用户密码及其相关属性
# [root@centos 7~]# cat/etc/shadow
# root(用户名):$6$(加密方式为sha512加密)5wrv8BV(随机数,俗称盐)$n3wljU/4.OUa/X.RYOGbE3SX72vay1Qo1ZXiUNZhuQJIB7fdzE87gaCQiuiOZbin(用户密码):17110(从1970-1-1到最近一次修改的时间经过了多少天来表示):0(最小存活期,密码再过几天可以被更改):99999(最大存活期,密码过期时间):7(在正确登录时,密码过期前提醒时间):(在正确登录时,密码过期后几天账号会被锁定):(从1970年1月1日算起 , 多少天后帐号失效):(保留)
上面这个设置了密码显示的用户 。
现在我们再新建一个用户看看
[root@centos6 ~]# useradd wang
[root@centos6 ~]# tail -1 /etc/shadow
wang:!!:17015:0:99999:7:::
我们会看见账号密码那里有两个!!,这表示账号被锁定 , 没有密码的话不允许该用户去登陆,假如有密码,但是那里还是有一个叹号的话,也表示账号被锁定,不对用户进行解锁的话该用户将无法登陆 。假如没有叹号的话,该用户可以没有密码的情况下面直接登陆 。不过该功能只能在CentOS 5版本和更老的版本可以实现,为了安全起见,从CentOS 6以后已经修正此问题 。
/etc/gshadow:组密码及其相关属性
getent gshadow [groupname]
# cat /etc/gshadow
# root/(主组):(组密码):(组管理员列表):gentoo(附加组的用户列表)
当用户不是该groupname的辅助组成员时,则需要输入密码,成功后临时以主要组的身份加入该组 。
当用户是该groupname的辅助组成员时 , 无需输入密码 , 将临时以主要组的身份加入该组,而其原有的主要组 , 临时变为辅助组 。
注意:为安全起见,现在一般都没有组密码 , 直接管理员指派,因为当其他用户知道了组密码,可以随意加入该组,这样的话就显得不安全 。

推荐阅读