AA-123RF-19647839-Sony_Sivanandan-123RF.jpg

© Sony Sivanandan, 123RF

Server im Heimbereich überwachen: Linux Dash und Cockpit

Lebenszeichen

Linux Dash und Cockpit helfen bei der Überwachung von Servern in kleinem und großem Rahmen. Fedoras Cockpit glänzt nicht nur als Monitoring-Lösung, sondern dient auch zum Verwalten von Servern über das Web.

Immer mehr Computernutzer nehmen ihre Cloud-Daten in die eigenen Hände und betreiben zu Hause im lokalen Netz oder bei einem Hoster im Internet ein oder gleich mehrere Server. Gut eingerichtet und mit der richtigen Linux-Distribution ausgestattet, machen solch selbst gehostete Server kaum Arbeit – allerdings ist ein gelegentlicher Blick auf den Status des Systems Pflicht.

Die Dickschiffe der Monitoring-Branche wie Nagios, Icinga oder Munin erlauben das Überwachen komplexer IT-Infrastrukturen und sind dementsprechend aufwendig einzurichten. Für kleine Heimserver oder die vielen Raspberry-Pi-Server, die seit einiger Zeit das Netz bevölkern, wäre solch eine Lösung zu viel des Guten. Hier eignet sich das kleine, auf PHP basierte Werkzeug Linux Dash [1] besser.

Linux Dash

Linux Dash macht sich PHP zunutze und braucht lediglich einen Webserver – im einfachsten Fall Apache, aber auch Nginx [2] funktioniert. Eine dritte Option wäre die auf Javascript basierende Webanwendung Node.js [3] – dieser Abschnitt behandelt jedoch nur die Installation unter Ubuntu Server mit Apache 2.4. Das Vorgehen auf anderen Systemen unterscheidet sich jedoch nur in wenigen Details, egal, ob Sie einen PC-Server, Raspberry Pi oder einen virtuellen Server im Netz betreiben.

Zunächst gilt es, sicherzustellen, dass auf dem Server die benötigten Komponenten laufen. Mit dem ersten Befehl aus Listing 1 aktualisieren Sie die Paketquellen und spielen danach Apache mitsamt PHP5 und Git ein (Zeile 2). Anders als diverse Anleitungen im Netz glauben machen, benötigt Linux Dash keine MySQL-Datenbank. Anschließend begeben Sie sich in das Document Root des Webservers (/var/www/html, bei Apache 2.2 noch /var/www), aus dem der Webserver standardmäßig Webanwendungen ausliefert, und laden den Quellcode dorthin (Zeile 4).

Listing 1

$ sudo apt-get update
$ sudo apt-get install apache2 php5 php5-json git
$ cd /var/www/html
$ sudo git clone https://github.com/afaqurk/linux-dash.git

Laufen Browser und Webserver auf derselben Maschine, dann erreichen Sie Linux-Dash nach der Installation des Webskripts unter der URL http://localhost/linux-dash. Hängt der Server in Ihrem Heimnetz oder dem Internet, dann ersetzen Sie das localhost durch die IP-Adresse oder den Hostnamen des fraglichen Rechners. Erscheint die Seite trotz korrekter Adressangabe nicht, fehlen PHP eventuell die richtigen Einstellungen (siehe Kasten "Shell-Exec").

Shell-Exec

Falls Apache den Aufruf von Linux Dash lediglich mit einer Fehlermeldung quittiert, dann kontrollieren Sie die PHP-Einstellungen in der Datei /etc/php5/apache2/php.ini. Öffnen Sie diese mit Root-Rechten in einem beliebigen Editor und stellen Sie sicher, dass die Zeile disable_functions nicht die Funktionen exec und shell_exec ausführt. Nach einem Neustart des Webservers mittels sudo service apache2 restart sollte die Seite funktionieren.

Schotten dicht

Ein erster Blick genügt in der Regel für einen Funktionstest. Lässt sich der Server aus dem Internet erreichen, sollten Sie aus Sicherheitsgründen umgehend den Zugriff auf Linux Dash limitieren (siehe Kasten "Sicherheit"): Da die Anwendung selbst über keine Nutzerverwaltung verfügt, müssen Sie den Webserver mit dieser Aufgabe betreuen.

Sicherheit

Aus Sicherheitsgründen verbesserungswürdig erscheint bei Linux Dash die Verwendung der PHP-Funktion shell_exec(), die auf der Shell einen Befehl ausführt und die Ausgabe als Zeichenkette zurückgibt, die dann Linux Dash wieder per PHP weiterverarbeitet. Verschafft sich ein Eindringling Zugriff auf den Server, kann er dies als Einfallstor für weitere Hacks verwenden, da ihm die Funktion Ausführungsrechte für eingeschmuggelten Code gibt. Achten Sie deshalb immer darauf, stets die neueste PHP-Version zu verwenden.

Bearbeiten Sie dazu je nach Distribution und Apache-Version mit Root-Rechten die default.conf beziehungsweise 000-default.conf in /etc/apache2/sites-available/ und fügen Sie vor dem abschließenden </VirtualHost> am Ende der Datei mit einem Editor den Inhalt aus Listing 2 ein. Passen Sie dabei in der Directory-Zeile den Pfad zu Ihrer Installation der Linux Dash an.

Listing 2

<Directory <i class="replaceable">/var/www/html/linux-dash>
  Options FollowSymLinks
  AllowOverride All
  Order allow,deny
  allow from all
</Directory>

Anschließend legen Sie im Linux-Dash-Verzeichnis auf dem Webserver (/var/www/html/linux-dash) die Datei .htaccess mit dem Inhalt aus Listing 3 an. Zu guter Letzt erzeugen Sie im selben Verzeichnis die Passwort-Datei .htpasswd (Listing 4, Zeile 1) und starten Apache einmal durch (Zeile 2). Beim nächsten Aufruf von Linux Dash im Browser müsste die Anwendung dann die Login-Daten abfragen.

Listing 3

AuthType Basic
AuthName "Linux Dash"
AuthUserFile .htpasswd
Require valid-user

Listing 4

$ sudo htpasswd -c .htpasswd User
$ sudo service apache2 restart

Linux Dash dient nun der Überwachung von vitalen Lebenszeichen Ihres Servers. Das Menü am Kopf der Seite unterteilt diese in die Kategorien System Status, Basic Info, Network, Accounts und Apps. Unter System Status sehen Sie auf einen Blick die Auslastung von CPU und RAM (Abbildung 1) sowie die Partitionierung der Festplatten. Basic Info zeigt Angaben zum verwendeten Betriebssystem, technische Daten zur CPU, die genaue Speicherbelegung sowie geplante Cron-Jobs (Abbildung 2).

Abbildung 1: Der System Status von Linux Dash verschafft Ihnen einen Überblick über den Rechner.
Abbildung 2: Basic Info vertieft die angezeigten Informationen mit zusätzlichen Details zum System.

Der Link Network gibt Aufschluss über Netzwerk-Devices, bestehende Verbindungen, Ping-Zeiten, Bandbreite und Internet-Geschwindigkeit. Unter Accounts listet Linux Dash die auf dem System angemeldeten Nutzer mit deren letzten Anmeldezeiten sowie die Systemkonten auf. Apps schließlich zeigt einige gängige Anwendungen, deren Installationsstatus sowie den Ort im Verzeichnisbaum, in dem die Binärdatei dazu liegt.

Weitere Karten zeigen Inhalte erst nach der Installation zusätzlicher Programme oder Dienste an. Für die NoSQL-Datenbank Redis oder den Memcache-Daemon gibt es bereits entsprechende Links. Die Anzeigen der einzelnen Karten lassen sich, wo sinnvoll, alle einzeln aktualisieren. Auf einigen Karten finden Sie oberhalb der Anzeige ein Suchfeld, um die angezeigten Informationen zu filtern.

Offiziell getestet und unterstützt wird der Einsatz von Linux Dash unter Arch, Debian (ab Version 6), Ubuntu (ab 11.04), Linux Mint (ab Version 16) und CentOS (ab Version 5). Es spricht aber nichts dagegen, die Dash auch unter anderen Linux-Distributionen einzusetzen. In Zukunft sieht der Plan für Linux Dash 2.0 neben einer saubereren Aufteilung der Codeteile auch die Portierung nach Python vor.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 4 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Open-IT-Cockpit, eine freie Monitoring-Lösung

    Der Dienstleister IT-Novum GmbH hat unter dem Namen Open-IT-Cockpit ein Framework für die Systemüberwachung freigegeben. Das Cockpit integriert die Monitoring-Software Nagios und weitere Open-Source-Tools.
  • Teile und herrsche
    Mit Fedora 21 teilt sich Red Hats Community-Distribution in drei spezialisierte Varianten auf. Das erlaubt Entwicklern wie Anwendern, besser auf die jeweilige Aufgabe zu fokussieren.
  • Beta 1 von Ubuntu 12.10
    Gestern Abend erschien die erste Beta-Version von Ubuntu 12.10, das den Codenamen "Quantal Quetzal" trägt. Der exotische Vogel trägt bereits jetzt einige Neuerungen unter dem Gefieder.
  • Angetestet
    Schlanker Webserver Filed 1.20, System-Info-Tool Neofetch 1.8, Dokumentenverwaltung Zeal 0.3.1, Echtzeit-Komprimierer Zstd 1.1.0.
  • Der alte und neue Desktop von Ubuntu
    Ubuntu setzt mit dieser Version zum ersten Mal auf die Eigenentwicklung Unity als Standard-Desktop. Dieser Artikel stellt die grafische Oberfläche vor und zeigt, wie Sie sich vom klassischen Gnome unterscheidet.
Kommentare

Infos zur Publikation

LU 11/2017: Server für Daheim

Digitale Ausgabe: Preis € 8,50
(inkl. 19% MwSt.)

LinuxUser erscheint monatlich und kostet 5,95 Euro (mit DVD 8,50 Euro). Weitere Infos zum Heft finden Sie auf der Homepage.

Das Jahresabo kostet ab 86,70 Euro. Details dazu finden Sie im Computec-Shop. Im Probeabo erhalten Sie zudem drei Ausgaben zum reduzierten Preis.

Bei Google Play finden Sie digitale Ausgaben für Tablet & Smartphone.

HINWEIS ZU PAYPAL: Die Zahlung ist ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!

Stellenmarkt

Aktuelle Fragen

Lieber Linux oder Windows- Betriebssystem?
Sina Kaul, 13.10.2017 16:17, 3 Antworten
Hallo, bis jetzt hatte ich immer nur mit
IT-Kurse
Alice Trader, 26.09.2017 11:35, 2 Antworten
Hallo liebe Community, ich brauche Hilfe und bin sehr verzweifelt. Ih bin noch sehr neu in eure...
Backup mit KUP unter Suse 42.3
Horst Schwarz, 24.09.2017 13:16, 3 Antworten
Ich möchte auch wieder unter Suse 42.3 mit Kup meine Backup durchführen. Eine Installationsmöglic...
kein foto, etc. upload möglich, wo liegt mein fehler?
kerstin brums, 17.09.2017 22:08, 5 Antworten
moin, zum erstellen einer einfachen wordpress website kann ich keine fotos uploaden. vom rechne...
Arch Linux Netzwerkkonfigurationen
Franziska Schley, 15.09.2017 18:04, 0 Antworten
Moin liebe Linux community, ich habe momentan Probleme mit der Einstellung des Lan/Wlan in Arc...