gandalf.hofmanns/CHAT-SUMMARY-COMPLETE.md

12 KiB

Hofmanns.AI - Complete Infrastructure Setup

Chat Summary - Dezember 2025
Erstellt für: Dee / DOUANA® / ZFEB GmbH


🎯 Das Problem

  • 48 Jahre alt, Enterprise-Kunden (Banken, Konzerne)
  • Jeden Tag 1-2 Stunden verloren mit: Logins, Passwörter, Email-Codes, Verify-Me, 2FA-Apps
  • Jedes Device, jede App, jeder Service will eigenen Login
  • Kein Bock mehr auf Console-Gefrickel
  • Meta Quest 3 als primäres Arbeitsgerät → braucht Browser-UI

Das Ziel: Ein Finger/Gesicht → alles offen. Fertig.


🏗️ Die Architektur

┌─────────────────────────────────────────────────────────────────┐
│                    AUTHENTIK SSO                                │
│              auth.hofmanns.ai (Passkeys/WebAuthn)              │
│         Face ID / Fingerprint = einmal einloggen = fertig      │
└─────────────────────────────────────────────────────────────────┘
                              │
        ┌─────────────────────┼─────────────────────┐
        │                     │                     │
        ▼                     ▼                     ▼
┌───────────────┐    ┌───────────────┐    ┌───────────────┐
│  INFOMANIAK   │    │    JETSON     │    │   DEVICES     │
│   SERVER      │    │   ORIN NANO   │    │               │
│  (öffentlich) │◄──►│   (privat)    │◄──►│ Quest 3       │
│               │    │               │    │ Android       │
│ - Git Repos   │    │ - Kundendaten │    │ Laptop        │
│ - Dev/Pilot   │    │ - Source Code │    │ TV            │
│ - Auth Server │    │ - Dokumente   │    │               │
│ - RustDesk ID │    │ - Home Hub    │    │               │
└───────────────┘    └───────────────┘    └───────────────┘

📍 Server Overview

Infomaniak Server (öffentlich)

Info Wert
IP 185.143.102.153
OS Debian 12 (bookworm)
User debian
SSH Port 22 mit RSA Key
Projekt /home/debian/hofmanns.ai
Command hof → navigiert zum Projekt

Domains (alle auf diesem Server):

  • hofmanns.ai
  • hofmanns.tech
  • hofmanns.app
  • hofmanns.shop
  • hofmanns.ltd
  • hofmann-s.com

Was läuft dort:

  • Git Repository (git.hofmanns.ai)
  • Dev/Pilot Umgebungen
  • AI Agents arbeiten hier (Claude, Manus, Perplexity)
  • Docker installiert

Was NOCH drauf kommt:

  • Authentik (SSO mit Passkeys)
  • RustDesk ID Server (hbbs/hbbr)
  • Cloudflare Tunnel oder direkt

Jetson Orin Nano (privat, zu Hause)

Info Wert
IP 192.168.1.50
OS JetPack 6.x (Ubuntu-based)
User d
Storage 1TB NVMe
GPU NVIDIA (für AI)
Standort Am TV, zentral in Wohnung

Was läuft dort:

  • Kundendaten
  • Source Code (produktiv)
  • Wichtige Dokumente
  • Home Assistant
  • AdGuard DNS
  • Whisper (Sprache → Text)
  • Jellyfin (Media)
  • Private Cloud (FileBrowser)
  • Syncthing
  • Ollama (LLMs)

🔐 SSO mit Passkeys (WebAuthn)

Keine Passwörter. Keine Email-Codes. Kein 2FA-App Stress.

So funktioniert es:

  1. Einmalig einrichten: Passkey auf jedem Gerät registrieren
  2. Danach: Finger auf Sensor oder Gesicht zeigen → eingeloggt
  3. Session: Bleibt aktiv, kein ständiges neu einloggen

Unterstützte Geräte:

Gerät Auth-Methode
Android Handy Fingerprint / Face
Meta Quest 3 Handy als Authenticator (zeigt in VR)
Laptop Fingerprint / Windows Hello
iPad/iPhone Face ID / Touch ID

Authentik Setup:

auth.hofmanns.ai
    │
    ├── Passkey Registration
    ├── Session Management
    ├── Application Proxy
    │
    └── Geschützte Apps:
        ├── portal.hofmanns.ai (Dashboard)
        ├── git.hofmanns.ai
        ├── home.hofmanns.ai (Home Assistant)
        ├── files.hofmanns.ai (FileBrowser)
        ├── whisper.hofmanns.ai
        └── ... alle anderen Services

🖥️ Das Dashboard

Ein Tab. Alles drin. Vollbild. Kein OS-Scheiss.

┌─────────────────────────────────────────────────────────────────┐
│                  portal.hofmanns.ai                             │
│              (nach Passkey-Auth = sofort da)                    │
├─────────────────────────────────────────────────────────────────┤
│                                                                 │
│   ┌─────────────┐  ┌─────────────┐  ┌─────────────┐            │
│   │    Home     │  │   Whisper   │  │  Jellyfin   │            │
│   │  Assistant  │  │  Speech→Text│  │    Media    │            │
│   │             │  │     (GPU)   │  │             │            │
│   └─────────────┘  └─────────────┘  └─────────────┘            │
│                                                                 │
│   ┌─────────────┐  ┌─────────────┐  ┌─────────────┐            │
│   │  Portainer  │  │    Files    │  │   Syncthing │            │
│   │   Docker    │  │    Cloud    │  │    Sync     │            │
│   │             │  │             │  │             │            │
│   └─────────────┘  └─────────────┘  └─────────────┘            │
│                                                                 │
│   ┌─────────────┐  ┌─────────────┐  ┌─────────────┐            │
│   │     Git     │  │   RustDesk  │  │   Ollama    │            │
│   │    Repos    │  │   Remote    │  │    LLM      │            │
│   │             │  │   Desktop   │  │             │            │
│   └─────────────┘  └─────────────┘  └─────────────┘            │
│                                                                 │
└─────────────────────────────────────────────────────────────────┘

🔌 RustDesk (Self-Hosted TeamViewer)

Kein WireGuard Console-Gefrickel. GUI everywhere.

Server (auf Infomaniak):

rustdesk-hbbs:  # ID/Rendezvous Server
  ports: 21115, 21116, 21118

rustdesk-hbbr:  # Relay Server  
  ports: 21117, 21119

Client Setup:

  1. RustDesk App installieren (alle Plattformen)
  2. Settings → Network → ID/Relay Server
  3. ID Server: 185.143.102.153 (oder rustdesk.hofmanns.ai)
  4. Relay Server: 185.143.102.153
  5. Key: (wird beim ersten Start generiert)

Zugriff:

  • Von Quest 3 Browser → RustDesk Web Client
  • Von Handy → RustDesk App
  • Von Laptop → RustDesk App
  • Auf alle Rechner: Jetson, Gaming PC, Server

📱 Jetson Orin Nano - Services

Port Domain Service
3001 portal.hofmanns.ai Homepage Dashboard
81 - Nginx Proxy Manager
9443 docker.hofmanns.ai Portainer
9090 system.hofmanns.ai Cockpit
8123 home.hofmanns.ai Home Assistant
3000 dns.hofmanns.ai AdGuard Home
7860 whisper.hofmanns.ai Whisper WebUI
8096 media.hofmanns.ai Jellyfin
8081 files.hofmanns.ai FileBrowser
8384 sync.hofmanns.ai Syncthing
11434 llm.hofmanns.ai Ollama

🌐 Netzwerk Setup

Zu Hause:

5G Antenne (500 CHF)
    │
    ▼
Netgear Nighthawk M5
(DHCP 192.168.1.x, DNS=192.168.1.50)
    │
    ▼
Netgear 8-Port Switch
    │
    ├── Jetson Orin Nano (192.168.1.50)
    │   └── USB WiFi → AP "Home.8"
    │
    └── Gaming PC (RTX 4080)

Tunnel nach draussen:

Jetson ──► Cloudflare Tunnel ──► *.hofmanns.ai
   │
   └── RustDesk ──► Infomaniak Server ──► Clients überall

📋 Hardware Übersicht

Gerät Zweck Status
Jetson Orin Nano 8GB Home Hub, AI, Private Cloud Setup pending
Gaming PC (Ryzen 9, RTX 4080, 64GB) Workstation, Gaming Aktiv
Netgear Nighthawk M5 5G Router, 800 Mbit Aktiv
TP-Link USB WiFi Antenne AP für Jetson Vorhanden
Meta Quest 3 VR, primäres Arbeitsgerät Aktiv
5x Raspberry Pi 5 Übrig, verkaufen oder Projekte Unused
Infomaniak Root Server Public Services, Auth, Git Aktiv

🚀 Installation - Reihenfolge

Phase 1: Jetson Setup (zu Hause)

  1. JetPack auf NVMe flashen (SDK Manager)
  2. setup.sh ausführen
  3. Docker Services starten
  4. WiFi AP "Home.8" aktivieren
  5. AdGuard DNS konfigurieren

Phase 2: Infomaniak Server

  1. SSH verbinden: ssh hofmanns.ai
  2. Authentik installieren (Docker)
  3. RustDesk Server installieren
  4. Cloudflare Tunnel oder Nginx konfigurieren
  5. DNS Records für alle Subdomains

Phase 3: SSO Integration

  1. Authentik Passkeys einrichten
  2. Alle Services als Applications registrieren
  3. Proxy-Provider für jeden Service
  4. Passkey auf allen Geräten registrieren

Phase 4: Dashboard

  1. Homepage auf Jetson konfigurieren
  2. Alle Services einbinden
  3. Authentik Forward Auth
  4. Testen von allen Devices

📁 Dateien in diesem Setup

jetson-setup/
├── setup.sh                    # Haupt-Setup für Jetson
├── docker-compose.yml          # Alle lokalen Services
├── CHAT-SUMMARY.md            # Diese Datei
├── adguard-dns-rewrites.txt   # DNS Einträge
├── homepage/
│   ├── services.yaml
│   ├── settings.yaml
│   ├── widgets.yaml
│   ├── docker.yaml
│   └── bookmarks.yaml
└── whisper-webui-jetson/
    ├── Dockerfile
    └── app.py

🔑 Wichtige Credentials (ÄNDERN!)

Was Default Ändern auf
WiFi "Home.8" 123 Sicheres Passwort
Nginx Proxy Manager admin@example.com / changeme Eigene
FileBrowser admin / admin Eigene
Portainer (bei Setup) Eigene
Authentik (bei Setup) Eigene

🎯 Das Endergebnis

Morgens aufstehen:

  1. Quest 3 aufsetzen
  2. Browser öffnen → portal.hofmanns.ai
  3. Handy kurz ans Gesicht halten (Face ID)
  4. Fertig. Alles offen. Den ganzen Tag.

Unterwegs:

  1. Laptop/Handy öffnen
  2. portal.hofmanns.ai
  3. Finger auf Sensor
  4. Fertig. Voller Zugriff auf alles.

Keine Passwörter. Keine Codes. Keine Apps. Keine Scheisse.


📞 Nächste Schritte

  1. Jetson JetPack flashen
  2. setup.sh ausführen auf Jetson
  3. Authentik auf Infomaniak installieren
  4. RustDesk Server auf Infomaniak
  5. DNS Records für Subdomains
  6. Cloudflare Tunnel einrichten
  7. Passkeys registrieren
  8. Testen mit Quest 3

Erstellt: Dezember 2025
Chat mit: Claude (Anthropic)
Für: Dee / hofmanns.ai / DOUANA®