Self-Hosted Webserver

Apache2 unter Debian 13 installieren und absichern – Schritt-für-Schritt-Anleitung

Apache2 gehört zu den beliebtesten Webservern der Welt. In dieser Schritt-für-Schritt-Anleitung lernst du, wie du Apache2 unter Debian 13 installierst, absicherst und für eigene Webseiten konfigurierst.

3 min Lesezeit
Grafik: Apache2 unter Debian 13 installieren und absichern

Apache gehört seit vielen Jahren zu den beliebtesten Webservern weltweit. Millionen Webseiten werden mit Apache betrieben – von kleinen privaten Projekten bis hin zu großen Unternehmensanwendungen.

Debian 13 (Trixie) bringt Apache2 direkt über die offiziellen Paketquellen mit. Dadurch ist die Installation einfach, schnell und sicher.

In diesem Beitrag zeige ich Schritt für Schritt:

  • Installation von Apache2
  • Start und Aktivierung des Dienstes
  • Firewall-Konfiguration
  • Virtuelle Hosts einrichten
  • SSL-Vorbereitung
  • Sicherheitsmaßnahmen
  • Wichtige Verwaltungsbefehle

Voraussetzungen

Für die Installation benötigst du:

  • Debian 13 Server
  • Root-Zugriff oder Benutzer mit sudo-Rechten
  • Internetverbindung

Alle Befehle werden als Benutzer mit sudo-Rechten ausgeführt.


System aktualisieren

Vor jeder Installation sollte das System auf den neuesten Stand gebracht werden:

sudo apt update
sudo apt upgrade -y

Optional:

sudo apt autoremove -y

Apache2 installieren

Die Installation erfolgt direkt über die Debian-Paketverwaltung:

sudo apt install apache2 -y

Nach wenigen Sekunden sind alle benötigten Pakete installiert.


Installation prüfen

Version anzeigen:

apache2 -v

Beispiel:

Server version: Apache/2.4.x
Server built: 2026-xx-xx

Apache-Dienst prüfen

Status anzeigen:

sudo systemctl status apache2

Typische Ausgabe:

active (running)

Falls der Dienst nicht läuft:

sudo systemctl start apache2

Apache beim Systemstart aktivieren

Damit Apache nach jedem Neustart automatisch gestartet wird:

sudo systemctl enable apache2

Prüfen:

sudo systemctl is-enabled apache2

Ausgabe:

enabled

Webserver testen

Server-IP ermitteln:

ip addr

oder

hostname -I

Anschließend im Browser aufrufen:

http://SERVER-IP

Es sollte die Apache-Standardseite erscheinen:

Apache2 Debian Default Page

Firewall konfigurieren

Wenn UFW verwendet wird:

Status prüfen:

sudo ufw status

HTTP freigeben:

sudo ufw allow 80/tcp

HTTPS freigeben:

sudo ufw allow 443/tcp

Anschließend:

sudo ufw reload

Kontrolle:

sudo ufw status

Wichtige Apache-Befehle

Dienst starten:

sudo systemctl start apache2

Dienst stoppen:

sudo systemctl stop apache2

Dienst neu starten:

sudo systemctl restart apache2

Konfiguration neu laden:

sudo systemctl reload apache2

Status prüfen:

sudo systemctl status apache2

Standard-Webverzeichnis

Die Standard-Webseite liegt unter:

/var/www/html

Testseite erstellen:

sudo nano /var/www/html/index.html

Inhalt:

<!DOCTYPE html>
<html>
<head>
<title>Mein Debian 13 Server</title>
</head>
<body>
<h1>Apache funktioniert!</h1>
</body>
</html>

Speichern und Browser aktualisieren.


Virtuelle Hosts (Webseiten) anlegen

Verzeichnis erstellen:

sudo mkdir -p /var/www/meine-domain.de

Rechte setzen:

sudo chown -R www-data:www-data /var/www/meine-domain.de

Testseite erstellen:

sudo nano /var/www/meine-domain.de/index.html

VirtualHost-Datei anlegen

sudo nano /etc/apache2/sites-available/meine-domain.de.conf

Inhalt:

<VirtualHost *:80>
    ServerName meine-domain.de
    ServerAlias www.meine-domain.de

    DocumentRoot /var/www/meine-domain.de

    ErrorLog ${APACHE_LOG_DIR}/meine-domain-error.log
    CustomLog ${APACHE_LOG_DIR}/meine-domain-access.log combined
</VirtualHost>

Webseite aktivieren

sudo a2ensite meine-domain.de.conf

Konfiguration testen:

sudo apache2ctl configtest

Ausgabe:

Syntax OK

Apache neu laden:

sudo systemctl reload apache2

Nützliche Apache-Module aktivieren

Rewrite-Modul:

sudo a2enmod rewrite

Header-Modul:

sudo a2enmod headers

SSL-Modul:

sudo a2enmod ssl

Danach:

sudo systemctl restart apache2

Serverinformationen verbergen

Datei öffnen:

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

Folgende Werte setzen:

ServerTokens Prod
ServerSignature Off

Aktivieren:

sudo systemctl restart apache2

Nun werden weniger Informationen über den Server preisgegeben.


Verzeichnisauflistung deaktivieren

In der jeweiligen Konfiguration:

Options -Indexes

Dadurch können Besucher keine Dateilisten aufrufen.


HTTPS vorbereiten

Für produktive Server sollte HTTPS verwendet werden.

Certbot installieren:

sudo apt install certbot python3-certbot-apache -y

Zertifikat anfordern:

sudo certbot --apache

Automatische Erneuerung testen:

sudo certbot renew --dry-run

Logdateien

Apache speichert Zugriffe und Fehler in:

Zugriffe:

/var/log/apache2/access.log

Fehler:

/var/log/apache2/error.log

Live-Anzeige:

sudo tail -f /var/log/apache2/access.log

oder

sudo tail -f /var/log/apache2/error.log

Apache-Konfiguration testen

Vor jeder Änderung empfiehlt sich:

sudo apache2ctl configtest

Ausgabe:

Syntax OK

Erst danach neu laden:

sudo systemctl reload apache2

Performance-Tipps

Für kleine und mittlere Server reichen die Standardwerte meist aus.

Sinnvolle Ergänzungen:

  • HTTP/2 aktivieren
  • Gzip-Komprimierung aktivieren
  • KeepAlive nutzen
  • Caching konfigurieren
  • PHP über PHP-FPM betreiben
  • Fail2Ban gegen Angriffe einsetzen
  • UFW-Firewall verwenden


Apache2 lässt sich unter Debian 13 innerhalb weniger Minuten installieren und produktiv einsetzen. Durch die einfache Verwaltung, die große Modul-Auswahl und die hervorragende Dokumentation eignet sich Apache sowohl für kleine Webseiten als auch für komplexe Webanwendungen.

Wer zusätzlich HTTPS, eine Firewall und einige grundlegende Sicherheitsmaßnahmen einrichtet, erhält eine stabile und sichere Plattform für den Betrieb von Webseiten, Blogs, Anwendungen oder APIs.