Konfiguration der Bloonix-WebGUI
Die Konfiguration der Bloonix-WebGUI liegt in der Datei /etc/bloonix/webgui/main.conf.
Parameter: app_name
Standard: nicht gesetzt
Dieser Parameter wird vom MVC Framework bloonix.heaven benötigt um den Pfad zur Applikation zu finden. Der Parameter sollte nicht geändert werden, es sei du weißt was du machst.
Parameter: user, group
Standard: bloonix
Die Bloonix-WebGUI läuft standardmäßig unter dem Benutzer und der Gruppe bloonix.
Sektion: app
In dieser Sektion werden die Parameter für die Interaktion mit dem Browser und der Bedienoberfläche der WebGUI gesetzt.
Parameter session_expire_time
Standard: 3h
Nach welcher Zeit soll die Session eines eingeloggten Benutzers automatisch ablaufen.
Parameter: session_refresh_time
Standard: 10m
Die Laufzeit einer Session wird nicht bei jeder HTTP Anfrage erneuert. Hier kann festgelegt werden, nach welcher Zeit die Laufzeit erneuert werden soll.
Parameter: cookie_secure
Standard: True
Soll das Attribut Secure für Session Cookies gesetzt werden.
Parameter: cookie_http_only
Soll das Attribut HttpOnly für Session Cookies gesetzt werden.
Parameter: add_header
Standard: nicht gesetzt
Hier können HTTP Header gesetzt werden, z.B.
add_header X-Content-Type-Options nosniff
add_header Strict-Transport-Security max-age=63072000
add_header X-Frame-Options SAMEORIGIN
add_header Content-Security-Policy default-src 'self'; style-src 'unsafe-inline' 'self'; img-src 'self' data:;
login_logger
Standard: nicht gesetzt
Über die Sektion login_logger können fehlerhafte Loginversuche per E-Mail versendet werden. Wenn die Parameter smtp_host, smtp_username oder smtp_password nicht gesetzt sind, dann wird die Mail standardmäßig via SMTP localhost:25 versendet. Die Parameter mail_from und mail_to sind Plicht.
login_logger {
smtp_host hostname
smtp_username username
smtp_password password
mail_from address@test.example
mail_to address@test.example
}
2fa_mail_from + 2fa_command
Wichtiger Hinweiß: Nur einer der beiden Parameter kann in der Konfiguration gesetzt werden. Werden beide Parameter gesetzt, dann kann die WebGUI nicht mehr gestartet werden und es wird ein Fehler produziert.
2fa_mail_from
Standard: nicht gesetzt
Die WebGUI unterstützt Zwei-Faktor-Authentifzierung per E-Mail. Es kann notwendig sein, hier eine gültige Absenderadresse einzutragen, damit der Versand korrekt funktioniert. Die Empfängeradresse wird in der Benutzerverwaltung in der WebGUI eingetragen. Bitte vergiss nicht den MTA korrekt einzurichten.
Zusätzliche Parameter: 2fa_smtp_host, 2fa_smtp_username, 2fa_smtp_password. Wenn keiner der Parameter gesetzt ist, dann wird die Mail via SMTP localhost:25 versendet.
2fa_command
Standard: nicht gesetzt
Neben dem Parameter 2fa_mail_from ist es möglich ein eigenes Skript für die Zwei-Faktor-Authentifizierung zu verwenden. Damit hättest du die Möglichkeit, jeden beliebigen 2FA Service anzubinden. Nehmen wir als Beispiel folgende Konfiguration:
2fa_command /usr/local/bin/mein-2fa-skript
Nach einem Neustart der WebGUI ist der Parameter aktiv. Die Empfängeraddresse wird in der Benutzerverwaltung in der WebGUI eingetragen. Beim nächsten Login wird das Skript mit folgenden Parametern aufgerufen:
/usr/local/bin/mein-2fa-skript <<EOT
{
"2fa_code": $code,
"2fa_addr": $address,
"username": $username,
"name": $name,
"language": $language
}
EOT
Die Daten des Benutzers, der sich einloggen möchte werden zusammen mit dem Authcode im JSON Format an STDIN des Skripts übergeben. Nun kannst du in dem Skript den Versand des Authcodes an den Benutzer selbst managen.
Section: logger
Logging is defined in the logger section.
The following levels are available:
- emergency
- alert
- critical
- error,
- warning
- notice
- info
- debug
The following patterns are available:
%L Log level
%T Timestamp
%P PID
%H Hostname
%U User name
%G Group name
%N Newline
%S Program name
%C Caller - filename and line number
%r Runtime in seconds since program start
%t Time measurement - the time since the last call of log()
%m Message
Sektion: model
In diesen Sektionen wird der Zugang zu den Datenbanken konfiguriert. Im Datastore liegen lediglich die Metriken.
Sektion: db, ds
Parameter: host
Parameter: port
Parameter: database
Parameter: user, password
Es ist empfehlenswert die Konfiguration in den dafür vorgesehenen Dateien abzulegen, da neben der Bloonix-WebGUI noch andere Tools auf die Konfigurationsdateien zugreifen, wie zum Bespiel das Backupskript für den Datastore oder der Importer für Plugins.
- /etc/bloonix/database/main.conf
- /etc/bloonix/datastore/main.conf
Beide Dateien werden dann in der Konfiguration der Bloonix-WebGUI inkludiert.