/etc/sudoers文件解析

/etc/sudoers文件解析CATALOG前言规则讲解第一部分A第二部分B第三部分C第四部分D第五部分E举例前言/etc/sudoers文件一般涉及到linux系统中关于sudo命令的权限配置问题。规则讲解sudoers文件的数据,每一行分为五个部分,我们用ABCDE来表示。一般情况下是:AB={©}{D}E且C与D是可以省略的,我们用大括号扩起来方便大家注意到,但真正书写命令的时候不需要打括号。第一个部分A代表授权使用sudo的用户或者组第二部分B代表允许授权用户在哪些主机上使用这些权利第三部分C代

大家好,又见面了,我是你们的朋友全栈君。

前言

/etc/sudoers文件一般涉及到linux系统中关于sudo命令的权限配置问题。
在这里插入图片描述

规则讲解

sudoers文件的数据,每一行分为五个部分,我们用ABCDE来表示。
一般情况下是: A B = {©} {D} E
且C与D是可以省略的,我们用大括号扩起来方便大家注意到,但真正书写命令的时候不需要打括号。

  • 第一个部分A代表授权使用sudo的用户或者组
  • 第二部分B代表允许授权用户在哪些主机上使用这些权利
  • 第三部分C代表允许被授权用户提权到什么用户什么组级别的权限,如果省略就代表允许提权到任意用户级别。
  • 第四部分D代表当被授权用户是否需要输入自身密码来使用特权,若省略这代表需要输入密码
  • 第五部分E代表允许执行的命令,如果是all就代表允许执行所有命令

第一部分A

A表示的是哪个用户或者哪个用户组拥有执行sudo的权限,当A前面带有%的时候,代表的是用户组。
例如
admin all = (all) all
这行命令表示admin用户可以登陆到任意主机,并且可以提权到任意用户,并且可以执行任意命令,但需要输入用户admin到密码。
如果在admin前面加上%就会使得admin组的所有用户拥有这些权限,使用的时候需要输入对应用户的密码。而这一行命令典型的就是省略了第四个属性,也就是D,D代表的是密码。

第二部分B

B代表用户可以在哪些电脑上使用这些特权,这一个字段一般是主机名。
例如:jack mycomputer=/usr/sbin/reboot,/usr/sbin/shutdown
上面这行表示jack可以在mycomputer上提权到root用户,并且允许以root权限使用reboot与shutdown命令,但是需要输入jack的密码才可以。

第三部分C

代表的是允许提权到的目标用户与组,例如(root:root)的意思就是提权到root用户root组,也就是当前用户使用sudo命令的时候会获得与root用户root组相同的权限。
当C参数隐藏的时候,默认提权权限就是root。如果是all的话就是指的可以提权到任意用户任意权限。

第四部分D

这个参数是用来定义当目标用户使用sudo的时候,是否需要输入用户密码。如果为NOPASSWD:则表示不需要,否则为需要,注意字母后面带了冒号。

第五部分E

表示允许执行的命令。

举例

参数 含义
%admin ALL=(ALL) ALL 允许admin用户组的所有用户在任意主机上,在输入当前用户密码的情况下使用sudo命令提权到任意用户,并且允许提权使用所有命令
lucy test=(ALL) NOPASSWD: /bin/useradd 允许lucy在test主机上提权到任意用户,并且在步输入密码的情况下可以提权使用useradd命令
papi ALL=(root) NOPASSWD: /bin/chown,/usr/sbin/useradd 允许papi登陆到任意主机,允许提权到root权限,允许在不输入密码到情况下使用chown命令,但是useradd命令只允许在输入papi密码到情况下使用
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/151346.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • OFDM调制matlab仿真详细代码

    OFDM调制matlab仿真详细代码MATLAB仿真代码%==================================================%作者:肆拾伍%时间:11/302019%版本:V3%=================OFDM仿真参数说明:================%%子载波数carrier_count—200%总符号数symbol_count…

  • JavaScript、js文件、Node.js、静态文件

    JavaScript、js文件、Node.js、静态文件1、JavaScript认知JavaScript(简称“JS”)是一种解释型的脚本语言。广泛用于Web应用开发,对页面事件做出响应。通常JavaScript脚本是通过嵌入在HTML页面中来实现自身的功能的,也可以写成单独的js文件。JavaScript与Java名称上的近似,但是两种完全不同的语言。2、JavaScript特点2.1、动态性。JavaScript是一种采用事件驱动的脚本语言,它不需要经过Web服务器就可以对用户的输入做出响应。在访问一个网页时,鼠标在网页中进行鼠标点击或上下移、窗

    2022年10月30日
  • SFDC ActionFunction

    SFDC ActionFunctionmyActionMethod();//thisisjavascriptpu

    2022年10月22日
  • Mysql锁机制简单了解一下

    Mysql锁机制简单了解一下一锁分类(按照锁的粒度分类)Mysql为了解决并发、数据安全的问题,使用了锁机制。可以按照锁的粒度把数据库锁分为表级锁和行级锁。表级锁:Mysql中锁定粒度最大的一种锁,对当前操作的整张表加锁,实现简单,资源消耗也比较少,加锁快,不会出现死锁。其锁定粒度最大,触发锁冲突的概率最高,并发度最低,MyISAM和InnoDB引擎都支持表级锁。行级锁Mysql中锁定粒…

  • 哈佛结构和普林斯顿结构的区别_普林斯顿大学和哈佛大学哪个更厉害

    哈佛结构和普林斯顿结构的区别_普林斯顿大学和哈佛大学哪个更厉害哈佛结构是一种将程序指令存储和数据存储分开的存储器结构。中央处理器首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应的数据存储器中读取数据,并进行下一步的操作(通常是执行)。程序指令存储和数据存储分开,可以使指令和数据有不同的数据宽度,如Microchip公司的PIC16芯片的程序指令是14位宽度,而数据是8位宽度。      哈佛结构的微处理器通常具有较高的执行效

  • 中级JAVA:简单介绍下Ajax「建议收藏」

    中级JAVA:简单介绍下Ajax「建议收藏」首先Ajax是AsynchronousJavaScriptandXML的全称,Asynchronous是异步的意思,这跟传统的web不同。什么是同步什么是异步?同步是发送方发送数据之后,必须等接收方接收数据做出回应之后,才可以进行下一步。异步则是发送方发送数据之后不需等接收方做出回应,可以进行下一步操作。.

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号