Я пытаюсь написать универсальный файл 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. Это на сервере Solaris x86, на котором работает sunOS 5.10.
Я сделал что-то не так? visudo -c -f отлично возвращает мой тестовый ящик Linux, поэтому я смущен.
Любые идеи были бы хорошы!
Спасибо.
Вы пробовали запускать без подстановочных знаков, а затем снова добавлять один из них, чтобы увидеть, не беспокоит ли sudo? Это позволило бы прояснить вопрос о том, разрешены ли подстановочные знаки на хостах.
Мне нужно было использовать заглавные буквы для всех псевдонимов хоста. итак STG01 вместо stg01 и так далее :)