系统基础之权限管理作业题

1.问题:

 在/data/testdir里创建的新文件自动属于g1组,组g2的成员如: alice能对这些新文件有读写权限,组g3的成员如:tom只能对新文件有读权限,其它用户(不属于g1,g2,g3)不能访问这个文件夹。

[root@wen-7 testdir]# mkdir -p /data/testdir
[root@wen-7 testdir]# ll -d /data/testdir
drwxr-xr-x 2 root root 6 8月   4 10:58 /data/testdir
[root@wen-7 testdir]# chmod g+s /data/testdir
[root@wen-7 testdir]# groupadd g1
[root@wen-7 testdir]# groupadd g2
[root@wen-7 testdir]# groupadd g3
[root@wen-7 testdir]# chown :g1 /data/testdir/
[root@wen-7 testdir]# touch /data/testdir/f1
[root@wen-7 testdir]# ll /data/testdir/f1
-rw-r--r-- 1 root g1 0 8月   4 10:59 /data/testdir/f1
[root@wen-7 testdir]# setfacl -m d:g:g2:rw /data/testdir/
root@wen-7 testdir]# setfacl -m d:g:g3:r /data/testdir/
[root@wen-7 testdir]# getfacl /data/testdir/
getfacl: Removing leading '/' from absolute path names
# file: data/testdir/
# owner: root
# group: g1
# flags: -s-
user::rwx
group::r-x
other::r-x
default:user::rwx
default:group::r-x
default:group:g2:rw-
default:group:g3:r--
default:mask::rwx
default:other::r-x
[root@wen-7 testdir]# chmod o=  /data/testdir/
[root@wen-7 testdir]# ll -d /data/testdir/
drwxr-s---+ 2 root g1 15 8月   4 10:59 /data/testdir/

2、三种权限rwx对文件和目录的不同意义

   文件:

     r:可获取文件的数据

     w:可修改文件的数据 (不可删除文件)

     x:可将此文件运行为进程(针对二进制程序或脚本)

      X:不会增加X(前提本身无X权限)

   目录:

     r:可使用ls命令获取其下的所有的文件列表

     w:可修改此目录下的文件列表:即创建或删除文件      不看文件权限  

     x:可cd至此目录中,且可使用ls -l来获取所有文件的详细属性信息

     X:不会增加X(前提本身无X权限)

3、umask和acl mask 的区别和联系

区别:

 1.本质不同.umake是文件权限的反向掩码,屏蔽最大权限位,反向得出文件的默认权限,而make是直接定义文件权限的最大值.某些用户不能超过mask权限.

 2.对象不同,umake针对的是属主,属组和other,但mask针对的对象是排除属主和other的所有人

 3.标识不同.umake只是单纯的对比数值,没有相对的权限表达位.而mask会替代属组的权限位

 4计算方式不同.umake是用最大权限减去umake值得到文件实际权限,而mask是直接用mask的权限与指定用户权限最对比,屏蔽最大权限.  

联系:

  1.都是文件的默认权限.

  2.都能针对某个对象实现权限控制

4、三种特殊权限的应用场景和作用

 SUID:  

   应用场景:默认情况下,用户发起的进程,进程的属主是其发起者,因此,其以发起者的身份在运行,想使用更大的权限运行程序

   功用: 用户运行某程序时,如果此程序拥有SUID权限,那些二进制程序运行为进程时,其属主不是发起者,而是程序文件自己的属主

 SGID:

   应用场景:同一属组的用户,可以更改或删除组内其他用户的文件

   功用:当某目录属组有写权限,且有SGID权限时,那么所有属于此目录的属组的用户,且以属组身份再此目录中新建文件或目录时,新文件的属组不是用户的基本组,而是此目录是属组;

 STICKY:

   应用场景:同一属组的用户,可以更改或阅读组内其他用户的文件,但不可删除

      功用:对于属组或全局可写的目录,组内所有用户或系统上的所有用户对在此目录中都能创建新文件或删除所有的已有文件;如果为此类目录设置Sticky权限,则每个用户都能创建新文件,且只能删除自已的文件

5、设置user1,使之新建文件权限为rw——-

[user1@wen-7 ~]$ umask
0002
[user1@wen-7 ~]$ touch asd
[user1@wen-7 ~]$ ll asd
-rw-rw-r-- 1 user1 user1 0 8月   4 13:50 asd
[user1@wen-7 ~]$ umask 066
[user1@wen-7 ~]$ umask
0066
[user1@wen-7 ~]$ touch asdf
[user1@wen-7 ~]$ ll asdf
-rw------- 1 user1 user1 0 8月   4 13:51 asdf

6、设置/testdir/f1的权限,使user1用户不可以读写执行,g1组可以读写

/testdir/dir的权限,使新建文件自动具有acl权限:user1:rw,g1:—

备份/testdir目录中所有文件的ACL,清除/testdir的所有ACL权限,并利用备份还原

root@wen-7 testdir]# touch f1
[root@wen-7 testdir]# setfacl -m u:user1:0 f1
[root@wen-7 testdir]# setfacl -m g:g1:rw f
[root@wen-7 testdir]# getfacl f1
# file: f1
# owner: root
# group: root
user::rw-
user:user1:---
group::r--
group:g1:rw-
mask::rw-
other::r--


[root@wen-7 testdir]# mkdir dir
[root@wen-7 testdir]# setfacl -m d:u:user1:rw dir/
[root@wen-7 testdir]# setfacl -m d:g:g1:0  dir/
[root@wen-7 testdir]# getfacl dir
# file: dir
# owner: root
# group: root
user::rwx
group::r-x
other::r-x
default:user::rwx
default:user:user1:rw-
default:group::r-x
default:group:g1:---
default:mask::rwx
default:other::r-x

[root@wen-7 testdir]# touch dir/qwe 
[root@wen-7 testdir]# cd dir/
[root@wen-7 dir]# getfacl qwe
# file: qwe
# owner: root
# group: root
user::rw-
user:user1:rw-
group::r-x			#effective:r--
group:g1:---
mask::rw-
other::r--



[root@wen-7 testdir]# getfacl /testdir/* > acl.txt
getfacl: Removing leading '/' from absolute path names
[root@wen-7 testdir]# setfacl -R -b /testdir/*
[root@wen-7 testdir]# getfacl f1
# file: f1
# owner: root
# group: root
user::rw-
group::r--
other::r--

[root@wen-7 testdir]# getfacl dir
# file: dir
# owner: root
# group: root
user::rwx
group::r-x
other::r-x

[root@wen-7 testdir]# setfacl -R --set-file=acl.txt /testdir/* 
[root@wen-7 testdir]# getfacl -R /testdir/*
getfacl: Removing leading '/' from absolute path names
# file: testdir/acl.txt
# owner: root
# group: root
user::rw-
user:user1:---
group::r--
group:g1:rw-
mask::rw-
other::r--

# file: testdir/dir
# owner: root
# group: root
user::rw-
user:user1:---
group::r--
group:g1:rw-
mask::rw-
other::r--
default:user::rwx
default:user:user1:rw-
default:group::r-x
default:group:g1:---
default:mask::rwx
default:other::r-x

# file: testdir/dir/qwe
# owner: root
# group: root
user::rw-
user:user1:---
group::r--
group:g1:rw-
mask::rw-
other::r--

# file: testdir/f1
# owner: root
# group: root
user::rw-
user:user1:---
group::r--
group:g1:rw-
mask::rw-
other::r--

原创文章,作者:wencx,如若转载,请注明出处:http://www.178linux.com/28732

(0)
wencxwencx
上一篇 2016-08-04 14:39
下一篇 2016-08-04 14:39

相关推荐

  • 马哥教育络班22期-第1周博客作业

    第一周博客作业 1 描述计算机的组成及其功能 计算机由硬件和软件两大部分组成: 1.1 计算机硬件组成与功能 计算机硬件由运算器、控制器、存储器、输入设备、输出设备五大部分组成。 1.1.1 运算器 算术逻辑部件ALU,执行算术运算和逻辑运算。例如:加减乘除,移位,取模。运算器的核心是加法器。 1.1.2 控制器 控制器是计算机的指挥中心,它的主要作用是按照…

    Linux干货 2016-08-14
  • 马哥教育网络班22期+第11周课程练习

    1、详细描述一次加密通讯的过程,结合图示最佳。 Bob先利用单向加密算法提取当前数据的指纹(特征码),再用自己的私钥加密数据指纹并附加于数据尾部, 然后利用对称加密将整个文件加密,之后用Alice的公钥加密对称加密密钥附加于尾部。 Alice收到数据后,先用自己的私钥解密,得到对称加密密钥,之后用对称加密密钥解密,然后用Bob的公钥 解密得到数据指纹,并且验…

    Linux干货 2016-11-14
  • iptables

    一、前言 什么是iptables?当我们启动iptables时,使用service命令可以启动iptables。但是并非使用service启动的iptables就能说明其是一个服务。Iptables是一个便以我们写规则的工具,真正起作用的是内核中的netfilter一个框架。Netfilter内置了5个hook函数,当一个数据包交由此机器时,经过这5个hoo…

    Linux干货 2015-10-27
  • Linux发展史

    Linux发展史 Linux是一套自由加开放源代码的类Unix操作系统,诞生于1991年10月5日(第一次正式向外公布),由芬兰学生Linus Torvalds和后来陆续加入的众多爱好者共同开发完成。 Linux这个词本身只表示Linux内核,但实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU工程各种工具和数据库的操作系统。 li…

    Linux干货 2017-05-20
  • 马哥教育网络班21期+第1周课程练习

    一、计算机原理及组成部分 数学家冯·诺依曼,按不同功能把计算机分成了五大组成部分:运算器、控制器、存储器、输入设备、输入出设备。 现代计算机把运算器和控制器集成在一起,称为CPU,主要进行各种数据运算和对各种命令进行解释;存储器被分为两类,一类以内存为代表的随机存储设备,主要特点是速度快,容量有限,断电后信息就消失,另一类是硬盘为代表的外部存储设备,容量大,…

    Linux干货 2016-06-26
  • 加密算法、https、dns(主从、视图)

    第九周 2018/1/29

    2018-01-29