zoukankan      html  css  js  c++  java
  • Linux特殊权限

      ************************     ACL权限       ******************************************

      acl权限的出现是为了弥补用户权限不足的情况.

      例如:文件test.txt,权限如下所示(所属用户具有rw权限,所属组具有r权限,其他用户具有r权限):

    假设我想要使用户:张三对该文件有rw权限(修改该文件所有者为zhangsan显然不合适),此时ACL权限便起到作用了。

    如下设置该文件ACL权限:

      

    上图所示“+”,表示该文件具有特殊权限,查看该文件ACL权限如下:

    上图所示内容说明,用户“zhangsan” 对该文件具有“rw权限”

    • 查看acl权限
      • getfacl 文件名
    • 设定acl权限
      • setfacl 选项 文件名
        • 选项
          • -m : 设定ACL权限
          • -x : 删除指定的ACL权限
          • -b : 删除文件的所有的ACL权限
          • -d : 设定默认的ACL权限
          • -k : 删除默认ACL权限
          • -R : 递归设定ACL权限
    • 给用户设定ACL权限
      • setfacl -m u:用户名:权限 文件或目录  
        • 例如 : setfacl  -m u:zhangsan:rx test.txt
    • 给用户组设置ACL权限
      • setfacl -m g:组名:权限 文件或目录名 
        • 例如 : setfacl -m g:gro1:rwx test.txt
    • 删除用户ACL权限
      • setfacl -x u:用户名  文件或目录名
    • 删除用户组ACL权限
      • setfacl -x g:组名  文件或目录名
    • 删除文件的所有ACL权限
      •  setfacl -b 文件名
    • 默认ACL权限 默认ACL权限的 作用是如果父目录设定了默认acl权限,那么父目录中所有新建的子文件都会继承父目录的ACL权限
      • setfacl -m d:u:用户名:权限  目录名
    • 递归ACL权限 : 递归是父目录在设定ACL权限时,所有的子文件和子目录也会拥有相同的ACL权限
      • setfacl -m u:用户名:权限 -R  目录名

    *****************************    ACL END   ************************************

    ****************************   sudo权限     *************************************

      sudo是linux系统管理指令,是允许系统管理员让普通用户(以root身份执行而无需知道root密码)执行一些或者全部的root命令的一个工具,如halt,reboot,su等等。这样不仅减少了root用户的登录 和管理时间,同样也提高了安全性。

    • root把本来只能超级用户执行的命令赋予普通用户执行
    • sudo的操作对象是系统命令

      下面介绍如何为用户配置sudo权限 :

    • 配置sudo权限命令 : visudo

      #实际修改的是:/etc/sudoers文件(配置sudo时的操作相当于“vi”编辑该文件),文件内容格式如下 :

    #用户名  被管理主机地址 = (可使用身份)  授权命令(绝对路径,多个命令以逗号隔开)
    root ALL=(ALL)     ALL
    
    # %用户组名  被管理主机地址 = (可使用身份)  授权命令(绝对路径)
    %wheel  ALL=(ALL)  ALL
    • 用户查看拥有的sudo权限 :sudo -l
    • 用户执行sudo命令 : sudo 命令

    举例如下

      为用户“zhangsan”添加执行“/usr/sbin/useradd”权限(用户组配置同理

      1、root用户执行 : visudo(为zhangsan配置权限) ,如下所示 :

      2、以zhangsan用户登录执行 : sudo -l(查看该用户拥有的sudo权限),如下所示 :

    用户需输入自己的密码

      3、测试useradd命令,添加用户wangwu : sudo /usr/sbin/useradd wangwu(添加用户成功,则useradd权限添加成功)

    注意:新增用户未设置密码是不可以登录的,所以还需为"zhangsan"添加设置密码权限,如下(不能修改root用户密码):

      zhangsan   ALL=/usr/bin/passwd [A-Za-z]*,!/usr/bin/passwd "",!/usr/bin/passwd root

  • 相关阅读:
    array and ram
    char as int
    pointer of 2d array and address
    Install SAP HANA EXPRESS on Google Cloud Platform
    Ubuntu remount hard drive
    Compile OpenSSL with Visual Studio 2019
    Install Jupyter notebook and tensorflow on Ubuntu 18.04
    Build OpenCV text(OCR) module on windows with Visual Studio 2019
    Reinstall VirtualBox 6.0 on Ubuntu 18.04
    Pitfall in std::vector<cv::Mat>
  • 原文地址:https://www.cnblogs.com/yinz/p/5033579.html
Copyright © 2011-2022 走看看