zoukankan      html  css  js  c++  java
  • 权限管理一

    一、ACL 权限

    如果我们只想要某一用户对文件或者有权限,可以使用acl权限。

    1、查看acl是否开启
    [root@localhost ~]# dumpe2fs -h /dev/mapper/VolGroup-lv_root # /设备文件名,可以用mount查看。
    
    Default mount options:    user_xattr acl#默认开启
    
    #如果没有开启,手工开启分区的 ACL 权限
    [root@localhost ~]# mount -o remount,acl / # 重新挂载根分区,并挂载加入 acl 权限
    
    也可以通过修改/etc/fstab 文件,永久开启 ACL 权限
    
    [root@localhost ~]# vi /etc/fstab 
    /dev/mapper/VolGroup-lv_root /                       ext4    defaults,acl        1 1   # 加入 acl 
    
    [root@localhost ~]# mount -o remount /     #重新挂载 / 分区
    
    2、ACL 基本命令
    getfacl  文件名  查询文件的 ACL 权限 
    
    [root@localhost ~]# getfacl /root
    getfacl: Removing leading '/' from absolute path names
    # file: root
    # owner: root
    # group: root
    user::r-x
    group::r-x
    other::---
    
    setfacl  选项  文件名  设定 ACL 权限
    -m       设定 ACL 权限   
    -b       删除 ACL 权限   
    -R       只能对目录使用,递归赋予权限
    -x       删除单个用户的 ACL 权限
    
    用法:
        setfacl  -m  u:用户名:权限   文件名  
        setfacl  -m  g:组名:权限   文件名 
        setfacl  -x  u:用户名   文件名
    [love2@localhost ~]$ ls /root
    ls: 无法打开目录/root: 权限不够,此时我们可以对love2用户授予acl权限,使其能够对/root目录由访问权限。
    [root@localhost ~]# setfacl -m u:love2:rx /root
    
    注意:如果给目录赋予 acl 权限,两条命令都要输入,递归与默认的区别:   
    setfacl -m u:love2:rx -R /root        只对已经存在的文件生效   
    setfacl -m d:u:love2:rx -R /root/   只对以后新建的文件生效
    
    3、 最大有效权限 mask
    [root@localhost /]# setfacl -m m:rw  123.txt   # 设定 mask 权限为 r - w ,给123.txt文件设定最大权限为 r-w
    [root@localhost ~]# getfacl 123.txt 
    # file: 123.txt
    # owner: root
    # group: root
    user::rw-
    group::r--
    mask::rw-
    other::---
    
    4、删除acl权限
    [root@localhost ~]# setfacl -x u:love2 /root/ # 删除指定用户和用户组的 ACL 权限 
    [root@localhost ~]# setfacl -b /root # 会删除文件的所有的 ACL 权限
    

    二、sudo 授权

    普通用户执行某些命令没有权限时,可使用sudo命令赋予部分管理员权限。

    1 root 身份:

    visudo 赋予普通用户权限命令,命令执行后和 vim 一样使用

    #Allow root to run any commands anywhere
    root    ALL=(ALL)       ALL
    #用户名  目标主机= (可使用的身份) 授权命令(绝对路径) 
    #Allows people in group wheel to run all commands
    %wheel        ALL=(ALL)       ALL 
    % 组名 被管理主机的地址 = (可使用的身份) 授权命令(绝对路径) 
    

    例子

    1)授权用户 love2 可以重启服务器,则visudo添加如下行: 
    [root@localhost ~]# visudo / vim /etc/sudoers
    love2  ALL=(root)   /sbin/shutdown –r now 
    [user1@localhost ~]$ sudo -l #查看可用的授权  
    
    2)授权love2用户可以添加其他普通用户  
    love2  ALL=/usr/sbin/useradd    #赋予 love2 添加用户权限.命令必须写入绝对路径 
    love2  ALL=/usr/bin/passwd       
    love2 ALL=/usr/bin/passwd [A-Za-z0-9]*,  !/usr/bin/passwd "",  !/usr/bin/passwd root   #赋予改密码权限,取消对 root 的密码修改
     
    切换love2 身份    
    sudo  /usr/sbin/useradd  love3  
    
  • 相关阅读:
    5 Things Every Manager Should Know about Microsoft SharePoint 关于微软SharePoint每个经理应该知道的五件事
    Microsoft SharePoint 2010, is it a true Document Management System? 微软SharePoint 2010,它是真正的文档管理系统吗?
    You think you use SharePoint but you really don't 你认为你使用了SharePoint,但是实际上不是
    Introducing Document Management in SharePoint 2010 介绍SharePoint 2010中的文档管理
    Creating Your Own Document Management System With SharePoint 使用SharePoint创建你自己的文档管理系统
    MVP模式介绍
    权重初始化的选择
    机器学习中线性模型和非线性的区别
    神经网络激励函数的作用是什么
    深度学习中,交叉熵损失函数为什么优于均方差损失函数
  • 原文地址:https://www.cnblogs.com/hjnzs/p/11965516.html
Copyright © 2011-2022 走看看