实验5 - 账户管理、口令管理与权限管理

学习目标

  • 使用 useradd/usermod/userdelgroupadd/groupmod/groupdel命令 添加/修改/删除 用户 和组
  • 使用 id / group命令显示 用户/组 信息
  • 使用 su / sgnewgrp/groups 命令切换 用户/组 查看所在组
  • 使用 passwd gpasswd命令管理用户口令、组口令和组成员
  • 使用 chage 命令设置已存在用户的口令时效策略

  • 使用 chmod命令修改文件权限

  • 使用 chown 命令修改文件所有者
  • 使用chgrp命令修改文件组
  • setfacl/getfacl命令设置/查看文件ACL权限
  • 使用lsattr/ chattr 命令查看/修改文件系统特殊权限

*提交时间

  • 网络工程221-4班,2024年5月17日(第11周 周五)23:00

*补交时间(补交满分80计算)

  • 2024年5月19日(第11周 周日)23:00

*提交方法

  • 电子版:在CG平台上提交
  • 打印版:2024年5月20-21日(第12周 周一、周二)(网络221-224)

任务1:显示用户和组管理的相关信息

  • 显示当前用户的用户和组信息

  • 查看添加用户时读取的默认(范围)值 ( 结果截图

  • 查看使用 useradd 命令添加用户时的默认值

  • 列表显示默认系统账户数据库文件/etc/shadow及其权限 ( 结果截图
  • 进入root,查看stu用户 shadows 手册,并列出每一列的含义 ( 结果截图

    getent shadow 用户名
    

任务2:创建用户并为其设置登录口令

  • 请切换到 root 用户环境(su root)

  • 查看 useradd 的命令帮助 ( 结果截图

  • 添加名为 学生姓名1 的用户并为其设置口令
  • 查看 /home/ 学生姓名1 目录自身的权限 ( 结果截图
  • 显示 /home/ 学生姓名1 目录下的所有文件(包括隐含文件) ( 结果截图
  • 显示指定用户 学生姓名1 的用户和组信息 ( 结果截图
  • 显示4个账户文件最后一行的内容,熟悉各个字段的含义 ( 结果截图 ) /etc/passwd;/etc/shadow; /etc/group; /etc/gshadow

任务3:修改用户名和组名、组成员管理

  • 学生姓名1 用户的名字改为 学生姓名2,同时将其主目录移动到 /home/ 学生姓名2
  • 学生姓名1 组的名字改为 学生姓名2
  • 检验更改结果( 结果截图
  • 添加名为 寝室门牌号 的组
  • 添加用户 emily(同时会创建同名主组),并指定其附加组为 寝室门牌号
  • 添加用户 jacob,并指定其主组为 寝室门牌号
  • 将用户 学生姓名2 的附加组设置为 寝室门牌号
  • 查看 寝室门牌号 组中的成员 ( 结果截图
  • 添加名为 designer 的组
  • 学生姓名2 用户加入 designer 组,并确保其还是 寝室门牌号 的组成员 ( 结果截图
  • 创建 assistant 组
  • 创建 5 个用户( 结果截图
  • 设置 5 个均为 assistant 组的成员
  • 查看 assistant 组中的成员( 结果截图
  • 为 assistant 组添加1个新成员
  • 从 assistant 组剔除1个成员
  • 删除所有你新创建的用户和组(除了 学生姓名1)

用户名设置要求:从下列用户名中选择你喜欢的用户名+本人姓名缩写

  • austin victor charles richard alexander jacob michael matthew
  • nicholas christopher joshua jason tyler joseph
  • alexis amanda tina stella christina hannah alina gloria bella emily
  • brianna samantha hailey ashley kaitlyn madison brandon sarah

任务4:基本权限管理

  • 新建 学生姓名 -a.txt文件
  • 查看 学生姓名 -a.txt文件权限 (ls -l命令)( 结果截图
  • 学生姓名 -a.txt文件赋予权限(部分操作需要root权限):

    • 为所有用户增加执行权限,并检查是否成功 ( 结果截图
    • 为所有用户去掉执行权限,并检查是否成功( 结果截图
    • 为所有用户增加执行与写入权限,并检查是否成功( 结果截图
    • 为所有用户去掉执行与写入权限,并检查是否成功( 结果截图
    • 为本用户增加写入,同组用户增加执行,其他用户去掉读取权限,并检查是否成功( 结果截图
    • 为本用户设置写入读取,同组用户设置读取执行,其他用户设置读取权限,并检查是否成功 ( 结果截图
  • 使用命令恢复a.txt 最初权限

    • 安装ACL工具
      sudo yum install acl
      
    • 备份当前目录下所有文件权限

      • 使用命令getfacl与重定向将所有文件的信息写入名为permissions.txt的文件中
    • 查看permissions信息 ( 结果截图

    • 恢复原有权限

      • cd到创建permissions.txt文件时所在目录
      • 使用setfacl从permissions.txt文件重恢复所有文件权限

任务5:文件属主管理

  • 新建 学生姓名 -b.txt、 学生姓名 -c.txt、 学生姓名 -d.txt文件,按要求操作(部分操作可能需要root权限,不存在的用户,按需求创建)
  • 改变 学生姓名 -b.txt用户属主为root,并检验是否成功。( 结果截图
  • 改变 学生姓名 -c.txt用户属主为root,组属主为root(一条命令),并检验是否成功。( 结果截图

  • 更改 学生姓名 -d.txt组属主为root,并检验是否成功。( 结果截图

任务6:acl权限

  • 目录 /admin/formation 的属主和属组均为 root, 用户 root 拥有所有权限, root 组只能读和执行,其他人无任何权限,但是用户 学生姓名 1 对此目录具有一切权限, 而用户 学生姓名 2 可以读取该目录下的文件

  • 查看 /admin/formation 目录的ACL权限 ( 结果截图

  • 使用 学生姓名 1用户和 学生姓名 2用户分别测试权限是否配置成功 ( 结果截图

任务7:文件系统权限

  • 新建 学生姓名 1.txt、 学生姓名 2.txt,完成以下操作
  • 学生姓名 1.txt设置只可追加权限
  • 学生姓名 2.txt设置不可修改权限
  • 检验权限设置是否成功。( 结果截图

任务8*: 口令管理与口令时效

  • 学生姓名 用户登录并重新设置其口令
  • 使用非交互模式将 学生姓名 用户的口令设置为 2024Kylin (使用 su )( 结果截图
    echo "2024Kylin" | passwd --stdin 用户名
    
  • 锁定用户 学生姓名 ,显示其口令状态,并尝试以 学生姓名 用户身份登录 ( 结果截图
  • 解除对 学生姓名 用户的锁定,并尝试以 学生姓名 用户身份登录
  • 设置新建用户的口令策略,至少每隔90天修改一次自己的口令
  • 设置对 学生姓名 用户的口令策略,至少每隔60天修改一次自己的口令
  • 设置 学生姓名 用户 180 天后到期,并提前7天预警
  • 强制用户 学生姓名 在首次登录时修改其口令 ( 结果截图

任务9*:root密码忘记重设

习题:

  1. 写出下列命令含义 ``` newgrp stu1

usermod -l hello world

useradd -g group1 -G staff tom -e 12/31/2011 user1 ```

  1. 根据要求写出命令

    为用户abc设置主组为stu,附加组为hello和world

    把用户def添加到组stu中,并保持该用户原有组不变

    为用户hij设置口令

  2. 根据以下命令运行结果,分别描述stu、test1、test2用户对aa与cc的权限 122

表1 权限表格

用户 aa cc
stu
test1
test2

</div> 如需要将aa的拥者变为test2组的test2,需要输入什么命令?

results matching ""

    No results matching ""