场景示例 - ossec日志

优质
小牛编辑
126浏览
2023-12-01

本节作者:林鹏

配置OSSEC SYSLOG 输出 (所有agent)

  1. 编辑ossec.conf 文件(默认为/var/ossec/etc/ossec.conf)
  2. 在ossec.conf中添加下列内容(10.0.0.1 为 接收syslog 的服务器)
  1. <syslog_output>
  2. <server>10.0.0.1</server>
  3. <port>9000</port>
  4. <format>default</format>
  5. </syslog_output>
  1. 开启OSSEC允许syslog输出功能
  1. /var/ossec/bin/ossec-control enable client-syslog
  1. 重启 OSSEC服务
    1. /var/ossec/bin/ossec-control start

配置LOGSTASH

  1. 在logstash 中 配置文件中增加(或新建)如下内容:(假设10.0.0.1 为ES服务器,假设文件名为logstash-ossec.conf )
  1. input {
  2. udp {
  3. port => 9000
  4. type => "syslog"
  5. }
  6. }
  7. filter {
  8. if [type] == "syslog" {
  9. grok {
  10. match => { "message" => "%{SYSLOGTIMESTAMP:syslog_timestamp} %{SYSLOGHOST:syslog_host} %{DATA:syslog_program}: Alert Level: %{BASE10NUM:Alert_Level}; Rule: %{BASE10NUM:Rule} - %{GREEDYDATA:Description}; Location: %{GREEDYDATA:Details}" }
  11. add_field => [ "ossec_server", "%{host}" ]
  12. }
  13. mutate {
  14. remove_field => [ "syslog_hostname", "syslog_message", "syslog_pid", "message", "@version", "type", "host" ]
  15. }
  16. }
  17. }
  18. output {
  19. elasticsearch_http {
  20. host => "10.0.0.1"
  21. }
  22. }

推荐 Kibana dashboard

社区已经有人根据 ossec 的常见需求,制作有 dashboard 可以直接从 Kibana3 页面加载使用。

ossec日志 - 图1

dashboard 的 JSON 文件见:https://github.com/magenx/Logstash/raw/master/kibana/kibana_dashboard.json

加载方式,请阅读本书稍后 Kibana 章节相关内容。