learn-cyber · lesson 12 · capstone · production

The whole system, in production

Every Wazuh component named, each one wired to a concrete hotel-security job — and the checklist that turns your lab into something you can charge a hotel for.

Your mission You've installed Wazuh, written a rule, switched on capabilities. Now zoom out: see all the moving parts as one machine, understand what each part does for a hotel, and learn the gap between "it runs in my lab" and "it's safe to put a paying hotel's data through it." This is the lesson you re-read the night before you onboard for real.

The full inventory — more than four parts

Lesson 2 gave you the famous four: agent · server · indexer · dashboard. That's the right first map. But "the server" is really a bundle of internal daemons, and there are a couple of components that the four-part picture hides. To run this in production you need the complete list.1

On the endpoint — the agent and its modules

The agent isn't one thing; it's a host of small collectors, each owning a hotel-security job:2

Inside the server — the daemons that do the work

The manager is where raw logs become alerts. The names matter because when something breaks, the log tells you which daemon:2

The component the four-part map hides: Filebeat

Filebeat — the courier between server and indexer The manager writes alerts to a file (alerts.json). A small shipper called Filebeat, running on the manager, reads that file and pushes each alert into the indexer.3 When alerts stop showing up in the dashboard but the manager is clearly firing them, Filebeat is the first suspect — it's the link most people forget exists.

Storage & screen

Every component → its hotel-security job

This is the table to internalize. If you can't say the hotel job a component does, you can't justify it on an invoice.

ComponentSideWhat it does for the hotel
Log collectoragentShips PMS/POS/auth logs — the evidence everything else is built from.
Syscheck / FIMagentCatches tampering with POS binaries & PMS config — card-skimmer defence.
SCAagentCIS hardening score per machine — concrete PCI-DSS evidence.
RootcheckagentFinds rootkits / hidden malware on back-office boxes.
analysisd (decoders+rules)managerTurns the flood into the few alerts worth waking up for.
Vulnerability DetectionmanagerFlags unpatched software on the PMS host before an attacker does.
Active Response (execd)managerAuto-blocks an IP brute-forcing the PMS — the "R" in XDR.
remoted / authdmanagerSecurely enrols and receives every hotel device.
Agentless / syslogmanagerCovers the firewall & switches — the perimeter you can't put an agent on.
FilebeatmanagerDelivers alerts to storage so nothing is lost between brain and memory.
IndexerstorageSearchable history — investigations, trends, the audit trail you show an assessor.
Dashboard + RBAC/tenantsscreenWhere you triage — and the wall that keeps Hotel A from seeing Hotel B.

How it all connects — the production data flow

Trace one event end to end, with the ports you'll actually open in a firewall:

Agentcollect · FIM · SCA
enroll :1515 → events :1514
Manageranalysisd: decode+rules
→ alerts.json
Filebeatships alerts
→ indexer :9200
Indexerstore + index
wazuh-alerts-*
Dashboardbrowser :443
→ you triage

Active Response runs backwards along this path: the manager decides, then execd pushes the command back down to the agent's executor over the same 1514 channel. Detection flows up; response flows down.

Lab → production: the readiness checklist

Your lab install (Lesson 3) works, but it is not production-safe until you've closed these. Each one maps to a real way a hotel deployment gets you in trouble. This is the headline skill of this lesson.

① Identity & trust
② Network exposure — open only what's needed
③ Data lifecycle — or the disk fills and it dies
④ Operate it safely

Check yourself

From memory — no peeking. These are the production facts that bite.

Question 1 of 3

Alerts are firing on the manager but none reach the dashboard. Which component is the first thing you check?

Filebeat reads the manager's alerts.json and pushes alerts into the indexer. If the manager is clearly firing alerts but the dashboard shows none, the courier between brain and memory — Filebeat — is the classic culprit.

Question 2 of 3

Which port should you make sure is never exposed to the public internet on a production deployment?

The indexer on 9200 is your entire data lake of alerts and history. Exposed, it's a direct path to every hotel's security data. Firewall it to internal/localhost; reach it through the dashboard, not directly.

Question 3 of 3

Your single-node deployment runs fine for weeks, then the indexer suddenly won't start. What's the most likely cause?

With no index retention policy, alert indices grow forever until the disk fills and the indexer can't start. An ISM policy that rolls off old indices (and right-sized JVM heap) is what keeps a long-running node alive.

Primary source to read next
Wazuh — Components for the full daemon list, then Securing your Wazuh installation — the official hardening guide that turns the checklist above into exact commands. Keep the production blueprint open beside it.
I'm your teacher — ask me anything. Want me to turn any checklist item into the exact commands for your host — generate the TLS certs, rotate the passwords, write the ISM retention policy, or design the per-hotel RBAC roles? Or want a "production readiness" dry-run where I quiz you on what's still open before you onboard? Just ask.

You just earned: the complete component map — agent modules, manager daemons, the hidden Filebeat courier, indexer and dashboard — each tied to a hotel-security job, the full production data flow with ports, and a four-part readiness checklist for going live.

Good next move: run the checklist against your own box and fix the gaps one at a time. A natural follow-on lesson is reading & triaging a live alert in the dashboard — the anatomy of an alert (level, rule ID, srcip, MITRE) and what each severity means you should do.

Sources

  1. Wazuh — Components (agent · server · indexer · dashboard; data flow).
  2. Wazuh — Daemons reference (analysisd, remoted, authd, modulesd, execd, logcollector, syscheckd).
  3. Wazuh — Filebeat & the indexer pipeline (manager writes alerts.json; Filebeat ships to indexer).
  4. Wazuh — Custom certificates (replace self-signed TLS).
  5. Wazuh — Password management (change default credentials).
  6. Wazuh — Agent enrollment with a password.
  7. Wazuh — Index lifecycle / retention (ISM).
  8. Wazuh — Indexer tuning (JVM heap sizing).

Reference: Production architecture blueprint · Config cheat-sheet · Glossary · Course home · ← Lesson 11