1. linux账号分类
用户 UID
超级用户 0
系统用户 [1, 499], 即1~499, 包含1和499
普通用户 [500:], 即大于等于500
每一个用于在创建的时候都会默认生成一个同名的组。
2. 关于用户和组的主要配置文件
1) 用户信息文件
/etc/passwd
内容解析:
root:x:0:0:root:/root:/bin/bash
用户名:密码占位符:UID:组ID:用户描述:宿主目录:登录shell
2)用户密码文件
/etc/shadow
此文件真正存放用户的密码
RHEL6X中用户信息的加密采用sha512算法进行加密sha512在用户密码中加入随机字符,加入的位置随机,加入的字符也是随机的,加密后的密文长度大,因此目前还无法进行破解。RHEL6X之前的系统中采用的MD5算法加密,MD5算法是可以被破解的,后续文章会讲述破解RHE:L5X用户密码的方法。
3)用户组信息
/etc/group
4)组密码信息
/etc/gshadow
/etc/passwd中用户的密码占位符"x"在删除后用户无需密码即可进行登录系统。
/etc/passwd中shell权限为/sbin/nologin的用户无登录权限,用与执行一些特殊的程序,如mysql, tomcat,nginx,zabbix。
5)/etc/shells
存放系统中支持的shell
3. 用户相关命令
(1) useradd
新加用户名
参数: -M 无宿主目录, -s 指定登录shell, -d指定宿主目录,-g指定所属组,-G指定附加组, -u指定UID
(2)passwd
为新建用户添加密码, 不加参数则为当前用户修改密码。
非交互添加密码,可用于批量添加用户密码和脚本中添加yoghurt密码:
echo "123456" | passwd --stdin user1 #不可用于RHEL7X
echo user1:123456 | chpasswd #可用于RHEL7X中用户密码的添加
(3)whoami
查看当前用户
类似的还有who am i,w,who