[[Vorlage(Archiviert, )]]
{{{#!vorlage Wissen
[:Pakete_installieren: Installation von Programmen]
[:sudo: Administratorrechte mit sudo erlangen]
[:Packprogramme: Ein Archiv entpacken]
[:Terminal: Ein Terminal öffnen]
[:Editor: Einen Editor öffnen]
}}}
[[Inhaltsverzeichnis(2)]]
[github:bjd/vnstat-php-frontend vnStat PHP:frontend] {en} bereitet die vom Netzwerkmonitor [:Netzwerk-Monitoring#Vnstat:vnStat] gesammelten Daten auf und liefert als Ergebnis übersichtliche Berichte. Ein Beispiel:
[[Bild(./vnstat_sample_report.jpg, 380)]]
= Voraussetzungen =
Das Programm setzt einen Webserver mit PHP-Unterstützung (inklusive der Bibliothek '''php5-gd''') voraus. Weitere Informationen zur Installation finden sich in den Artikeln:
* [:Apache:]
* [:PHP:]
Darüber hinaus muss das Programm installiert [1] sein, das die Daten zum Netzwerkverkehr liefert:
{{{#!vorlage Paketinstallation
vnstat, universe
}}}
= Installation =
Das Archiv '''[github:bjd/vnstat-php-frontend/archive/master.tar.gz:vnstat-php-frontend-master.tar.gz]''' {dl} kann von der [https://github.com/bjd/vnstat-php-frontend Projektseite] heruntergeladen werden. Anschließend muss das Paket mit Root-Rechten [2] nach '''/usr/share/vnstat-php''' entpackt werden [3].
[[Vorlage(Fremd, Software, "")]]
##aasche: ueberfluessig -> siehe Wissensblock
##{{{#!vorlage Befehl
##sudo tar xz -f vnstat-php-frontend-master.tar.gz -C /usr/share/vnstat-php vnstat-php-frontend-master
##}}}
= Konfiguration =
Da neben der eigentlichen Konfiguration des Frontends auch eine Apache-Konfiguration benötigt wird, sollte zunächst ein zentrales Konfigurationsverzeichnis unter '''/etc/vnstat-php''' angelegt werden. Anschließend sollte die '''config.php''' des Frontends dorthin verschoben werden und als Ersatz eine symbolische Verknüpfung angelegt werden [4]:
{{{#!vorlage Befehl
sudo mkdir /etc/vnstat-php
sudo mv /usr/share/vnstat-php/config.php /etc/vnstat-php/config.php
sudo ln -s /etc/vnstat-php/config.php /usr/share/vnstat-php/config.php
}}}
== Frontend konfigurieren ==
Nun muss die Datei '''/etc/vnstat-php/config.php''' entsprechend angepasst [5] werden. Die wichtigsten Abschnitte im Einzelnen:
=== Sprache ===
Der Konfigurationseintrag lautet:
{{{
$locale = 'de_DE.UTF-8';
$language = 'de';
}}}
=== Netzwerkschnittstelle ===
Welche Netzwerkschnittstellen überwacht werden sollen. Um beispielsweise die Schnittstellen `eth0` und `wlan0` zu überwachen:
{{{
$iface_list = array('eth0', 'wlan0');
}}}
Soll der für die Netzwerkschnittstellen angezeigte Name geändert werden, kann dies im Anschluss geschehen. Eine Benennung der Netzwerkschnittstellen ist jedoch optional. Um beispielsweise die Schnittstelle `eth0` als `LAN-Verbindung` und `wlan0` als `WLAN` zu bezeichnen:
{{{
$iface_title['eth0'] = 'LAN-Verbindung';
$iface_title['wlan0'] = 'WLAN';
}}}
== Apache konfigurieren ==
Nun muss noch der Apache-Webserver konfiguriert werden. Hierzu legt man die Datei '''/etc/vnstat-php/apache.conf''' an und trägt dort die folgenden Daten ein:
=== Verzeichnis ===
Um das Frontend auf dem Webserver unter `http://localhost/vnstat` verfügbar zu machen, muss in die Konfiguration das Folgende eingetragen werden:
{{{
Alias /vnstat /usr/share/vnstat-php
}}}
=== Grundlegende Konfiguration ===
Als Basis-Konfiguration sollte, zusätzlich zur obigen `Alias`-Direktive, folgendes hinzugefügt werden:
{{{
Options FollowSymLinks
AllowOverride None
Require all granted
php_admin_flag engine On
php_admin_value open_basedir "/usr/share/vnstat-php/:/etc/vnstat-php/"
}}}
=== Zugang mit einem Passwort schützen ===
Soll der Zugang mit einem Passwort geschützt werden, kann dies mit `htpasswd` geschehen. Zur Verwaltung der Login-Daten liefert Apache ein praktisches Hilfsprogramm mit:
{{{#!vorlage Befehl
htpasswd -c /etc/vnstat-php/htpasswd -s BENUTZERNAME
}}}
Nach dem zu verwendenden Passwort wird automatisch gefragt. Soll mehr als ein Benutzer hinzugefügt werden, muss `-c` weggelassen werden. Soll ein Benutzer gelöscht werden, kann statt `-c` der Schalter `-D` verwendet werden.
Anschließend muss innerhalb von `` ein neuer Abschnitt eingefügt werden:
{{{
AuthType Basic
AuthName "vnStat"
AuthUserFile /etc/vnstat-php/htpasswd
Require valid-user
}}}
=== Zugang bestimmten Benutzern erlauben/verbieten ===
Hierzu muss in der '''apache.conf''' die Zeile `Require` angepasst werden. Um den Zugang beispielsweise nur vom lokalen Rechner zu erlauben, kann Folgendes verwendet werden. Für andere Einstellungen siehe die [https://httpd.apache.org/docs/2.4/howto/access.html Konfiguration von Apache] {en}.
{{{
Require local
}}}
=== Seite automatisch neu laden ===
Soll die Seite regelmäßig neu geladen werden, beispielsweise alle 5 Minuten (300 Sekunden), muss der '''apache.conf''' innerhalb von `` das Folgende hinzugefügt werden:
{{{
ExpiresActive On
ExpiresDefault M300
}}}
= Links =
* [github:bjd/vnstat-php-frontend:Projektseite] {en}
* [sourceforge:jsvnstat:jsvnstat - interactive network traffic analysis] {en} - Alternative, benötigt kein PHP (JavaScript)
* [:vnStat:] - Hauptartikel
* [:Netzwerk-Monitoring:] {Übersicht} Übersichtsartikel
#tag: Netzwerk, Internet, System, Server