用户管理及常用操作

用户管理

一、用户和组的基本概念和作用

1.用户和组的基本概念

Linux是一个多用户多任务的分时操作系统,如果要使用系统资源,就必须向系统管理员申请一个账户,然后通过这个账户进入系统。这个账户和用户是一个概念,通过建立不同属性的用户,一方面,可以合理的利用和控制系统资源,另一方面也可以帮助用户组织文件,提供对用户文件的安全性保护。
每个用户都用一个唯一的用户名和用户口令,在登录系统时,只有正确输入了用户名和密码,才能进入系统和自己的主目录。

用户组是具有相同特征用户的逻辑集合,有时我们需要让多个用户具有相同的权限,比如查看、修改某一个文件的权限,一种方法是分别对多个用户进行文件访问授权,如果有10个用户的话,就需要授权10次,显然这种方法不太合理;另一种方法是建立一个组,让这个组具有查看、修改此文件的权限,然后将所有需要访问此文件的用户放入这个组中,那么所有用户就具有了和组一样的权限。这就是用户组,将用户分组是Linux 系统中对用户进行管理及控制访问权限的一种手段,通过定义用户组,在很大程度上简化了管理工作。

2.用户和组信息存储文件

(1)用户基本信息文件

/etc/passwd
Head -1 /etc/passwd
其中每行的内容都是用户的基本信息构成,由冒号分割成七列字段,具体组成
用户名:密码:用户id:用户所属组idid:用户描述:家目录:shell类型
在这里插入图片描述
Ps:
x:这里的密码是占位符x的意思,具体密码在用户密码信息文件中。
用户id:uid,用户的身份证。新建的用户都是1000之后的id,1~499是系统用户,0是root。
组id:多个用户所属的组的id。属于组的身份证。
用户描述:创建用户的时候给用户增加的描述。
家目录:登录用户默认所在的目录。
Shell:登录shell,shell是命令解释器。Shell,中文翻译过来就是壳。命令解释器,用于定义命令,接受命令,执行命令。命令解释器的版本很多:ashell、bshell、cshell、tshell、bash、nologin

(2)用户密码信息文件

/etc/shadow
每行是用户密码信息内容,由冒号分割为9列。
登录名:加密形式的密码:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:保留
在这里插入图片描述
1.登录名:用户的登录名。
2.加密形式密码:密码为加密形式,如果为空则没有密码;*代表账号被锁定;爽叹号表示密码已经过期; 6 6 6开头表示使用sha-512方式加密; 1 1 1表示使用MD5加密; 2 2 2表示使用blowfish加密; 5 5 5表示使用sha-256加密。
3.最后一次修改时间:表示从某个时刻起,到用户最后一次修改口令的时间,时间七点对不同的系统可能不一样。例如在CentOS中,这个时间起点是1970年1月1日。我的密码修改时间是2022-6-9,这里的数字就是19152,单位:天。
4.最小时间间隔:两次修改口令的时间之间所需的最小天数。0代表当天可以改密码。
5.最大时间间隔:口令保持有效期的最大天数。9999无期限。
6.警告时间:从系统开始警告到用户密码正式失效之间的天数。
7.不活动时间:用户没有登录系统但账号仍然能保持有效的最大天数。(软限制)
8.失效时间:给出一个绝对的天数,使用了此字段,那么就是这个账号的生存周期,期满后,就不是一个合法账号,再也不能用来登录。(硬限制)
9.保留

(3)组信息文件

/etc/group
每行是组的信息内容,由冒号作为分割成了4列。
组名:组密码:组id:组成员
在这里插入图片描述
组名:组的名字。
组密码:一般不会设置,会太麻烦。
组id:组的身份证。
组成员:组里面有哪些成员。默认为空。

一般创建用户的时候就会默认创建该用户的组。

二、用户和组管理

1.用户

创建用户(未指定选项)
Useradd 用户名
在这里插入图片描述
用户名相同的的话,则会报错。

可以使用id命令查看需要创建的用户是否存在
Id 用户名
Id test1
Id user2
在这里插入图片描述
Id打印的是用户的uid用户id,gid组id,用户所属组id。

因为我们直接useradd,没有指定密码。Passwd更改密码。
Passwd test1
在这里插入图片描述
密码过于简单,不符合密码创建规则的,会提示,因为我这里是root用户,所以直接再次输入简单密码即可。

创建用户(指定选项)

创建用户指定uid
Useradd user02 -u 1009
在这里插入图片描述
此时默认同时创建的组id也变成1009了。

创建用户时指定家目录
Useradd user03 -d /home/user09
在这里插入图片描述

删除用户
Userdel -r test1
-r表示连同家目录一起删了。
在这里插入图片描述

也可以id检查是否删除
>也可以id检查是否删除

用户密码
Passwd 用户名
在这里插入图片描述
更改其他人的密码是管理员的权限。
普通用户只能passwd即可,修改自己的密码。

用户信息修改
其他选项管理
修改用户属性
usermod -s 更改的属性 用户名
Usermod -s /sbin/nologin user01
在这里插入图片描述

Usermod -l 更改的用户名 现在的用户名
Usermod -l user11 user03
在这里插入图片描述

Usermod -g 更改的基本组 用户名
Usermod -g 0 user11
在这里插入图片描述

Usermod -G 指定的附加组名 用户名
在这里插入图片描述
注:这里就是给用户新增一个额外的组,新增的组在用户信息文件中是看不到的,只有去组信息文件中才能看到。

User -d /home/user1 user11
-d 修改家目录
-p 修改密码,不建议,建议使用passwd就行。

usermod能修改的内容很多。可以查看命令帮助
Usermod --help中查看具体参数具体效果。

2.用户组

操作

创建用户组

Groupadd 组名
创建一个用户组
Groupadd user12
在这里插入图片描述

Groupaadd user13 -g 1099
创建user13用户组,指定用户组gid为1099
在这里插入图片描述

删除用户组
Groupdel 组名
删除一个用户组
Groupdel user14
在这里插入图片描述
没返回信息就是没有user12相关的内容。也可以id查看

组分类

组的类型,分为基本组和附加组。

上面的操作中,已经显示出来一部分的内容,可以注意到,有的组是随着用户的创建而创建的,组名同用户名,这就是基本组。每个用户都有且只有一个基本组。

而一个用户可以拥有多个组,除去同名的基本组以外,其他的都是附加组。也就是用户加入的其他组,都叫附加组。

所以结论而言,无论是附加组和基本组都是基于用户的角度而言,相对的。

三、提权

1.永久提权Switching users with su(su)

其实就是切换用户身份
在生产环境的时候,我们大多都使用的普通用户,所以权限不够的时候我们需要切换用户,也就是提权。

Su - user01
在这里插入图片描述
Su - root
在这里插入图片描述
注意:root切成普通用户的时候是不用输入密码的,而普通用户切换成root需要输入root的密码。

Exit
退出su
在这里插入图片描述

2.临时提权Running commands as root with sudo(sudo)(简)

Sudo则是部分指令的权限。
需要root指定某个用户可以使用某个命令。

使用root先授权:

Vi /etc/sudoers
在这里插入图片描述
#开头的都是注释,找到这里,取消注释

这里的wheel就是用户组,这里的意思就是允许wheel用户组中的用户在不输入该用户密码的情况下使用所有命令。

将需要sudo权限的用户加入wheel组中。
在这里插入图片描述
这时候授权就已经可以了。

测试
在这里插入图片描述
我用su切换成user01用户测试原本权限是不可以的,但是加上sudo就可以了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值