Я успешно установил nagios, и он обеспечивает аутентификацию через apache2, который связывается с сервером аутентификации Kerberos для аутентификации пользователей.
Теперь пользователи аутентифицированы, но у них нет авторизации, поскольку авторизация настроена на cgi.cfg
и я не хочу настраивать всех моих пользователей по одному вручную или давать все права каждому аутентифицированному пользователю.
Я хотел бы знать, можно ли настроить группы на cgi.cfg
файл (например, nagios_reader с правом просмотра веб-интерфейса, состояния хоста и служб и nagios_writer с возможностью запуска внешних команд) вместо пользователя, и если эти группы могут быть извлечены из LDAP.
Я хотел бы знать, можно ли настроить группы в файле cgi.cfg
Боюсь, ответ отрицательный. Nagios еще не поддерживает эту функцию. Значение authorized_
Параметры должны быть разделенным запятыми списком имен аутентифицированных пользователей. Но если, как вы сказали, "эти группы могут быть извлечены из LDAP", поэтому вы можете добавить всех участников в группу с помощью небольшого сценария оболочки.
Nagios имеет authorized_for_read_only
возможность настроить список имен пользователей с правами только для чтения в CGI. Предполагая, что nagios_reader.ldif
содержит:
# nagios_reader, it, domain.com
dn: cn=nagios_reader,ou=it,dc=domain,dc=com
cn: nagios_reader
member: cn=foo,ou=it,dc=domain,dc=com
member: cn=bar,ou=it,dc=domain,dc=com
objectClass: groupOfNames
objectClass: top
Вы можете настроить всех членов этой группы как значение authorized_for_read_only
переменная, используя:
$ ldapsearch -x -W -D "cn=manager,dc=domain,dc=com" "cn=nagios_reader" | \
awk -F"=|," '/member: / { print $2 }' | \
while read u; do sed -i "/^authorized_for_read_only/s/$/,$u/" cgi.cfg; done