zoukankan      html  css  js  c++  java
  • /etc/sudoers 配置

    /etc/sudoers

    ## Allow root to run any commands anywhere
    root    ALL=(ALL)       ALL
    #第一个root是用户账号 第二列的ALL是登陆者的来源主机名,第三列=(ALL)是代表可以切换身份,第四列ALL是可执行的命令.
    

     如果当前的普用户ok,能执行root的所有操作,那么我可要加一行ok ALL=(ALL) ALL 那么如果有很多人需要执行sudo,那不是要写很多行,所有就有了用户组了!

    ## Same thing without a password
    # %wheel        ALL=(ALL)       NOPASSWD: ALL
    #%wheel代表wheel用户组,如果我们需要执行root所有操作的用户都加入到whell用户组,或者我们自定义的用户组,然后添加一行代码,就行了
    

     限制用户sudo的权限:

    比如说我只要用户ok去管理密码,不让他有别的权限:

    只要在/etc/sudoers增加下面一行:
    ok ALL=(root) /usr/bin/passwd
    

    sudo就是可以用root的身份运行配置的命令:

    ok      ALL=(root) NOPASSWD:/usr/bin/passwd,NOPASSWD:/bin/su,NOPASSWD:/usr/bin/rz
    

    上面的意思就是普通用户ok可以用root的身份来运行/usr/bin/passwd,/bin/su,/usr/bin/rz,并且是免输入密码

    !去掉某个命令:

    root    ALL=(ALL)       ALL
    ok      ALL=(root) NOPASSWD:/usr/bin/passwd,NOPASSWD:!/bin/su,NOPASSWD:/usr/bin/rz
    #去掉/bin/su这个命
    

     还有一点要注意就是执行配匹配规则是从后到前的,所以后面执行:

    ## Allow root to run any commands anywhere
    root    ALL=(ALL)       ALL
    ok      ALL=(root) NOPASSWD:/usr/bin/*,NOPASSWD:!/bin/su,NOPASSWD:/sbin/*,NOPASSWD:/bin/*
    可以看到没有说权限不足:
    [ok@xtrabackup ~]$ sudo su
    [root@xtrabackup ok]#
    现在改变一下位置再试一下:
    ## Allow root to run any commands anywhere
    root    ALL=(ALL)       ALL
    ok      ALL=(root) NOPASSWD:/usr/bin/*,NOPASSWD:/sbin/*,NOPASSWD:/bin/*,NOPASSWD:!/bin/su
    发现显示报错:
    [ok@xtrabackup ~]$ sudo su
    Sorry, user ok is not allowed to execute '/bin/su' as root on xtrabackup.
    
  • 相关阅读:
    C#中Excel的导入和导出的几种基本方式
    关于XML与类型Class的映射
    关于模板的相关注意事项
    OGRE 2.1 Windows 编译
    R6010 -abort() has been called
    VS2012 编译 Assimp
    C++ 并发消息队列
    Debian 安装下载工具软件
    Oracle SQL语句追踪
    记录自己学习网址
  • 原文地址:https://www.cnblogs.com/bass6/p/6835487.html
Copyright © 2011-2022 走看看