账号和权限管理

Linux安全模型

Authentication:认证,验证用户身份

Authorization:授权,不同的用户设置不同权限

Accouting|Audition:审计

1用户账号和组账号概述

1.1用户帐号类型

Linux中每个用户是通过 User Id (UID)来唯一标识的 新建用户 1-60000 自动分配 0-65535 端口号

管理员:root, 0

程序用户:1-499 (CentOS 6以前), 1-999 (CentOS 7以后) 不登录的用户 系统默认的情况

对守护进程获取资源进行权限分配

普通用户:500+ (CentOS6以前), 1000+(CentOS7以后) 不指定 顺序

给用户进行交互式登录使用

  • 超级用户

  • 普通用户

  • 程序用户

1.1.1 超级用户 0 超级

超级用户:root 用户是 Linux 操作系统中默认的超级用户账号,对本主机拥有至高 无上的权限,类似于 Windows 操作系统中的 Administrator 用户。只有当进行系统 管理、维护任务时,才建议使用 root 用户登录系统,日常事务处理建议只使用普通用户账号。

1.1.2 普通用户 受到系统某一类限制

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

1.1.3程序用户

程序用户:在安装 Linux 操作系统及部分应用程序时,会添加一些特定的低权限用 户账号,这些用户一般不允许登录到系统,而仅用于维持系统或某个程序的正常运

1.2 组帐号

组相当于 职位 运维工程师 都具有大概相同的权限

1.2.1 基本组(私有组)

  • 建立账户时,若没有指定账户所属的组,系统会建立一个和用户名相同的组,这个组就是私有组,这个组默认只容纳了一个用户。

  • 在用户所属组中的第一个组称为基本组,基本组在 /etc/passwd 文件中指定

基本组:有且唯一

附加组:可有可无,可以有多个

默认新建用户时自动添加同名的组

1.2.2 附加组(公共组)

附加组:除了第一个组外的其他组为附加组或公共组,附加组在 /etc/group 文件中指定

1.3 ID

1.3.1 UID

UID(User IDentity,用户标识号):Linux 操作系统中的每一个用户账号都有一个数字形式的身份标

root 用户账号的 UID 号为固定值 0

centos7登录用户是从1000起到60000

centos6 500~60000

1.3.2 GID

GID(Group IDentify,组标识号):与 UID 类似,每一个组账号也有一个数字形式的身份标记,称为 GID(Group IDentity,组标识号)。

1.4 用户账号管理

1.4.1文件位置:

- /etc/passwd

存放保存用户名称、宿主目录、登录 Shell 等基本信息,

[root@test1 ~]# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash

 

 root  用户名称

:x  密码占用位

:0  uid

:0  gid

:root  备注信息,描述

:/root  家目录路径

:/bin/bash  shell环境

 

/etc/shadow 存放保存密码

[root@test1 ~]# head -1 /etc/shadow

 

root:
$6$HzYRIWo05k6aVw2p$aLg7wfHGwoghmuUrIYced/vtejEu32K/yyP9CrF..hAejvS4Y64if3DCfJxwjV1.NhLow40mm5Pkmd6R8KOBU/:
:0
:99999
:7
:
:
:

 第一root:用户名

第二

$6$F9xdHRnn$Y7h6DXNH.MbjWN/ws1mK4UKAI4ylimRVwc6zOyE2Zvd7z83e9FF9z02YXlMzeD9Ui/M.rO04gDbdnpkIPEvDr0  密码

 

 

第三:19055:最后一次修改密码时间

第四0:修改密码最小天数 0 不限制

第五99999:密码有效期

第六7:提前7天提醒

第7:宽限天数

第8:失效时间 永久

第9:保留

1.4.2添加用户

useradd命令

选项

  • -u:指定用户的 UID 号,要求该 UID 号码未被其他用户使用。

  • -d:指定用户的宿主目录位置(当与-M 一起使用时,不生效)。

  • -e:指定用户的账户失效时间,可使用 YYYY-MM-DD 的日期格式。

  • -g:指定用户的基本组名(或使用 GID 号)。

  • -G:指定用户的附加组名(或使用 GID 号)。

  • -M:不建立宿主目录,即使/etc/login.defs 系统配置中已设定要建立宿主目录。

  • -s:指定用户的登录 Shell /sbin/nologin

1.4.3 密码管理

passwd命令

为用户账号设置密码

passwd [选项]... 用户名

基本用法 不加选项 可以添加密码

选项

  • -d:清空指定用户的密码,仅使用用户名即可登录系统。

  • -l:锁定用户账户。

  • -S:查看用户账户的状态(是否被锁定)。

  • -u:解锁用户账户。

 

 

 

 

 

 

 

1.4.4修改用户账号的属性

usermod命令

usermod [选项]... 用户名

常见选项

  • -l 更改用户账号的登录名称(Login Name)

  • -L 锁定用户账户

  • -u 修改用户的 UID 号

  • -U 解锁锁用户账户              (除了这三个,其他等同于useradd)

  • -d:修改用户的宿主目录位置。

  • -e:修改用户的账户失效时间,可使用 YYYY-MM-DD 的日期格式。

  • -g:修改用户的基本组名(或使用 GID 号)

  • -G:修改用户的附加组名(或使用 GID 号)

  • -s:指定用户的登录 Shell

注意:usermod -l  改的名字  改的用户  (跟tar一样格式)

 

 

1.4.5 删除用户

userdel [选项] 用户

  • -r 将宿主目录一起删除

 

 

删除,但不会删除宿主目录,删除需要加 -r

1.4.6用户账号的初始配置文件

用户宿主目录下的初始配置文件只对当前用户有效

~/ .bash_profile

#此文件中的命令将在该用户每次登录时被执行,他会设置一些环境变量,并且会调用该用户的~/.bashrc文件

~/.bashrc

#此文件中的命令将在该用户每次打开新的bash shell时(包括登录系统)被执行(登录 切换 新的bash环境)

~/.bash_logout

#此文件中的命令将在该用户每次退出时bash shell时使用

/etc/bashrc

 

1.5组管理

1.5.1组账号文件

与用户帐号文件相类似 /etc/group:保存组帐号基本信息

/etc/gshadow:保存组帐号的密码信息基本不使用

 

 

 1.5.2添加组

groupadd命令

groupadd [-g GID] 组账号名

1.5.3组内管理

gpasswd 命令——添加、设置、删除组成员

  • -a:向组内添加一个用户

  • -d:从组内删除一个用户成员

  • -M:定义组成员列表,以逗号分隔

 1.5.4删除组账号

1.5.5查询

 finger,w,who    id

 

 这边我选择以后使用w

 

 

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

2.1 chmod

模式法:

chmod 对谁(所有者,所属组,其他)操作(+ - =)权限 文件

谁:u,g,o,a

操作:+,-,=

权限:r,w,x(普通权限对root无效)

 

 注意:文件夹最低权限是--x

    复制文件需要可读(r--)

   删除文件需要所在文件夹权限为可操作(--x)

 

 更改文件夹和文件夹内文件权限

2.2 chown

修改所属主和所属组

 

 

 

 

2.3 umask

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

实现方式:

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

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

非特权用户umask默认是 002

root的umask 默认是 022

posted @ 2022-09-26 16:51  羽喬  阅读(102)  评论(0编辑  收藏  举报
levels of contents