Auditd2

Auditd Webhook

Auditd Webhook isn’t a full SIEM. It doesn’t analyze. It doesn’t store. It just forwards.

OS : Linux/FreeBSD/macOS
Size : 10 MB
Version: Latest
🡣: 3451

Auditd Webhook: Real-Time Linux Audit Events Over HTTP

A simple way to stream audit logs into modern systems — without parsing files manually

What is Auditd Webhook?
It’s a lightweight bridge between Linux’s audit subsystem and external services. Instead of tailing /var/log/audit/audit.log and writing brittle parsers, Auditd Webhook sends events as JSON over HTTP — in real time.

It’s built for engineers who want to plug Linux audit data into modern monitoring, alerting, or SIEM stacks — without building a whole pipeline from scratch. Think of it as an event-forwarder, not a log collector.

Let’s say you’re tracking sensitive file access. Or command executions. Or permission changes.
Auditd can log all of that — but it’s noisy, and the logs aren’t structured.
You want to forward just the useful parts, as JSON, to a webhook. Maybe Splunk. Maybe a custom tool.
That’s where Auditd Webhook fits. It listens on the audit netlink socket and transforms the chaos into clean, structured HTTP payloads.

Where It’s Being Used

– Feeding Linux audit events into Elasticsearch, Splunk, Loki, or OpenSearch.
– Security teams building minimal SIEM or threat detection pipelines.
– Alerting on sudo usage, failed auth attempts, and sensitive syscalls in real time.
– Serverless log ingestion setups — no sidecar needed, just a listener.

Key Characteristics

Feature Why It’s Useful
Real-Time Webhook Output Converts audit events into JSON and pushes them via POST
Configurable Filters Define rules for which events to include — drop the noise, keep the signal
No Log File Parsing Reads directly from netlink — nothing touches audit.log
Small Footprint Go binary, fast startup, low CPU/RAM — fits on any server
Systemd-Friendly Ships with unit file, handles permissions cleanly
Simple Config Format YAML-based; define endpoints, secrets, selectors
Built-In Retry Logic Handles webhook failures with backoff and retries
Supports HTTPS and Headers Integrates cleanly with most cloud services, ELBs, API gateways
Optional Buffering Prevents overload during high event rates
Open Source MIT licensed, hackable and transparent

What You Actually Need

– Linux system with auditd enabled
– A destination endpoint (HTTP server, API, collector, etc.)
– Root access to bind to audit netlink

To install:

curl -L https://github.com/elastic/auditd-webhook/releases/latest/download/auditd-webhook-linux-amd64 -o /usr/local/bin/auditd-webhook
chmod +x /usr/local/bin/auditd-webhook

Example systemd service:

[Unit]
Description=Auditd Webhook Forwarder
After=network.target auditd.service

[Service]
ExecStart=/usr/local/bin/auditd-webhook -config /etc/auditd-webhook.yaml
Restart=on-failure
User=root

[Install]
WantedBy=multi-user.target

Example config (/etc/auditd-webhook.yaml):

webhook:
url: https://logs.example.com/audit
headers:
Authorization: Bearer TOKEN123

filters:
– match: “syscall=execve”
– match: “uid=0”

What Users Actually Say

“It gave us audit visibility in Loki with zero effort. Logs became events.”

“We stopped writing our own audit parsers. This did the job better.”

“No agents, no sidecars — just one binary pushing data where it needs to go.”

One Thing to Keep in Mind

Auditd Webhook isn’t a full SIEM. It doesn’t analyze. It doesn’t store. It just forwards.

But if what’s needed is a clean, structured stream of audit events — with filters, retries, and HTTP — this tool is about as simple and effective as it gets.

Other articles

Submit your application