根据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
刚刚清除这个障碍,也许我可以帮助。 你需要把文件放在/var/ossec目录(我的拥有者/组是ossec ), 不要使用完整的path。
例
/var/ossec/bin/manage_agents -f /var/ossec/list_to_add.lst
将不会工作(IDK为什么但从来没有工作)。 然而,
/var/ossec/bin/manage_agents -f list_to_add.lst
将工作。
我还不能评论,所以这是一个答案。 马特是正确的。
IDK为什么但从来没有工作
你必须使用chroot里面的path,因为ossec 自己处理chroot ,因为addagent.c (成为manage_agents )在这里执行 。
所以,如果你把文件放在/var/ossec/tmp/foo你需要调用manage_agents
/var/ossec/bin/manage_agents -f /tmp/foo
( tmp/foo也可以)。