Debian Server light mit Docker und Wazuh-Agent (Debian 13 Minimal)

Diese Anleitung beschreibt den Aufbau eines ultraminimalen Servers, auf dem nur folgende Dienste laufen:

  • Docker für alle produktiven Anwendungen
  • Wazuh-Agent zur Host- und Containerüberwachung
  • systemd + SSH

Alles andere wird konsequent weggelassen.
Firewall-Regeln werden über die nativen Docker-Netzwerke und den Reverse Proxy (Nginx Proxy Manager) gesteuert – kein ufw, kein iptables nötig.

Schritt 1 – Debian 13 Minimalinstallation

  • ISO: Debian 13 netinst herunterladen
  • Partitionierung (optional eigene Partition für /var/lib/docker)
  • Software-Auswahl: nur SSH-Server aktivieren
  • Alles andere deaktivieren: Desktop, Standardwerkzeuge, Mail, Druck, Snap etc.

Nach der Installation login als root.

Schritt 2 – System aktualisieren und Grundpakete installieren

apt update && apt upgrade -y
apt install -y ca-certificates curl gnupg wget lsb-release qemu-guest-agent sudo

Schritt 3 – Docker installieren

curl -fsSL https://get.docker.com | sh

Testen:

docker run hello-world

Optional: Einen Benutzer zur Docker-Gruppe hinzufügen, wenn du später nicht als Root arbeiten willst:

usermod -aG docker DEIN_BENUTZER

Schritt 4 – Wazuh-Agent installieren

Paket herunterladen. Achtung: Hier Version der Software und IP des Wazuh-Servers entsprechend anpassen.

cd /tmp
wget https://packages.wazuh.com/4.x/apt/pool/main/w/wazuh-agent/wazuh-agent_4.14.1-1_amd64.deb && sudo WAZUH_MANAGER='192.168.171.13' WAZUH_AGENT_NAME='test' dpkg -i ./wazuh-agent_4.14.1-1_amd64.deb

Hier jetzt die Konfiguration prüfen. Manchmal wird die IP-Adresse des Wazuh-Servers nicht richtig gesetzt:

nano /var/ossec/etc/ossec.conf

Minimal:

<client>
  <server>
    <address>WAZUH_MANAGER_IP</address>
  </server>
</client>

Agent starten:

systemctl enable wazuh-agent
systemctl start wazuh-agent
systemctl status wazuh-agent

Schritt 5 – Nicht benötigte Dienste entfernen

systemctl disable --now avahi-daemon cups bluetooth ModemManager
apt purge exim4* cups* avahi-daemon bluetooth -y
apt autoremove --purge -y

Schritt 6 – Logs begrenzen

nano /etc/systemd/journald.conf

Eintragen:

SystemMaxUse=300M
RuntimeMaxUse=100M

Danach:

systemctl restart systemd-journald

Schritt 7 – Dienste-Zustand prüfen

systemctl --type=service --state=running

Erlaubte Dienste:

  • ssh
  • docker
  • wazuh-agent
  • systemd-journald
  • cron
  • network

Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre, wie deine Kommentardaten verarbeitet werden.

Diese Seite verwendet Cookies, um die Nutzerfreundlichkeit zu verbessern. Mit der weiteren Verwendung stimmst du dem zu.

Datenschutzerklärung
Nach oben scrollen