Passwort vergessen?

Benutzername vergessen?

Alles rund um IT, Web und Entwicklung.
Von Nutzern für Nutzer.

Raspcontrol Webinterface auf dem Raspberry Pi



Mit Raspcontrol gibt es für das Raspberry Pi ein kleines Webinterface auf welchem sich CPU Temperatur und Auslastung, Dienste und Speicherverbrauch des Raspberry Pi einsehen lassen.



Gerade beim Einsatz als kleiner Server ist das Tool äußerst praktisch und verbraucht dabei zusammen mit dem Webserver und PHP auch kaum Ressourcen.


Vorbereitungen


Zunächst müssen wir die benötigten Paket installieren.

sudo apt-get install git

Raspcontrol benötigt des weiteren einen Webserver mit PHP. Hier bietet sich der schlanke Webserver Nginx an dessen Installation und Konfiguration ebenfalls hier beschrieben sind.


Installation


Vor der Installation begeben wir uns in den Document Root von Nginx und laden die neueste Version von Raspcontrol aus dem Github Repository herunter.

cd /usr/share/nginx/www
git clone https://github.com/imjacobclark/Raspcontrol.git raspcontrol



Konfiguration


Zur Anmeldung müssen wir nun noch unseren gewünschten Benutzername und das Passwort hinterlegen. Hierzu wird zunächst eine neuer Ordner /etc/raspcontrol erstellt.

In diesem legen wir die Datei database.aptmnt an und passen die Rechte an.

mkdir /etc/raspcontrol
nano /etc/raspcontrol/database.aptmnt


Innerhalb der Datei werden Benutzername und Passwort definiert.

{
   "user":       "admin",
   "password":   "foxplex"
}


Anschließend werden dem Benutzer unter dem der Webserver läuft die Rechte auf die Datei gewährt.

chown www-data /etc/raspcontrol/database.aptmnt
chmod 740 /etc/raspcontrol/database.aptmnt


Jetzt können wir über die IP Adresse des Raspberry Pi auf das Webinterface zugreifen.

http://192.168.1.121/raspcontrol



URL Rewriting


Dieser Schritt ist Optional um "schönere" URLs zu erhalten. Hierzu muss die Konfiguration von Nginx angepasst werden.

sudo nano /etc/nginx/sites-enabled/default

Hierzu hängen wir innerhalb des server{} Blocks am Ende die nachfolgende Konfiguration an.

location /raspcontrol/ {
   rewrite ^/raspcontrol/details$ /raspcontrol/index.php?page=details last;
   rewrite ^/raspcontrol/services$ /raspcontrol/index.php?page=services last;
   rewrite ^/raspcontrol/disks$ /raspcontrol/index.php?page=disks last;
   rewrite ^/raspcontrol/logout$ /raspcontrol/login.php?logout last;
}


Um die Konfiguration zu Übernehmen wird die Konfigurationsdatei von Nginx mit nachfolgendem Befehl neu eingelesen.

service nginx reload

Zum Abschluss müssen wir Raspcontrol noch auf die neuen URLs umstellen. Hierzu die Datei /usr/share/nginx/www/raspcontrol/config.php editieren.

$rewriting = true;



Fazit


Raspcontrol ist ein sehr einfaches und praktisches Tool. Die Konfiguration ist sehr übersichtlich und vor allem gut dokumentiert. Wer mit dem Monitoring noch weiter gehen möchte kann das Gerät auch per SNMP mit Icinga überwachen.

Michael Kostka

Fachinformatiker / Systemintegration
Ich schreibe hier regelmäßig zu den Themen Android, Web, Linux und Hardware.

Raspberry Pi Starter Kit
DataCloud

Hinterlasse einen Kommentar

Ich habe die Datenschutzerklärung zur Kenntnis genommen und stimme einer elektronischen Speicherung und Verarbeitung meiner eingegebenen Daten zur Beantwortung der Anfrage zu.

Michael Kostka

28.02.2014 08:34

Hallo Marcus,

danke für den Hinweis. Habe es im Artikel korrigiert.
Solch kleine Fehler können einen wahnsinnig machen.

Viele Grüße
Michael

Marcus Penzer

27.02.2014 21:41

Hallo mir sind zwei kleine aber doch kritische Fehler aufgefallen die vor allem Neulingen zu schaffen machen können.

Und zwar einmal, hattest du vergessen in der "database.aptmnt" zwischen "admin" und "password" ein komma zu setzen.

So sollte es eigentlich aussehen:
{
"user": "admin",
"password": "foxplex"
}


Und der zweite Fehler ist dir bei den URL Rewritings passiert, da du da ein paar Leerzeichen vergessen hast.
Und zwar bei "services" und "disks".

So sollte es aussehen:

location /raspcontrol/ {
rewrite ^/raspcontrol/details$ /raspcontrol/index.php?page=details last;
rewrite ^/raspcontrol/services$ /raspcontrol/index.php?page=services last;
rewrite ^/raspcontrol/disks$ /raspcontrol/index.php?page=disks last;
rewrite ^/raspcontrol/logout$ /raspcontrol/login.php?logout last;
}

Liebe Grüße
Marcus