OSSEC Slack Integration

Mar*_*her 3 slack-api

我希望所有OSSEC通知都被路由到Slack会议室而不是电子邮件.2.9.Beta5有一个ossec-slack.sh主动响应脚本.我的ossec.conf的相关部分是:

<command>
  <name>ossec-slack</name>
  <executable>ossec-slack.sh</executable>
  <expect>srcip</expect>
  <timeout_allowed>no</timeout_allowed>
</command>


<active-response>
  <command>ossec-slack</command>
  <location>local</location>
  <level>1</level>
</active-response>
Run Code Online (Sandbox Code Playgroud)

这适用于SSH登录(失败和成功),但据我所知,不会触发任何其他操作.我做错了什么/别人怎么做?这只是测试版软件是测试版软件吗?

f1l*_*t3r 7

首先确保您的ossec-slack.sh文件在顶部有正确的信息:

# FILE: /var/ossec/active-response/bin/ossec-slack.sh

SLACKUSER="ossec"
CHANNEL="#slack_chanel"  # include the hash "#"
SITE="https://hooks.slack.com/services/TOKEN"
SOURCE="ossec2slack"
Run Code Online (Sandbox Code Playgroud)

"SLACKUSER"与Slack WebHook Integrations页面中设置的"Customize Name"字段相同.

SLACKUSER集成示例

现在您的ossec-slack.sh文件已设置完毕,您可以手动测试Slack集成:

/var/ossec/active-response/bin/ossec-slack.sh
Run Code Online (Sandbox Code Playgroud)

手动运行脚本将从警报日志文件中发布最近的条目:

/var/ossec/logs/alerts/alerts.log
Run Code Online (Sandbox Code Playgroud)

当此脚本作为活动响应触发时,它将仅发布当前警报的信息,而不是从日志文件发布.

确认可以手动发布Slack消息后,将以下XML块添加到ossec.conf文件中:

<!-- FILE: /var/ossec/etc/ossec.conf -->

<ossec_config>
    <command>
        <name>ossec-slack</name>
        <executable>ossec-slack.sh</executable>
        <expect></expect> <!-- no expect args required -->
        <timeout_allowed>no</timeout_allowed>
    </command>

    <active-response>
        <command>ossec-slack</command>
        <location>local</location>
        <level>3</level>
    </active-response>
</ossec_config>
Run Code Online (Sandbox Code Playgroud)

只要触发3级或更高级别的警报,上述设置就会发布到Slack通道.

注意:<expect>标记内不需要参数.但<expect>标签本身是必需的.有关更多信息,请参阅OSSEC的主动响应文档.

要测试此集成,请重新启动ossec服务器:

/var/ossec/bin/ossec-control restart
Run Code Online (Sandbox Code Playgroud)

你应该"OSSEC Started"很快看到警报:

OSSEC消息发布到Slack

如果您没有看到警报,请检查日志中是否存在任何配置错误:

tail /var/ossec/etc/logs/ossec.log
tail /var/ossec/logs/active-responses.log
Run Code Online (Sandbox Code Playgroud)

  • 需要注意的是,如果您在具有主代理和多个代理的更标准的环境中运行此服务器,则需要更改对服务器的活动响应中的位置,否则活动响应命令将在该服务器上执行引发警报。 (2认同)