/etc/sudoers文件解析
大家好,又见面了,我是你们的朋友全栈君。
CATALOG
前言
/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密码到情况下使用 |
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/151346.html原文链接:https://javaforall.cn
相关文章
- 解析MP4文件中的sps和pps[通俗易懂]
- Jmeter之.jtl文件解析
- C++ Boost PropertyTree 解析INI文件
- 【Android 逆向】使用 Python 解析 ELF 文件 ( Capstone 反汇编框架 | PyCharm 中导入 Capstone 反汇编框架 )
- 【Android 逆向】使用 Python 解析 ELF 文件 ( Capstone 反汇编 ELF 文件中的机器码数据 | 反汇编二进制机器码 | 打印反汇编数据 )
- MYSQL REDO LOG文件解析
- 将Python源代码导出成HTML文件并带语法高亮详解编程语言
- java 解析XML文件详解编程语言
- Java数据导出(写)Excel文件 解析详解编程语言
- 文件Linux下文件编辑技术指南(linux如何编辑)
- 涟漪天翼云直链解析工具 无需登录天翼云盘账号即可下载文件
- 使用wc命令统计Linux文件信息(linux中wc命令)
- 文件Oracle 日志文件:解析目录下信息(oracle日志目录下)
- Linux远程共享目录:实现远程文件交换(linux远程共享目录)
- 文件Linux下解压.gz格式文件的指南(解压缩linuxgz)
- 和权限深入解析Linux文件权限与类型(linux文件的类型)
- PHP实现在Linux系统中进行文件操作(php写linux文件)
- MySQL文件扩展名解析(mysql后缀名)
- 了解redis.conf文件的配置方式和作用(redis.conf文件)
- Linux下终极上传文件命令指南(linux上传文件命令)
- s 与ipLinux主机Hosts文件IP地址映射解析指南(linux的host)
- Oracle DFC文件数据更加安全可靠(oracle dfc文件)
- Oracle trc文件解析排错必备工具(oracle .trc:)
- 解析PHPSPL标准库的用法(遍历目录,查找固定条件的文件)
- CFile与CStdioFile的文件读写使用方法详解