1.什么是用户

用户指的是能够正常登录Linux或windows系统
那Linux与windows系统的用户有什么区别?
本质都是登录系统的,只不过Linux支持多用户同时登录,windows默认不支持,但是修改组策略的情况下也是可以多用户登录的

2.Linux下用户有什么作用

1.系统上的每一个进程(运行的程序)都需要特定的用户运行
2.每一个文件都有特定的用户拥有,所以访问一个文件或目录受到用户的限制
3.进程能够以何种方式访问某一个文件或目录, 与进程所关联的用户有关

3.Linux系统中存在三种用户

第一种:超级管理用户 root用户,此用户唯一,UID是0 (其他用户其实也可以通过更改UID来成为超级管理员用户,但是此法很危险,不提倡)
第二种:是虚拟用户 虚拟用户的UID是1~499 虚拟用户是不能登录到系统的,虚拟用户的作用是用来管理某个软件的进程启动运行的。
第三种:是普通用户 ,这一类用户是有超级管理员创建,可以登陆系统,但是权限较小。此用户的UID CentOS6为500起 CentOS7为1000起。

4.用户组的管理

每个用户都有一个用户组,系统可以对一个用户组中的所有用户进行集中管理。不同Linux 系统对用户组的规定有所不同,如Linux下的用户属于与它同名的用户组,这个用户组在创建用户时同时创建。
用户组的管理涉及用户组的添加、删除和修改。组的增加、删除和修改实际上就对/etc/group文件的更新
基本组,用户只能有一个基本组,创建时可通过-g指定,如未指定则创建一个默认的组(与用户同名)
附加组,基本组不能满足授权要求,创建附加组,将用户加入该组,用户可以属于多个附加组

5.创建、删除、修改、组用户

useradd创建用户

-u:指定要创建用户的UID,不允许冲突
-g:指定要创建用户默认组
-G:指定要创建用户附加组,逗号隔开可添加多个附加组
-d:指定要创建用户家目录
-s:指定要创建用户的bash shell
-c:指定要创建用户注释信息
-M:给创建的用户不创建家目录
-r:创建系统账户,默认无家目录
-l:指定要修改用户的登陆名
-e:帐号终止日期。日期的指定格式为 MM/DD/YY
-f:帐号过期几日后永久停权。当值为0时帐号则立刻被停权,而当值为 -1时则关闭此功能,预设值为 -1
-n:预设值使用者群组与使用者名称会相同,此选项将取消此预设值

userdel删除用户

-r:删除用户同时删除它的家目录

usermod修改用户

-u:指定要修改用户的UID
-g:指定要修改用户基本组
-G:指定要修改用户附加组,使用逗号隔开多个附加组, 覆盖原有的附加组
-d:指定要修改用户家目录
-s:指定要修改用户的bash shell
-c:指定要修改用户注释信息
-l:指定要修改用户的登陆名
-L:指定要锁定的用户(锁定一个用户的帐号. 这个操作是放一个感叹号在你的密码前,禁用密码.你不能配合-p或-U使用)
-U:指定要解锁的用户(解锁一个用户的帐号.这个操作是在加密密码前取消感叹号,恢复帐号登录.你不能配合-p或-L使用)

groupadd建立新群组

-g:指定组id
-o:一般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同

groupdel删除组

groupmems用户主组的管理员成员

-a:用户名    将一个用户添加到组成员列表
-d:用户名    从组成员列表中删除用户
-g:组  名    超级用户可以指定修改哪个组的组成员列表
-l -g:组名   列出组成员
-p -g:组名   从组成员列表中删除所有用户

groupmod修改群组

-g GID:为用户组指定新的组标识号。
-o 与-g:选项同时使用,用户组的新GID可以与系统已有用户组的GID相同。
-n:新用户组 将用户组的名字改为新名字

groups显示用户所在的组

创建组

[root@dmxsp ~]# groupadd -g 666 dmxsp (-g可填可不填)
[root@dmxsp ~]# groupadd dmxspl

创建用户需要说明的是,设定ID值时尽量要大于500,以免冲突。因为Linux安装后会建立一些特别用户,一般0到499之间的值留给bin、mail这样的系统账号

[root@dmxsp ~]# useradd dm -u 1234 -g dmxsp -G dmxspl -c cs
[root@dmxsp ~]# id dm
uid=1234(dm) gid=666(dmxsp) groups=666(dmxsp),1000(dmxspl)

创建系统用户

[root@dmxsp ~]# useradd zq -r -M -s /sbin/nologin
[root@dmxsp ~]# id zq
uid=995(zq) gid=665(zq) groups=665(zq)

创建用户(可登录)

[root@dmxsp ~]# useradd dmxsp -s /bin/bash
[root@dmxsp ~]# id dmxsp 
uid=1001(dmxsp) gid=1001(dmxsp) groups=1001(dmxsp)

修改 dm的注释信息, 用户家目录, 登录shell, 登录名

[root@dmxsp ~]# tail -2 /etc/passwd
dm:x:1234:666:cs:/home/dm:/bin/bash
zq:x:995:665::/home/zq:/sbin/nologin
[root@dmxsp ~]# usermod dm -c "dmxspcs" -s /sbin/nologin -d /tmp/dm -l qq
[root@dmxsp ~]# tail -2 /etc/passwd
zq:x:995:665::/home/zq:/sbin/nologin
qq:x:1234:666:dmxspcs:/tmp/dm:/sbin/nologin
[root@dmxsp ~]# id qq
uid=1234(qq) gid=666(dmxsp) groups=666(dmxsp),1000(dmxspl)

删除用户

[root@dmxsp ~]# tail -1 /etc/passwd
qq:x:1234:666:dmxspcs:/tmp/dm:/sbin/nologin
[root@dmxsp ~]# userdel qq
[root@dmxsp ~]# tail -1 /etc/passwd
zq:x:995:665::/home/zq:/sbin/nologin
[root@dmxsp ~]# userdel -r dm

修改组

[root@dmxsp ~]# id qq
uid=1234(qq) gid=666(dmxsp) groups=666(dmxsp),1000(dmxspl)
[root@dmxsp ~]# groupmod dmxsp -n z
[root@dmxsp ~]# groupmod dmxspl -n x
[root@dmxsp ~]# id qq
uid=1234(qq) gid=666(z) groups=666(z),1000(x)
[root@dmxsp ~]# groupmod -g 4321 z
[root@dmxsp ~]# id qq
uid=1234(qq) gid=4321(z) groups=4321(z),1000(x)

6.相关目录

/etc/passwd:使 用 者 帐 号 资 讯
/etc/shadow:使 用 者 帐 号 资 讯 加 密
/etc/group:群 组 资 讯
/etc/default/useradd:定 义 资 讯
/etc/login.defs:系 统 广 义 设 定
/etc/skel:内 含 定 义 档 的 目 录

/etc/passwd用户信息

[root@dmxsp ~]# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
第一列: 用户名称
第二列: 用户的密码; x --> 不可见--> /etc/shadow
第三列: 用户的UID
第四列: 用户组的GID
第五列: 用户的描述信息
第六列: 用户的家目录
第七列: 用户的登录Shell; /bin/bash -->正常登录 /sbin/nologin 禁止登录

/etc/shadow密码信息

[root@dmxsp ~]# cat /etc/shadow
root:$6$hwo99RlkqzsfnUPo$1coB8NYDZAA9eu3PuXn7SbxA7RTZG3OYIRdMcCexW09hvKVc8VwgZ4FFHLvB8bMQQstxO/lc2g6yJ57KXDp85/
::0:99999:7:::
第一列: 用户名称
第二列: 用户的密码;(一串不可读的字符串; ( * !! 没有密码; ) )
第三列: 用户从1970-18701 过了多少天; 年
第四列: 密码最少使用的天数; 0 不限制
第五列: 密码最长使用的天数; 99999 不限制
第六列: 密码到期前7天警告
第七列: 密码到期后两天,强制让你更新密码; ( 登录系统就修改密码;无法取消; )

/etc/group组配置文件

[root@dmxsp ~]# cat /etc/group
root:x:0:
第一列:组名
第二类:密码
第三列:组ID

7.设置密码

使用passwd命名来实现
超级管理员
1.随意修改任何人的密码
2.密码强度可以随意

普通用户执行
1.仅修改自己的密码,不可以修改其他人
2.密码强度必须满足8个字符及以上

passwd

-k:保持未过期身份验证令牌
-l:关闭账号密码。效果相当于usermod -L,只有root才有权使用此项。
-u:恢复账号密码。效果相当于usermod -U,同样只有root才有权使用。
-g:修改组密码。gpasswd的等效命令。
-f:更改由finger命令访问的用户信息。
-d:关闭使用者的密码认证功能, 使用者在登入时将可以不用输入密码, 只有具备 root 权限的使用者方可使用.
-S:显示指定使用者的密码认证种类, 只有具备 root 权限的使用者方可使用.

交互式

[root@dmxsp ~]# passwd zz
Changing password for user zz.
New password:
BAD PASSWORD: The password is a palindrome
Retype new password:
passwd: all authentication tokens updated successfully.

非交互式

[root@dmxsp ~]# echo "2" | passwd --stdin zz
Changing password for user zz.
passwd: all authentication tokens updated successfully.

强度较高的密码

-l:(密码的长度定义, 默认是 9)
-d:(数字个数, 默认是 2)
-c:(小写字符个数, 默认是 2)
-C:(大写字符个数, 默认是 2)
-s:(特殊字符个数, 默认是 1)
-v:(详细。。。)
-p:(程序设置密码, 默认是 passwd)
[root@dmxsp ~]# yum install -y expect
[root@dmxsp ~]# mkpasswd -l 10 -d 3 -c 3 -C 3 -s 1
X>5qNSx41q
[root@dmxsp ~]# mkpasswd -l 10 -d 3 -c 3 -C 3 -s 1
F!Gsu52n4D

作者 dmxsp

发表回复

您的电子邮箱地址不会被公开。