Linux的账号和权限管理

目录

一、用户账号

1、Linux有三大用户类型:

二、组账号

1、基本组(私有组):有且只有一个,一般为创建用户时指定的组。

2、附加组(公共组):可有可无,用户除了基本组以外,额外添加指定的组。

三、标识号

1、UID 用户标识号:

2、GID组标识号

四、用户账号文件介绍

1、/etc/passwd:存放用户信息文件,系统上所有的用户信息都存在这个文件中

2、/etc/shadow:存放用户密码信息的文件

第九字段:无用字段,保留字段收费内容五、管理用户账号的相关命令

1、useradd:添加用户账号

2、passwd:修改密码

3、usermod:修改用户账号属性

-U 解锁用户   passwd  -u   一样4、userdel :删除用户账号

5、echo:快捷设置用户密码

6、usermod :对已有用户属性进行修改(选项和useradd基本一致)

7、gpasswd:将用户添加到组里

8、查看用户信息

9、finger  :查询用户账号的详细信息

10、id :查询用户身份标识(uid gid 和组)

六、用户账号和组账号配置文件

1、家目录基本配置文件

2、组账号文件

七、管理组账号相关命令

1、groupadd:添加组账号

2、gpasswd  :添加删除组成员

八、查询账号信息相关命令

1、groups:查询用户所属组

2、id:查询用户身份标识

3、finger:查询用户账号的详细信息

九、文件目录的权限和归属

1、读取:r    允许查看文件内容(有rx权限才可以显示目录列表)

2、写入:w    允许修改文件内容,在目录中新建移动或者删除文件

3、可执行:x   允许执行程序,是文件夹下最小的权限

十、设置文件目录的权限和归属命令

1、chmod:设置文件和目录的权限

2、chown :设置文件和目录的归属

3、umask:决定新建文件目录的权限

4、suid  属主

5、guid属组

6、acl访问控制列表


一、用户账号

1、Linux有三大用户类型:

①超级用户:拥有最高权限,root用户是Linux操作系统默认的超级用户账户,是最高级权限,系统中超级用户是唯一的。

②普通用户:权限受限的用户,账号需要管理员创建,拥有的权限会受到限制,一般只在自己的宿主目录中有完整的权限。

③程序用户:给程序用的用户,仅用于维持系统的某个程序正常运行。

二、组账号

1、基本组(私有组):有且只有一个,一般为创建用户时指定的组。

2、附加组(公共组):可有可无,用户除了基本组以外,额外添加指定的组。

三、标识号

1、UID 用户标识号:

生成用户的时候,自动会分配一个uid账号,用户之前用uid账号来进行区分。

UID的取值范围

超级用户UID 0 0
普通用户UID CentOs6以前 500+ CentOs7以后 1000-60000
程序用户UID CentOs6以前 1-499 CentOs7以后 201-999

root不一定是超级管理员,uid=0的才是超级管理员

2、GID组标识号

与UID类似,每一个组账号都有自己身份标识,成为GID。

四、用户账号文件介绍

1、/etc/passwd:存放用户信息文件,系统上所有的用户信息都存在这个文件中

Linux的账号和权限管理_第1张图片

一共七个字段,七段用冒号(:)隔开

第一字段:root:用户名

第二字段:x:密码占位符

第三字段:0 : uid 用户编号

第四字段:0:gid 组编号

第五字段:root: 备注

第六字段:/root: 家目录的位置

第七字段: /bin/bash:用户默认加载的 shell  环境

2、/etc/shadow:存放用户密码信息的文件

用来保存用户密码,账号有效期等信息

root:$6$4V92DDnjpoaeXmmD$Dx./:18318:0:99999:7: :  :

第一字段:root:用户名

第二字段:$6$4V92DDnjpoaeXmmD$Dx:算法加密后密码    如果此处  为*   !!  禁止登陆

第三字段:18318:   从1970.1.1 (linux 诞生的日期)   到 今天  过了19318

第四字段:0:  代表不限制  更改密码的时间    ,如果写10   代表10天内不能修改

第五字段:99999:密码 有效期     约等200年    永久 

第六字段:7:密码到期前 7天 提醒你

第七字段:  密码过期后的宽限天数    30  天 还能登陆

第八字段: 账号失效时间   

第九字段:无用字段,保留字段收费内容
五、管理用户账号的相关命令

1、useradd:添加用户账号

对新建用户的基本信息进行修改(对已经有的用户无法设置)

格式:useradd   选项 用户名

-u 指定uid

Linux的账号和权限管理_第2张图片

-d  指定家目录

-M  不建立家目录

-s 指定shell类型

-e 指定用户失效时间

建立一个用户指定uid 不建立家目录 不让用户登录(s/abin/nologin)

Linux的账号和权限管理_第3张图片

-g  表示指定基本组的uid

-G  指定附加组的uid

2、passwd:修改密码

格式:passwd 选项   用户

-l   锁定用户,不让用户登录

-S   查看是否锁定

Linux的账号和权限管理_第4张图片

-u  解锁

-fu  强制解锁

Linux的账号和权限管理_第5张图片

-d   清空密码 ,不需要密码登录

补充:①tr -d 123就是删除123

echo 123abc |tr -d 123

输出=abc

②面交互修改密码

echo 123123 | passwd lisi --stdin

3、usermod:修改用户账号属性

useradd 新建用户的信息进行修改

已存在的用户需要使用usermod进行修改

格式: usermod  选项  用户名

-l     更改用户名

-u    指定uid      

-d    指定家目录

-M  不建立家目录

-s    指定shell类型

-e   账户失效时间  yy-mm-dd

-g    指定基本组的 gid

-G   指定附加组的gid

-L  锁定用户   passwd -l    一样

-U 解锁用户   passwd  -u   一样
4、userdel :删除用户账号

格式:userdel  -r 用户名

-r  就是连家目录一起删除

5、echo:快捷设置用户密码

格式:echo 密码 | passwd --stdin 用户名

6、usermod :对已有用户属性进行修改(选项和useradd基本一致)

-l   修改用户名     

格式:useradd -l 新名字   旧名字

-L锁定改后的名字

-U  解锁

补充:cat /etc/shells    就是查看shell的类型

7、gpasswd:将用户添加到组里

格式:gpasswd   选项   用户  组名

-a    添加    gpasswd -a  用户  组名

-d  删除

-M 用,隔开,一次性添加多人

8、查看用户信息

w     who      users  依次详细

9、finger  :查询用户账号的详细信息

yum install finger -y  安装finger命令

[root@localhost ~]#yum install finger -y

10、id :查询用户身份标识(uid gid 和组)

六、用户账号和组账号配置文件

1、家目录基本配置文件

.bash_logout

退出前先运行命令

.bash_profile

.bashrc

进入用户前先运行命令

用户账号初始配置文件从/etc/skel中复制而来。

2、组账号文件

etc /passwd :用户信息

etc /shadow :用户密码,保存组账号的密码信息 

/etc/group: 保存组账号基本信息

七、管理组账号相关命令

1、groupadd:添加组账号

格式   groupadd   组名

2、gpasswd  :添加删除组成员

gpasswd   选项    组名  用户名

选项 功能作用
-a  向组内添加一个用户
-d 从组内删除一个用户成员
-M

向组内批量添加用户

八、查询账号信息相关命令

1、groups:查询用户所属组

格式:groups  用户名

2、id:查询用户身份标识

格式    :id  用户名

3、finger:查询用户账号的详细信息

格式:finger  用户名

使用前需要先下载:yum install finger -y

九、文件目录的权限和归属

权限(文件夹)一定要有x,如果没有x,有rw也没有用

1、读取:r    允许查看文件内容(有rx权限才可以显示目录列表)

2、写入:w    允许修改文件内容,在目录中新建移动或者删除文件

3、可执行:x   允许执行程序,是文件夹下最小的权限

r 4
w 2
执行 x 1
读写执行 rwx 7

rwx有就写没有就用-表示

rw表示属主

r--表示数组

r--表示其他

-rw-r--r--.1.root root 08月26 2021 abc.txt

root可读可写,root组中用户只可读,其他用户只可读

例题:一个文件可以被删除,和本身权限有关吗?

和所在文件夹有关,有wx权限就可以删除

例题:cp/etc/issue/mnt/dir这跳命令中,cp  etc issue dir mnt  分别最低需要什么权限?

/bin/cp 需要x权限  ;               /etc/ 需要x权限 ;                      /etc/issue 需要r权限 ;
/data 需要x权限  ;                 /data/dir 需要w,x权限

例题:作为超级管理员,别人没有读写权限,我有读写权限,那么别人没有执行权限,我有吗?

别人有权限,我也有权限,如果别人没有执行权限,那么我也没有权限

补充:复制文件有r只读权限就性了。

十、设置文件目录的权限和归属命令

1、chmod:设置文件和目录的权限

格式:chmod  ugoa  +-= rwx  文件或者目录

u:属主          g:属组            o:其他用户           a:所有用户

+:在原有的基础上增加权限           -:在原有的基础上去除权限          =:赋予权限

r: 读                  w:写              x :运行

格式:chmod   777   文件或目录

补充:chmod  o+t    DIR    添加sticky位

chemod  o-t  DIR   减少sticky位

给所有人赋予权力:chmod  -a rwx*

2、chown :设置文件和目录的归属

chown   属主   文件或目录

 chown   :属组    文件或目录

  chown   属主:属组    文件或目录

①都改:chown    用户名: 组名   文件或者文件夹

②只改属主:chown    用户名

③只改属组:chown   :组名

3、umask:决定新建文件目录的权限

文件落地最高权限 666 (为安全性考虑,文件没有执行权限) ;文件夹落地最高权限 777

新建文件的默认权限: 666-umask,如果所得结果某位存在执行(奇数)权限,则将其权限+1,偶数不变
新建目录的默认权限: 777-umask
非特权用户umask默认是 002
root的umask 默认是 022

4、suid  属主

使用此命令时,把当前用户当成文件的主人

chmod  u+s  /user/bin/vim

chmod  u-s  /user/bin/vim

5、guid属组

6、acl访问控制列表

setfacl -x u:lisi passwd

-x就是删除。

你可能感兴趣的:(linux,运维,服务器)