/
...
/
/
Sudo解析
Search
Try Notion
Sudo解析
Sudoers 详解
Sudoer文件构成
sudoers的默认配置(default),主要设置sudo的一些缺省值
alias(别名),主要有Host_Alias|Runas_Alias|User_Alias|Cmnd_Alias。
安全策略 (规则定义)
别名区
主机别名
对于一组服务器,你可能会更喜欢使用主机名(可能是全域名的通配符)
或IP地址代替,这时可以配置主机别名
💻示例
Host_Alias FILESERVERS = fs1, fs2 Host_Alias MAILSERVERS = smtp, smtp2
Copy
Bash
用户别名
💻示例
User_Alias ADMINS = jsmith, mikem
Copy
Bash
指令别名
💻示例
## 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 ## Updating the locate database #本地数据库升级命令别名 Cmnd_Alias LOCATE = /usr/sbin/updatedb ## Storage #磁盘操作相关命令别名 Cmnd_Alias STORAGE = /sbin/fdisk, /sbin/sfdisk, /sbin/parted, /sbin/partprobe, /bin/mount, /bin/umount ## Delegating permissions #代理权限相关命令别名 Cmnd_Alias DELEGATING = /usr/sbin/visudo, /bin/chown, /bin/chmod, /bin/chgrp ## Processes #进程相关命令别名 Cmnd_Alias PROCESSES = /bin/nice, /bin/kill, /usr/bin/kill, /usr/bin/killall ## Drivers #驱动命令别名 Cmnd_Alias DRIVERS = /sbin/modprobe
Copy
Bash
规则
语法:
User_List Host_List=(Runas_List1:Runas_List2) SELinux_Spec Tag_Spec Cmnd_List
[用户名] [主机名]=[替代用户] (可选项):[指令]
案例
user01 localhost=(root) NOPASSWD:/bin/more user1用户可以在本机上无密码执行/usr/local/bin/python
Copy
Bash
支持通配符
* :匹配任意数量的字符
? :匹配一个任意字符
[...]:匹配在范围内的一个字符
[!...]:匹配不在范围内的一个字符
\x:用于转义特殊字符
Tag_Spec 可选项
'NOPASSWD:' | 'PASSWD:' | 'NOEXEC:' | 'EXEC:' | 'SETENV:' | 'NOSETENV:' | 'LOG_INPUT:' | 'NOLOG_INPUT:' | 'LOG_OUTPUT:' | 'NOLOG_OUTPUT:'|'MAIL:'|'NOMAIL:'|
主要是 PASSWD NOPASSWD