Datenbankverwaltungstool Adminer unter Debian 12 installieren

Adminer (ehemals phpMinAdmin) ist ein in PHP geschriebenes, voll funktionsfähiges Datenbankverwaltungstool, das sowohl RDBMS (Relational Database Management System) wie MySQL/MariaDB, PostgreSQL, SQLite, MS SQL und Oracle als auch NoSQL wie MongoDB und andere (via Plugin) unterstützt.

Adminer ist eine Alternative zu phpMyAdmin. Es ist ein leichtgewichtiges, benutzerfreundliches und leistungsstarkes Datenbankverwaltungstool, mit dem du deine Datenbanken einfach verwalten kannst.

In dieser Anleitung zeigen wir dir, wie du das Datenbankverwaltungstool Adminer auf einem Debian 12-Server installierst. Außerdem wirst du Adminer über das Apache-Modul basic_auth absichern.

Voraussetzungen

Bevor du beginnst, solltest du sicherstellen, dass du Folgendes hast

  • Einen Debian 12 Server.
  • Einen Nicht-Root-Benutzer mit Administrator-Rechten.
  • Eine MySQL/MariaDB-Datenbank wurde installiert.

Installation von Adminer unter Debian

Adminer ist eine Alternative zu phpMyAdmin, unterstützt aber auch die PostgreSQL-Datenbank. Es ist ebenfalls in PHP geschrieben und kann auf fast jedem Betriebssystem mit Apache oder Nginx Webserver laufen.

Unter Debian ist das Adminer-Paket standardmäßig verfügbar und du kannst es einfach über das Repository installieren. Wir empfehlen dir, adminer auf einem neuen Server zu installieren, weil dadurch automatisch PHP-Pakete und der Apache-Webserver installiert werden.

Bevor du adminer installierst, aktualisiere deinen Debian-Paketindex mit dem folgenden Befehl.

sudo apt update

Repo aktualisieren

Finde das adminer-Paket im Standard-Debian-Repository mit dem folgenden Befehl.

sudo apt info adminer

Wie du unten siehst, ist das adminer-Paket im Abschnitt `web` des Debian-Repositorys verfügbar und erfordert mindestens PHP 8.2 und einen Apache-Webserver.

Infopakete

Installiere nun den adminer mit dem folgenden Befehl. Dadurch werden auch die erforderlichen Pakete wie PHP und Apache automatisch installiert. Gib y ein, um die Installation zu bestätigen.

sudo apt install adminer

Administrator installieren

Nachdem die Installation abgeschlossen ist, überprüfe den Apache-Dienst mit dem folgenden Befehl. Vergewissere dich, dass der Apache-Dienst läuft.

sudo systemctl status apache2

apache2 überprüfen

Sichern der Adminer-Installation

Nachdem du Adminer installiert hast, musst du im nächsten Schritt deine Adminer-Installation konfigurieren. In diesem Beispiel änderst du den Standard-URL-Pfad für Adminer und fügst eine zusätzliche Authentifizierung über basic_auth hinzu. Auf diese Weise hast du zwei Authentifizierungsebenen.

Außerdem musst du wissen, dass Adminer neue Apache-Konfigurationsdateien unter /etc/apache2/conf-available/adminer.conf erstellt. Du wirst diese Datei ändern, um die Adminer-Installation zu konfigurieren.

Bevor du die Konfiguration bearbeitest, führe den folgenden Befehl aus, um die Passwortdatei /etc/adminer/.htpasswd zu erzeugen. Achte außerdem darauf, dass du den Benutzernamen dbmanager durch deinen Benutzer ersetzt.

Die Datei /etc/adminer/.htpasswd wird als zusätzliche Authentifizierung über das Apache-Modul basic_auth für Adminer verwendet.

sudo htpasswd -B -c /etc/adminer/.htpasswd dbmanager

Gib dein Passwort ein, wenn du dazu aufgefordert wirst und wiederhole es.

Passwort generieren

Öffne nun die generierte Apache-Konfiguration für Adminer /etc/apache2/conf-available/adminer.conf mit dem Editor nano.

sudo nano /etc/apache2/conf-available/adminer.conf

In der obersten Zeile änderst du die Standard-URL für „/adminer“ in den neuen URL-Pfad. In diesem Beispiel wird der Administrator über den URL-Pfad„/dbmanager“ erreichbar sein.

Alias /dbmanager /etc/adminer
<Directory /etc/adminer>
Require all granted
DirectoryIndex conf.php
</Directory>

Füge die folgende Konfiguration ein, um Apache basic_auth für den Pfad„/dbmanager“ zu aktivieren. Damit wirst du jedes Mal, wenn du auf den Pfad‚/dbmanager‚ zugreifst, zur zusätzlichen Authentifizierung Apache basic_auth aufgefordert.

<Location /dbmanager>
 AuthType Basic
 AuthName "Restricted Resource"
 AuthBasicProvider file
 AuthUserFile /etc/adminer/.htpasswd
 Require valid-user
</Location>

Speichere und schließe die Datei, wenn du fertig bist.

Als Nächstes führst du den folgenden Befehl aus, um die zusätzliche Konfiguration „adminer.conf“ auf dem Apache zu aktivieren und die gesamte Apache-Syntax zu überprüfen.

sudo a2enconf adminer.conf
sudo apachectl configtest

Vergewissere dich, dass du die richtige Syntax hast und eine Ausgabe wie Syntax OK erhältst.

Admin-Setup

Zum Schluss führst du den folgenden Befehl aus, um den Apache-Dienst neu zu starten und die neue Konfiguration für Adminer zu übernehmen. Nachdem du den Befehl ausgeführt hast, sollte deine Adminer-Installation fertig sein.

sudo systemctl restart apache2

MySQL/MariaDB-Server einrichten

Jetzt ist dein Adminer fertig, aber du musst noch deinen MySQL-Server vorbereiten, indem du einen neuen Benutzer anlegst, der für den Adminer-Login bestimmt ist. Es ist nicht empfehlenswert, den Root-Benutzer direkt zu verwenden.

Note: If you're connecting through a remote host, make sure you're via SSH tunneling to encrypt your connection. If you're using a single server (MySQL + Adminer on the same server), you're ready to go.

Melde dich mit dem unten stehenden Befehl am MySQL/MariaDB-Server an. Gib dein MySQL-Root-Passwort ein, wenn du dazu aufgefordert wirst.

sudo mysql -u root -p

Führe die folgenden Abfragen aus, um einen neuen Benutzer dbmanager für deinen MySQL-Server zu erstellen. In diesem Beispiel wird dieser Benutzer verwendet, um sich über den Adminer am MySQL-Server anzumelden. Achte also darauf, dass du das folgende Passwort durch ein neues Passwort änderst.

CREATE USER 'dbmanager'@'127.0.0.1' IDENTIFIED BY 'dbpassword';
GRANT ALL PRIVILEGES ON *.* TO 'dbmanager'@'127.0.0.1' WITH GRANT OPTION;
FLUSH PRIVILEGES;

Benutzer einrichten

Führe nun die folgende Abfrage aus, um den Listenbenutzer in deinem MySQL-Server zu überprüfen. Du solltest den Benutzer dbmanager mit dem Standard-Host 127.0.0.1 sehen.

SELECT user,host FROM mysql.user;

Benutzer anzeigen

Zum Schluss gibst du quit ein, um den MySQL-Server zu verlassen.

Anmeldung beim MySQL-Server über den Adminer

Öffne deinen Webbrowser und rufe die Adminer-Installations-URL http://192.168.5.15/dbmanager auf. Wenn deine Installation erfolgreich war, solltest du zur Authentifizierung mit basic_auth aufgefordert werden. Gib deinen Benutzernamen und dein Passwort ein, die du erstellt hast, und klicke auf Anmelden.

Anmeldung

Sobald die Anmeldung erfolgreich war, solltest du die Adminer-Anmeldeseite erhalten. Wähle als Datenbanksystem MySQL aus und gib dann den Host und Port, den Benutzernamen und das Passwort deines MySQL-Servers ein. Klicke zur Bestätigung auf Login.

Login-Administrator

Wenn du die richtigen Datenbank-Zugangsdaten hast, solltest du über den Adminer mit MySQL verbunden sein.

adminer dashboard

Eine neue Datenbank und einen neuen Benutzer über den Adminer erstellen

In diesem Abschnitt erfährst du, wie du eine neue Datenbank und einen neuen Benutzer in MySQL/MariaDB über den Adminer anlegst. Anschließend meldest du dich mit einem neuen Benutzer bei der neuen Datenbank an.

Im Adminer Dashboard klickst du auf den Link Datenbank erstellen. Daraufhin wird die folgende Seite angezeigt.

Gib den Namen deiner neuen Datenbank ein und klicke auf Speichern. In diesem Beispiel wirst du eine neue Datenbank testdb erstellen.

Datenbank erstellen

Um einen neuen MySQL/MariaDB-Benutzer anzulegen, klickst du auf dem Dashboard auf Privilegien und dann auf Benutzer anlegen.

Benutzer erstellen

Gib den Benutzernamen und das Passwort für die Datenbank ein und gib dann den Namen deiner Datenbank im Bereich Rechte ein. Scrolle nach unten und klicke auf Speichern.

Im folgenden Beispiel erstellst du einen neuen Benutzer testuser und gibst ihm die Rechte für die Datenbank testdb.

Benutzer erstellen

Melde dich schließlich mit dem Benutzer testuser beim Adminer an der Datenbank testdb an.

Anmeldung bei testdb

Wenn du erfolgreich warst, solltest du über den Adminer bei der testdb angemeldet sein.

Bildbei testdb eingeloggture

Fazit

Herzlichen Glückwunsch! Du hast nun erfolgreich Adminer als Datenbankverwaltungstool für MySQL/MariaDB und PostgreSQL auf dem Debian 12 Server installiert. Außerdem hast du Adminer abgesichert, indem du den Standard-URL-Pfad geändert und eine zusätzliche Authentifizierungsschicht über das Apache-Modul basic_auth aktiviert hast. Am Ende hast du dich über das Adminer-Tool beim MySQL-Server angemeldet.

Das könnte dich auch interessieren …