#
Setup PHP, Apache2, MariaDB und phpMyAdmin unter Debian
Aktualisieren Sie die Paketquellen und installieren Sie die verfügbaren Updates.
apt update && apt upgrade -y
Debian 10 oder älter Installieren sie die benötigten Pakete.
apt install ca-certificates apt-transport-https lsb-release gnupg curl nano unzip -y
Hinterlegen die den Key für die Paketquelle von PHP.
wget -q https://packages.sury.org/php/apt.gpg -O- | apt-key add -
Fügen die die Paketquelle für PHP hinzu.
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/php.list
Aktuallisieren Sie die Paketquellen und installieren Sie die verfügbaren Updates.
apt update && apt upgrade -y
Installieren Sie den Apache2, die wichtigsten PHP-Module und den MariaDB-Server und -Client.
apt install apache2 php8.0 php8.0-cli php8.0-common php8.0-curl php8.0-gd php8.0-intl php8.0-mbstring php8.0-mysql php8.0-opcache php8.0-readline php8.0-xml php8.0-xsl php8.0-zip php8.0-bz2 libapache2-mod-php8.0 mariadb-server mariadb-client -y
Um die Konfiguration vom MariaDB-Server abzuschließen, führen Sie diesen Befehl aus.
mysql_secure_installation
Debian 10 oder älter Bei der Abfrage des Root-Passwords drücken Sie die Enter-Taste. Danach bestätigen Sie alle Abfragen mit y, damit setzen Sie ein neues Root-Password, löschen anonymene Benutzer, verbieten aus Sicherheitsgründen den externen Rootlogin, entfernen alle Testdatenbanken und Aktualisieren der Rechte. Geben Sie ein neues Root-Password ein, dieses wird nicht angezeigt. Im Anschluss daran ist Ihr MariaDB-Server erfolgreich installiert.
Debian 11 Bei der Abfrage des Root-Passwords drücken Sie die Enter-Taste. Bei der Abfrage ob der Login auf Unix-Socket-Authentifizierung umgestellt werden soll verneinen Sie dies mit n. Danach bestätigen Sie alle Abfragen mit y, damit setzen Sie ein neues Root-Password, löschen anonymene Benutzer, verbieten aus Sicherheitsgründen den externen Rootlogin, entfernen alle Testdatenbanken und Aktualisieren der Rechte. Geben Sie ein neues Root-Password ein, dieses wird nicht angezeigt. Im Anschluss daran ist Ihr MariaDB-Server erfolgreich installiert.
Wechseln Sie in den Ordner /usr/share um phpMyAdmin zu installieren.
cd /usr/share
Laden die die Daten von phpMyAdmin runter.
wget https://www.phpmyadmin.net/downloads/phpMyAdmin-latest-all-languages.zip -O phpmyadmin.zip
Entpacken Sie das Archiv und löschen dieses danach.
unzip phpmyadmin.zip && rm phpmyadmin.zip
Nun ändern Sie den Ordnername in phpmyadmin und ändern die Reche von dem Ordner phpmyadmin.
mv phpMyAdmin-*-all-languages phpmyadmin && chmod -R 0755 phpmyadmin
Legen Sie die Config für den Webserver Apache2 an.
printf "# phpMyAdmin Apache configuration
Alias /phpmyadmin /usr/share/phpmyadmin
<Directory /usr/share/phpmyadmin>
Options SymLinksIfOwnerMatch
DirectoryIndex index.php
</Directory>
# Disallow web access to directories that don't need it
<Directory /usr/share/phpmyadmin/templates>
Require all denied
</Directory>
<Directory /usr/share/phpmyadmin/libraries>
Require all denied
</Directory>
<Directory /usr/share/phpmyadmin/setup/lib>
Require all denied
</Directory>" > /etc/apache2/conf-available/phpmyadmin.conf
Für den Zugriff auf phpMyAdmin müssen Sie die Konfiguration für Apache2 aktivieren und den Webserver neuladen.
a2enconf phpmyadmin && systemctl reload apache2
Nun müssen Sie noch ein temporäres Verzeichnis für phpMyAdmin an und geben dem WebServer Apache2 die Rechte auf diesen Ordner.
mkdir /usr/share/phpmyadmin/tmp/ && chown -R www-data:www-data /usr/share/phpmyadmin/tmp/
Für den Login in phpMyAdmin müssen Sie bei Debian 10 und älter den root-Login aktivieren. Zunächst melden Sie sich am MariaDB-Server an.
mysql -u root
Danach ändern Sie das Authentifizierungsplugin auf Standard-Authentifizierung um.
UPDATE mysql.user SET plugin = 'mysql_native_password' WHERE user = 'root' AND plugin = 'unix_socket'; FLUSH PRIVILEGES; exit;