review-exp5--用户和权限管理

本文章主要供班级复习使用,由于时间紧凑,未一一作出解释,敬请谅解!

 

1.  列出自己的账户、密码、组在系统内 4 个相应文件里的条目

答:命令:sudo less /etc/passwd /etc/shadow /etc/group /etc/gshadow

|grep -n 'weliteh'

 

2.  列出/etc 目录下与账户有关的 4 个文件的文件权限

答:命令: ll /etc/passwd /etc/shadow /etc/group /etc/gshadow

 

3.  在系统上建立如下两个组:RnD,ITOperation,注意保持组名的大小写形式

答:命令:sudo groupadd -r RnD      sudo groupadd -r ITOperation

 

4、在系统上建立如下几个账户,要求每个用户的主组为其自己的私有组,并设置各个账户的密码(建立账户时全部用小写字母),并把RnD作为附加组赋予Adam、Bob、Edward,把ITOperation作为附加组赋予Calvin、David:

Adam

Bob

Calvin

David

Edward

答:脚本程序:

#!/bin/bash

#add user and passwd

for users in Adam Bob Calvin David Edward

do

sudo useradd $users

echo 123|sudo passwd --stdin $users

done

#RnD to Adam,Bob,Edward as an additional group

for groupusers1 in Adam,Bob,Edward

do

sudo gpasswd -M $groupusers1 RnD

done

#ITOperation to Calvin,David as an additional group

for groupusers2 in Calvin,David

do

sudo gpasswd -M $groupusers2 ITOperation

done

 

创建脚本:vim create.sh

赋予执行权限: chmod a+x create.sh

执行脚本:./create.sh

 

5、把Adam和Edward的shell变更为zsh(如果系统上没有zsh,需要自行安装)

答:命令:chsh –s /bin/zsh Adam 、 chsh –s /bin/zsh Edward

查看Linux当前已安装的shell:cat /etc/shells或者chsh -l,并无zsh,所以先安装zsh,安装zsh:sudo yum –y install zsh

 

6、要求所有的上述5个账户都需要在上一次密码修改之后至少10天才能再次修改密码、在上一次修改密码之后的第60天必须进行密码修改并提前10天开始进行警告,如果超过60天之后的10天内均没有任何活动(比如登录系统),那么则禁用该帐号的密码。

答:基础命令:sudo chage –m 10 –M 60 –W 10 –I 10 用户

脚本:

#!/bin/bash

for users in Adam Bob Calvin David Edward

do

    sudo chage -m 10 -M 60 -W 10 -I 10 $users

done

 

7、锁定Bob的账号

答:命令:sudo usermod –L Bob 或者sudo usermod Bob –s /sbin/nologin

 

8、结合pwgen命令,用chpasswd批量更新上述5个账户的密码,需要给出逐行执行脚本的过程。

答:安装pwgen: sudo yum install -y pwgen

脚本:

#!/bin/bash

passwardfile=./passwardfile

>$passwardfile

userlist="Adam Bob Calvin David Edward"

for user in $userlist

do

    if ! grep -w ^$user /etc/passwd > /dev/null

    then

        echo "user $user  not exists"

    else

        passward=$(pwgen 8 1)

        sudo echo "$user:$passward">>$passwardfile

    fi

done

sudo cat $passwardfile | chpasswd

 

创建脚本 :vim changepassward.sh

赋予执行权限:chmod a+x changepassward.sh

执行脚本:./ changepassward.sh

 

9、赋予Adam管理员权限,使得他在必要时可以通过sudo提升为管理员权限(涉及如何在CentOS利用wheel组和用户的关联来赋予某个可以利用sudo来提升自己的的操作权限)

答:命令:sudo usermod -G wheel Adam

 

10、用Adam的帐号登陆系统,建立一个叫做development_plan.org的文件,用标准的权限管理方式,使得同组的Edward也能读写这个文件,而Calvin和David不能对该文件进行任何操作

答:命令:创建development_plan.org 文件:touch development_plan.org、设置facl权限:setfacl -m u:Edward:rw,u:Calvin:---,u:David:--- development_plan.org、查看facl权限:getfacl --omit-header development_plan.org

 

##### 开始:以下命令以Adam的身份执行 #####

11、在当前的shell里利用umask命令,使得新建的文件的权限为600

答:对于root用户,系统默认的umask值是0022;对于普通用户,系统默认的umask值是0002。默认情况下,对于目录,用户所能拥有的最大权限是777;对于文件,用户所能拥有的最大权限是目录的最大权限去掉执行权限,即666。要使得新建文件的权限为600,则umask=666-600=066

命令:umask 0066

 

12、在当前的shell里利用umask命令,使得新建的目录的权限为751

答:对于普通用户,系统默认的umask值是0002。默认情况下,对于目录,用户所能拥有的最大权限是777;要使得创建目录的默认权限为751,则umask=777-751=026,命令:umask 0026。

 

13、列出系统里SUID或SGID被设置的程序的详情(各举出一例即可)

答:如果另一个普通账号需要修改自己的密码,就要访问 /etc/shadow 这个文件。但是明明只有 root 才能访问 /etc/shadow 这个文件,这究竟是如何做到的呢?事实上,普通用户是可以修改 /etc/shadow 这个文件内的密码的,就是通过 SUID 的功能。

SUID(chage、chfn、chsh、crontab、gpasswd、mount、newgrp、passwd、su、sudo、umount)

SGID(wall、write)

 

14、列出系统里sticky-bit被设置的目录自身的详情(举出一例即可)

答:sticky-bit目前只对目录有效,用来阻止非文件的所有者删除文件。比较常见的例子就是 /tmp 目录:权限信息中最后一位 t 表明该目录被设置了 SBIT 权限。SBIT 对目录的作用是:当用户在该目录下创建新文件或目录时,仅有自己和 root 才有权力删除。

 

15、文件扩展属性:

15.1在主目录建立一个以当前日期为名字的文件,并设置它的不可变属性(Immutable),要求只用一行命令完成

答:命令:currtime=$(date)&&touch $currtime&&sudo chattr +i $currtime&&lsattr $currtime

 

15.2去掉该文件的不可变属性

答:命令:sudo chattr -i $currtime && lsattr $currtime

##### 结束:以上命令以Adam的身份执行 #####

 

##### 开始:以Edward的身份登陆系统,执行下列操作 #####

16、在/tmp目录下建立一个叫做operation_notes_for_version_3.1.org 的文件,并让David拥有读写权限,而Adam和Calvin只能查看该文件的内容

##### 结束:以Edward的身份登陆系统,执行上述操作 #####

 

##### 开始:用David的身份登陆系统,执行下列操作 #####

17、利用vim命令编辑/tmp目录下的operation_notes_for_version_3.1.org 文件,往文件里写如如下2行字:

Version 3.1 is scheduled to be released on the coming 10th, April.

We the operation team need to prepare the rollback plan to ensure a safe fallback in case there were any problems in this new version.

##### 结束:用David的身份登陆系统,执行上述操作 #####

 

##### 开始:用Adam的身份登陆系统,执行下列操作 #####

18、查看/tmp目录下的operation_notes_for_version_3.1.org 文件的内容

 

19、用vim编辑/tmp目录下的operation_notes_for_version_3.1.org 文件,注意 vim的警告消息并截取整个vim窗口的图

##### 结束:用Adam的身份登陆系统,执行上述操作 #####

 

##### 开始:用Calvin的身份登陆系统,执行下列操作 #####

20、查看/tmp目录下的operation_notes_for_version_3.1.org 文件的内容

##### 结束:用Calvin的身份登陆系统,执行上述操作 #####

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值