2016-05-04 83 views
1

我希望將所有OSSEC通知路由到Slack空間而不是電子郵件。 2.Beta5有一個ossec-slack.sh主動響應腳本。我ossec.conf的相關部分:OSSEC冗餘集成

<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> 

這適用於SSH登錄(失敗和成功的),但據我所知不會觸發任何東西。我在做什麼錯了/別人怎麼做到這一點?這只是測試版軟件嗎?

回答

2

首先確保你的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" 

"SLACKUSER"是一樣的,你在你的時差設置的「自定義名稱」字段網絡掛接集成頁面。

SLACKUSER Integration Example

現在你ossec-slack.sh文件設置時您可以測試手動將鬆弛的整合:

/var/ossec/active-response/bin/ossec-slack.sh 

運行腳本手動將從您的通知發佈最新條目日誌文件:

/var/ossec/logs/alerts/alerts.log 

當此腳本作爲主動響應觸發時,它只會發佈當前警報的信息ra而不是從您的日誌文件發佈。

您確認,您可以手動發佈鬆弛的消息,下面的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> 

設置將張貼到您鬆弛頻道每當3級或以上的警報觸發。

注意:<expect>標記中不需要參數。但是<expect>標籤本身是必需的。有關更多信息,請參閱OSSEC的active-response documentation

爲了測試這種整合,重新啓動您的OSSEC服務器:

/var/ossec/bin/ossec-control restart 

您應該看到"OSSEC Started"警報很快:

OSSEC Message posted to Slack

如果你沒有看到警報,請檢查你的日誌對於任何錯誤配置:

tail /var/ossec/etc/logs/ossec.log 
tail /var/ossec/logs/active-responses.log 
+1

東西要待重要的是,如果你在一個帶有主代理和多代理的更加標準的環境中運行它,你需要改變服務器主動響應中的位置,或者在引發警報的代理上執行主動響應命令。 –