Linux账号和权限管理

发布时间:2023年12月27日

目录

一、用户账号和组账号概述

1、用户账号类型

2、组账号

1.基本组(私有组)

2.附加组(公共组)

3、ID

1.UID

2.GID

4、用户和账号管理

1.文件位置

2.useradd-----创建用户

3.userdel——删除用户账号

4.usermod---修改用户账号的属性

5、建立用户组

1.groupadd----添加组

2.gpasswd-----添加添加、设置、删除组成员

3.groupdel-----删除组账号

4.查询账户信息

?1.w--查询已登录到主机的用户信息

2.who

3.users

4.finger

二、?文件/目录的权限和归属

1、程序访问文件时的权限,取决于此程序的发起者

2、访问人群分为了三类

3、权限分为三种

1.对 文件的权限

2.对目录的权限

4、chmod--设置文件和目录的权限

5、chown--设置文件和目录的归属

6、umask---权限掩码


一、用户账号和组账号概述

1、用户账号类型

  • 普通用户:权限受到限制的用户
  • 超级管理员:拥有至高无上的权限
  • 程序用户:不是给人使用的,是给程序使用的,不允许登录

查看当前用户登陆的信息,可以使用以下几种方式:

w

who

users

finger

系统如何区别用户的身份:

系统是根据uid号来区别的

范围:

Centos6:

超级管理员:uid=0

程序用户:1-499

普通用户 500+

Centos7:

超级管理员:默认uid=0

普通用户 :1000-60000?不指定 顺序给用户进行交互式登录使用

超级管理员:root, 0

程序用户:1-999??

2、组账号

1.基本组(私有组)

  • 建立账户时,若没有指定账户所属的组,系统会建立一个和用户名相同的组,这个组就是私有组,这个组默认只容纳了一个用户。
  • 在用户所属组中的第一个组称为基本组,基本组在 /etc/passwd 文件中指定。
  • 等于主职位,有且唯一。

2.附加组(公共组)

  • 除了第一个组外的其他组为附加组或公共组,附加组在 /etc/group 文件中指定。
  • 等于兼职位,可有可无,可以有多个。

3、ID

1.UID

????????Linux 操作系统中的每一个用户账号都有一个数字形式的身份标记,称为UID号

????????root 用户账号的 UID 号为固定值 0,而程序用户账号的 UID号默认为1~499,500~60000 的 UID 号默认分配给普通用户使用。1-999 预留给系统,叫系统用户,?给人使用的账户是从1000开始。

2.GID

????????与 UID 类似,每一个组账号也有一个数字形式的身份标记,称为 GID,root 组账号的 GID 号为固定值 0,而程序组账号的 GID 号默认为 1~499,500~60000 的 GID 号默认分配给普通组使用。

4、用户和账号管理

1.文件位置

  • /etc/passwd

? ? ? ? 存放保存用户名称、宿主目录、登录Shell等基本信息,一行对应一个账户

  • /etc/shadow? ? ? ? ? 存放保存密码,一行对应一个密码

2.useradd-----创建用户

  • 基本格式

useradd [选项]? 用户名

添加用户:查看是否在passwd和shadow文件中生成信息

选项:

选项说明
-u指定用户的 UID 号,要求该 UID 号码未被其他用户使用。
-d指定用户的宿主目录位置(当与-M 一起使用时,不生效)。
-e指定用户的账户失效时间,可使用 YYYY-MM-DD 的日期格式。
-g指定用户的基本组名(或使用 GID 号)。
-G指定用户的附加组名(或使用 GID 号)。
-M不建立宿主目录,即使/etc/login.defs 系统配置中已设定要建立宿主目录。
-s指定用户的登录 Shell /sbin/nologin。

例如给用户指定uid号

3.设置用户更改、锁定密码

选项说明
-d清空指定用户的密码,仅使用用户名即可登录系统
-l锁定用户账户
-S查看用户账户的状态(是否被锁定)
-u解锁用户账户

(1)设置密码 echo “123123” | passwd --stdin lisi

(2)锁定用户 passwd -l zhangsan?

(3)?解锁用户 passwd -u zhangsan

(4)?查看用户状态 passwd -S zhangsan

(5)清楚密码 passwd -d zhangsan?

3.userdel——删除用户账号

格式:

userdel? [-r]? ?用户名

  • 添加-r选项时,表示用户的宿主目录一并删除
  • 如果不加-r选项,删除之后在创建用户时会报错

  • userdel 直接删除用户不加参数,然后再重新创建出相同的用户?

4.usermod---修改用户账号的属性

格式:

usermod [选项]... 用户名

选项:

选项说明
-l更改用户账号的登录名称
-L锁定用户账户
-u修改用户的UID号
-U解锁用户账户
-d修改用户的宿主目录位置
-e修改用户的账户失效时间(YYYY-MM-DD)
-g修改用户的基本组名(或使用GID号)
-G修改用户的附加组名(或使用GID号)
-s指定用户的登录shell

5、建立用户组

1.groupadd----添加组

格式:

groupadd [-g GID] 组账号名

2.gpasswd-----添加添加、设置、删除组成员

格式:

gpasswd

选项说明
-a添加用户到组
-d从组删除用户
-M批量加,指定组成员

[root@test1 /]# useradd zhou1 ? ? ? ? ? ? //组内加入新成员
[root@test1 /]# gpasswd -a zhou1 zhou
正在将用户“zhou1”加入到“zhou”组中 用户在前,组在后
[root@test1 /]# gpasswd -d zhou1 zhou
正在将用户“zhou1”从“zhou”组中删除
[root@test1 /]# gpasswd -M zhou1,zhou zhou
[root@test1 /]# grep "^zhou" /etc/group
zhou:x:88:zhou1,zhou

3.groupdel-----删除组账号

格式:

groupdel? 组账号名

4.查询账户信息

?1.w--查询已登录到主机的用户信息

w [选项]? [用户名]

选项说明
-h不显示输出信息的标题
-l用长格式输出
-s用短格式输出,不显示登陆时间,JCPU 和 PCPU 时间
-V显示版本信息

?

2.who

相比较 w 命令,who 命令只能显示当前登陆的用户信息,但无法知晓每个用户正在执行的命令

who [选项] [file]

需要说明的是,who 命令默认是通过 /var/run/utmp 文件来获取登陆用户信息,但如果通过 file 指定另一个文件,则 who 命令将不再默认读取 /var/run/utmp 文件,而是读取该指定文件来获取信息。

选项说明
-a列出所有信息,相当于所有选项。
-b列出系统最近启动的时间日期。
-l列出所有可登陆的终端信息。
-m仅列出关于当前终端的信息,who -m 命令等同于 who am i。?
-q列出在本地系统上的用户和用户数的清单
-r显示当前系统的运行级别。
-s仅显示名称、线路和时间字段信息,这是 who 命令的默认选项。
-u显示当前每个用户的用户名、登陆终端、登陆时间、线路活动和进程标识。
-T 或-w显示 tty 终端的状态,“+”表示对任何人可写,“-”表示仅对 root 用户或所有者可写,“?”表示遇到线路故障。
3.users

[root@localhost ~]# users
root root

4.finger

finger? 用户名

查询用户的详细信息

5.id

id? 用户名

查询身份表示

二、?文件/目录的权限和归属

1、程序访问文件时的权限,取决于此程序的发起者

  • 进程的发起者,同文件的属主:则应用文件属主权限

  • 进程的发起者,属于文件属组;则应用文件属组权限

  • 应用文件“其它”权限

2、访问人群分为了三类

  • 所属住(u)
  • 所属组(g)
  • 其他人(o)

3、权限分为三种

1.对 文件的权限

  • 读(r,4)
  • 写(w,2)
  • 执行(x,1 程序,脚本)

2.对目录的权限

  • r 可以使用ls查看此目录中文件列表
  • w 可在此目录中创建文件,也可删除此目录中的文件,而和此被删除的文件的权限无关
  • x 可以cd进入此目录,可以使用ls -l查看此目录中文件元数据(须配合r权限),属于目录的可访问的最小权限

4、chmod--设置文件和目录的权限

选项? -R : 递归

chmod ?[ugoa] ? ?[+ - =] ? ? ? ? ?[rwx] ? ? ?文件或目录

u:所有者(属主) ?g:所有组(属组) o:其他人?? ? a:所有、其他
+:增加 ? -:去除 ? =:设置权限
r:读 ?w:写 ? x:运行权限

1. u=rwx,g=rx,o=x
2. o+w?? ??? ??? ??? ??? ?其它用户增加w权限
3. a-x?? ??? ??? ??? ??? ?所有人减去执行权限

5、chown--设置文件和目录的归属

选项? -R? 递归

修改属主 ?属组
chown ?属主:属组 ?文件?
chown ?属主 ?文件
chown ? ? :属组 文件?

6、umask---权限掩码

umask 的值可以用来保留在创建文件权限

实现方式:

新建文件的默认权限: 666-umask,如果所得结果某位存在执行(奇数)权限,则将其权限+1,偶数不变

新建目录的默认权限: 777-umask

非特权用户umask默认是 002

root的umask 默认是 022

作用:

????????(1)控制新建的文件或目录的权限

????????(2)默认权限去除umask’的权限为新建文件或者目录的权限

文章来源:https://blog.csdn.net/AH99999/article/details/135228660
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。