Linux系统用户管理
系统用户
百科定义的系统用户是:那些在通常意义上使用信息系统或者受到信息系统影响的“客户”
通俗讲就是能够使用和管理系统资源,并达到某种特定目标的人或”客户“
用户分类
系统管理员
普通用户
系统用户
登录用户
用户标识
UID:Linux通过UID来区别和标识用户
根据用户分类UID的取值范围:0-65535
系统管理员:0
普通用户:1-60000
系统用户:1-499,1-999
登录用户:500+,1000+
用户组
具有相同权限或用户属性的用户划分为一类,用组表示
用户组分类
管理员组
普通组
用户基本组
用户附加组
用户组标识
GID:Linux通过GID来区别和标识用户组
管理员组:0
普通组:1-499,1-999
500+,1000+
注解:centos的版本从6升到7后,默认用户创建的新用户ID从500开始改为从1000开始
Linux系统用户相关的配置文件
/etc/passwd;记录用户基本信息
/etc/group:记录用户组基本信息
/etc/shadow:记录用户密码及相关信息
/etc/gshadow:记录用户组密码及相关信息
各配置文件默认格式:
/etc/passwd;
name:password:UID:GID:GECOS:directory:shell
登录名:x:UID:GID:comment:主目录:用户默认shell
/etc/group:
group_name:password:GID:user_list
组名:x:GID:组用户列表
/etc/shadow:
login name:encrypted password:date of last password change:minimum password age:maximum password age:password warning period:password inactivity period:account expiration date:reserved field
用户名:密码加密字串:密码最后修改日期:密码最小过期期限:密码最大过期期限:密码到期警告期:密码锁定周期:账号过期日期:保留字段
例:root:$6$amdZ6oA3a.Cbr7UG$l1RTCNNacewA5vFA263R9NcFpWZGtjl9x4nq0DnCX25wMqdxWApWI7UwTgVO0/wAu1geXrirVv7WChL8FFhsS0:16673:0:99999:7:::
注解:密码加密字符串由$分隔,分三部分
1、加密算法,6表示sha512加密算法
2、随机字符串
3、密码和随机字符串合并加密后的字符串
加密算法:
md5,sha1, sha224, sha256, sha384, sha512
md5:用数字1标识,按固定的算法转换设置的密码字符串,如果两个用户设置相同的密码,在shadow文件中两个用户的加密密码字符串也是相同的。这是风险点
sha512:用数字6标识,先将用户设置的密码串按算法添加部分随机的字符串,再按固定的加密算法转换密码为加密的字符串,最大程度的降低md5算法存在的风险
注:两个或多个加密算法可以混合使用
命令:
#authconfig --test|grep hashing password hashing algorithm is sha512
密码复杂性策略:
1、使用数字、小写字母、大写字母、特殊字符四类中至少三类;
2、足够长;
3、使用随机密码;
4、定期更换
/etc/gshadow:
group name:encrypted password:administrators:members
组名:加密字符串:组管理:组成员
命令
1、useradd:添加用户
useradd [options] LOGIN
-c, --comment COMMENT:用户描述
-d, --home-dir HOME_DIR:指定用户家目录路径
-e, --expiredate EXPIRE_DATE:指定用户使用期限;format YYYY-MM-DD
-g, --gid GROUP:指定用户所属基本组,此组必须事先存在
-G, --groups GROUP1[,GROUP2,...[,GROUPN]]]:指定所属的附加组;
-K, --key KEY=VALUE:指定配置文件/etc/login.defs中参数的值
-m, --create-home:创建用户家目录
-M, --no-create-home:不给用户创建家目录
-p, --password PASSWORD:创建时设置用户密码
-r, --system:创建系统用户
-s, --shell SHELL:设定用户默认的shell;cat /etc/shells查看可设置的shell类型
-u, --uid UID:指定用户UID
练习:创建用户Oracle,所属附加组database和sql,ID号为3000, 家目录为/home/database,密码为1q2w3e,并指定用户的shell为bash;
#groupadd database #groupadd sql #useradd -G database,sql -u 3000 -d /home/database -p 1q2w3e -s /bin/bash Oracle
结果:shadow文件中Oracle的密码是明文密码,而不是加密后的字符串?
#passwd Oracle
重新用passwd命令重置Oracle密码后,shadow文件中Oracle用户密码是加密后的字符串
本文出自 “从头再来” 博客,请务必保留此出处http://4708705.blog.51cto.com/4698705/1688613
原文地址:http://4708705.blog.51cto.com/4698705/1688613