Caddy Webserver – Setup & Support 2026
Stand: 10.09.2026 (verifiziert)
Diese Seite dokumentiert den aktuell produktiven Webserver-Aufbau für epping-haus.de.
Überblick
Der Caddy-LXC dient als zentraler HTTPS-Endpunkt für Website, DokuWiki und Mailzugriffe. Diese Seite bündelt die wichtigsten Architektur- und Betriebsinformationen für Wartung, Validation und Fehleranalyse.
Verwandte Seiten
1. Architektur
Der öffentliche Webserver läuft als separater, unprivilegierter Debian-LXC auf Proxmox.
Internet
|
| HTTPS TCP/443
v
OpenWrt / ImmortalWrt
192.168.178.10
|
| DNAT TCP/443
v
Caddy LXC
192.168.178.150
CT 150
|
+-- Caddy
+-- PHP 8.4-FPM
+-- statische Website
+-- DokuWiki
Die vorhandene Mailcow-Konfiguration bleibt getrennt:
| WAN-Port | Ziel | Verwendung |
|---|---|---|
| TCP/25 | 192.168.178.146:25 | Mailcow SMTP |
| TCP/80 | 192.168.178.146:80 | bestehender Mailcow HTTP-Zugriff |
| TCP/443 | 192.168.178.150:443 | Caddy HTTPS |
2. LXC System
| Parameter | Wert |
|---|---|
| Proxmox CTID | 150 |
| Hostname | caddy |
| Betriebssystem | Debian GNU/Linux 13.6 amd64 |
| LXC | unprivileged |
| CPU | 2 Cores |
| RAM | 2048 MB |
| Swap | 1024 MB |
| RootFS | local-zfs, 8 GB |
| LAN-IP | 192.168.178.150/24 |
| Gateway | 192.168.178.10 |
| DNS | 192.168.178.10 |
| Bridge | vmbr0 |
3. Benutzerverwaltung
Administrativer Standardnutzer:
berthold
Der Benutzer ist Mitglied der Gruppe:
sudo
Der direkte Root-Login wird vermieden.
4. Fernwartung
OpenSSH ist installiert und aktiviert:
systemctl enable --now ssh
SSH verwendet standardmäßig Port 22.
5. Caddy
| Parameter | Wert |
|---|---|
| Caddy-Version | v2.11.4 |
| Dienst | caddy.service |
| Autostart | aktiviert |
| Konfigurationsdatei | /etc/caddy/Caddyfile |
Caddy läuft als systemd-Service.
Status:
systemctl status caddy --no-pager
systemctl is-active caddy
6. Website
Die statische Website liegt unter:
/var/www/html/
Aktive Startseite:
/var/www/html/index.html
Rechte:
berthold:berthold
644
7. DNS
Die öffentliche Domain verwendet:
| Hostname | Typ | Ziel |
|---|---|---|
| epping-haus.de | A | aktuelle öffentliche IPv4 |
| www.epping-haus.de | CNAME | epping-haus.de. |
Aktuell verifiziert:
epping-haus.de -> 149.224.183.96
www.epping-haus.de -> CNAME -> epping-haus.de
Die DynDNS-Aktualisierung erfolgt weiterhin über das vorhandene Netcup-DynDNS-Skript.
8. HTTPS / Let's Encrypt
Caddy verwaltet die TLS-Zertifikate automatisch.
Webzugriff:
https://epping-haus.de
https://www.epping-haus.de
Let's Encrypt wurde erfolgreich validiert.
9. Caddyfile in Verwendung
epping-haus.de, www.epping-haus.de {
root * /var/www/html
file_server
}
wiki.epping-haus.de {
root * /var/www/dokuwiki
php_fastcgi unix//run/php/php8.4-fpm.sock
file_server
# Interne DokuWiki-Verzeichnisse und Installer schützen
@blocked {
path /data/* /conf/* /bin/* /inc/* /vendor/* /install.php
}
error @blocked 403
}
mail.epping-haus.de, autoconfig.epping-haus.de, autodiscover.epping-haus.de {
reverse_proxy 192.168.178.146:443 {
header_up Host {host}
transport http {
tls
tls_server_name mail.epping-haus.de
}
}
}
10. DokuWiki
DokuWiki läuft im selben LXC als PHP-Anwendung.
| Parameter | Wert |
|---|---|
| URL | https://wiki.epping-haus.de |
| Installationspfad | /var/www/dokuwiki |
| PHP | 8.4 |
| PHP-FPM | /run/php/php8.4-fpm.sock |
Die DokuWiki-Startseite antwortet intern mit:
HTTP/2 302
Location: /doku.php?id=start
Dies ist der normale DokuWiki-Startredirect.
Die Installationsdatei ist geschützt:
/install.php -> HTTP 403
11. Wartung
caddy validate --config /etc/caddy/Caddyfile
systemctl reload caddy
systemctl status caddy --no-pager
ss -lntp | grep ':443'
journalctl -u caddy -n 100 --no-pager
journalctl -u caddy -f
12. Proxmox-Host – Diagnose
pct status 150
pct exec 150 -- systemctl status caddy --no-pager
pct exec 150 -- caddy version
pct exec 150 -- caddy validate --config /etc/caddy/Caddyfile
pct exec 150 -- ss -lntp | grep ':443'
13. Sicherheitsregeln
- Vor Änderungen Caddy-Konfiguration sichern.
- Vor OpenWrt-Firewalländerungen immer Backup erstellen.
- Das SMGW und die smgw_zone nicht verändern.
- Mailcow TCP/25 und TCP/80 nicht ohne vorherige Prüfung verändern.
/data,/conf,/bin,/inc,/vendorund/install.phpdürfen nicht öffentlich zugänglich sein.
14. Rollback
Backup vor der HTTPS-Aktivierung:
cp /etc/caddy/Caddyfile.before-https-20260904-123628 /etc/caddy/Caddyfile
caddy validate --config /etc/caddy/Caddyfile
systemctl reload caddy
Stand der Dokumentation: September 2026