Как я заставляю OSSEC manage_agents читать файл?

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

- f Объем генерируют клиентские ключи из файла. (Только менеджер). содержит строки в IP, формате ИМЕНИ.

Таким образом, я попробовал это:

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
0
задан 16 May 2015 в 18:10
2 ответа

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

Пример

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

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

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

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

3
ответ дан 4 December 2019 в 12:27

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

IDK, почему, но это никогда не работало

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

Итак, если вы поместите файл в / var / ossec / tmp / foo , вам понадобится для вызова manage_agents , например

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

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

0
ответ дан 4 December 2019 в 12:27