2017-02-15 4 views
0

Я использую sensu для отслеживания сообщений в файле журнала. Мне нужно отслеживать auth.log. Я использовал следующее в моем config.json. "Команда"плагин check-log, указывающий на /var/cache/check-log/default/var/log/auth.log вместо /var/log/auth.log

: "Суда /etc/sensu/plugins/check-log.rb -f /var/log/auth.log -q 'фатальным' -c 1"

I я надеюсь отслеживать взломать попыток, предпринятых этим сервером, но сама команда sensu попадает в auth.log, что делает ее проблемой куриного яйца.

В auth.log

sudo: sensu : TTY=unknown ; PWD=/ ; USER=root ; COMMAND=/etc/sensu/plugins/check-log.rb -f /var/log/auth.log -q fatal -c 1 

Как запустить команды Sensu и избежать команды отслеживаются в auth.log. Или я могу перенаправить sensu auth треков в другой файл?

EDIT

Чтобы решить эту проблему, я добавил sensu пользователю adm группе. И удалили заявки от sudo visudo для пользователя sensu. Теперь, я все еще не могу получить sensu, чтобы сообщить. Wierd, сообщение об ошибке я получаю

Проверить не удалось запустить: Отказано в @ rb_sysopen - /var/cache/check-log/default/var/log/auth.log, [ "/ и т.д./зепзи/плагины/check-log.rb: 208: in initialize'", "/etc/sensu/plugins/check-log.rb:208:in open '"," /etc/sensu/plugins/check-log.rb:208:in search_log'", "/etc/sensu/plugins/check-log.rb:134:in блок в run' ","/etc/sensu/plugins/check-log. rb: 128: in each'", "/etc/sensu/plugins/check-log.rb:128:in run '"," /opt/sensu/embedded/lib/ruby/gems/2.3.0/gems/sensu-plugin-1.4.0/lib/sensu-plugin/cli.rb:58: в `блоке в«"]

Обратите внимание, что я пытаюсь check-log для /var/log/auth.log, и клиент пытается /var/cache/check-log/default/var/log/auth.log

ответ

0

Вам не нужно запускать check-log.rb с правами root. На самом деле, я настоятельно рекомендую вам не делать никаких проверок, требующих прав на root.

Убедитесь, что /etc/sensu/plugins/check-log.rb имеет права на выполнение для всех пользователей:

sudo chmod a+x /etc/sensu/plugins/check-log.rb 

И что файл /var/log/auth.log является читаемый всем:

sudo chmod a+r /var/log/auth.log 

Измени чек:

"command": "/etc/sensu/plugins/check-log.rb -f /var/log/auth.log -q 'fatal' -c 1" 

Не забудьте перезапустить сервер (и, возможно, также клиент), чтобы изменения вступили в силу.

Таким образом, вы не должны вводить пользователя sensu в какие-либо группы,