我正在尝试编写一个通用的 sudoers 文件来控制我们所有环境中所有用户的权限,并且我一直在使用通配符作为主机名(所有数据都已匿名)
Host_Alias stg01 = *.stg01.sfo.acme.com
Host_Alias stg02 = *.stg02.sfo.acme.com
Host_Alias stg03 = *.stg03.sfo.acme.com
Host_Alias prod = *.prod.aus.acme.com, *.prod.nyc.acme.com
Host_Alias prod02 = *.prod02.aus.acme.com, *.prod02.nyc.acme.com
Host_Alias prod03 = *.prod03.nyc.acme.com
Host_Alias db01 = *.db01.sfo.acme.com
Host_Alias db02 = *.db02.sfo.acme.com
Host_Alias db03 = *.db03.sfo.acme.com
Host_Alias hi02 = *.hi02.sfo.acme.com
Host_Alias env1 = mgmt02.stg01.sfo.acme.com, *.hiho.sfo.acme.com
Host_Alias env2 = *.prod.aus.acme.com, *.prod.nyc.acme.com, *.stg01.sfo.acme.com, *.prod02.aus.acme.com, *.prod02.nyc.acme.com, *.hiho.sfo.acme.com
Host_Alias testhosts = ws1.prod.aus.acme.com, ws2.prod.nyc.acme.com, ws1.prod.aus.acme.com, ws2.prod.nyc.acme.com
Host_Alias env3 = mgmt01.stg01.sfo.acme.com, *.hiho.sfo.acme.com
Host_Alias env4 = *.prod.aus.acme.com, *.prod.nyc.acme.com, *.stg01.sfo.acme.com
Host_Alias env5 = *.prod.aus.acme.com, *.prod.nyc.acme.com, *.stg01.sfo.acme.com, *.hiho.sfo.acme.comsfo
当我尝试时,我得到:
>>> sudoers file: syntax error, line 0 <<<
它一直重复到第 16 行。这是在运行 sunOS 5.10 的 Solaris x86 服务器上。
我做错什么了吗?visudo -c -f 在我的 linux 测试箱上返回正常,所以我很困惑。
任何想法,将不胜感激!
谢谢。
您是否尝试过运行不带通配符的主机,然后将其中一个添加回去以查看 sudo 是否受到干扰?这将解决关于是否允许在主机上使用通配符的问题。
我需要为所有主机别名使用大写字母。所以 STG01 而不是 stg01 等等 :)