Linux基础——sudoers文件的写法
Linux基础——sudoers文件的写法
概述
sudoers文件的作用是控制用户可以执行哪些指令。它是Linux系统管理员的重要一课喔。
文件的组成
sudoers文件由三部分组成:
- sudoers的默认配置,主要设置sudo的一些缺省值(本文不会对这些默认配置进行介绍,若有兴趣可以自己man 5 sudoers然后搜defaults)
- alias(别名),可以看作是变量的定义啦,本文也会全面的说说别名的定义。
- 规则定义,sudoers文件的重点啦,本文会着重说明规则的定义。
Alias(别名)
一共有四种类型的别名,这些类型可以看作它们是数据类型啦哈。- User_Alias
- Runas_Alias
- Host_Alias
- Cmnd_Alias
User Specification(用户规则)
用户规则定义的语法如下: User_List Host_List=(Runas_List1:Runas_List2) SELinux_Spec Tag_Spec Cmnd_List,... 下面对上面的语法进行说明一下: User_List(必填项):指的是该规则是针对哪些用户的。 Host_List(必填项):指的是该规则针对来自哪些主机的用户。 Runas_List1(可选项):表示可以用sudo -u来切换的用户 Runas_List2(可选项):表示可以用sudo -g来切换的用户组 SELinux_Spec(可选项):表示SELinux相关的选项,可选值为ROLE=role 或 TYPE=type。本人对SELinux不太熟,以后再补充这里吧。 Tag_Spec(可选项):用于控制后面Cmnd_List的一些选项啦,可选值有下面这些,具体自己man一下吧,这里就不啰嗦了。'NOPASSWD:' | 'PASSWD:' | 'NOEXEC:' | 'EXEC:' | 'SETENV:' | 'NOSETENV:' | 'LOG_INPUT:' | 'NOLOG_INPUT:' | 'LOG_OUTPUT:' | 'NOLOG_OUTPUT:'
...(可选项):表示可以有多个(Runas_List1:Runas_List2) SELinux_Spec Tag_Spec Cmnd_List段的意思了。
Notice:如果Runas_List1和Runas_List2都没填的话,默认是以root用户执行
如果不是很理解的话,可以对比着文章后面举的例子来看下,应该难不倒聪明的我们!
|
评论暂时关闭