Skip to main content

OSSEC

OSSEC is a multiplatform, open source and free Host Intrusion Detection System (HIDS). This integration allows you to send OSSEC logs to your Logz.io SIEM account.

Filebeat configuration​

Before you begin, you'll need:

Configure OSSEC to output JSON alerts​

In the OSSEC configuration file (/var/ossec/etc/ossec.conf), find the <global> tag. Add the <jsonout_output> property and set to yes.

<global>
<jsonout_output>yes</jsonout_output>
</global>

Restart OSSEC.

sudo /var/ossec/bin/ossec-control restart

Download the Logz.io public certificate​

For HTTPS shipping, download the Logz.io public certificate to your certificate authority folder.

sudo curl https://raw.githubusercontent.com/logzio/public-certificates/master/AAACertificateServices.crt --create-dirs -o /etc/pki/tls/certs/AAACertificateServices.crt
Add OSSEC as an input​

In the Filebeat configuration file (/etc/filebeat/filebeat.yml), add OSSEC to the filebeat.inputs section.

Replace <<LOG-SHIPPING-TOKEN>> with the token of the account you want to ship to.

note

Filebeat requires a file extension specified for the log input.

# ...
filebeat.inputs:
- type: filestream

paths:
- /var/ossec/logs/alerts/alerts.json

fields:
logzio_codec: json

# Your Logz.io account token. You can find your token at
# https://app.logz.io/#/dashboard/settings/manage-accounts
token: <<LOG-SHIPPING-TOKEN>>
type: ossec
fields_under_root: true
encoding: utf-8
ignore_older: 3h

If you're running Filebeat 7 to 8.1, paste the code block below instead:

# ...
filebeat.inputs:
- type: log

paths:
- /var/ossec/logs/alerts/alerts.json

fields:
logzio_codec: json

# Your Logz.io account token. You can find your token at
# https://app.logz.io/#/dashboard/settings/manage-accounts
token: <<LOG-SHIPPING-TOKEN>>
type: ossec
fields_under_root: true
encoding: utf-8
ignore_older: 3h

The above assumes the following defaults:

  • Log locations (JSON format) - /var/ossec/logs/alerts/alerts.json
  • Log locations (plain text format) - /var/ossec/logs/alerts/alerts.log
Set Logz.io as the output​

If Logz.io is not an output, add it now. Remove all other outputs.

Replace <<LISTENER-HOST>> with the host for your region.

# ...
output.logstash:
hosts: ["<<LISTENER-HOST>>:5015"]
ssl:
certificate_authorities: ['/etc/pki/tls/certs/AAACertificateServices.crt']
Start Filebeat​

Start or restart Filebeat for the changes to take effect.

Check Logz.io for your logs​

Give your logs some time to get from your system to ours, and then open Open Search Dashboards.

You can search for type:ossec to filter for your logs. Your logs should be already parsed thanks to the Logz.io preconfigured parsing pipeline.

If you still don't see your logs, see Filebeat troubleshooting.