Linux账号和权限管理篇,一些理论和命令知识,看了你会学到很多 冲☞

Linux账号和权限管理

前言:

与windows操作系统相比,Linux系统中的用户账户和组账户的作用在本质上是一样的,同样都是基于用户身份来控制对资源的访问,只不过在表现形式及个别细节方面存在些许差异。
1.用户账户组账户概述:
用户账号:
超级用户,普通用户,程序用户
组账户:
基本组(私有组)
附加组(公共组)
UID和GID
UID 用户标识号
GID 组标识号

1.1用户账户

在Linux系统中,根据系统管理的需要将用户账户分为不同类型,其拥有的权限丶担任的角色各不相同,主要分为超级用户 普通用户 程序用户

超级用户:root用户是Linux系统中默认的超级用户账户,对本主机拥有最高的权限,类似于windws中的Administrator ROOT–UID 固定值是0

普通用户:普通用户账号需要由root用户和其他管理员用户创建,拥有的权限受到一定的限制,一般只在用户的自己的宿主目录中拥有完整的权限 普通账号UID 1000-60000

程序用户:在安装Linux系统时,会添加一些特定的低权限的用户账户,这些用户不允许登录系统,比如:bin daemon ftp mail等。 程序–UID 1—999

1.2组账号的概述

组可以分为基本组(私有组) 附加组(公共组)
在这里插入图片描述

1.3UID和GID概述

Linux系统中的每一个用户账号都有一个数字形式的身份标记,称为UID,和GID对于系统核心来说,UID作为区分用户的基本依据,原则上每个用户的UID号时唯一的。

UID标识:

ROOT–UID 固定值UID是0
程序用户 UID:1—999
普通账号 UID:1000-60000

GID标识:

扫描二维码关注公众号,回复: 11457205 查看本文章
ROOT–GID 固定值UID是0
程序用户 UID:1—999
普通账号 UID:1000-60000

这边以root为例:
在这里插入图片描述

2.用户账号文件:

Linux系统中的用户账号丶密码等信息军保存在相应的配置文件当中,直接修改文件Linux系统中的用户账号,密码等信息均保存在相对应的 配置文件中,直接修改这些文件或者使用用户管理命令都可以对用户账号进行管理。

与用户账号相关的配置文件主要有两个,分别是/etc/passwd, /etc/shadow、前者用于保存用户名称,宿主目录,登录Shell等基本信息,后者用于保存用户的密码,账号有效期等信息。

在这两个配置文件中,每一行对应一个用户账号,不同的配置项之间使用冒号“:”进行分隔。

2.1passwd文件中的配置行格式

系统中所有用户的账号基本信息都保存在“/etc/passwd”文件当中,该文件是文本文件,任何用户都可以读取文件的内容。
每一行对应一个用户的账号记录

passwd文件的每一行内容中,包含了七个用冒号“:”分隔的配置字段,我们需要了解其含义。
在这里插入图片描述

2.2shadow文件中的配置行格式

shadow文件被称为“影子文件”,其中保存有各用户账户的密码信息,因此shadow文件的访问应该进行严格限制,因此默认只有root账户才能读取文件内容,而不允许直接编辑该文件内容
每一行对应一个用户的密码记录

shadow文件的每一行内容中,包含了九个用冒号“:”分隔的配置字段,我们需要了解其含义
在这里插入图片描述

2.3组账号文件

组账号文件也有两个,分别是/etc/group, /etc/gshadow。与用户账号文件非常类似。前者用于保存组账号名称,GID号,组成员等基本信息,后者用于保存组账号的加密密码字符串等信息(但是很少使用到)。

某一个组账号包含哪些用户成员,将会在group文件内最后一个字段中体现出来(基本组对应的用户账号默认可能不会列出),多个组成员之间使用逗号“,”分隔。

例如:查看root组包括哪些用户成员,哪些组中包含root用户。
在这里插入图片描述

3.用户账户和组账号命令和管理:

3.1用户账户管理:

3.1.1useradd命令—添加用户账号

在这里插入图片描述

3.1.2passwd命令–设置/更改用户口令

通过useradd命令新增用户账号以后,还需要为其设置一个密码才能正常使用。使用passwd命令可以设置或修改密码。
在这里插入图片描述

3.1.3usermond命令–修改用户账号属性

对于系统中已经存在的用户账号,可以使用usermod命令重新设置各种属性,usermod命令同样需要指定账号名称作为参数
在这里插入图片描述

3.1.4userdel命令–删除用户账号

当系统中的某个用户账号已经不再需要使用时,可以使用userdel将用户账号删除
如果只是用userdel删除用户的话,用户的家目录还是在的
在这里插入图片描述添加-r时,表示连用户的宿主目录一并删除
在这里插入图片描述

3.1.5用户账户的初始配置文件:

用户账号的初始配置文件添加一个新的用户账号后,useradd会在该用户的宿主目录中建立一些初始配置文件,这些文件来自账号模板目录’/etc/skel’,基本上都是隐藏文件。因此,在’.bashrc’等文件中,我们可以添加自定义的可执行语句(Linux命令行,脚本控制语句等)来自动完成相应的任务。
主要的用户初始配置文件:
~/.bash_profile
~/.bashrc
~/.bash_logout

3.2.组账号管理:

与组账号相关的配置文件也有两个,分别是 /etc/group /etc/gshadow,前,者用于保存账号基本信息,后者用于保存账号的密码信息

3.2.1group命令–添加组账号

使用group命令添加一个组账号,需要指定GID号时,可以使用“-g”选项
在这里插入图片描述

3.2.2gpasswd命令–添加,设置,删除组成员

gpasswd命令用来设置组账号的密码,实际上该命令更多的用来管理组账号和用户成员,需要添加,删除用户是,可使用“-a” “-d”选项
-a 添加用户到哪个组
在这里插入图片描述-d 将用户从组中删除
在这里插入图片描述
groups 组名称 查看组在这里插入图片描述
3.2.3groupdel命令–删除组账号
当系统中某个组账号不再使用时,可以使用groupdel命令删除组账号
在这里插入图片描述

4.查询账号信息:

在用户管理工作中,虽然直接查看用户账号,组账号的配置文件也可以查询相关信息,但不是很乐观。在Linux系统中,还可以使用几个常用的命令查询工具。

4.1id命令:查询用户账号的身份标识

使用id命令可以快速查看指定用户账号的UID,GID等表示信息。在这里插入图片描述

4.2groups命令:查询用户账号的登录属性

groups命令可以查看指定的用户账号属于哪些组
在这里插入图片描述

4.3finger命令:查询用户账号的详细信息

finger命令可以查询指定的账号的登录属性等详细信息,包括登录名称,完整名称,宿主目录,登录shell等。

4.4w命令:查询当前主机的用户登录情况

使用w命令可以查询当前主机中的用户登录情况,列出登陆账号名称,所在终端,登录时间在这里插入图片描述

5.文件/目录的权限和归属:

在Linux文件系统的安全模型中,为系统中的赋予了2个属性,访问权限和文件所有者,简称权限和归属,其中权限包括读取R-4、写入W-2、可执行X-1三种基本类型,归属包括U (属主) G(属组) O(其他人)
访问权限
读取r:允许查看文件内容,显示目录列表
写入w:允许修改文件内容,允许在目录中新建,移动删除文件或子目录
可执行x:允许运行程序,切换目录
在这里插入图片描述

5.2设置文件权限chmod

设置文件的权限时,主要通过chmod命令进行。在设置针对每一类用户的访问权限时,可以采用两种形式的权限表示方法:字符形式和数字形式。
在这里插入图片描述

5.3设置目录和文件归属 chown

需要设置文件归属时,主要通过chown命令进行。可以只设置属主和属组,也可以同时设置属主,属组。
在这里插入图片描述

5.4权限掩码U-mask值:

umask的分数指的是“该默认值需要减掉的权限,”因此,如果执行“umask 022”,代表group和other被拿掉了权限“2”,也就是被拿掉了写的权限。
如果执行命令“umask 000”,代表文件的默认权限是“777”
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/Cpureman/article/details/106793226