15.1.2 /etc/sudoers配置文件别名知识
您可以在百度里搜索“Linux/Unix技术丛书·跟老男孩学Linux运维:核心基础篇(上)(第2版) 艾草文学(www.321553.xyz)”查找最新章节!
15.1.2 /etc/sudoers配置文件别名知识
sudoers文件中的别名类型(Alias_Type)包括如下四种。
1)Host_Alias,表示定义主机别名,实际配置语法如下:
Host_Alias FILESERVERS = fs1, fs2 #<==请注意定义规范,“=”号两边最好有空格。
Host_Alias MAILSERVERS = smtp, smtp2 #<==请注意定义规范,每个成员之间用逗号进行分隔。
关于Host_Alias的说明具体如下。
• 在生产场景中,一般不需要设置主机别名,在定义授权规则时可以通过ALL来匹配所有的主机。
• 请注意上面定义的规范,有些规范虽然不是必需的,但最好能够按照系统的标准来进行配置,这样可以避免意外问题的发生。
• 其实,主机名就是一个逻辑上的主机组,当多台服务器共享一个/etc/sudoers的时候就会用到这个主机别名。不过,在实际企业运维中,这个需求几乎是不存在的。
在sudo实际授权语法规则配置时,第一个ALL的位置就是主机别名的配置位置,示例代码如下:
root ALL=(ALL) ALL #<==第一个ALL就是主机别名的应用位置。
2)User_Alias,表示定义用户别名,别名成员可以是用户、用户组(用户组前面要加“%”号),实际配置语法如下:
User_Alias ADMINS = jsmith, mikem, %groupname
#<==提示:设置用户别名也不是必需的,更多情况下,可以通过“%groupname”的方式一次性设定用户组配置,以后若有成员增加,则将新成员加入准备好的用户组就可以了。
3)Runas_Alias,表示定义runas别名,这个别名指定的是授权的“用户身份”,即sudo允许切换到的用户身份。
Runas_Alias定义的是可以执行sudo命令身份的用户,实际配置语法如下:
Runas_Alias OP = root
实际工作中都是普通用户需要转换到root身份,普通用户之间权限相同,极少有授权其他普通用户身份的需求。
4)Cmnd_Alias,表示定义命令别名,命令别名就是定义一个别名,然后别名里面包含一堆命令,即一组相关命令的集合,实际配置语法如下:
## Command Aliases
## These are groups of related commands...
## Networking
Cmnd_Alias NETWORKING = /sbin/route, /sbin/ifconfig, /bin/ping, /sbin/dhclient, /usr/bin/net, /sbin/iptables, /usr/bin/rfcomm, /usr/bin/wvdial, /sbin/iwconfig, /sbin/mii-tool
## Installation and management of software
Cmnd_Alias SOFTWARE = /bin/rpm, /usr/bin/up2date, /usr/bin/yum
## Services
Cmnd_Alias SERVICES = /sbin/service, /sbin/chkconfig
#<==提示:命令别名就是设置一组可以执行的命令集合,可以将不同类的命令分为不同的组,例如,磁盘命令管理组、网络命令管理组等。 Linux/Unix技术丛书·跟老男孩学Linux运维:核心基础篇(上)(第2版)