Meeting Room Booking System (MRBS): Installation für Linux (Ubuntu 22.04/Debian 12)

In diesem Artikel zeige ich euch, wie man das Open-Source Raumbuchungssystem MRBS auf einem Server mit Linux Ubuntu 22.04 bzw. Debian 12 installieren kann. Nach erfolgreicher Installation kann die Software über den Browser bedient werden, um die Vermietung und Buchung von Räumen, Pensionen oder Fahrzeugen an einem Ort zu verwalten. Die Nutzung ist kostenlos, und die Buchungssoftware lässt sich sehr einfach und intuitiv bedienen.

Inhaltsverzeichnis: Installation und Einrichtung des Meeting Room Booking Systems (MRBS)

Voraussetzungen und Aktualisierungen

Zuerst wird ein frisches Hostsystem mit einer installierten und aktualisierten Linux Ubuntu 22.04 oder alternativ Debian 12 Distribution benötigt. Für eine einwandfreie Verwendung empfehle ich mindestens 2 Kerne und 3 GB Arbeitsspeicher, wenn ihr das System in einer virtuellen Maschine betreiben möchten.

Das System und die Paketquellen aktualisieren:

apt-update -y && apt-upgrade -y

Installation eines Webservers (Apache) und PHP für MRBS

Die Raumbuchungssoftware MRBS erfordert einen Webserver im Hintergrund, der die Webanwendung bereitstellt, sowie PHP mit den erforderlichen Modulen, um Termine einzutragen und in die Datenbank zu schreiben.

Installation des Webservers Apache:

apt install apache2

Installation von PHP über das offizielle Repository:

apt install software-properties-common
add-apt-repository ppa:ondrej/php

Paketquellen einlesen:

apt update -y

PHP, Datenbank (MariaDB) und erforderliche Module installieren:

apt install php8.1 libapache2-mod-php8.1 php8.1-zip php-dompdf php8.1-xml php8.1-mbstring php8.1-gd php8.1-curl php8.1-imagick libmagickcore-6.q16-6-extra php8.1-intl php8.1-bcmath php8.1-gmp php8.1-cli php8.1-mysql php8.1-zip php8.1-gd php8.1-mbstring php8.1-curl php-pear php8.1-apcu redis-server php8.1-redis php8.1-xml mariadb-server

Herunterladen der neuesten Version des Meeting-Room-Booking-Systems (MRBS) von GitHub (Klonen):

cd /var/www/html/

In das neue Verzeichnis navigieren:

cd mrbs-code

Das Webverzeichnis in das Webserver-Ausgabeverzeichnis kopieren:

cp -r web /var/www/html

cd /var/www/html

Benenne das Verzeichnis um:

mv web mrbs

An diesem Punkt sind die Vorbereitungen abgeschlossen und die grundlegende Struktur für das Raumbuchungssystem steht. Fahre im nächsten Abschnitt mit der Installationsanleitung fort.

Installation und Einrichtung von MariaDB (MySQL)

Das Raumbuchungssystem (MRBS) erfordert eine Datenbank zur Speicherung von Buchungsdaten. Hierbei empfiehlt es sich, PostgreSQL oder eine MySQL-Datenbank zu installieren. In dieser Anleitung entscheiden wir uns für die Open-Source-Datenbank MariaDB.

MariaDB installieren:

mysql_secure_installation

Zuerst muss ein Passwort für das Root-Benutzerkonto festgelegt werden. Bei der sicheren Installation der Datenbank müssen noch einige Fragen beantwortet werden:

Antwort 1: N

Antwort 2: N

Antwort 3: Y

Antwort 4: Y

Antwort 5: Y

Antwort 6: Y

Zusammenfassung der gegebenen Antworten: In der Regel können alle Antworten übernommen werden, da sie letztlich dazu dienen, eine sichere und saubere Datenbank zu erhalten. Dabei wird das Remote-Log-in als Root-Benutzer deaktiviert und vorhandene Testdatenbanken, sowie Benutzer werden vollständig entfernt. Sobald die Fragen nacheinander beantwortet wurden, können wir uns mit der MySQL-Shell verbinden und die Installation eines Datenbank-Benutzers, einer Datenbank und der Tabellen vornehmen.

Anmeldung an der MariaDB-Shell:

mysql -u root -p

Einen Datenbank-Benutzer anlegen:

CREATE USER 'mrbs'@'localhost' identified by 'mrbs';

Eine neue Datenbank erstellen:

CREATE DATABASE mrbs;

Die Datenbank selektieren:

USE mrbs;

Importiert jetzt die vordefinierten Tabellen aus dem geklonten GitHub-Verzeichnis in die Datenbank:

source /var/www/html/mrbs-code/tables.my.sql;

Überprüfe nun die Existenz der Tabellen (Siehe Grafik):

SHOW TABLES;
MRBS-Installation der Datenbank

Weise dem Datenbank-Benutzer „mrbs“ die erforderlichen Berechtigungen zur Verwaltung der Datenbank zu:

GRANT ALL PRIVILEGES ON mrbs.* TO 'mrbs'@'localhost';

Änderungen wirksam machen:

FLUSH PRIVILEGES;

Datenbank-Modus verlassen:

quit;

Konfiguration des Webservers und Berechtigungen erteilen

Um dem Webserver mitzuteilen, welche Webseite er ausliefern soll, müssen Berechtigungen für das Webverzeichnis vergeben und eine Virtual Host-Konfigurationsdatei mit den erforderlichen Informationen erstellt werden.

Berechtigungen für den Webserver erteilen:

chown -R www-data:www-data /var/www/html/mrbs
chmod -R 755 /var/www/html/mrbs

Eine Virtualhostdatei für die Webseitenausgabe erstellen:

nano /etc/apache2/sites-available/mrbs.conf

Kopiere den folgenden Inhalt und fügen ihn in die Datei ein. Ergänze die E-Mail-Adresse des ServerAdmins und den ServerNamen. Die übrige Konfiguration ist bereits von mir auf die Installation angepasst worden.

Kopieren und einfügen:

<VirtualHost *:80>
     ServerAdmin admin@example.com
     DocumentRoot /var/www/html/mrbs
     ServerName example.com
     ErrorLog /var/log/apache2/mrbs-error.log
     CustomLog /var/log/apache2/mrbs-access.log combined

    <Directory /var/www/html/mrbs/>
    Options +FollowSymlinks
    AllowOverride All
        Require all granted
     SetEnv HOME /var/www/html/mrbs
     SetEnv HTTP_HOME /var/www/html/mrbs
     <IfModule mod_dav.c>
        Dav off
        </IfModule>
    </Directory>
</VirtualHost>

Speichern Sie die Änderungen mit [Strg+S] und verlassen Sie den Editor mit [Strg+X]. Damit die Ausgabe der Webseite funktioniert und Komplikationen vermieden werden, deaktivieren wir die Apache-Defaultsite und aktivieren die soeben erstellte Konfiguration.

Defaultsite deaktivieren:

a2dissite 000-default.conf

MRBS-Webseite aktivieren:

a2ensite mrbs.conf

Konfiguration von PHP und Einfügen der Datenbankinformationen

Jetzt, da die Datenbank eingerichtet ist und der Webserver erfolgreich für die Ausgabe des Open-Source Raumbuchungssystems vorkonfiguriert wurde, werden noch einige Einstellungen in der PHP-Konfigurationsdatei vorgenommen.

Zunächst müssen wir wieder in das Verzeichnis der Webseite navigieren:

cd /var/www/html/mrbs

Beispielkonfiguration kopieren:

cp config.inc.php-sample config.inc.php

Verwende den Editor nano und füge die nachfolgenden Einträge hinzu:

nano config.inc.php

Konfiguration:

$timezone = "Europe/Berlin";
$db_database = "mrbs";
$db_login = "mrbs";
$db_password= 'mrbs';
$db_tbl_prefix = "mrbs_";

Hinweis: Das sind die Zugangsdaten für die Datenbank. Solltest Du andere Namen und Passwörter während der Installation und Einrichtung der Datenbank verwendet haben, müssen diese Zugangsdaten manuell eingetragen, genauer gesagt korrigiert werden.

Speichere die Änderungen mit [Strg+S] und verlasse die Datei mit [Strg+X]. Jetzt muss der Webserver einmal neu gestartet werden, damit auch alle Änderungen wirksam werden und die Webseite für das Buchungsmanagement ausgegeben werden kann. Anschließend säubern wir das Verzeichnis, indem wir die alten Installationsdateien aus dem HTML-Ordner entfernen. Das ist sicherheitsrelevant.

Apache neustarten:

systemctl reload apache2

Navigiere in das HTML-Verzeichnis:

cd /var/www/html

Rekursives löschen der nicht mehr benötigten Installationsdateien:

rm -r mrbs-code

Installation von MRBS abgeschlossen: Webseite im Browser öffnen

An diesem Schritt ist die serverseitige Installation von MRBS (Meeting Room Booking System) erfolgreich abgeschlossen. Verwende nun einen beliebigen Webbrowser von einem Client aus demselben lokalen Netzwerk, um auf die Webanwendung zuzugreifen. Der Zugriff kann über die IP-Adresse oder den Hostnamen des Systems erfolgen.

Beispiel für die IP-Adresse zum Zugriff auf die Weboberfläche:

http://192.168.1.210/
Konto für das Raumbuchungssystem erstellen

Wie üblich in meinen Anleitungen, bin ich immer ziemlich gründlich. Deshalb folgen nun die ersten Schritte zur Inbetriebnahme des Raumbuchungssystems. Beginne damit, einen Benutzer anzulegen. Dieser Benutzer wird gleichzeitig das Administrator-Konto sein. Fülle die erforderlichen Felder aus und verwende ein sicheres Passwort. Klicke dann auf die Schaltfläche „Speichern“.

Benutzer in der MRBS-Weboberfläche anlegen

Für die Raumbuchung empfehle ich, ein weiteres normales Konto ohne Adminrechte zu verwenden. Erstelle bei Bedarf für jeden Mitarbeiter einen eigenen Benutzer. Dieser Schritt ermöglicht es später, nachzuvollziehen, welche Person für welche Buchung verantwortlich ist. Es gibt auch ein paar Benutzerrollen, die relativ selbsterklärend sind. Nach der Benutzererstellung können Bereiche und Räume angelegt werden.

Bereiche und Räume unter Meeting Room Booking System (MRBS) hinzufügen

Dies erfolgt über den Menüpunkt „Räume“. Bereiche könnten etwa Hotelzimmer, verschiedene Pensionen, Ferienwohnungen und vieles mehr umfassen. Theoretisch wäre die Software genauso gut für die Fahrzeug- oder Gegenstandvermietung geeignet. 

Erlaubt ist immer das, was funktioniert. Neben den Zimmernamen gibt es auch Felder für die Kapazität und eine Beschreibung. Wenn es verschiedene Raumadministratoren gibt, können unterschiedliche E-Mail-Adressen hinterlegt werden. Dadurch wird die Verwaltbarkeit der Räume besser geregelt.

Hier habe ich zur Demonstration einige Räume in das System eingepflegt. Für den Monat April gibt es logischerweise noch keine Buchungen, da wir das System gerade erst in Betrieb genommen haben. Für den Monat Mai habe ich einige Räume an verschiedene Demo-Kunden gebucht. Die Übersichtlichkeit ist perfekt. Man könnte am Telefon sofort zusagen oder absagen, ohne lange Tabellen durchsuchen zu müssen. Die Termin-Koordination funktioniert ausgezeichnet.

Eine Buchung kann erfolgen, indem wir auf einen bestimmten Tag klicken. Anschließend können alle erforderlichen Daten eingetragen werden (siehe Bild aus der MRBS-Weboberfläche).

Eine Buchung vornehmen

Was ich besonders hervorheben möchte, ist, dass es zu keiner Zeit zu Doppelbuchungen kommen kann. Das Programm erkennt automatisch, wenn es zu Konflikten in der Planung kommen würde. Wenn ein Benutzer versucht, einen Raum zur selben Zeit an unterschiedliche Personen zu buchen, erkennt das System eine zeitliche Überschneidung und gibt eine Warnung aus.

Doppelbuchung ist mit dieser Software nicht möglich

Zusammenfassung und Empfehlungen für die kostenlose Raumbuchungssoftware

Abschließend möchte ich meine persönliche Meinung zur Installation und zur Software selbst äußern. Die Software ist simpel und konzentriert sich auf das Wesentliche. Es gibt zwar Kalender-Synchronisationen, aber ich habe mich damit nicht ausführlich beschäftigt. Dennoch ist sie benutzerfreundlich und einfach zu verstehen, besonders für Personen, die nicht versiert im Umgang mit moderner EDV sind. 

Wenn die Webanwendung für Raumbuchungen ausschließlich intern genutzt wird, müssen normalerweise keine weiteren Maßnahmen ergriffen werden. Möchtet ihr das Buchungssystem jedoch über das Internet erreichbar machen, empfehle ich die Verwendung einer Firewall wie z.B. UFW und die Installation eines SSL-Zertifikats, um eine verschlüsselte Verbindung über HTTPS zu gewährleisten.

MRBS-Server unter Linux installiert und auf dem Smartphone geöffnet

Das Beste kommt bekanntlich zum Schluss: MRBS ist vollständig responsiv entwickelt und lässt sich auch hervorragend über Tablet-PCs und Smartphones bedienen. Ich wünsche euch viel Spaß mit dieser Software. Habt ihr Fragen? Gerne in den Kommentaren 🙂

2 Kommentare on “Meeting Room Booking System (MRBS): Installation für Linux (Ubuntu 22.04/Debian 12)

  1. Super Anleitung und vielleicht sogar die beste Open-Source-Software für kleine Hotels. Wir verwenden sie Dank deiner guten Erklärung jetzt. Könntest du vielleicht auf meinen Kommentar antworten und mir mitteilen, wie man den Text oben von „Your Company – Raumbuchungssystem“ auf einen eigenen Text, z.B. für das eigene Hotel/Pension ändern kann? Vielen Dank

    1. Moin Martin, das Hinzufügen eines anderen Namens für das Programm ist relativ einfach. Verbinde dich dafür über SSH mit dem Hostsystem, wo MRBS gehostet wird. Navigiere in das Verzeichnis „/var/www/html/mrbs“ und öffne die Konfigurationsdatei „config.inc.php“ mit einem beliebigen Editor, z.B. VIM oder nano. Scrolle bis zum unteren Ende der Datei und füge die folgende Zeile hinzu: $mrbs_company = "Eigener Name"; – Speichere die Änderungen ab und besuche die Webseite für die Raumbuchung erneut. Anschließend sollte dort nun nicht mehr „Your Company…“ stehen, sondern ein eigener Wert. Viele Grüße

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert