Im Bereich der IT wird mit dem Begriff „Monitoring“ die kontinuierliche Überwachung oder Kontrolle von IT-Systemen auf ihre einwandfreie Funktionalität bezeichnet. Um Ergebnisse zu vergleichen oder auszuwerten muss Monitoring systematisch und regelmäßig durchgeführt werden. Im Rahmen moderner Informationssysteme gehören diese Prozesse zu den wichtigsten Aspekten von Netzwerk- und Systemadministratoren.

Allgemeine Informationen zum Monitoring

Für die reibungslose Funktionalität einer IT-Infrastruktur müssen IT-Administratoren sicherstellen, dass sich alle beteiligten Komponenten innerhalb ihrer normalen Parameter bewegen. Diese Parameter werden durch Monitoring ermittelt, also durch die regelmäßige und systematische Überwachung relevanter Indikatoren. Früher wurden oft nur die reinen Performance-Parameter erfasst, wie zum Beispiel:

–       die Auslastung der CPU bei einer Datenbanktransaktion

–       der Speicherverbrauch bei einer Client-Anfrage

–       die Zeit, die der Server braucht, um eine Anfrage zu beantworten

Heutzutage umfasst Monitoring jedoch sämtliche Bereiche der IT, wie beispielsweise:

–       Sicherheit

–       Nutzerverhalten

–       Verfügbarkeit

Ziele

Im obigen Absatz haben wir das Ziel aller Prozesse bereits mit der „reibungslosen Funktionalität“ definiert. Grundsätzlich handelt es sich dabei um die Ermittlung der Ursachen, die direkt oder indirekt dafür verantwortlich sind, System-Parameter außerhalb der erwünschten Grenzen zu erzeugen. Dabei wird Monitoring eingesetzt, um:

–       das Problem möglichst früh zu identifizieren, sodass es beseitigt werden kann, bevor größere Schäden entstehen können

–       die Ursache des Problems ausfindig zu machen und zu lokalisieren

–       durch das Beseitigen auftretender Probleme Früherkennungsmaßnahmen zu optimieren, sodass künftige Probleme besser erkannt und behoben werden können

Falls ein System innerhalb der normalen Parameter funktioniert, können Maßnahmen beispielsweise auch eingesetzt werden, um die zukünftige Nutzung zu planen. Hat eine Webapp beispielsweise über das vergangene Jahr hinweg nur 60 Prozent ihrer CPU genutzt, lässt sich etwa ein physikalischer Server mit weniger Leistung betreiben.

Methoden und Verfahren

In Bezug auf den Betrachtungszeitraum der im Rahmen des Monitorings erfassten Informationen können zwei Vorgehensweisen unterschieden werden, und zwar:

–       Das sogenannte „Historical Monitoring“, das primär bei der automatischen Erzeugung von Langzeitstatistiken zu IT-Diensten eingesetzt wird. Diese Art ermöglicht u. a. die Kapazitätsplanung anhand der Wachstumsraten innerhalb einer bestimmten Zeitperiode, Rechenauslegung oder die Planung des Budgets. Darüber hinaus sind derartige Datensätze oft gute Indikatoren für systematische Verfügbarkeitsprobleme und entsprechende Lösungen solcher Probleme. Bei dieser Vorgehensweise arbeitet der IT-Administrator proaktiv.

–       Das sogenannte „Real-Time Monitoring“ ist eher reaktiv ausgelegt. Durch die kontinuierliche und systematische Überwachung der Funktionalitäten sämtlicher Dienste sollen Ausfälle schnellstmöglich identifiziert werden und die IT-Verantwortlichen in Kenntnis gesetzt werden. Im Idealfall werden auftretende Probleme identifiziert, bevor der Nutzer etwas davon merkt.

Hohe Verfügbarkeit und niedrige Ausfallraten

Im Rahmen des aktiven Monitorings versuchen dedizierte Systeme das Problem vorübergehend zu beseitigen. Dabei wird jedoch nur die Symptomatik und nicht die eigentliche Ursache des Problems eliminiert. Darüber hinaus ist für viele auftretende Probleme eine solche Vorgehensweise gar nicht möglich, wie beispielsweise bei einem Serverausfall. Ein wesentlicher Nachteil des aktiven Monitorings ist, dass in der Regel ein privilegierter Zugriff auf Dienste und Systeme benötigt wird, was einen erhöhten Risikofaktor darstellt.

Bei dem sogenannten „durchgängigen Monitoring“ wird hingegen das gesamte System inklusive aller relevanten Parameter und Dienste kontinuierlich überwacht. Dies benötigt jedoch eine hohe Disziplin aller IT-Mitarbeiter: Wenn beispielsweise ein neues Gerät oder ein neuer Server in das Netzwerk integriert wird, darf man nicht vergessen, diesen in das Monitoring einzubinden. Des Weiteren erzeugt diese Form des Monitorings eine gigantische Datenmenge, deren gezielte Analyse viel Zeit in Anspruch nehmen kann.

Unterschiedliche Anwendungen

Im Rahmen des sogenannten „End-to-End-Monitoring“ beschränkt sich die Messung auf die Funktionalität eines einzelnen Dienstes. Wenn beispielsweise ein Kunde in einem Webshop, wie Amazon, einkaufen möchte, dann wird die vollständige Transaktion eines Dienstes gemessen und ausgewertet. Bei dieser Vorgehensweise steht das sogenannte „Application Response Time Monitoring“ im Fokus. Damit lässt sich die exakte Antwortzeit einer Webanwendung ermitteln und ob diese in einer akzeptablen Zeit erfolgt.

Im Rahmen des externen wird ein dediziertes Gerät an das Netzwerk angeschlossen, während beim internen auf ein solches Gerät verzichtet wird. Weitere Bezeichnungen für diese Vorgehensweise sind aktives und passives Monitoring. Im Rahmen des aktiven Monitorings werden noch zusätzlich Pakete an das Netzwerk gesendet, während beim passiven lediglich „mitgehört“ wird.

Monitoring Tools

Die Prozesse finden in der IT in Form zahlreicher Tools Unterstützung. Es ist sind eine Vielzahl kommerzieller als auch Open Source-Produkt erhältlich, die jeweils auf unterschiedliche Einsatzszenarien in unterschiedlichen Umgebungen ausgerichtet sind. Nicht jedes Werkzeug eignet sich für jede Netzwerkinfrastruktur und jedes Verfahren gleichermaßen. Einige Tools verfügen über zahlreichen Funktionen und Features, während andere auf spezialisierte Aufgaben ausgerichtet sind. Bei der Auswahl eines solchen Werkzeugs sollten also die eigenen Anforderungen und Bedürfnisse beachtet werden. Welche Funktionen und Features benötigt werden, hängt von folgenden Faktoren ab:

–       Anforderungen der Netzwerkinfrastruktur

–       Benötigte Alarmmeldungen

–       Auf welche Art und Weise sollen Alarmmeldungen gesendet werden?

–       Welcher Monitoring-Typ ist erforderlich?

 

Unter dem Begriff WannaCry versteht man eine äußerst potente Schadsoftware, die im Mai 2017 großflächig aufgetreten ist und primär Computer mit den beiden Betriebssystemen Windows 7 und Windows XP befallen hat. WannaCry orientiert sich in der Funktionsweise an einer klassischen Ransomware: Die Schadsoftware verschlüsselt die Festplatten inklusive aller Daten des befallenen Rechners mit einer leistungsstarken Verschlüsselung und fordert von dem Anwender Lösegeld für die Entschlüsselung der Daten. Das Besondere an WannaCry war, dass die Ransomware mit der Funktionalität eines Computerwurms ausgestattet war, wodurch sie sich binnen kürzester Zeit weltweit auf Millionen von Rechnern verbreiten konnte.

Allgemeine Informationen zu WannaCry

Am 12. Mai 2017 wurde eine weltweite massenhafte Infektion von Windowscomputern durch einen neuartigen Computervirus registriert. Innerhalb von nur 24 Stunden waren weltweit mehr als 230.000 Windowsrechner betroffen. Neben vielen privaten Computern, auf denen die beiden Betriebssysteme Windows 7 und Windows XP installiert waren, waren auch viele Unternehmen, Regierungsbehörden, Industrieanlagen sowie kritische Infrastrukturen betroffen. Diese Ransomware wird im Allgemeinen als WannaCry bezeichnet, ist jedoch auch unter folgenden Namen bekannt:

–     WannaCrypt

–     WCrypt

–     WCRY

–     Wana Decryptor 2.0

Ransomware stellt eine spezielle Untergruppe von Schadsoftware dar und kommt im Bereich der Cyberkriminalität schon seit Jahren äußerst erfolgreich zum Einsatz. Während die bisherigen Ransomware-Angriffe in der Regel vereinzelt durchgeführt wurden und vorwiegend einzelne Unternehmen, Organisationen oder Privatpersonen gezielt ins Visier der Hacker genommen wurde, hebt sich WannaCry durch seine aggressive Weiterverbreitung deutlich von den bisherigen Hackerangriffen ab. Neben der reinen Ransomware-Funktionalität kommt im Rahmen von WannaCry auch ein potenter Wurmvirus zum Einsatz. Dieser nutzt gezielt den Windows Exploit „EternalBlue“ in Kombination mit dem Backdoor-Tool „DoublePulsar“, um sich selbständig weiterzuverbreiten.

Funktionsweise von WannaCry

Nachdem WannaCry auf ein anfälliges System kopiert wurde, wird zunächst eine Verbindung zu der sogenannten „Killswitch-URL“ aufgebaut. Falls die Domain nicht aktiv ist, wird der sogenannte Dropper aktiviert, der für die Installation der Ransomware zuständig ist. Danach kreiert die Malware einen Service mit der Bezeichnung „mssecsvc2.0“, der den Displaynamen „Microsoft Security Center 2.0“ erhält. Dieser scannt bei der ersten Gelegenheit zuerst das lokale Netzwerk und danach auch das Internet nach weiteren potenziellen Computern mit der Vulnerability „EternalBlue“. Über diese Funktionalität wird die rasend schnelle Verbreitung der Schadsoftware gewährleistet.

Im nächsten Schritt extrahiert der zuvor aktivierte Dropper die eigentliche WannaCry-Ransomware und führt diese aus. Auch die Ransomware prüft zuerst, ob eine Killswitch-URL vorhanden ist. Nur falls diese nicht gefunden wird, geht es mit dem nächsten Schritt weiter.

Nachfolgend gewährt sich WannaCry vollen Zugriff auf alle sich auf dem Rechner befindenden Dateien und setzt alle Attribute der Dateien auf „versteckt“. Danach werden alle Dateien mit einem komplexen Verschlüsselungsalgorithmus verschlüsselt und mit der Dateiendung „.WNCRY“ bestückt. Dabei wird in jedem Ordner eine „ReadMe.txt“-Datei erstellt, welche die genauen Anweisungen für die Zahlung des Lösegelds beinhaltet. Zusätzlich wird ein Registry-Eintrag angelegt, der nach Abschluss der Verschlüsselung alle lokalen Backups und Systemstände entfernt.

Zuletzt ersetzt die Schadsoftware das aktuelle Desktop-Hintergrundbild durch eine Benachrichtigung und startet einen Timer und Anweisungen für die Lösegeldzahlung.

Betroffene Unternehmen und Einrichtungen

Der Hackerangriff betraf mehrere global agierende Unternehmen und Organisationen. Nach aktuellem Stand kam es u.a. bei folgenden Einrichtungen und Unternehmen aufgrund einer Infektion mit der Ransomware zu Störungen und Betriebsausfällen:

–     Telefonica (spansicher Telekommunikationskonzern)

–     National Health Service (das staatliche Gesundheitssystem in Großbritannien und Nordirland)

–     Renault (französischer Automobilkonzern)

–     Fedex (weltweit agierendes Logistikunternehmen aus den USA)

–     PetroChina (chinesischer Ölkonzern)

Darüber hinaus waren tausende Computer des russischen Innenministeriums, des Katastrophenschutzministeriums sowie des Telekommunikationskonzerns MegFon betroffen. In Deutschland waren bei der Deutschen Bahn rund 450 Computer mit der Ransomware infiziert, was u.a. zum Ausfall von Anzeigetafeln an vielen Bahnhöfen und Videoüberwachungssystemen deutschlandweit führte.

Schutzmaßnahmen gegen Ransom Software

Neben dem Einspielen aktueller Sicherheitspatches für das Betriebssystem und installierte Anwendungen wird der Einsatz einer guten Sicherheitslösung wie beispielsweise ESET empfohlen. Aber auch ein kostenloser Virenschutz bietet ein ausreichendes Maß an Sicherheit gegen Ransomware-Angriffe. Es sollte jedoch beachtet werden, dass manche Antivirenprogramme den Zugriff auf die Killswitch-URL automatisch blockieren, weil sie den erhöhten Datenverkehr für auffällig erachten. Dies ist kontraproduktiv, da sich die Ransomware aufgrund fehlender Aktivierung des Notausschalters in diesem Fall unkontrolliert weiterverbreitet.

Des Weiteren können durch den Einsatz einer Firewall die TCP-Ports 137, 139, 445, 3389 sowie die UDP-Ports 137 und 138 blockiert werden, um ein Eindringen der zurzeit häufigsten Variante des WannaCry-Schädlings zu unterbinden.

Customer-Relationship-Management, Warenwirtschaft, Finanzbuchhaltung und vieles mehr – Unternehmenssoftware muss heute einiges leisten und ist daher oft sehr kostspielig. Eine Ausnahme sind Open Source Softwareprogramme. Open Source, also kostenlos wird oft mit minderwertig gleichgestellt. Dass dies nicht immer der der Fall ist, beweist das Open Source Vtiger CRM.

Was ist Vtiger?

Vtiger ist eine webbasierte, kostenlose Open-Source Customer-Relationship-Management Software für kleine und mittlere Unternehmen. Neben der zentralen Aufgabe des Customer-Relationship-Managements bietet die Software Anwendern mit einem Angebots- und Rechnungswesen, einer einfache FiBu und integrierten Warenwirtschaft die wichtigsten Komponenten einer ERP Software.

Vtiger basiert auf einer mySQL Datenbank und wurde in PHP geschrieben. VTiger CRM kann auf Windows, Linux und Unix Systemen eingesetzt werden. Vtiger ist eine Abspaltung des seit einiger Zeit nur noch kommerziell vertriebenen SugarCRM. Entwickelt und vertrieben wird die Software von dem gleichnamigen in San Francisco, Kalifornien und Bangalore, Indien ansässigen Unternehmen Vtiger. Die erste Version wurde im Dezember 2004 veröffentlicht. Einen ähnlichen Funktionsumfang wie VTiger bietet odoo, eine weitere Open Source ERP und CRM Softwaresuite für kleine und mittlere Unternehmen.

Vtiger Module und Funktionen

VTiger ist zwar keine spezielle Branchenlösung, bietet jedoch alle grundlegenden Funktionen, die in einem Unternehmen benötigt werden. Es ist modular aufgebaut und kann flexibel an die spezifischen Arbeitsprozesse in Ihrem Unternehmen angepasst werden. Ein weiterer Vorteil des Vtiger CRM ist, dass es über jeden gängigen Web-Browser aufgerufen werden kann. Eine Softwareinstallation bei den Nutzern ist nicht erforderlich. Das Softwarepaket enthält die folgenden Anwendungen:

Vtiger Modul Sales / Vertrieb

Das Softwarepaket verwaltet End-to-End Vertriebsprozesse, mit denen die komplette Customer Journey vom Lead bis zur Bestellung und darüber hinaus zum Kundenservice gemanagt werden kann. In Vtiger sind die Bereiche Marketing, Sales/Vertrieb sowie Kundendienst miteinander verzahnt. Bei Bedarf können alle Daten als csv-Datei exportiert oder importiert werden. Darüber hinaus bietet die Software ein komfortables Activity Management mit Erinnerungsfunktionen. Alle Angaben zur Zuständigkeit, der Priorität sowie zum Status und die Benutzer können gesetzt und durch die Vergabe von Berechtigungen einem bestimmten Personenkreis oder allen Mitarbeitern zur Verfügung gestellt werden.

Vtiger CRM – Marketing & Analytics

Das Modul Marketing & Analytics ermöglicht die Automatisierung von zielgruppengerechten Kampagnen. Dieses Modul vereinfacht eine personalisierte Kundenansprache auf Basis der im System gespeicherten Kundeninformationen und die Erstellung übersichtlicher Kampagnen-Profile mit Angaben des Ziels und des Budgets. Zudem sind ein- und mehrstufiger Marketingkampagnen mit diesem Modul ohne großen Aufwand realisierbar. Mit der integrierten Analysefunktion ist ein kontinuierliches Monitoring der verschiedenen Kampagnen möglich.

Vtiger Management und Controlling

Das Vtiger Modul Management und Controlling unterstützt die Unternehmensleitung bei der Steuerung des Unternehmens. Das Modul liefert jederzeit aktuelle Informationen aus dem Vertrieb oder der Fibu auf deren Basis zeitnah Entscheidungen getroffen und Strategien entwickelt werden können. Verschiedene Controlling-Funktionen, Statistiken, Vertriebsinformationen und viele weitere Features bieten aussagekräftige Auswertungen über alle Unternehmensbereiche.

Support & Kundenservice mit dem Vtiger CRM

Vtiger CRM Modul Support & Kundenservice ermöglicht schnelle Reaktionen auf Kundenanfragen und Beschwerden. Alle Informationen werden übersichtlich bereitgestellt. Anwender haben einen direkten Zugang auf die gesamte Kundenhistorie. Der Zugriff auf diese Informationen ist für alle beteiligten Mitarbeiter jederzeit möglich. Ein sogenanntes Trouble Ticket Management ermöglicht die unkomplizierte Erfassung von Tickets und deren Zuordnung zu Kontakten, Produkten oder einzelnen Kundenkonten. Zusätzlich wird der Support durch FAQs unterstützt, die Kunden über ein Customer Self Service Portal zur Verfügung gestellt werden können.

Administration von Vtiger

Über eine komfortable Administrationsoberfläche wird das gesamte CRM-System verwaltet. Benutzern, Abteilungen und Gruppen können individuelle Zugriffsrechte zugewiesen werden. Der Administrator kann das Layout von Eingabemasken oder E-Mail Templates über Assistenten individuell anpassen. Eine integrierte Back-up-Funktion ermöglicht eine schnelle Datenwiederherstellung, falls Objekte oder Dokumente gelöscht worden.

Vtiger – Plug-ins und Add-ons

VTiger stellt für Anwender eine Reihe nützlicher Plug-ins und Add-ons zur Verfügung, mit denen der Funktionsumfang des CRM erweitert werden kann.

Mozilla Thunderbird Plug-in

Das Mozilla Thunderbird Plugin erweitert die Produktivität und ermöglicht es, ein- und ausgehende E-Mails aus dem E-Mail Client in Vtiger zu integrieren, Kontaktdaten zu importieren und exportieren sowie Kontaktdaten zwischen dem CRM und dem Thunderbird E-Mail Client zu synchronisieren.

Microsoft Office Integration

Mithilfe dieses Plug-in können Daten aus dem CRM in Microsoft Office Anwendungen exportiert werden. Dadurch wird das Erstellen von Aufklebern, adressierten Briefumschlägen, Mailings, Katalogen und anderen Dokumenten, auf der Datenbasis des CRM erleichtert und beschleunigt.

Firefox Toolbar Plug-in

Die Toolbar für den Firefox Webbrowser ist ein komfortabel anwendbares Plug-in, mit dem Kontakte, Leads, Accounts und mehr direkt aus dem Firefox Webbrowser an das Vtiger CRM übermittelt werden können. .

TYPO3 Extension

Das TYPO3 Extension Add-On ermöglicht die automatische Generierung und Weiterverarbeitung von Leads. Zusätzlich können bereits vorhandene Leads oder Anfragen mit diesem Add-on in Vtiger importiert und weiterverarbeitet werden

Kundenportal Add-on

Mit dem Kundenportal Add-on können Nutzer auf der eigenen Website ein Self-Service Kundenportal mit FAQs und Ticketsystem einrichten. Über das Portal können Kunden zudem Rechnungen, Angebote und mehr bequem einsehen, ohne sich an den Kundenservice wenden zu müssen.

Sprachpaket Deutsch

Nicht zuletzt ist für Vtiger ein deutsches Sprachpaket als kostenloses Add-on erhältlich

Die Anmeldemaske von Bareos

Einleitung zu Bareos

Bareos ist neben Backup-PC und Bacula eines der populärsten Programme aus der OpenSource-Community um entfernte Server zu sichern. Wer die Software Bacula zur Sicherung auf Platte oder Tape (Bandlaufwerk) im Rahmen der Linux-Administration schon eingesetzt hat, wird sich in Bareos schnell zurecht finden.
Im nachfolgenden Tutorial zu Bareos gehen wir der Reihe nach die Schritte durch, die zur Installation und Konfiguration von Bareos notwendig sind. Außerdem fügen wir exemplarisch einen Windows-Client und einen Linux-Client hinzu.

Im zweiten Tutorial zu Bareos behandeln wir die notwendigen Anpassungen in der Konfiguration, wenn Sie Bareos mit sehr vielen Clients nutzen möchten.
Bareos ist ein so genannter Fork von Bacula, das bereits seit über 10 Jahren als Online-Backup bekannt ist. Seit 2012 entwickeln mehrere Software-Entwickler Bareos auf Basis von Bacula weiter. Hauptgrund war die schleppende Weiterentwicklung von Bacula

Das Konzept von Bareos

Bareos besteht wie Bacula aus 3 Diensten:

  • Der Storage Daemon (bareos-sd) – dieser Dienst verwaltet den Speicher, auf denen Backups gespeichert werden. Das können Festplatten oder Tape-Drives sein.
  • Der Filedaemon von bareos (bareos-fd) übernimmt auf jedem Client die Aufgabe, die Dateien des Clients zum zentralen Storage Daemon zu schicken.
  • Der Bareos-Director (bareos-dir) ist die zentrale Komponente, über die der Netzwerk-Administrator Backup-Clients anlegt, Backup-Jobs definiert oder Restores vornehmen kann.

Der Storage-Daemon sowie der Director werden typischerweise auf einem Linux-Server installiert. Der Bareos-Filedaemon muss auf jedem zu sichernden Client installiert werden. Es existieren dazu Programm-Pakete für Windows (ab Windows 2008 Server bzw. Windows 7) sowie für alle gängigen Linux-Distributionen (CentOS, Redhat, Ubuntu, Debian, SuSE Linux, …) sowie Univention (Version 4).

Vorteile von Bareos

Durch die Verteilung des Programms auf drei Dienste kann Bareos relativ gut skalieren. D.h. es ist möglich, den Director und den Storage-Daemon auf getrennten Servern laufen zu lassen.

Gegenüber Bacula hat Bareos noch den angenehmen Vorteil, daß es von Haus aus eine Weboberfläche mitbringt, über die Jobs gestartet oder Restores vorgenommen werden können.
Bareos unterscheidet sich sowohl von Backup-PC als auch bacula, daß hinter Bareos mittlerweile eine deutsche GmbH sitzt, die von einigen ambitionierten Software-Entwicklern geführt wird. Hier können Firmen im Zweifel auch kostenpflichtigen IT-Support für Bareos einkaufen.

Voraussetzungen für Bareos

Damit Bareos einwandfrei funktioniert, benötigen wir

  • Einen zentralen Server mit ausreichend Speicherplatz als Zuhause für den Bareos-Director
  • Mysql auf dem zentralen Bareos-Director
  • Netzwerk-Verbindungen zu allen zu sichernden Clients (internes LAN, Internet oder via VPN) auf den Ports 9102, 9103 und 9104

Im konkreten Fall platzieren wir den Bareos-Server zentral im internen LAN der Firma so daß er von dort problemlos mit allen internen Servern per TCP/IP kommunizieren kann.
Für die Kommunikation mit verteilten Clients im Internet richten wir (weiter unten) auf der pfsense ein 1:1 NAT ein und erlauben von extern den Zugriff auf Port 9102.

Empfehlung für das Hardware-Sizing bzw. Setup von Bareos

Im Test ist eine virtuelle Maschine mit 4 GB RAM und 4 Kernen ausreichend. Für das Betriebssystem (Centos 7) reichen in der Regel 50 -100 GB.
Wieviel Plattenplatz für die zu sichernden Rechner notwendig ist, hängt von deren Größe sowie der Vorhaltezeit für Backups ab. Dazu unten bzw. im zweiten Teil des Tutorials mehr.
Im konkreten Beispiel starten wir mit 10 TB Speicher, die über eine separate virtuelle Festplatte via LVM (wichtig!) zur Verfügung gestellt wird.

Besonderheiten von Bareos

Um Bareos auszuprobieren sollten Sie den Hostnamen des zentralen Bareos-Servers auf „bareos“ eingestellt lassen. Der Name „bareos“ für den Hostnamen ist an unzähligen Stellen in den Konfigurations-Dateien von Bareos versteckt. Hier lohnt sich die Umbenennung (meiner Meinung nach) erst, wenn man größere Installationen von Bareos mit verteilten Diensten einrichten möchte.

Damit die Clients mit dem zentralen Bareos-Server kommunizieren können muss sowohl für den Bareos-Director der Hostname des Clients als auch für den Client der Hostname von Bareos (bareos) per DNS auflösbar sein.

Dazu richten Sie am besten im DNS einen entsprechenden Eintrag ein. Wer Bareos nur mal eben auf zwei Geräten testen möchte, kann selbstverständlich den passenden Eintrag auch in der /etc/hosts auf Linux bzw. unter c:\windows\system32\drivers\etc\hosts anlegen.

Installation und Vorbereitung von Bareos

Wir nutzen zur Installation von Bareos eine Centos 7 Standard-Installation. Die Root-Partition bekommt 45 GB. Das Verzeichnis /var/lib/mysql erhält eine separate Partition mit 25 GB.
Zusätzlich erstellen wir eine große, zweite Festplatte mit 10 TB, die wir später mittels LVM unter /var/lib/bareos hängen. Unter /var/lib/bareos speichert Bareos in der Standard-Konfiguration die einzelnen Volumes ab, auf denen die gesicherten Daten gespeichert werden.

Hinweis: Für einen Test reicht sicherlich deutlich weniger Platz unter /var/lib/bareos.
Für die Installation sind die folgenden Schritte notwendig:

  1. Bareos-Repository für Centos 7 herunterladen
  2. Bareos, Mysqld(bzw. Mariadb) sowie das Bareos-Webui installieren
  3. Datenbank mit Hilfe von 3 fertigen Skripten erstellen
  4. Dienste (Bareos und httpd) starten
  5. Web-User anlegen

Die Schritte im Einzelnen:

Bareos-Repositiory herunterladen

Mit dem nachfolgenden Snippet/Skript laden Sie automatisch das richtige Repository für yum herunter:

1
2
3
4
5
6
7
8
#
DIST=CentOS_7
DATABASE=mysql
yum -y install wget
# add the Bareos repository
URL=http://download.bareos.org/bareos/release/latest/CentOS_7
wget -O /etc/yum.repos.d/bareos.repo $URL/bareos.repo
#

Bareos, Mysqld und Bareos-Webui installieren

Direkt danach können wir mit einem Befehl alle notwendigen Programme installieren

1
yum -y install bareos bareos-database-mysql bareos-webui mariadb-server

Mariadb/Mysqld anpassen / Datenbanken erstellen

1
2
3
4
systemctl enable mariadb
systemctl start mariadb
mysql_secure_installation
#(Fragen mit “y” beantworten und neues Passwort für mysql Benutzer root vergeben)
1
2
3
4
5
6
vi ~/.my.cnf
#insert:
[client]
host=localhost
user=root
password=<root mysql-Passwort>

Danach rufen wir die 3 SQL-Skripte auf, die alle notwendigen Datenbanken sowie Tabellen für Bareos erstellen:

1
2
3
/usr/lib/bareos/scripts/create_bareos_database
/usr/lib/bareos/scripts/make_bareos_tables
/usr/lib/bareos/scripts/grant_bareos_privileges

Ergebnis:

1
2
3
4
5
6
7
8
9
[root@bareos01 ~]# /usr/lib/bareos/scripts/create_bareos_database
Creating mysql database
Creating of bareos database succeeded.
[root@bareos01 ~]#     /usr/lib/bareos/scripts/make_bareos_tables
Making mysql tables
Creation of Bareos MySQL tables succeeded.
[root@bareos01 ~]#     /usr/lib/bareos/scripts/grant_bareos_privileges
Granting mysql tables
Privileges for user bareos granted ON database bareos.

Bareos Dienst und Apache starten

Mit den nachfolgenden Befehlen starten wir die vier Dienste. Die letzten 4 stellen sicher, daß die 4 Dienste auch nach einem Reboot wieder automatisch gestartet werden.

1
2
3
4
5
6
7
8
systemctl start bareos-dir
systemctl start bareos-sd
systemctl start bareos-fd
systemctl start httpd
systemctl enable bareos-dir
systemctl enable bareos-sd
systemctl enable bareos-fd
systemctl enable httpd

Web-Konfiguration

Die Konfiguration von Bareos für das Web-Interface liegt unter /etc/httpd/conf.d/bareos-webui.conf . Hier müssen Sie an sich nichts tun.
Wer zum Testen auf die Firewall bzw. iptables verzichtet, stellt den Firewall folgendermaßen aus:

1
2
systemctl disable firewalld
service firewalld stop

Zu guter Letzt legen wir noch einen Benutzer namens “admin” für die Web-Gui von Bareos an.

1
2
3
bconsole
configure add console name=admin password=test123 profile=webui-admin
quit

Danach können Sie sich unter http://<IP>/bareos-webui/ mit dem Usernamen „admin“ sowie dem Passwort „test123“ anmelden.
Abbildung: Anmeldemaske von Bareos

Die Anmeldemaske von Bareos

Die Anmeldemaske von Bareos

 

Vorbereitung für Backups

Damit Sie nun auch tatsächlich Backups und Restores durchführen können, müssen wir noch wenige Anpassungen am Bareos-Director vornehmen:

FileSets anlegen.

Damit Bareos weiß was es sichern soll, muss für Linux und Windows jeweils eine Definition für ein so genanntes FileSet angelegt werden. Dazu erstellen Sie unter „/etc/bareos/bareos-dir.d/fileset“ die Datei LinuxAll.conf. In ihr ist enthalten welche FileSysteme unter Linux gesichert werden sollen:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
FileSet {
Name = "LinuxAll"
Description = "Backup all regular filesystems, determined by filesystem type."
Include {
Options {
Signature = MD5 # calculate md5 checksum per file
One FS = No     # change into other filessytems
FS Type = btrfs
FS Type = ext2  # filesystems of given types will be backed up
FS Type = ext3  # others will be ignored
FS Type = ext4
FS Type = reiserfs
FS Type = jfs
FS Type = xfs
FS Type = zfs
FS Type = vzfs
}
File = /
}
Exclude {
File = /var/lib/bareos
File = /var/lib/bareos/storage
File = /proc
File = /tmp
File = /var/tmp
File = /.journal
File = /.fsck
}
}

Das Gleiche machen wir analog für Windows. Hier erstellen Sie eine Datei mit dem Namen WindowsAllDrives.conf im selben Verzeichnis:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
FileSet {
Name = "WindowsAllDrives"
Enable VSS = yes
Include {
Options {
Signature = MD5
Drive Type = fixed
IgnoreCase = yes
WildFile = "[A-Z]:/pagefile.sys"
WildDir = "[A-Z]:/RECYCLER"
WildDir = "[A-Z]:/$RECYCLE.BIN"
WildDir = "[A-Z]:/System Volume Information"
Exclude = yes
}
File = /
}
}

Die nachfolgenden Job-Definitionen verwenden gleich die eben angelegten FileSets.

JobDefinitionen anlegen

Wechseln Sie nun ins Verzeichnis „/etc/bareos/bareos-dir.d/jobdefs“ und legen dort die Standard-Job-Definition für Linux-Clients an. In dieser generellen Job-Definition wird zentral eingestellt, welches FileSet verwendet wird, wie oft und wohin gesichert wird.
Erstellen Sie dazu für alle Linux-Rechner die Datei DefaultLinux.conf

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
JobDefs {
Name = "DefaultLinux"
Type = Backup
Level = Incremental
FileSet = "LinuxAll"                     # selftest fileset                            (#13)
Schedule = "WeeklyCycle"
Storage = File
Messages = Standard
Pool = Incremental
Priority = 10
Write Bootstrap = "/var/lib/bareos/%c.bsr"
Full Backup Pool = Full                  # write Full Backups into "Full" Pool         (#05)
Differential Backup Pool = Differential  # write Diff Backups into "Differential" Pool (#08)
Incremental Backup Pool = Incremental    # write Incr Backups into "Incremental" Pool  (#11)
}

Das Gleiche machen wir für Windows-Clients. Hier legen wir im gleichen Verzeichnis die Datei DefaultWindows.conf an:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
JobDefs {
Name = "DefaultWindows"
Type = Backup
Level = Incremental
FileSet = "WindowsAllDrives"
Schedule = "WeeklyCycle"
Storage = File
Messages = Standard
Pool = Incremental
Priority = 10
Write Bootstrap = "/var/lib/bareos/%c.bsr"
Full Backup Pool = Full                  # write Full Backups into "Full" Pool         (#05)
Differential Backup Pool = Differential  # write Diff Backups into "Differential" Pool (#08)
Incremental Backup Pool = Incremental    # write Incr Backups into "Incremental" Pool  (#11)
}

Die Definitionen zu Pools, Volumes und Storage lassen Sie für den Moment so wie sie sind.

Zeitpläne für Backups / Schedules

Zur Sicherheit prüfen Sie noch, ob der Zeitplan für die Backups auch an Ort und Stelle ist.
Dazu wechseln Sie ins Verzeichnis „/etc/bareos/bareos-dir.d/schedule“ .
Dort sollen Sie die Datei WeeklyCycle.conf vorfinden. Diese hat den Inhalt:

1
2
3
4
5
6
Schedule {
Name = "WeeklyCycle"
Run = Full 1st sat at 21:00                   # (#04)
Run = Differential 2nd-5th sat at 21:00       # (#07)
Run = Incremental mon-fri at 21:00            # (#10)
}

Sie haben nun alle grundsätzlichen Vorbereitungen abgeschlossen, um gleich mit wenigen Handgriffen den ersten Client in ihr neues Bareos-System aufzunehmen.

Einen Windows Client einrichten

Zur Installation eines Windows-Client (ab Windows 2008 Server oder Windows 7) laden Sie sich auf dem zu sichernden Server die für das Betriebssystem passende Windows-Datei herunter.
Extern: http://download.bareos.org/bareos/release/16.2/windows/

Die Installation starten Sie wie gewohnt mit einem Doppelklick auf die Exe-Datei des Bareos-Installers.

Der Windows-Installer für den Bares-Client unter Windows

Der Windows-Installer für den Bares-Client unter Windows

Standardmäßig ist bei der Windows-Installation lediglich der File-Daemon-Dienst angehakt. Sofern Sie den PC/Server lediglich sichern möchten, ist das auch vollkommen ausreichend.
Die beiden unteren Haken benötigen Sie nur, wenn Sie auf einer Windows-Maschine den Bareos-Director bzw. den Bareos-Storage-Daemon installieren möchten.
Klicken Sie anschließend auf „Next“.

Die richtigen Einstellungen für Bareos unter Windows

Die richtigen Einstellungen für Bareos unter Windows

In der nachfolgenden Maske müssen Sie mindestens bei (1) und (4) den Hostnamen ändern.
Der Reihe nach:
Bei (1) tragen Sie den vollständigen DNS-Hostnamen (fqdn) des Rechners ein auf dem Sie gerade Bareos installieren. Über den einzutragenden DNS-Namen muss der Bareos-Director den Client übers Netz erreichen können.
Die Zeile (2) „Director Name“ mit dem Eintrag „bareos-dir“ lassen Sie so wie sie ist. Ausnahme: Sie haben Ihren Director anders genannt. Dann passen Sie das hier an.
In der Zeile (3) finden Sie das von Bareos vorgeschlagene Passwort. Da es sich hier um ein willkürlich gewähltes Passwort handelt, können Sie das so lassen wie es ist. Das Passwort des Clients wird lediglich zur Kommunikation zwischen Client und Server verwendet. Sie selbst müssen es sich nicht merken.
Bei „Network Address“ (4) geben Sie wieder den vollständigen DNS-Hostnamen (fqdn) des Rechners ein auf dem Sie gerade Bareos installieren.
Klicken Sie nun auf „next“ und speichern Sie bitte unbedingt den Inhalt der letzten Maske ab:

Die fertige Konfig-Datei für den Windows Client von Bareos

Die fertige Konfig-Datei für den Windows Client von Bareos

Die 7 Zeilen Code der Konfiguration speichern Sie am besten zunächst auf dem Rechner unter c:\Install ab.

Bekanntmachen des Windows-Clients im Director

Wichtig: Damit der zentrale Bareos-Director den zu sichernden Client kennt, müssen Sie den Inhalt dieser Datei (inkl. Passwort-String) an der folgenden Stelle abspeichern:
Bareos# cd /etc/bareos/bareos-dir.d/client
Bareos# vi itsc40.itsc.local.conf # Inhalt einfügen, abspeichern
Hinweis: Die Datei muss die Endung *.conf haben. Zur besseren Übersicht empfehle ich die Datei wie den Hostnamen plus die Endung „.conf“ zu nennen. Im Beispiel also „itsc40.itsc.local.conf“.

Erstellen eines Backup-Jobs für den Windows-Client

Der Client ist nun zwar im Director bekannt, allerdings werden noch keine Backups durchgeführt. Eine Backup-JobDefinition für den Windows-Client erstellen Sie folgendermaßen:
Bareos# bconsole

1
2
*configure add job name=itsc40.itsc.local.job client=itsc40.itsc.local jobdefs=DefaultWindows
*quit

Mit dem obigen Befehl erstellen Sie für den Client mit Namen “itsc40.itsc.local” einen Job mit Namen “itsc40.itsc.local.job” und der JobDefinition, die unter “DefaultWindows” abgespeichert ist.

1
2
3
4
5
6
7
8
*configure add job name=itsc40.itsc.local.job client=itsc40.itsc.local jobdefs=DefaultWindows
Created resource config file "/etc/bareos/bareos-dir.d/job/itsc40.itsc.local.job.conf":
Job {
Name = itsc40.itsc.local.job
Client = itsc40.itsc.local
JobDefs = DefaultWindows
}
quit

Rein technisch wird dabei von Bareos eine Text-Datei unter „/etc/bareos/bareos-dir.d/job/“ mit dem Namen itsc40.itsc.local.job.conf abgespeichert. In dieser Datei wird lediglich die Zuordnung von Job-Definition zu Client vorgenommen.

Starten des Backup-Jobs für den Windows-Client

Der Backup-Job wird nun zur nächsten Gelegenheit (siehe Konfiguration) starten. Sofern Sie den Backup-Job sofort laufen lassen möchten, so tun Sie das wie folgt:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Bareos# bconsole
*run job=itsc40.itsc.local.job
Using Catalog "MyCatalog"
Run Backup job
JobName:  itsc40.itsc.local.job
Level:    Incremental
Client:   itsc40.itsc.local
Format:   Native
FileSet:  WindowsAllDrives
Pool:     Incremental (From Job IncPool override)
Storage:  File (From Job resource)
When:     2018-01-03 16:54:57
Priority: 10
OK to run? (yes/mod/no): y
Job queued. JobId=345

Wenn Sie den Status des Backup-Jobs prüfen möchten, so können Sie das entweder in der Web-Gui machen oder über die bareos-Konsole mit dem Kommando „messages“:

1
2
3
4
5
6
7
Bareos# bconsole
*messages
03-Jan 16:54 bareos-dir JobId 345: No prior Full backup Job record found.
03-Jan 16:54 bareos-dir JobId 345: No prior or suitable Full backup found in catalog. Doing FULL backup.
03-Jan 16:55 bareos-dir JobId 345: Start Backup JobId 345, Job=itsc40.itsc.local.job.2018-01-03_16.54.58_36
03-Jan 16:55 bareos-dir JobId 345: Using Device "FileStorage" to write.
quit

Einen Linux-Client einrichten

Installation von Bareos auf Centos

Für Centos müssen Sie zuerst das passende Repository für Bareos herunterladen und nach /etc/yum.repos.de kopieren.

1
2
3
4
yum -y install wget
wget -O /etc/yum.repos.d/bareos-centos7.repo http://download.bareos.org/bareos/release/latest/CentOS_7/bareos.repo
yum -y install bareos-fd
systemctl enable bareos-fd

Hinweis: Für Centos 6 wählen Sie bitte „wget -O /etc/yum.repos.d/bareos-centos6.repo http://download.bareos.org/bareos/release/latest/CentOS_6/bareos.repo“

Die Installation auf Debian / Proxmox

Auf Debian ist bareos bereits in den Standard-Repositories enthalten. Daher können Sie direkt über apt-get den bareos-filedaemon installieren:

1
2
apt-get install bareos-filedaemon
systemctl enable bareos-filedaemon

Linux-Client auf dem Director einrichten

Damit nun der neue Linux-Rechner auch dem Bareos-Director bekannt gemacht wird, müssen wir folgendes auf dem zentralen Bareos-Director ausführen.

1
2
3
bareos# bconsole
*configure add client name=&lt;CLIENT&gt; address=&lt;IP/FQDN&gt; password=&lt;SOME_PASSWORD&gt;
*quit

Hinweis: Ich empfehle beim Client-Namen und bei der Adresse jeweils den FQDN des zu sichernden Servers zu verwenden.
Anmerkung: Die Anlage eines Client in der Web-Gui ist (bis jetzt) leider nicht möglich.

Linux-Client anlegen in der Konsole von Bareos

Linux-Client anlegen in der Konsole von Bareos

Beispiel:

1
2
3
4
5
6
7
8
9
10
11
12
*configure add client name=skisp02.veryhost.de address=skisp02.veryhost.de password=geheim123
Exported resource file "/etc/bareos/bareos-dir-export/client/skisp02.veryhost.de/bareos-fd.d/director/bareos-dir.conf":
Director {
Name = bareos-dir
Password = "[md5]576aa4c2e8948b2a10d21617d3a84085"
}
Created resource config file "/etc/bareos/bareos-dir.d/client/skisp02.veryhost.de.conf":
Client {
Name = skisp02.veryhost.de
Address = skisp02.veryhost.de
Password = geheim123
}

Bareos legt nun die Client-Datei, die Sie gleich auf den Linux-Client kopieren unter „/etc/bareos/bareos-dir-export/client/<clientname>/bareos-fd.d/director/ ab.
Die dort abgelegte Datei „bareos-dir.conf“ kopieren Sie auf den Linux-Client in das Verzeichnis
/etc/bareos/bareos-fd/director
Anschließend starten Sie den bareos-FileDaemon neu.

1
Client# service bareos-fd restart

Backup-Job für den Linux-Server anlegen

Damit anschließend auch wirklich täglich Backups erstellt werden, benötigen wir wie beim Windows-Client auch eine Job-Definition. Diese erstellen Sie ebenfalls über die Bareos-Konsole:

1
2
3
Bareos# bconsole
*configure add job name=&lt;fqdn&gt;.job client=&lt;fqdn&gt;jobdefs=DefaultLinux
quit

Wenn Sie nun nichts weiter tun, dann wird der Backup-Job entsprechend der Backup-Konfiguration während der folgenden Nachstunden starten. Wenn Sie den Backup-Job sofort starten lassen möchten, dann geben Sie folgendes ein:

1
2
Bareos# bconsole
*run job=&lt;clientname&gt;.job

Beantworten Sie die abschließend Frage mit “y“ und schon startet der Backup-Job.

Den Backup-Job für den Linux-Client starten

Den Backup-Job für den Linux-Client starten

Anmerkung:
Sofern einmal eine Job-Definition für einen Client angelegt ist und der Backup-Job läuft, können Sie alle weiteren Aktionen in der Web-Oberfläche von Bareos durchführen.

Fazit zu Bareos

Bareos ist mit einigen kleinen Hürden ein sehr brauchbares Tool zur Sicherung von verteilten Rechnern. Vor allem die Web-Oberfläche macht es den Netzwerk-Admins sehr leicht, die täglichen Jobs für Backup und Restore im Blick zu haben.
Welche Anpassungen Sie an Bareos für eine flächendeckende Nutzung mit vielen Clients vornehmen sollten, behandeln wir im zweiten Teil des Tutorials zur Bareos.

Weiterführende Infos zu Bareos

Weitere Informationen und Sites zu Bareos Online-Backup:

Da Bareos immer noch in viele Einstellung identisch mit Bacula ist, hilft an einigen Stelle auch die Doku von Bcula weiter: Hompage von Bacula
Bücher zu Bacula bzw. Bareos: