====== 🛠️ Webserver & Firewall (Debian) ======
In diesem Kapitel wird die detaillierte Einrichtung des Applikationsservers auf Basis von **Debian 12** sowie die entsprechende Absicherung durch die System-Firewall dokumentiert.
===== 1. Installation und Konfiguration des Webservers =====
Als fundamentale Host-Umgebung für die Wissensdatenbank dient der **Apache2** Webserver. Die Installation umfasst neben dem Basispaket auch die Aktivierung notwendiger Module für die Performance und Sicherheit.
**Durchgeführte Befehle:**
# Systempakete aktualisieren
sudo apt update && sudo apt upgrade -y
# Apache2 Webserver installieren
sudo apt install apache2 -y
# Notwendige Module für DokuWiki (URL-Rewrite & Verschlüsselung) aktivieren
sudo a2enmod rewrite
sudo a2enmod ssl
# Dienst neu starten, um Änderungen zu übernehmen
sudo systemctl restart apache2
===== 2. Netzwerk-Sicherheit (UFW Firewall) =====
Zur Härtung des Betriebssystems wurde die **Uncomplicated Firewall (UFW)** implementiert. Die Konfiguration folgt dem Prinzip des "Least Privilege", bei dem nur die absolut notwendigen Ports freigegeben wurden.
**Konfigurierte Regelmatrix:**
^ Port ^ Protokoll ^ Dienst / Funktion ^
| 22 | TCP | SSH (Remote Management) |
| 80 | TCP | HTTP (Standard Web-Traffic) |
| 443 | TCP | HTTPS (Verschlüsselter Web-Traffic) |
**Befehle zur Aktivierung und Regelsetzung:**
sudo apt install ufw -y
sudo ufw allow 22/tcp
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw enable
===== 3. Deployment & Berechtigungsmanagement =====
Um Laufzeitfehler (wie z.B. "Not Writable") innerhalb der Applikation zu vermeiden, wurde die Verzeichnisstruktur für den Webserver-Prozess optimiert. Die Besitzerrechte wurden explizit auf den technischen Benutzer des Webservers übertragen.
**Anpassung der Dateirechte:**
# Besitzer rekursiv an den Webserver-User (www-data) übertragen
sudo chown -R www-data:www-data /var/lib/dokuwiki/
sudo chown -R www-data:www-data /usr/share/dokuwiki/
sudo chown -R www-data:www-data /etc/dokuwiki/
# Verzeichnisberechtigungen setzen
sudo chmod -R 775 /var/lib/dokuwiki/
===== 4. Apache VirtualHost Konfiguration =====
Für die korrekte Auflösung der Domain innerhalb der Umgebung wurde eine spezifische Konfigurationsdatei erstellt.
**Pfad der Konfiguration:** ''/etc/apache2/sites-available/dokuwiki.conf''
**Technische Kernpunkte:**
* Festlegung des **DocumentRoot** auf das zentrale DokuWiki-Verzeichnis.
* Aktivierung der **AllowOverride All** Direktive. Dies ist zwingend erforderlich, um "Clean URLs" über die interne ''.htaccess'' Datei zu ermöglichen und die Benutzerfreundlichkeit der Navigation zu erhöhen.