Im Folgenden beschreiben wir das Setup und die Konfiguration der Prelude-OSS- Version auf CentOS 6. Unter [4] sind eine Vielzahl von Installationsquellen für unterschiedliche Linux-Distributionen sowie einige BSD- und andere Unix-Varianten zu finden. Für CentOS 6 müssen Sie das entsprechende Release-RPM installieren, um Zugang zum Prelude-Software-Repository zu bekommen. Zusätzlich brauchen Sie das Release-RPM für die Extra Packages for Enterprise Linux (EPEL) [5]. Die beiden Pakete installieren Sie so:
# yum localinstall epel-release-latest-6.noarch.rpm prelude-release-3.0.0-1.el6.noarch.rpm
Anschließend finden Sie unterhalb von "/etc/yum.repos.d/" zwei neue yum-Konfigurationsdateien, die den Zugriff auf die beiden Software-Repositories ermöglichen. Außerdem benötigt Prelude das Crypto-Framework GnuTLS, das Sie also ebenfalls auf den Prelude-Systemen installieren müssen.
Als eine der wichtigsten Prelude-Komponenten ist zuerst der Prelude-Manager zu installieren. Er ist die Schnittstelle zwischen den Agenten und der grafischen Console für den Zugriff auf die eingesammelten Daten. Der Manager arbeitet im Backend mit einer Datenbank (MySQL, PostgreSQL oder SQLite) und kann, je nach Konfiguration, Alerts erzeugen, die dann über die zuvor definierten Kommunikationswege versendet werden. So ist es beispielsweise möglich, für Alerts mit einer hohen Priorität umgehend eine E-Mail zu versenden, während andere Alerts nur in einer täglichen Zusammenfassung aufgeführt sind.
Die Installation setzt voraus, dass libprelude auf dem Management-System bereits installiert ist. Dieses Paket ist in den meisten Linux-Distributionen bereits enthalten und lässt sich somit direkt aus dem Standard-Software-Repository der Distribution installieren. Alternativ stehen unter [4] andere Installationsquellen zur Verfügung. Die Bibliothek libprelude stellt eine API für die Prelude-Agenten zur Verfügung, über die sie eine sichere Verbindung mit dem Management-System herstellen können. Desweiteren stehen diverse andere Features zur Verfügung, die von den meisten Agenten benötigt werden. Somit ist es recht leicht möglich, einen bestimmten Sensor "Prelude aware" zu machen, sodass er als Prelude-Agent zum Einsatz kommen kann. In diesem Beispiel-Setup wird das Prelude-Manager-RPM nun mit Hilfe des CentOS-Paketmanagers yum installiert:
# yum install prelude-manager
Sollten nicht alle vom Prelude-Manager benötigten Pakete bereits installiert sein, löst der yum-Paketmanager sie nun selbstständig auf. Bei Bedarf lässt sich das Management-System auch als Docker-Container installieren [6].
Im nächsten Schritt passen Sie die Konfigurationsdatei "/etc/prelude-manager/prelude-manager.conf" entsprechend den eigenen Gegebenheiten an. Hier sind zwei Abschnitte besonders interessant. Zuerst ändern Sie die listen-Anweisung so, dass der Manager an der korrekten Ethernet-Schnittstelle auf eingehende Anfragen lauscht. Idealerweise findet die Kommunikation mit den Sensoren natürlich über ein eigenes VLAN statt, zu Testzwecken ist dies aber nicht notwendig. Als Nächstes passen Sie noch den Datenbank-Abschnitt an. Listing 1 zeigt die Konfiguration für eine MySQL-Datenbank. Die Datenbank selbst wird dann mit den Anweisungen aus Listing 4 eingerichtet.
Listing 1: /etc/prelude-manager/prelude-manager.conf
# Adresse der Ethernet-Karte listen = 192.168.0.100 # Datenbank-Abschnitt [db] # Datenbank-Type type = mysql # Datenbank-Host host = localhost # Datenbank-Port port = 3306 # Datenbank-Name name = prelude # Datenbank-Benutzer user = prelude # Passwort für den Datenbank-Benutzer pass = prelude
Prewikka ist die offizielle grafische Security-Console für das Event-Management-System. Es bietet Zugang zu den von Prelude gesammelten Daten und den erzeugten Reports. In der kostenpflichtigen SIEM-Variante von Prelude lassen sich auch externe Tools einbinden. Beispielsweise können Events von bestimmten IP-Adressen auf einer geografischen Karte dargestellt werden. Da auch Prewikka im Backend mit einer Datenbank arbeitet, werden die notwendigen Schritte zum Anlegen der Datenbank ebenfalls in Listing 4 dargestellt. In der Prewikka-Konfigurationsdatei "/etc/prewikka/prewikka.conf" können die Datenbanken bereits eingetragen werden (Listing 2). Die Installation der Console erfolgt wieder mittels yum:
# yum install prewikka
Listing 2: /etc/prewikka/prewikka.conf
# Informationen, die im Browser-Header angezeigt werden [interface] software: Prewikka place: Example Inc. browser_title: Prelude management # Datenbank-Informationen für die IDMEF-Meldungen [idmef_database] type: mysql host: localhost user: prelude pass: prelude name: prelude # Datenbank-Informationen für Prewikka [database] type: mysql host: localhost user: prewikka pass: prewikka name: prewikka
Die Prewikka Console ist als WSGI-Applikation implementiert. Listing 3 zeigt eine beispielhafte Konfiguration für einen Apache-Webserver. Die Anwendung wird hier innerhalb eines virtuellen Hosts gestartet. Achten sie darauf, dass der eingesetzte Apache-Server über das WSGI-Modul verfügt.