更新时间:2022-09-13 15:41:19
用户的基本信息:/etc/passwd
用户影子口令:/etc/shadow
组的基本信息:/etc/group
组的影子口令:/etc/gshadow
1
2
3
4
5
6
7
8
|
/etc/passwd 文件解释
[root@liang-study ~] # cat /etc/passwd
root:x:0:0:root: /root : /bin/bash
bin:x:1:1:bin: /bin : /sbin/nologin
daemon:x:2:2:daemon: /sbin : /sbin/nologin
adm:x:3:4:adm: /var/adm : /sbin/nologin
上文中的7列分别代表: 1、登录名 2、密码占位符 3、UID 4、GID 5、用户信息 6、用户家目录 7、用户登录的shell |
1
2
3
4
5
6
7
8
9
|
/etc/shadow 文件解释
[root@liang-study ~] # cat /etc/shadow
root:$6$1hlfTKTqnWRFmdaE$PYgEWrfOPIN7PjoA3D3AYmJ37UDvEoNQfNquZGufGQ.8VfRAeLkcHmc2w6Seg5EfC51hRLvLi7s /DcjUG6UPU0 :17105:0:99999:7:::
bin:*:15980:0:99999:7::: daemon:*:15980:0:99999:7::: 上文中的各列代表: 1、登录名 2、加密密码,如此字段显示为!!或者*表示此用户是锁定的 3、从1970年到密码上次修改所经过的天数 4、密码最小使用期限0表示不做限定 5、密码最长使用期限 6、密码即将过期提醒 |
用户类别:
管理员:UID为0
普通用户:UID为1-65535
系统用户:UID为1-499
一般用户:UID位500-65535
组类别:
私有组:创建用户是,如果没有指定属主,则会自动创建一个和用户名同名的组,此组就是私有组
基本组:用户的默认属组
附加组:除基本组以外的其他组
用户管理相关命令
useradd、usedel、usermod、passwd、chsh、id、chage
useradd:添加用户
格式:useradd [options] USERNAME
useradd默认配置文件:/etc/default/useradd
1
|
[root@liang-study home] #useradd yull
|
-u UID:指定用户UID,要求大于500,且未使用
-g GID:指定基本组GID,要求指定的GID事先存在
-c "str":指定用户信息,如用户全称、电话等
-d /path:指定用户家目录
-s /bin/bash:指定用户可用的shell
-r:添加系统用户
id:查看用户账号属性信息
1
2
|
[root@liang-study home] # id -un
root |
参数:
-g或--group 显示用户所属群组的ID。
-G或--groups 显示用户所属附加群组的ID。
-n或--name 显示用户,所属群组或附加群组的名称。
-r或--real 显示实际ID。
-u或--user 显示用户ID。
-help 显示帮助。
-version 显示版本信息
userdel:删除用户,默认不会删除家目录
1
|
[root@liang-study home] # userdel -r user01
|
-r USERNAME:删除用户并删除家目录
usermod:修改用户账号属性,用法和useradd几乎一致
1
|
[root@liang-study home] # usermod -u 1002 user01
|
-a -G GID:如果不适用-a选项,会覆盖用户此前的附加组
-d -m /path:指定新的家目录,并将旧家目录内容移动到新家目录中。一般一块使用
-l USERNAME:修改用户登录名
-e YYYY-MM-DD:修改用户过期时间
-L USERNAME:锁定用户账号
-U USERNAME:解锁用户账号
chsh:修改用户默认shell
1
2
3
4
|
[root@liang-study home] # chsh user02
Changing shell for user02.
New shell [ /bin/bash ]: /bin/tcsh
Shell changed. |
passwd:用户密码管理
1
2
3
|
[root@liang-study home] # echo "123456" | passwd --stdin user02
Changing password for user user02.
passwd : all authentication tokens updated successfully.
|
--stdin:避免交互式输入创建密码
-l USERNAME:锁定用户
-u USERNAME:解锁密码
-d USERNAME:删除用户密码,删除密码后无法登陆,但可以su
组管理相关命令
groupadd、froupdel、groupmod、gpasswd
groupadd:添加组
1
|
[root@liang-study home] # groupadd mygroup
|
-r:添加系统组,id小于位1-499,单没有家目录
groupmod:修改组属性
1
|
[root@liang-study home] # groupmod -n mygroup01 mygroup
|
-g:修改GID
-n:修改组名
通过修改配置文件创建用户test01,基本组为test01,id号为5000
可以完全不使用useradd、passwd等命令生成用户。
1、创建用户家目录并设置权限,/etc/skel就是保存新建用户环境变量等信息的。每次新建用户都会讲此目录复制到/home/USERNAME下。
1
2
3
4
5
6
7
8
|
[root@liang-study home] # cp -r /etc/skel/ /home/test01
[root@liang-study home] # ls -lart /home/test01/
total 20 -rw-r--r-- 1 root root 124 Dec 16 11:28 .bashrc -rw-r--r-- 1 root root 176 Dec 16 11:28 .bash_profile -rw-r--r-- 1 root root 18 Dec 16 11:28 .bash_logout drwxr-xr-x. 13 root root 4096 Dec 16 11:28 .. drwxr-xr-x 2 root root 4096 Dec 16 11:28 . |
2、赋权
1
2
3
4
|
[root@liang-study home] # chmod 700 -R /home/test01/
[root@liang-study home] # chown test01:test01 /home/test01/ -R
[root@liang-study home] # ls -ld /home/test01/
drwx------ 2 test01 test01 4096 Dec 16 11:28 /home/test01/
|
3、添加test01组
1
2
|
vim /etc/group #最后一行添加
test01:x:5000: |
4、添加test01用户
1
2
|
vim /etc/passwd #最后一行添加
test01:x:5000:5000:: /home/test01 : /bin/bash
|
5、通过openssl创建密码
通过openssl生成的即为加密后的密码。将加密后的密码添加到/etc/shadow中即可
1
2
3
|
[root@liang-study home] # openssl passwd -1 -salt 'test01789'
Password: $1$test0178$o2APM0IoDpeS.BPWhgD6b0 |
6、修改shadow密码文件
1
2
|
vim /etc/shadow #在最后一行添加
test01:$1$test0178$ImonuusQqLhSGT1qWJSGr1:17151:0:99999:7::: |
至此用户添加完成
7、登录测试
1
2
3
|
[root@liang-study home] # ssh test01@192.168.210.148
test01@192.168.210.148's password: [test01@liang-study ~]$
|