关于用户权限的管理


项目概要:两个项目分别为A、B。各开发项目由两个开发小组(各2名成员)进行。

  1. 创建四个不同的用户账号。
  2. 创建两个项目组,将成员加入到各个小组中。
  3. 可能项目之间有需要共同协作的部分,因此需要创建一个共同组,将所有成员加入该组中。
  4. 对各个用户账户进行权限的设置。

一、用户类型管理

1. 用户分类

超级用户系统用户普通用户
具有一切权限,只有进行系统维护或其他必要情形下才使用root登录(如建立用户等)为了满足相应的系统程序对文件属主的要求而建立的为了使用者能够使用Linux系统资源而建立的
rootbin、daemon、adm、lp等我们大多数用户
UID=0UID∈[1,499]UID∈[1000,60000]

2. 用户帐号文件/etc/passwd

  • /etc/passwd是账号管理文件,用于实现对账号的管理。每个用户在该文件中对应一行,文件中的每一行都对应一个用户。
  • user01@ubuntu:~$ cat -n /etc/passwd
  • cat用于打开并查看文件,-n表示给文件的每一行加上一个序号
    1
  • 每条用户信息的格式:
    账号名称:密码:UID:GID:个人资料:主目录:Shell

1)账号名称:用户名,登录Linux系统时用户使用的名称。
2)密码:显示为X,使用了影子(shadow)密码,真正加密后的密码存放至“/etc/shadow”文件中了。
3)UID:数值,用于区别不同用户。
4)GID:数值,用于区别不同的组。
5)个人资料:记录用户的个人信息。
6)主目录:超级用户是/root;其他用户是对应的/home/username。用户登录后,默认目录即主目录。执行"cd~"命令也会切换到个人主目录。
7)Shell:为用户指定使用的shell类型,默认是bash shell。

3. 用户密码文件/etc/shadow

  • /etc/passwd文件行中有一个字段是用于存放经过加密的密码。
  • 浏览/etc/passwd权限
    1
    【所有用户对该文件都有读的权限】
  • 浏览/etc/shadow权限
    3
    【只有超级用户才能读取shadow内容】
  • 浏览/etc/shadow文件的具体内容(注意以超级用户身份查看——sudo)
    4
  • shadow文件中的每一行和passwd中的行对应。
    格式:用户名:密码:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志字段
  1. 用户名:和/etc/passwd用户名对应。
  2. 密码:存放加密后的口令密码。
  3. 最后一次修改时间:用户最后一次修改口令的时间。
  4. 最小时间间隔:两次修改口令允许的最少天数。
  5. 最大时间间隔:口令有效的维持天数。
  6. 警告时间:系统发出警告到口令失效的天数。
  7. 不活动时间:禁止登陆前用户名有效的天数。
  8. 失效时间:用户被禁止登陆的时间。
  9. 标志字段无意义,未使用。

4.用户管理

❗要求具有root权限

①添加用户
user01@ubuntu:~$sudo useradd student1
user01@ubuntu:~$cat -n /etc/passwd

4

  • 参数选项

-c xxx:添加注释
-d xxx:设置个人主目录
-e xxxx-xx-xx:设置账号的有效日期(需要启动shadow)
-f xxx:密码到期后多少天永久停止账号(需要启动shadow)
-g xxx:设定该用户所属基本组,xxx必须是已经存在的GID
-G xxx:设定该用户所属附属组,xxx必须是已经存在的GID,多个夫数组之间用“,”隔开
-k xxx:和“-m”一起使用,将xxx目录中文件复制到主目录
-m:若用户主目录不存在,创建主目录。
-s xxx:设置用户登录和启动的xxx,默认Bash Shell
-u UID:设置账号的UID,默认是已有用户的最大UID+1

  • 举例:
user01@ubuntu:~$ sudo useradd student2 -u 1011 -g 1001 -d /home/student2 -s /bin/bash

5

②用户密码的设置
  • 格式:passwd [选项] 账号名称
  • 参数选项:

-l:锁定,只有root可使用
-u:解开锁定,只有root可使用
-d:删除使用者密码,只有root可使用

  • 修改用户student1的密码:
    user01@ubuntu:~$sudo passwd student1
  • 修改用户自己的密码:
    user01@ubuntu:~$passwd
  • 锁定student1账户:
    user01@ubuntu:~$sudo passwd - l student1
  • 解除student1锁定:
    user01@ubuntu:~$sudo passwd -u student1
  • 删除student密码:
    user01@ubuntu:~$sudo passwd -d student1
③删除用户
  • 格式:userdel [-r] 用户账号
  • -r表示删除该用户账号的所有文件
  • 例如:
    user01@ubuntu:~$sudo userdel student1
④修改用户属性
  • 格式:usermod [参数] 用户账号
  • 常用参数:
  1. -c :修改备注
  2. -d:修改用户登入时的目录
  3. -g:修改用户所属群组
  4. -l:修改用户账号名称
  5. -e:修改账号的有效期限
  6. f:多少天关闭该账号
  7. s:修改登入后所使用的shell
  8. -U:修改在密码过期后解除对密码的锁定
  9. -G:修改用户所属附加群组
  10. -L:锁定用户密码,是密码无效
  11. -u:修改用户ID

5.修改用户默认设置

  • 用户默认设置有关文件主要存放于== /etc/login.defs 和 /etc/default/useradd==文件夹中。
  • 查看:
    在这里插入图片描述
    在这里插入图片描述

6. 用户的分组和管理

私有组标准组系统组
建立账户时,若没有指定账户所属的组,系统会建立一个组名和用户名相同的组组中的每个用户都具有组所拥有的权力安装系统或添加新的软件包会自动建立系统组
只容纳一个用户可以容纳多个用户-
①/etc/group——用户组文件
  • 该文件每一行对应一个组,格式:
    组名称:组密码:GID:组成员
    在这里插入图片描述
②组的添加
  • 格式:groupadd [选项]
    选项:
    -g GID:指定新组GID,默认在已有最大GID+1;
    -r:建立一个系统专用组
  • 新增一个GID为1005、组名为stu的组:
    user01@ubuntu:~$sudo groupadd -g 1005 stu
③组属性的修改
  • 格式:groupmod [选项]
    选项:
    -g GID:指定组新的GID
    -n name:更改组的名字为name
  • 将组名为stu的组改为组名为user1:
    user01@ubuntu:~$sudo groupmod -n user1 stu
④删除组
  • 删除组user1:
    user01@ubuntu:~$sudo groupdel user1
⑤取消组密码
  • 格式:gpasswd [参数] [用户名] 组名
  • 参数选项:
    【不带参数时,表示修改组密码】
    -a:将用户加入到组中
    -d:将用户从组中删除
    -r:取消组密码

二、文件权限管理

1. 文件和目录的访问权限

  • 文件和目录的访问权限有三种:读(r)、写(w)、执行(x)
  • 举例【主要看每行信息的前十个字母】
    在这里插入图片描述

第1列为“-”表示是普通文件(如果是d表示是文件夹)
第2-4列为“rw-”表示其拥有者(文件主root)可以读写,不可执行
第5-7列为“r–”表示同组的用户(g)只能读,不可以写和执行。
第8-10列为“r–”表示其他用户(o)只能读,不可以写和执行。

2. 修改文件的权限

①用字符方式修改文件权限
  • 格式:chmod 【操作对象】【操作符号】 【权限】文件名
操作对象操作符号权限表
u所有者 、g组用户、o其他用户、a所有用户+增加权限、-取消权限、=赋予权限r读、w写、x执行
②用数字方式修改文件权限
  • 格式:chmod 【mode】文件名
    0:没有权限;
    1:可执行权限x;
    2:可写权限w;
    4:可读权限r;
    mode为所拥有权限的和。

3. 默认访问权限umask

  • umask是用来决定建立的文件或目录不能拥有的权限。
  • 新建立的文件/目录的权限由系统默认权限和默认权限掩码共同决定。
    新目录的权限=777-默认权限掩码
    新文件的权限=666-默认权限掩码
  • umask是一个三位数,表示文件的权限,三个数字从左到右依次表示为u、g、o的权限

4. 修改文件拥有者

  • chown修改文件的拥有者
    eg: user01@ubuntu:~$sudo chown user01:root stu
  • chgrp修改文件的组拥有者
  • 只有系统管理员才能修改文件的拥有者和组

三、su、sudo工具的使用

1. su变更用户ID

  • 可以让用户在一个登录的shell中不退出就改变为另一个用户。
  • 如果su命令后边不接任何用户名,默认为超级用户root
  • 如果su后面接了某个用户名,就切换到该用户名底下

2. sudo工具的使用

  • 允许系统管理员分配给普通用户一些权力,使其能够执行一些只有超级用户或其他特许用户才能完成的任务。

四、总结

blabla~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值