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 值(自定义用户,自定义组

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

getfacl 可看到特殊权限:flags

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

base ACL 不能删除

setfacl k dir 删除默认ACL权限

vsetfacl b file1清除所有ACL权限

getfacl file1 | setfacl setfile=- file2 复制file1

acl权限给file2


 

 

 

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

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

(Effective Permission)

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

setfacl -m mask::rx file

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

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

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

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

相关推荐

  • 进程与计划任务

    进程 一.进程介绍  内核的功用:进程管理、文件系统、网络功能、内存管理、驱动程序、 安全功能等。   Process:  运行中的程序的一个 副本,是被 载入内存的一个指令集合。 进程ID (Process ID ,PID )号码被用来标记各个进程 UID 、GID&…

    Linux干货 2017-05-15
  • ​第五周作业

    1、显示/boot/grub/grub.conf中以至少一个空白字符开头的行; [root@localhost ~]# grep  -E "^[[:space:]]+" /boot/grub/grub.conf  root (hd0,0) kernel&nbs…

    Linux干货 2017-02-05
  • shell 脚本编程基础

    Shell脚本简介: Shell脚本是一种特殊的程序,它是用户与linux系统内核之间的一个接口,shell是一个工具程序,在用户登录后系统启动。它解释并运行由命令行或脚本文件输入的命令,从而实现用户与内核间的交互。 Shell脚本:也就是用各类命令预先放入到一个文件中,方便一次性执行的一个程序文件,主要是方便管理员进行设置或者管理用的,是利用shell的功…

    Linux干货 2016-08-21
  • 【N25第二周作业】Linux文件管理命令以及文件名通配glob

    1、Linux下的文件管理类命令使用方法和示例 Linux下的文件管理类命令有如下列举的一些: 目录管理命令:cd,pwd,ls,mkdir,rmdir,tree文件管理命令:touch,cp,mv,rm,stat查看:more,less,head,tail,cat,tac,lsattr,whereis,which权限:chmod,chown,chattr,…

    Linux干货 2016-12-12
  • Linux安全与加密基础(二)

    Linux安全与加密基础(二) 常见的加密算法 SSL: Openssl与CA认证 ssh服务 dropbear AIDE sudo gpg gpg亦可用于对称加密与文件检验。 文件完整性的两种实施方式 被安装的文件     MD5单向散列     rpm –veri…

    Linux干货 2016-10-06
  • 马哥教育网络班21期+第19周课程练习

    1、描述Tomcat的架构; Tomcat组件,分为4类: 顶层类组件:包括<Server>元素和<Service>元素,它们位于整个配置文件的顶层; 连接器类组件:为<Connector>元素,代表介于客户端与服务器端之间的通信接口,负责将客户端的请求发送给服务器端,并将服务器的响应结果返回给客户端; 容器类组件:代表处…

    Linux干货 2016-12-05