概述
sudoers文件的作用是控制用户可以执行哪些指令。它是Linux系统管理员的重要一课喔。
文件的组成
sudoers文件由三部分组成:
- sudoers的默认配置,主要设置sudo的一些缺省值(本文不会对这些默认配置进行介绍,若有兴趣可以自己man 5 sudoers然后搜defaults)
- alias(别名),可以看作是变量的定义啦,本文也会全面的说说别名的定义。
- 规则定义,sudoers文件的重点啦,本文会着重说明规则的定义。
Alias(别名)
一共有四种类型的别名,这些类型可以看作它们是数据类型啦哈。
- User_Alias
- Runas_Alias
- Host_Alias
- Cmnd_Alias
那么要如何定义这些Alias呢?语法如下:
User_Alias NAME=User_List
Runas_Alias NAME=Runas_List
Host_Alias NAME=Host_List
Cmnd_Alias NAME=Cmnd_List
这里的NAME就可以看作是变量名咯。
注意,NAME必须是要以大写字母开头,而且只能包含有大写字母,数字,下划线呢。那么User_List,Runas_List,Host_List,Cmnd_List又是什么呢?其实就是以“,"分隔的一个数组啦,只不过这四个别名表示的数组内容都会不同啦。
现在分别看看User_List,Runas_List,Host_List,Cmnd_List的每个数组元素可以是些什么值吧!
User:[
!][
username |
#uid |
%groupname | +netgroup |
%:nonunix_group |
User_Alias]
Runas:[
!][
username|
#uid |
%groupname |
+netgroup |
Runas_Alias]
Host:[
!][