WordPress Installation · 5 min read · Feb 01, 2026

Installieren von WordPress 5 mit Apache auf Debian 9

Dieses Tutorial zeigt Ihnen, wie Sie die neueste Version von WordPress 5 auf einem LAMP-Stack in Debian 9 - Stretch installieren und konfigurieren. WordPress ist ohne Zweifel eines der beliebtesten Open-Source-Content-Management-Systeme (CMS), das heutzutage für die Internetveröffentlichung verwendet wird und mehr als 60 Millionen Websites weltweit antreibt, sei es kleine Blogging-Seiten oder namhafte große Marken. Basierend auf der PHP- und MySQL-Engine wird WordPress oft mit der LAMP-Sammlung in Verbindung gebracht, entweder auf dedizierten Servern, virtuellen privaten Servern oder bei Shared-Webhosting-Anbietern installiert. Das Akronym LAMP beschreibt eine Sammlung von Software, auch bekannt als Software-Bundle, die normalerweise aus dem Linux Open Source-Kernel besteht, unabhängig von der gewählten Distribution, dem Apache HTTP-Server, der aufgrund seiner Stabilität, Flexibilität und Leistung einer der beliebtesten Open-Source-Webserver im Internet ist, der PHP serverseitig interpretierten Programmiersprache und dem MariaDB relationalen Datenbankmanagementsystem (RDBMS), das eine der beliebtesten Datenbanksoftware ist, die von der Open-Source-Community aus dem ursprünglichen MySQL geforkt und gleichzeitig entwickelt wurde.

Anforderungen

  • Eine saubere Installation des Debian 9-Betriebssystems auf einem virtuellen privaten Server oder einer virtuellen Maschine oder direkt auf einem dedizierten Bare-Metal-Rechner.
  • SSH-Remote-Zugriff im Falle eines VPS oder eines Remote-Servers oder direkter Konsolenzugriff
  • Mindestens eine statische IP-Adresse für eine Netzwerkschnittstelle, die auf dem Server konfiguriert ist
  • Falls die Webseite öffentlich im Internet verfügbar sein soll, benötigen Sie einen registrierten öffentlichen Domainnamen mit korrekt konfigurierten DNS-Einträgen. Während dieses Tutorials verwenden wir example.com als Beispiel-Domain und eine statische IP-Adresse aus dem privaten Bereich, im NAT, hinter dem Haupt-Router. Die Domain wird über Portweiterleitung der Apache-Ports 80 und 443 von der Router-Seite zur internen selbstgehosteten virtuellen Maschinen-LAN zugänglich sein.

Installieren des LAMP-Software-Bundles

Das erste, was Sie tun möchten, bevor Sie mit der Installation aller LAMP-Komponenten beginnen, ist, sich auf dem Debian 9-Server anzumelden und ein Update-Verfahren für alle Systemkomponenten durchzuführen, wie Kernel-Updates, Paketaktualisierungen oder Sicherheitspatches, indem Sie die folgenden Befehle mit Root-Rechten ausführen.

apt-get update
apt-get upgrade
apt-get dist-upgrade

Im nächsten Schritt sollten Sie den Namen Ihrer Maschine festlegen, indem Sie die Hostnamen-Variable durch Ihren eigenen beschreibenden Namen ersetzen, indem Sie den folgenden Befehl ausführen. Beachten Sie, dass Sie das System möglicherweise neu starten müssen, um den neuen Hostnamen entsprechend anzuwenden.

hostnamectl set-hostname hostname.yourdomain.com

Sie sollten auch die folgenden Dienstprogramme installieren, die später bei verschiedenen Problemlösungen nützlich sein werden.

apt install net-tools sudo wget curl bash-completion

Nachdem der Maschinen-Hostname angewendet wurde, melden Sie sich erneut mit Root-Rechten an und installieren Sie den Apache HTTP-Server, der standardmäßig in ein Binärpaket vorkompiliert und von den Debian 9-Repositories bereitgestellt wird.

apt install apache2

Als nächstes installieren Sie die neueste Version des PHP-Sprachinterpreters und aller erforderlichen Module, die für den Apache-Webserver benötigt werden, um das WordPress-CMS bereitzustellen, indem Sie den folgenden Befehl ausführen.

apt install libapache2-mod-php7.0 php7.0 php7.0-gd php7.0-xml php7.0-curl php7.0-mbstring php7.0-mcrypt php7.0-xmlrpc

Die letzte fehlende Komponente, damit der LAMP-Stack vollständig ist, ist der MariaDB-Datenbankserver. Führen Sie den folgenden Befehl aus, um den MariaDB-Server zusammen mit dem PHP-Modul zu installieren, das erforderlich ist, um auf die Datenbank vom Apache HTTP-Server zuzugreifen.

apt install php7.0-mysql mariadb-server mariadb-client

Nachdem die MariaDB-Datenbank installiert wurde, starten Sie den Daemon und sichern Sie die Datenbank, indem Sie das mysql_secure_installation-Skript ausführen, wie im folgenden Auszug dargestellt. Beantworten Sie hauptsächlich alle Fragen, die das Skript Ihnen stellt, mit ja. Stellen Sie außerdem sicher, dass Sie ein starkes Passwort für das Root-Konto wählen. Beachten Sie, dass das MySQL-Root-Konto nicht identisch mit dem Linux-Root-Konto ist. Das erste wird nur zur Verwaltung der MariaDB-Datenbank verwendet, und das zweite ist das Superbenutzerkonto in jedem Linux-System. Diese Konten überschneiden sich niemals in einem System.

systemctl start mariadb
mysql_secure_installation
*HINWEIS: DAS AUSFÜHREN ALLER TEILE DIESES SKRIPTS WIRD FÜR ALLE MariaDB  
      SERVER IM PRODUKTIVE EINSATZ EMPFOHLEN!  BITTE LESEN SIE JEDEN SCHRITT SORGFÄLTIG!  
  
Um sich in MariaDB anzumelden, um es zu sichern, benötigen wir das aktuelle  
Passwort für den Root-Benutzer.  Wenn Sie MariaDB gerade installiert haben und  
Sie das Root-Passwort noch nicht festgelegt haben, wird das Passwort leer sein,  
also sollten Sie hier einfach die Eingabetaste drücken.  
  
Geben Sie das aktuelle Passwort für root ein (drücken Sie die Eingabetaste für keines):  
OK, Passwort erfolgreich verwendet, weiter...  
  
Das Festlegen des Root-Passworts stellt sicher, dass niemand sich ohne die richtige  
Autorisierung beim MariaDB-Root-Benutzer anmelden kann.  
**Root-Passwort festlegen? [Y/n] y  
Neues Passwort:  
Neues Passwort erneut eingeben:  
Passwort erfolgreich aktualisiert!  
Aktualisieren der Berechtigungstabellen..  
 ... Erfolg!  
Standardmäßig hat eine MariaDB-Installation einen anonymen Benutzer, der es jedem  
ermöglicht, sich in MariaDB anzumelden, ohne ein Benutzerkonto erstellt zu haben.  Dies  
ist nur für Tests gedacht und soll die Installation etwas reibungsloser gestalten.  Sie  
sollten sie entfernen, bevor Sie in eine Produktionsumgebung wechseln.  
Anonyme Benutzer entfernen? [Y/n] y  
 ... Erfolg!  
Normalerweise sollte root nur von 'localhost' aus verbinden dürfen.  Dies  
stellt sicher, dass niemand das Root-Passwort über das Netzwerk erraten kann.  
Root-Login aus der Ferne verbieten? [Y/n] y  
 ... Erfolg!  
Standardmäßig wird MariaDB mit einer Datenbank namens 'test' geliefert, auf die jeder  
zugreifen kann.  Dies ist ebenfalls nur für Tests gedacht und sollte entfernt werden,  
bevor Sie in eine Produktionsumgebung wechseln.  
**Testdatenbank und Zugriff darauf entfernen? [Y/n] y  
 - Testdatenbank wird gelöscht...  
 ... Erfolg!  
 - Berechtigungen für die Testdatenbank werden entfernt...  
 ... Erfolg!  
Das Aktualisieren der Berechtigungstabellen stellt sicher, dass alle bisher vorgenommenen  
Änderungen sofort wirksam werden.  
**Berechtigungstabellen jetzt aktualisieren? [Y/n] y  
 ... Erfolg!  
Aufräumen...  
Alles erledigt!  Wenn Sie alle oben genannten Schritte abgeschlossen haben, sollte Ihre  
MariaDB-Installation jetzt sicher sein.  
**Danke, dass Sie MariaDB verwenden!*

Wir sind mit der Sicherung der MariaDB-Datenbank noch nicht fertig. Standardmäßig können Sie sich von localhost mit dem Datenbank-Root-Konto anmelden, ohne nach einem Passwort gefragt zu werden. Um mögliche Sicherheitsprobleme zu vermeiden, melden Sie sich mit dem Root-Benutzer in der Datenbank an und führen Sie die folgenden Befehle aus.

mysql -u root -p
MariaDB> use mysql;
MariaDB> update user set plugin='' where User='root';
MariaDB> flush privileges;
MariaDB> quit

Plugin vom MySQL-Root-Benutzer entfernen

Jetzt testen Sie die Datenbank, indem Sie versuchen, sich mit dem root-Konto ohne Passwort anzumelden. Ihnen sollte der Zugriff auf die MariaDB-Datenbank verweigert werden.

Im nächsten Schritt aktivieren und konfigurieren wir die TLS- und Rewrite-Module für den Apache-Webserver, die standardmäßig deaktiviert sind. Führen Sie die folgenden Befehle aus, um beide Module zu aktivieren.

a2enmod rewrite ssl
a2ensite default-ssl.conf

Öffnen Sie dann die Apache-Konfigurationsdateien für beide aktivierten Sites und fügen Sie den folgenden Block unter der DocumentRoot-Direktive hinzu, wie im folgenden Screenshot dargestellt.

nano /etc/apache2/sites-enabled/000-default.conf
nano /etc/apache2/sites-enabled/default-ssl.conf

Fügen Sie in beiden Konfigurationsdateien den folgenden Codeblock hinzu:

*      
       Options Indexes FollowSymLinks MultiViews  
       AllowOverride All  
       Require all granted  
    *

Zugriff auf das Verzeichnis /var/www/html gewähren und Überschreibungen zulassen

In der Apache default-ssl.conf TLS-Konfigurationsdatei können Sie auch den folgenden Inhalt hinzufügen, falls nicht vorhanden, um die Sicherheit des Apache-SSL-Protokolls zu verbessern. Diese Codezeilen sollten gängige SSL-Sicherheitsanfälligkeiten beheben.

*SSLProtocol all -SSLv2 -SSLv3  
*# Fügen Sie SSL-Cipher in einer langen Zeile hinzu  
*SSLCipherSuite          ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA*  
*SSLHonorCipherOrder     on*  
*SSLOptions +StrictRequire*  
* *  
*Header always set Strict-Transport-Security 
Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.