用户与组

用户账户

组账户

权限的分配

Cisco:开发的AAA认证体系:

Authentication:认证,核实身份是否正确

Authorization:授权,队一直核实身份的用户进行资源分配

Accounting:审计,监管资源被使用的情况

多用户、多任务的系统:

能够实现资源使用和完成任务的主体是:应用程序进程

安全上下文:secure context

晋城市已发起者的身份运行的:可以理解为,进程的所有者就是发起者;会将发起者的信息标记在进程上

当进程试图去访问资源的时候,安全上下文会比对进程的所有者和资源的所有者的关系

首先查看进程的所有者是不是资源的所有者,如果是,就按照属猪的权限使用资源;如果不是,则判断进程的所有者是否属于资源所属组,若果是,按照属组的权限使用资源;如果不是,则直接使用资源的其他人访问权限来使用资源

用户账户:就是计算机作者在操作系统中的身份映射;在满足了认证条件之后的映射

用户分类:

超级用户(管理员):root

普通用户:

系统用户:为了保证安全,必须让那些运行在后台的进程或者服务类进程以非管理员的身份运行;这类用户一般不需要登录到系统

登录用户:能够正常使用整个系统资源的用户

用户的标识:

用户的登录名称:未操作者准备的简单易记的字符串标识

用户的ID:

为计算机系标准的数字标识:

超级用户:0

系统用户:

centos5、6:1-499

centos7:1-999

登录用户:

centos5、6:500-60000

centos7:1000-60000

60000以上的标识符为用户自定义标识

名称解析:

名字<-->UID

解析库:/etc/passwd

系统利用解析库完成认证机制:验证登录用户是否是你声称的那个人

认证库:

用户的认证信息库/etc/shadow

组的认证信息库/etc/group

采用密码认证机制:

在Linux中,保存到认证库的密码信息是经过加密保存的

hash单向加密算法:抽取原始数据的特征信息,也称数据指纹

单向加密算法的特征:

1、只要数据相同,其加密结果必然相同

2、无论数据多大,其加密结果定长输出

3、雪崩效应

4、不可逆

单向加密常用算法:

1、md5:message digest,消息摘要,128bit定长输出

2、sha1:Secure Hash Algorithm,安全的哈希算法,160bit定长输出

3、sha224

4、sha256

5、sha384

6、sha512

salt:随机数

/dev/random:仅仅只是从熵池中返回随机数,如果熵池随机数耗尽,则进程被阻塞

/dev/urandom:先试图从熵池中返回随机数,如果熵池耗尽,则利用伪随机数生成器生成伪随机数

最终验证的字符串:算法+sait+密码在认证库中存放的信息:$6$salt$crytped_password

用户组:将具有某些相同或相似属性的用户联系在一起以便集中授权的容器

组类别:

管理员组:

普通用户组:

系统组:

登录组:

组的标识方法:

组名:方便操作者使用的

组的ID:为系统提供组标识:

管理员组:

系统组:

centos5、6:1-499

centos7:1-999

登录组:

centos5、6:500-60000

centos7:1000-60000

解析库:/etc/group

组也需要认证,组也有认证库:/etc/gpasswd

组也需要密码保护:

如果租没有设置密码保护的话,则不能随时加入

以用户为核心来对组进行分类:

用户的主要组(基本组):primary group,对于用户来讲,这样的组必须要有而且只能有一个

用户的附加组(附属组,额外组):Addition Group,这样的组对于用户来说,可以没有,也可以有多个

根据组所容纳的用户来分:

私有组:组名与用户登录名相同,并且组中只有此用户

公共组:组中可以包含其他多个不同用户

注意:默认情况下,用户的主要组都是其私有组

/etc/passwd

name:password:UID:GID:CECOS:directory:shell

name:登录名

password:密码字段,现做在使用了shadow机制的系统中,通常使用“x”作为占位符

UID:用户的ID

GID:此用户主要组的ID

AGECOS:comment,注释类的信息,现在一般都会用来存放用户的说明信息或全名

directory:用户的家目录的绝对路径

shell:用户的默认登录shell的绝对路径

/etc/group

group_name:组名

password:组密码占位符,默认为空

GID:组的ID

user_lsit:以该组为附加组的用户的列表

/etc/shadow:

login name:encrypted password:date of last password change:minimum password age:

login name:用户的登录名

encrypted password:加密了的密码

格式:$算法$salt$真正用户的加密密码

如果该位置为!,则表明用户的密码被禁用

如果该位置为*,则表明该用户为系统用户,不能登录

如果该字段为空,则表明用户可以无需输入密码即可登录系统,不推荐使用

date of last password change:

相对时间概念,相对于1970,1,1到最后一次修改密码的那天的天数

minimum password age:

在多长时间内无法修改密码,默认值为0,意即:随时可以修改密码,如果是非0的其他数字,意思是在这么长的天数里不能修改密码

maximum password age:

在多长时间后密码过期,默认为99999,意思是永久有效

password warning period:

密码过期之前的友善提醒天数,默认为7天

password inactivity period:

密码过期之后的宽限期,默认为-1,意思是永久宽限期

account expiration date:

一个用户账户密码过期的日期,这是一个绝对的过期期限,xxxx/xx/xx

reserved field:

保留字段,以备以后使用

/etc/gpasswd:

group_name:encrypted password:administrrators:number

用户和组的管理:

主要是用命令来完成:

组管理相关的命令:

groupadd:新建组账户,添加组

-g:在创建账户的时候,指定组账户的GID;如果不使用该选项指定,系统会选择再组解析文件中出现在的不大于60000最大GID+1

-r:创建系统组,意思就是创建一个GID在1-999(1-499)之间的组

groupdel:

groupmod:修改组的相关属性信息

-g:修改组账户的ID,

-n:修改组名

用户管理相关的命令:

useradd:添加用户账户

/etc/default/useradd

/etc/login.defs

/etc/skel

以上三个文件和目录能够帮助管理员在位指定任何选项时,也能创建用户,并为用户赋予默认的属性

选项:

-c:--comment `COMMENT`:在创建用户时为用户添加注释信息,一般为全名

-d:--home /PATH/TO/HOME_DIR:在创建用户的时候为用户指定家目录的绝对路径,被指定的目录应该是实现不存在的目录

-G:--groups GROUP1[,GROUP2,...[,GROUPN]]:在创建用户时,为用户添加附加组

-g:--gid GROUPNAME:在创建用户时,为用户指定主组

-m:--create-home:在创建用户时,强制性为用户创建家目录

-M:在创建用户时,不会创建用户的家目录。即使在/etc/login

defs中CREATE_HOME的值为yes也不创建

-r:--system:创建系统用户

-u:--uid UID:在创建用户的时候,为用户指定UID,这个UID可以超过60000的限制

-s:--shell /PATH/TO/SHELL:在创建用户时,为用户指定默认shell,使用绝对路径

-D:--defaults:显示或修改用户的默认属性值

-s:--shell /PATH/TO/SHELL:修改/etc/default/useradd文件中shell的默认值

userdel:删除用户账户

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

usermod:

-c:--comment `COMMENT`:修改用户的注释信息

-g:--gid GROUPNAME:修改用户的主要组

-G:--group GROUP1[,GROUP2,...[,GROUPN]]:修改用户的附加组为列表中的组

-a:--append:与-G选项同时使用,给用户添加新的附加组

-d:--home /PATH/TO/HOME_DIR:修改用户的家目录

-m:--move-home:与-d选项同时使用,将旧的家目录中的数据移动至新家目录之中

-l:--login NEW_LOGIN:更改用户账户的登录名

-s:--shell /PATH/TO/SHELL:修改用户账户的登录shell

-u:--uid UID:修改用户的UID

-L:--lock:锁定用户密码

-U:--unclock:解锁用户密码

认证管理相关命令:

passwd:设置和查看用户的密码信息

passwd  [-k] [-l] [-u] [-f] [-d] [-e] [-n mindays] [-x maxdays] [-w warndays] [-i inactivedays] [-S] [--stdin] [username]

1、如果省略用户名,意味着更改当前登录用户的密码

2、如果指定用户名,更改指定用户的密码,只能root使用

选项:

-l:--lock:锁定用户密码

-u:--unclock:解锁用户密码

相比较usermod -L、-U而言,其优先级更高

如果使用usermod -L锁定的用户密码,可以使用passwd -u解锁

而是用passwd -l锁定的用户密码,无法使用passmod -U解锁

-d:--delete:删除用户密码,将/etc/shadow文件中第二字段清空

-S:--status:查看用户的密码状态

--stdin:借助于管道将输入数据流当做标准输入信息送给passwd命令

echo "PASSWORD" | --stdin USERNAME

组认证相关命令:

gpasswd:

选项:

-a:--adduser:向名为group的组中添加用户user

-d:--deleyeuser:从名为group的组中移除用户user

其他相关管理命令:

chage:

功能:修改帐号和密码的有效期限

用法:chage[-l][-m mindays][-M maxdays][-I inactive][-E expiredate][-W warndays][-d lastdays]username

参数:

-l:列出用户的以及密码的有效期限

-m:修改密码的最小天数

-M:修改密码的最大天数

-I:密码过期后,锁定帐号的天数

-d:指定密码最后修改的日期

-E:有效期,0表示立即过期,

-1表示永不过期

-W:密码过期前,开始警告天数

chsh:

chsh 用于改变用户的登录shell.如果没有在命令行上指定shell,chsh能够做出提示

-s,--shell指定用户的登录shell

-l,--list-shells显示/etc/shells中的shell列表,然后退出

-u,--help显示使用方法,然后退出

-v,--version显示版本信息,然后退出

finger:

finger命令用来查询一台主机上的登录账号的信息,通常会显示用户名、主目录、停滞时间、登录时间、登录Shell等信息,使用权限为所有用户。

格式 finger [选项] [使用者] [用户@主机]

参数

-s:显示用户注册名、实际姓名、终端名称、写状态、停滞时间、登录时间等信息

-l:除了用-s选项显示的信息外,还显示用户主目录、登录Shell、邮件状态等信息,以及用户主目录下的.plan、.project 和.forward文件的内容

-p:除了不显示.plan文件和.project文件以外,与-l选项相同。

su:切换用户身份

su USERNAE:部分切换,半切换,再切换用户的时候,不会重新读取用户的配置文件,因此,用户并没有登录行为,所以,工作环境不初始化

su - USERNAME:登录式切换,完全切换,再切换用户的时候,重新读取目标用户的配置文件并且初始化工作环境,相当于“su -l USERNAME”

-c:并不会切换用户身份,而是以目标用户的身份执行命令

进行用户切换的时候,不要连续切换,而是用exit命令返回之前的用户

newgrp GROUPNAME:临时更改当前用户的主要组,使用exit返回之前的状态

id:先是真实有效的用户和组的ID

真实的ID:在/etc/passwd定义的用户的UID和GID

有效的ID:当前生效的用户的UID和GID

选项:

-g:只显示用户有效的GID

-u:只显示用户有效的UID

-G:显示用户所有组的ID

-n:以名称来代替ID进行显示

时间: 2025-01-07 00:51:24

用户与组的相关文章

用户、组和权限

在Linux系统中每一个文件都具有"所有者与所属用户组"属性,那么下面我们就来简单介绍一下所有者与所属用户组. 在Linux系统中每一个文件都具有"所有者与所属用户组"属性,那么下面我们就来简单介绍一下所有者与所属用户组. ☆所有者即用户(Username/UID),),用户分为管理员用户和普通用户. 管理员用户: 名称:一般为root                         uid:0 普通用户(uid范围:1-65535): 1. 系统用户:名称可以随便

用户和组管理类命令

1.列出当前系统上所有已经登陆的用户的用户名,注意:同一个用户登陆多次,则显示一次即可. who |cut -d' ' -f1 | sort | uniq 2.取出最后登陆到当前系统的用户的相关信息 w|tail-n1或者who|tail-n1 3.取出当前系统上被用户当做其默认shell的最多的那个shell cat /etc/passwd | awk -F':' '{print $7}'|uniq –c 结果为:/sbin/nologin awk -F':' '{a[$7]++}END{fo

Linux用户、组和权限的概念

用户.组和权限 安全上下文(Security Context): 1.权限 权限定义的例子: 文件: tom和jerry同时运行/tmp/inittab.new tom(属主) tom(属组) TOM:     ls /tmp/inittab.newJerry:     ls /tmp/inittab.new只会运行Tom,因为进程的属主是Tom 用户的三个主要权限: r,w,x 文件:r:可读,可以使用类似cat等命令查看文件内容:w:可写,可以编辑或删除此文件:x:可执行,eXcutable

Linux系统用户与组的基本命令

用户和组的管理主要是出于对人员的管理,在多用户多任务分时操作系统中:所有一个要使用系统资源的用户都必须先向系统管理员申请一个账号,然后以这个账号的身份进入系统.用户的账号一方面能帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问:另一方面也能帮助用户组织文件,并为用户提供安全性保护.每个用户账号都拥有一个惟一的用户名和用户密码.用户在登录时键入正确的用户名和密码后,才能进入系统和自己的主目录.用户和组的管理就是要对员工的账号进行不同程度的管理,一个用户属于什么组对应的使用这个组所

用户和组相关的配置文件总结

前言: 在用户管理,组管理过程中,最基本的四个文件就是/etc下面的passwd,shadow,group,gshadow.他们记录了与用户和组相关的信息.是学习和深入了解用户,组的基本. 除了这些基本的配置文件 还有与初始化相关的配置文件.定义用户添加时初始状态的配置文件/etc/default/useradd. 以及用户家目录的内容文件参考目录/etc/skel.和与用户,组基本属性默认设置的配置文件/etc/login.defs.接下来就对这些配置文件进行详细介绍. /etc/passwd

Linux的用户和组管理

Linux是个多用户多任务的分时操作系统,越是对服务器安全性要求越高的服务器,越需要建立合理的用户权限等级制度和服务器操作规范. 在linux中主要是通过配置文件来查看和修改用户信息 关于用户的配置文件有四个. /etc/passwd /etc/shadow /ect/group /etc/gshadow /etc/passwd 记录了这个用户的一些基本属性 第1字段:用户名称 第2字段:密码标识(表示有密码,会去/etc/shadow下调用) 第3字段:UID 0  超级用户 1-499  系

5、linux用户和组管理详解

linux用户和组管理 类Unix系统的设计初衷就是为让多用户同时工作,所以也迫使Linux系统有了极强的安全性,在前面安装红帽RHEL7操作系统时还特别要求"设置root用户密码",而root用户是存在于所有类UNIX系统中的"超级用户". 用户管理 root账户介绍(超级管理员) root用户拥有极高的系统所有权,能够管理系统的各项功能,如添加/删除用户,启动/关闭进程,开启/禁用硬件设备等权限.虽然使用root用户工作时不会受到权限的控制,但老话讲"

Linux重定向及用户和组管理

一.bash的I/O重定向及管道 1.Linux下一般缺省的输入称之为标准输入,即键盘输入,缺省的输出称之为标准输出,即显示器输出.Linux给程序提供了三种I/O设备: 标准输入(STDIN)--0:默认接受来自键盘的输入 标准输出(STDOUT)--1:默认输出到终端窗口 标准错误(STDERR)--2:默认输出到终端窗口 I/O重定向即改变默认位置. 输出重定向常用语法: CMD > file:把STDOUT重定向到file文件中,原有文件内容会被覆盖: CMD >> file:在

最详细的用户和组管理配置文件及其命令使用详解

1. linux系统中用户管理是基于用户名和密码进行管理的,其中包括用户名.用户密码,用户组,用户组密码,四种数据分别保存在四个文件当中,系统在识别用户和组时都是以ID号码来识别的其中(用户id和组id范围都一样,但是分别存在不同的地方): root--->0 普通用户--->1-65535   其中普通用户又分为系统用户和可登陆用户 在rhel7之前的号码范围:1-499是系统用户,500以上为可登录用户 rhel7改成了1-1000是系统用户,1000以上为可登陆用户 2. 关于存放用户相

用户、组、

用户标识.密码: Authentication 认证 Authorzation  授权 Audition     审计 这就是3A机制, 用户类别:分为管理员和普通用户:普通用户又可分为系统用户和登录用户 用户标识:系统按照UID来区分用户的,它的取值范围是16bits二进制数字:0-65535 管理员:用0表示 普通用户:1-65535 系统用户:1-499,是centos6:1-999 是centos7: 登录用户:500-60000centos6 :1000-60000centos7 名称