| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung |
| home_infrastruktur:systemanpassungen [2026/05/25 11:02] – Externe Bearbeitung 127.0.0.1 | home_infrastruktur:systemanpassungen [2026/08/11 06:31] (aktuell) – [Reverse Proxy] nick |
|---|
| ====== Home IT-Infrastruktur & Systemanpassungen ====== | ====== Home IT-Infrastruktur & Systemanpassungen ====== |
| |
| Dieses Dokument fasst die wichtigsten Erkenntnisse und Konfigurationen der Home IT-Infrastruktur zusammen. | ===== NAS2 Wiederherstellung (12. Juli 2026) ===== |
| | |
| | **Ausgangslage:** Das Synology NAS2 (DS1019+, 192.168.128.222) wurde am 12. Juli 2026 neu aufgesetzt. Alle Konfigurationen gingen verloren, die eigentlichen Daten (Shared Folders, VM-Images) blieben erhalten. |
| | |
| | ==== Zertifikat ==== |
| | Let's Encrypt Zertifikat für ''nas2.lynx-consulting.ch'' erfolgreich neu beantragt via DSM-Wizard (HTTP-01 Challenge). Gültig bis 10.10.2026. |
| | |
| | **SAN-Einträge:** |
| | adguard.lynx-consulting.ch;drucker.lynx-consulting.ch;git.lynx-consulting.ch;grafana.lynx-consulting.ch;ha.lynx-consulting.ch;nas2.lynx-consulting.ch;plex.lynx-consulting.ch;prometheus.lynx-consulting.ch;wiki.lynx-consulting.ch |
| | |
| | **⚠️ Kritische Regel:** SANs im DSM-Zertifikatsdialog zwingend mit Semikolons ('';'') ohne Leerzeichen trennen! |
| | **Fehlende SAN:** ''llms.lynx-consulting.ch'' — DNS-Eintrag fehlt noch bei Hetzner (Account-Aussperrung). |
| | **Logs bei Problemen:** ''/var/log/messages'' auf dem NAS2. |
| | |
| | ==== Reverse Proxy ==== |
| | Alle Einträge mussten neu erstellt werden (Anmeldeportal → Erweitert → Reverse Proxy): |
| | |
| | ^ Dienst ^ Quelle ^ Port ^ Ziel ^ Port ^ |
| | | AdGuard | ''adguard.lynx-consulting.ch'' | 443 (HTTPS) | 192.168.128.200 | 3000 (HTTPS) | |
| | | Gitea | ''git.lynx-consulting.ch'' | 443 (HTTPS) | 192.168.128.200 | 3001 | |
| | | DokuWiki | ''wiki.lynx-consulting.ch'' | 443 (HTTPS) | 192.168.128.200 | 8085 | |
| | | Drucker | ''drucker.lynx-consulting.ch'' | 443 (HTTPS) | 192.168.128.254 | 443 (HTTPS) | |
| | | Home Assistant | ''ha.lynx-consulting.ch'' | 443 (HTTPS) | 192.168.128.22 | 8123 (HTTP) | |
| | | Plex | ''plex.lynx-consulting.ch'' | 443 (HTTPS) | localhost | 32400 (HTTPS) | |
| | | Grafana | ''grafana.lynx-consulting.ch'' | 443 (HTTPS) | 192.168.128.200 | 3002 (HTTP) | |
| | | Prometheus | ''prometheus.lynx-consulting.ch'' | 443 (HTTPS) | 192.168.128.200 | 9090 | |
| | |
| | **WebSocket-Header für HA:** Reverse-Proxy-Eintrag → Benutzerdefinierte Kopfzeile → Erstellen → WebSocket. Ohne diesen Header keine WebSocket-Verbindung zu HA. |
| | |
| | ==== Drucker (HP PageWide Pro 477dw) ==== |
| | * IP: 192.168.128.254 |
| | * **Reverse-Proxy Konfiguration:** HTTPS → HTTPS (443 → 443) |
| | |
| | **⚠️ Kritischer Host-Header-Fix:** Der HP-Drucker setzt Session-Cookies für seine eigene IP-Adresse. Der Synology-Reverse-Proxy überschreibt standardmäßig den Host-Header auf die externe Domain ("drucker.lynx-consulting.ch"). Der Drucker akzeptiert die Cookies dann nicht → alle dynamischen Kacheln (Füllstände, Scan, Fax, Energie) schlagen mit 403 Forbidden fehl! |
| | |
| | **Lösung — Benutzerdefinierte Kopfzeile:** |
| | * **Name:** ''Host'' |
| | * **Wert:** ''192.168.128.254'' |
| | |
| | Damit sieht der Drucker seine eigene IP im Host-Header, setzt und akzeptiert Cookies korrekt, und alle dynamischen Inhalte laden einwandfrei. |
| | |
| | **NICHT benötigt:** WebSocket-Header, X-Forwarded-Proto, X-Forwarded-Host — die wurden alle getestet und hatten keinen Effekt. Einzig der Host-Header-Fix löste das Problem. |
| | |
| | ==== Home Assistant (VM) ==== |
| | * IP: 192.168.128.22 (statisch) |
| | * HAOS 10.1, Core von 2023.7.1 → 2024.7.2 aktualisiert |
| | * Läuft als VM im Virtual Machine Manager auf NAS2 |
| | * **Problem:** Nach DSM-Reset kein Netzwerkadapter → VMM → Bearbeiten → "Default VM Network" zuweisen |
| | * **Synology-DSM-Integration:** Neuer Benutzer ''homeassistant'' (muss in Gruppe ''administrators'' sein), Port 5679, SSL-Prüfung deaktiviert |
| | |
| | ==== AdGuard Home ==== |
| | * Port 3000 (Host-Netzwerk), Version v0.107.77 |
| | * **Passwort-Reset:** v0.107 hat KEIN CLI-Reset und KEINE Web-UI-Passwortänderung! Workaround: bcrypt-Hash generieren und in ''/opt/adguardhome/conf/AdGuardHome.yaml'' ersetzen |
| | * Container ist Alpine-basiert → nur ''sh'', kein ''bash'' |
| | * **⚠️ Wichtig:** Vor Zertifikatserneuerung muss AdGuard deaktiviert werden (DNS-Rewrites leiten sonst auf private IPs um und Let's Encrypt lehnt ab) |
| | |
| | ==== Grafana ==== |
| | * Port-Mapping: Docker intern 3000 → Host 3001 (3000 von AdGuard belegt) |
| | * Reverse-Proxy: ''grafana.lynx-consulting.ch'' → localhost:3001 (HTTP) |
| | * **Tippfehler-Falle:** "consulting" mit **g** am Ende — ''consultin.ch'' führt zu nicht erreichbarer Seite |
| | |
| | ==== DokuWiki ==== |
| | * DokuWiki-Container überlebte den DSM-Reset (Docker-Daten erhalten) |
| | * **Problem:** Der Config-Manager war durch das ''markdownextra''-Plugin (Version 2013) blockiert — ParseError beim Laden |
| | * **Lösung:** Plugin über die Erweiterungsverwaltung deaktiviert (nicht gelöscht). Danach Config-Manager wieder funktionsfähig |
| | * **Config gesetzt:** ''baseurl'' auf "https://wiki.lynx-consulting.ch", ''remote'' API-Zugang aktiviert |
| | * **XML-RPC/JSON-RPC:** Core-API (seit DokuWiki 2018 im Kern) läuft, aber Aufrufe werden aktuell mit "forbidden" abgewiesen — wird separat behoben |
| | * **Credentials:** User ''gaston'' (Gruppe: admin) für API-Zugriffe |
| | * Seiten können zuverlässig via CSRF-Formular geschrieben werden (Fallback bis JSON-RPC läuft) |
| | |
| | ==== DSM-Konfigurationssicherung ==== |
| | * Aktiviert → Synology-Konto (Cloud), letzte Sicherung 12.07.2026 12:34 |
| | * Sichern NUR DSM-Konfiguration. **Nicht gesichert:** Docker-Volumes, Reverse-Proxy, Zertifikate, VM-Konfigurationen |
| | * Für vollständige Backups: Hyper Backup oder manuelles Backup von ''/volume1/docker/'' |
| | |
| | ==== Noch offen ==== |
| | * [[https://prometheus.lynx-consulting.ch|Prometheus]] (Reverse-Proxy und Dienst) |
| | * Hetzner DNS-Eintrag für ''llms.lynx-consulting.ch'' (Account-Aussperrung) |
| | * Homebridge wurde durch HA-eigene HomeKit-Bridge ersetzt (wird nicht wiederhergestellt) |
| | * JSON-RPC-Zugriff reparieren (Core-API blockt aktuell) |
| | |
| | ==== Gelernte Lektionen ==== |
| | - Vor jedem Reset komplette ''.dss''-Sicherung exportieren **und lokal speichern** |
| | - Docker-Konfigurationen separat sichern (nicht von DSM-Backup abgedeckt) |
| | - AdGuard vor Let's-Encrypt-Erneuerung deaktivieren |
| | - HA hinter Reverse-Proxy braucht immer ''trusted_proxies'' + WebSocket-Header |
| | - SANs im DSM nur mit Semikolons, ohne Leerzeichen |
| | - HP-Drucker hinter Reverse-Proxy: Host-Header auf Drucker-IP setzen (Cookie-Problem!) |
| | - DokuWiki nach Reset: ''markdownextra''-Plugin kann Config-Manager blockieren |
| |
| ===== Wichtige Links & Dienste (Reverse Proxy) ===== | ===== Wichtige Links & Dienste (Reverse Proxy) ===== |
| * **Hintergrund:** Plex läuft nicht im Docker, sondern als manuell installiertes Paket, um die Datenbank und Rechtestruktur nicht zu gefährden. | * **Hintergrund:** Plex läuft nicht im Docker, sondern als manuell installiertes Paket, um die Datenbank und Rechtestruktur nicht zu gefährden. |
| * **Updates:** Da Synology im Paketzentrum oft sehr alte Plex-Versionen anbietet, muss das Update manuell erfolgen. Dazu im Plex-Webinterface die Update-Datei (.spk) herunterladen und im Synology Paketzentrum oben rechts auf Manuelle Installation klicken. Dies ist der sicherste Weg, um die Mediathek beim Update nicht zu beschädigen. | * **Updates:** Da Synology im Paketzentrum oft sehr alte Plex-Versionen anbietet, muss das Update manuell erfolgen. Dazu im Plex-Webinterface die Update-Datei (.spk) herunterladen und im Synology Paketzentrum oben rechts auf Manuelle Installation klicken. Dies ist der sicherste Weg, um die Mediathek beim Update nicht zu beschädigen. |
| |