
Voraussetzungen
- Ein Debian Linux Server in einer aktuellen, noch mit Sicherheitsupdates versorgten Version (Empfehlung: ZAP-Hosting bietet hochwertige Linux Server auch als Lifetime-Option an)
- Root-Zugriff auf den Server
- SSH-Client (zum Beispiel Termius, ein moderner, benutzerfreundlicher SSH-Client)
Falls du noch überlegst, welche Art von Server du für dein Projekt brauchst, hilft dir mein Vergleich vServer oder Dedicated Server bei der Entscheidung.
Detaillierte Schritt-für-Schritt Anleitung
1. Vorbereitung und SSH-Verbindung
-
Lade dir Termius herunter und installiere es. Termius ist ein moderner, benutzerfreundlicher SSH-Client, der für alle gängigen Betriebssysteme verfügbar ist.
-
Starte Termius und erstelle eine neue Verbindung:
- Klicke in der linken Seitenleiste auf "Hosts"
- In der oberen Leiste erscheint der Button "New Host", klicke darauf
- Gib unter "Alias" einen Namen für deine Verbindung ein (z.B. "Mein Debian Server")
- Trage unter "Address" die IP-Adresse oder Domain deines Servers ein
- Gib unter "Username" deinen Benutzernamen ein (meist "root")
- Wähle unter "Authentication" die Option "Password"
- Gib dein Passwort ein
- Klicke auf "Save", um die Verbindung zu speichern
-
Verbinde dich mit deinem Server:
- Deine neue Verbindung erscheint nun in der Liste unter "Hosts"
- Klicke auf den "Connect" Button oder doppelklicke auf den Eintrag
- Termius wird nun automatisch eine SSH-Verbindung zu deinem Server herstellen
Tipp: Termius bietet auch Features wie das Speichern mehrerer Verbindungen, Snippets für häufig verwendete Befehle und eine übersichtliche Verwaltung deiner SSH-Keys.
2. System aktualisieren
- Hole dir zuerst die neuesten Paketinformationen:
apt update- Bringe dann dein System auf den neuesten Stand:
apt upgrade -y3. Benötigte Pakete installieren
- Installiere nun alle Werkzeuge, die wir später brauchen werden:
apt install ca-certificates apt-transport-https lsb-release gnupg curl nano unzip -y4. PHP 8 Repository hinzufügen
Debian liefert je nach Version eine bestimmte PHP-Version mit. Über die Paketquelle von Ondřej Surý (packages.sury.org) bekommst du auch neuere PHP-Versionen. Diese Anleitung nutzt PHP 8.4.
- Füge die PHP-Paketquelle hinzu:
# Schlüssel-Paket herunterladen und installierencurl -sSLo /tmp/debsuryorg-archive-keyring.deb https://packages.sury.org/debsuryorg-archive-keyring.debdpkg -i /tmp/debsuryorg-archive-keyring.deb # Repository hinzufügenecho "deb [signed-by=/usr/share/keyrings/debsuryorg-archive-keyring.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list- Da wir eine neue Paketquelle hinzugefügt haben, hole dir die aktualisierten Paketinformationen:
apt update5. Apache2 und PHP 8 installieren
- Installiere Apache2:
apt install apache2 -y- Installiere PHP 8.4 und benötigte Module:
apt install php8.4 php8.4-cli php8.4-common php8.4-curl php8.4-gd php8.4-intl php8.4-mbstring php8.4-mysql php8.4-opcache php8.4-readline php8.4-xml php8.4-zip php8.4-bz2 libapache2-mod-php8.4 -yMit php -v prüfst du anschließend, ob die richtige Version aktiv ist.
6. MariaDB installieren und konfigurieren
- Installiere MariaDB:
apt install mariadb-server mariadb-client -y- Jetzt kümmern wir uns um die Absicherung deiner MariaDB-Installation:
mariadb-secure-installation- Bei der ersten Passwortabfrage: Drücke einfach Enter
- Bei der Frage zur Unix-Socket-Authentifizierung: Gib "n" ein
- Lege ein Root-Passwort fest
- Bestätige alle weiteren Fragen mit "Y"
Der Befehl hieß früher mysql_secure_installation. Auf aktuellen Debian-Versionen verwendest du den Namen mit mariadb.
7. phpMyAdmin installieren
- Wechsle in das richtige Verzeichnis mit folgendem Befehl:
cd /usr/share- Lade dir phpMyAdmin herunter:
wget https://www.phpmyadmin.net/downloads/phpMyAdmin-latest-all-languages.zip -O phpmyadmin.zip- Entpacke das Archiv und lösche die Zip-Datei:
unzip phpmyadmin.ziprm phpmyadmin.zipmv phpMyAdmin-*-all-languages phpmyadminchmod -R 0755 phpmyadmin- Erstelle die Apache2-Konfiguration für phpMyAdmin:
nano /etc/apache2/conf-available/phpmyadmin.conf- Füge folgende Konfiguration ein:
# 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>-
Speichere die Datei (STRG + X, dann "Y", dann Enter)
-
Aktiviere die Konfiguration und lade Apache2 neu:
a2enconf phpmyadminsystemctl reload apache2- Erstelle das temporäre Verzeichnis und setze die Berechtigungen:
mkdir /usr/share/phpmyadmin/tmp/chown -R www-data:www-data /usr/share/phpmyadmin/tmp/Fertigstellung und Zugriff
Dein LAMP-Stack ist nun einsatzbereit!
- Das Web-Verzeichnis findest du unter
/var/www/html/ - phpMyAdmin erreichst du unter
http://deine-domain.de/phpmyadmin - Logge dich in phpMyAdmin mit dem Benutzer "root" und deinem festgelegten Passwort ein
Der Stack ist eine gute Basis für viele PHP-Anwendungen. Wie du darauf ein CMS aufsetzt, zeige ich dir in meiner Anleitung WordPress auf einem Linux-Server installieren.
Sicherheitshinweise
- Richte ein SSL-Zertifikat ein, zum Beispiel kostenlos mit Let's Encrypt und certbot, damit Passwörter nicht unverschlüsselt übertragen werden
- Lege für jede Anwendung einen eigenen Datenbankbenutzer an, statt überall "root" zu verwenden
- Schränke den Zugriff auf phpMyAdmin ein, etwa auf bestimmte IP-Adressen, oder deaktiviere die Konfiguration mit
a2disconf phpmyadmin, wenn du sie nicht brauchst - Spiele Updates regelmäßig mit
apt update && apt upgradeein
Server-Empfehlung
Für diese Installation empfehle ich dir einen Linux-Server von Zap-Hosting. Zap-Hosting bietet nicht nur hochwertige Server zu fairen Preisen, sondern auch die einzigartige Möglichkeit, Server als "Lifetime" Produkt zu erwerben. Das bedeutet, du zahlst nur einmal und kannst den Server dauerhaft nutzen!