.

Mit den vorangegangenen Artikel dieser Serie ist die Installation des LEMP Stack abgeschlossen und die grundlegende Konfiguration von Nginx Server Block behandelt worden. Zu einem Webserver der im Betrieb ist fehlen aber noch ein paar Tools. Ich habe keine Lust alles von der Kommandozeile aus zu managen. So zum Beispiel: wenn neue Websites auf dem Server betrieben werden sollen oder aus anderen Gründen zusätzliche Datenbanken benötigt werden. Meine Wahl fällt für die Datenbankverwaltung auf phpMyAdmin.

Inhalt

Update und Vorbereitung
Download von phpMyAdmin
Auspacken und Konfigurieren

Voraussetzung

- Fertig installierter und konfigurierter LEMP Stack
- Systemzugriff als root oder Benutzer mit sudo Privilegien.

Update und Vorbereitung

Wie vor jeder Installation auf Linux erst mal ein Update um alles auf den neusten Stand zu bringen. Außerdem benötigen wir gleich ‚wget‘ um phpMyAdmin herunter zu laden.

apt update

Falls ‚wget‘ nicht bereits vorhanden ist:

apt install wget

Download von phpMyAdmin

Es kann los gehen! Wir verwenden ‚wget‘ um die letzte stable Version von phpMyAdmin runter zu laden.

wget -P /tmp https://www.phpmyadmin.net/downloads/phpMyAdmin-latest-all-languages.tar.gz

Durch die Option ‚-P tmp‘ wird ‚wget‘ angewiesen die Datei im Ordner ‚/tmp‘ zu speichern. Ich benutze diesen Ordner gerne zum ablegen von Dateien die später weg können. Er ‚tmp‘ steht ja schließlich für temporär. Ihr könnt euch natürlich frei fühlen und dies in einem anderen Ordner tun wie zum Beispiel ‚Downloads‘.

Für viele offiziell zur Verfügung stehende Installationspakete gibt es eine asc-Datei. Diese enthält eine eindeutige Schlüsselsignatur. Mit dieser Signatur kann man überprüfen ob man tatsächlich das originale Paket runter geladen hat und dieses nicht manipuliert wurde. Dazu benötigen wir aber erst den passenden ‚Schlüsselbund‘.

wget -P /tmp https://files.phpmyadmin.net/phpmyadmin.keyring

Wir wechseln in das ‚tmp‘ Verzeichnis um dort den ‚Schlüsselbund‘ zu importieren.

cd /tmp
gpg --import phpmyadmin.keyring

Nun noch schnell den Schlüssel holen. Um ihn dann mit dem runter geladenen Paket von phpMyAdmin zu vergleichen.

wget https://www.phpmyadmin.net/downloads/phpMyAdmin-latest-all-languages.tar.gz.asc
gpg --verify phpMyAdmin-latest-all-languages.tar.gz.asc
Stimmen die Schlüssel über ein, ist alles fein!

Auspacken und Konfigurieren

Als erstes benötigen wir nun eine Ordner unterhalb des öffentlichen ‚html‘ Ordner der Domain unter der phpMyAdmin erreichbar sein soll (siehe LEMP Stack – Nginx Konfiguration).

mkdir /var/www/<domain.com>/html/phpmyadmin

Nun können wir den Inhalt des Paket in diesen Ordner entpacken.

tar xvf /tmp/phpMyAdmin-latest-all-languages.tar.gz --strip-components=1 -C /var/www/<domain.com>/html/phpmyadmin

Passphrase für Cookie Authentifizierung

Wir benötigen eine neue Konfigurationsdatei. Keine Sorge die muss nicht selbst geschrieben werden wir bedienen uns einfach der ‚config.sample.inc.php‘. Und öffnen die neue Datei mit nano.

cd /var/www/<domain.com>/html/phpmyadmin
cp config.sample.inc.php config.inc.php
nano config.inc.php

In der Datei suchen wir nach $cfg[‚blowfish_secret‘] = “ um dort zwischen den Hochkommas eine eigen Passphrase ein zu tragen. Diese muss man später nicht selber eingeben. Macht es schön kompliziert!

$cfg['blowfish_secret'] = '3A$U!nPAp5#iu3';

Speichern und schließen: ’strg + o‘ -> ‚Enter‘ -> strg + x‘

Datei Berechtigung und Eigentümer anpassen

Die neue Konfigurationsdatei benötigt die Berechtigung ‚660‘.

chmod 660 config.inc.php

Damit phpMyAdmin auf dem Webserver ausgeführt werden kann muss der gesamte Inhalt des ‚phpmyadmin‘ Ordner dem Webserver User ‚www-data‚ und dessen Gruppe angehören.

chown –R www-data:www-data /var/www/<domain.de>/html/phpmyadmin

Damit ist die Installation von phpMyAdmin abgeschlossen. Nur noch eben fix Nginx neu starten und schon können wir uns bei phpMayAdmin mit einem MariaDB User einloggen.

systemctl restart nginx
phpMyAdmin - Login Screen

0 Kommentare

Schreibe einen Kommentar

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