Как заставить OSSEC manage_agents прочитать файл?

Как заставить OSSEC manage_agents прочитать файл?

Согласно справочной документации manage_clients:

-f Массовая генерация клиентских ключей из файла. (Только менеджер). Содержит строки в формате IP,NAME.

Итак, я попробовал это:

root@ossec-server:/var/ossec/etc# /var/ossec/bin/manage_agents -f /tmp/agent
Bulk load file: /tmp/agent
Opening: [/tmp/agent]
Failed.: No such file or directory
2015/05/16 15:07:34 manage_agents(1103): ERROR: Unable to open file '/tmp/agent'.

Даже при полном доступе:

root@ossec-server:/var/ossec/etc# ls -l /tmp/agent 
-rw-r--r-- 1 777 root 16 May 16 14:57 /tmp/agent

Содержание кажется хорошим:

root@ossec-server:/var/ossec/etc# cat /tmp/agent 
127.0.0.1,agent

решение1

Только что преодолев это препятствие, возможно, я смогу помочь. Вам нужно поместить файл в каталог /var/ossec(у меня владелец/группа как ossec) иНЕиспользуйте полный путь.

Пример

/var/ossec/bin/manage_agents -f /var/ossec/list_to_add.lst

не будет работать (не знаю почему, но это никогда не работало). Однако,

/var/ossec/bin/manage_agents -f list_to_add.lst

будет работать.

решение2

Я пока не могу комментировать, так что это должен быть ответ. Мэтт прав.

Я не знаю почему, но это никогда не работало.

Вам нужно использовать путьвнутри chrootпотому что процессы ossecchroot себя, как addagent.c(который становится manage_agents) делаетздесь.

Итак, если вы помещаете файл, /var/ossec/tmp/fooвам нужно вызвать manage_agentsчто-то вроде

/var/ossec/bin/manage_agents -f /tmp/foo

( tmp/fooтоже работает).

Связанный контент