8.2日作业

8.2作业

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

  先将文件目录的属组变更为g1 ,chmod  g+s /data/testdir/     setfacl -m -g:g2 -u:alice 666 /data/testdir/    setfacl -d -g:g3 -u:tom 444 /data/testdir/    chmod o-r /data/testdir  

  

2、创建组sales,gid 3000,passwd:centos,sales admins:user2

将用户user1,user2,user3加入到sales辅助组

希望user1 创建新文件 默认的所属组为sales

user2将用户user3从sales组移除

删除sales,user1,user2

groupadd  sales -g 3000 

echo centos | gpasswd –stdin

gpasswd -A user2 sales

3、三种权限,三种特殊,acl,chattr 总结

 三种普通文件权限因为只影响对应的用户,所以不在此一一赘述。

 不过普通表达式在这里列出

  chmod u= 或 chomod +/_

  chmod g= 或 chmod  +/-

  chmod o= 或 chmod  +/- 

 三种特殊权限相对就复杂了。

 SUID :仅影响文件,作用在目录上将失效 ,仅影响该文件的属主以外的人的权限,一般若是普通用户具有了SUID权限将会非常危险。

 SGID:影响目录或者文件的属主以外的人的权限,对此目录或文件有写权限的用户创建的新文件的属组将自动变更为原文件或目录的属组。

 STicky: 是粘贴模式,仅影响其他用户的权限,其他除属主及root之外的用户将无法删除文件,仅用于文件,用于目录将失效。

 表达式不予列出

 acl权限是影响除其他用户和文件属主、属组的用户权限的一种进程管理列表。

 生效顺序:所有者,自定义用户,自定义组,其他人

 

为多用户或者组的文件和目录赋予访问权限rwx

• mount -o acl /directory

• getfacl file |directory

• setfacl -m u:wang:rwx file|directory

• setfacl -Rm g:sales:rwX directory

• setfacl -M file.acl file|directory

• setfacl -m g:salesgroup:rw file| directory

• setfacl -m d:u:wang:rx directory

• setfacl -x u:wang file |directory

• setfacl -X file.acl directory

ACL文件上的group权限是mask 值(自定义用户,自定义组

,拥有组的最大权限),而非传统的组权限

v getfacl 可看到特殊权限:flags

v 默认ACL权限给了x,文件也不会继承x权限。

v base ACL 不能删除

v setfacl –k dir 删除默认ACL权限

vsetfacl –b file1清除所有ACL权限

v getfacl file1 | setfacl —set–file=- file2 复制file1

的acl权限给file2


 

 

 

v mask只影响除所有者和other的之外的人和组的最大权限

Mask需要与用户的权限进行逻辑与运算后,才能变成有限的权限

(Effective Permission)

用户或组的设置必须存在于mask权限设定范围内才会生效。

setfacl -m mask::rx file

v –set选项会把原有的ACL项都删除,用新的替代,需要注意的 是一定要包含UGO的设置,不能象–m一样只是添加ACL就可以. 如:

v setfacl –set u::rw,u:wang:rw,g::r,o::– file1

     chattr +i 不能删除,改名,更改

v chattr +a 只能增加

        lsattr 显示特定属性

附加练习:新建系统组mariadb,新建系统用户user1,属于maridb,要求其没有家目录,且shell为/sbin/nologin:尝试root切换至用户,查看其命令提示符

      groupadd mariadb   useradd user1 

      usermod -aG mariadb user1 

      usermod -s user1 /sbin/nologin 

      su – user1 

      cat /etc/passwd

      

     2.新建GID为5000的组mageedu,新建用户为gentoo,要求其家目录为/users/gentoo,密码同用户名

      groupadd -g 5000 mageedu

      useradd gentoo

      usermod -d /users/gentoo

       echo "gentoo "|passwd –stdin gentoo

      3.新建用户fedora,其家目录为/users/fedora,密码痛用户名

       useradd -d /users/fedora fedora 

       echo "fedora" | passwd –stdin fedora 

      4.新建用户www,其家目录为/ users/www;删除www用户,但保留其家目录

       useradd -d /users/www www

       userdel www

      5.为用户gentoo和fedora新增附加组mageedu;

       usermod -aG mageedu gentoo , fedora 

      6.复制目录/var/log至/tmp/目录,修改/tmp/log及其内部所有文件的属组为mageedu,并让属组对目录本身拥有写权限。

              cp  /var/log /tmp/

        chgrp mageedu /tmp/log   chmod g+w /tmp/log 

              

             

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

赞 (1)
sjfbjssjfbjs
上一篇 2016-08-08 16:14
下一篇 2016-08-08 16:14

相关推荐

  • 浅谈Linux账号与用户组管理

    在学习linux系统中,最重要的莫过于对系统账户的管理以及如何恰当的分配用户组权限。在我们登陆linux系统的时候,输入的账号,其实并不是linux所能识别的。由于计算机仅能够识别0与1,所以它仅能认识ID(一组号码)用户标示符UID、GID。相应的你所输入的账号与ID的对应关系就保存在/etc/passwd当中。 对于每一个文件来说都具有”所有者与所属用户…

    2017-07-22
  • 软件包管理–rpm、yum

    rpm软件包管理,rpm命令的使用。yum命令使用,yum源的搭建,网络yum源的搭建方法。编译安装http

    Linux干货 2017-12-03
  • puppet部署多台服务器

    利用puppet实现自动化部署 配置前准备:   图中:蓝线表示各个服务器之间通信      红线表示puppetmaster主机向各个agent主机部署信道 A主机puppet-master主机:192.168.126.129 B主机做两种服务:keepalived高性能和nginx反代  &nb…

    2017-07-23
  • 第十一周作业

    第十一周作业 1、详细描述一次加密通讯的过程,结合图示最佳 第一阶段:ClientHello: 支持的协议版本,比如tls 1.2; 客户端生成一个随机数,稍后用户生成“会话密钥” 支持的加密算法,比如AES、3DES、RSA; 支持的压缩算法; 第二阶段:ServerHello 确认使用的加密通信协议版本,比如tls 1.2; 服务器端生成一个随机数,稍后…

    2017-10-29
  • 马哥linux课堂笔记

    0805课堂笔记 基本权限 读,写,执行   对于文件的读权限,能否查看文件内容.(文件内容需不需要看,如果是文本就需要看,如果是二进制就不需要看) 对于文件的写权限,能否修改文件内容,不能修改文件名,不能删除文件.(如果需要修改文件内容和文件名,必须在其父目录增加写权限和执行权限) 对于文件的执行权限,能否运行他.   对于目录的读权限…

    Linux干货 2016-08-15
  • N22-℡浮生.若夢 ╮第六周作业

    1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#; cp /etc/rc.sysinit /tmp/rc.sysinit vim/tmp/rc.sysinit :%s@^[[:space:]]\+@#&@g 2、复制/boot/grub…

    Linux干货 2016-10-29