# 🖥️ Server – sparfuchs-koblenz ## Server (Hetzner Cloud) | Eigenschaft | Wert | |-------------|---------------------------------------| | Provider | Hetzner Cloud | | Projekt | Sparfuchs | | Server-ID | #XXXXXXX | | Name | sparfuchs-koblenz | | Typ | CPX22 (2 vCPU, 4 GB RAM, 80 GB SSD) | | Standort | Falkenstein (eu-central) | | Image | Ubuntu 24.04 | | IPv4 | xxx.xxx.xxx.xxx | | IPv6 | xxxx:xxxx:xxxx::/64 | | Preis | 7,99 € + 0,50 € IPv4 = 8,49 € / Monat | ## SSH-Zugang ```bash ssh [email protected] ``` - **Benutzer:** `sparfuchs` (sudo ohne Passwort) - **SSH-Key:** `~/.ssh/id_ed25519` - **Fingerprint:** `SHA256:XXXXXXXXXX` - **Root-Login:** deaktiviert - **Passwort-Login:** deaktiviert ## Firewall (Hetzner) | Port | Protokoll | Dienst | |------|-----------|--------| | 22 | TCP | SSH | | 80 | TCP | HTTP | | 443 | TCP | HTTPS | | – | ICMP | Ping | ## Cloud Config (beim Erstellen angewendet) - Benutzer `sparfuchs` erstellt mit sudo & SSH-Key - `fail2ban` installiert & aktiviert (Brute-Force-Schutz SSH) - `ufw` Firewall auf Server-Ebene aktiviert (Ports 22, 80, 443, ICMP) - SSH gehärtet (kein Root, kein Passwort, MaxAuthTries 3) - Pakete beim ersten Start aktualisiert - Automatischer Neustart nach Setup ## Snapshot - Snapshot nach Ersteinrichtung erstellt (Server gestoppt → Snapshot → Server gestartet) - Dient als saubere Basis-Wiederherstellung ## Domain & DNS (Cloudflare) | Eigenschaft | Wert | |-------------|-----------------------------| | Domain | sparfuchs-koblenz.com | | Registrar | Cloudflare Registrar | | Account | [email protected] | | Plan | Free | | Proxy | Aktiv (Mit Proxy đźź ) | | SSL | Full (strict) | ### DNS-Records | Typ | Name | Wert | Proxy | TTL | |-----|-------|--------------|--------|------| | A | `@` | xxx.xxx.xxx.xxx | âś… Ja | Auto | | A | `www` | xxx.xxx.xxx.xxx | âś… Ja | Auto | > ⚠️ Hetzner DNS-Zone fĂĽr sparfuchs-koblenz.de kann gelöscht werden – nicht mehr benötigt. ## Reverse Proxy: Caddy - Caddy installiert & konfiguriert - Weiterleitung → FastAPI Port 8000 - SSL: Cloudflare Origin Certificate (Full strict) ## Anwendung: Sparfuchs - Code auf VPS deployed & läuft - FastAPI + SQLite - systemd-Services aktiv (FastAPI + Import-Timer 02:00) - JWT-Auth fĂĽr Admin-Bereich aktiv - Gruppe "Grundnahrungsmittel" per is_locked gesperrt - **Ă–ffentlich erreichbar unter: https://www.sparfuchs-koblenz.com** âś… ## Nächste Schritte - [x] Server erstellen & absichern - [x] Snapshot als Basis erstellt - [x] DNS via Cloudflare eingerichtet (Proxy aktiv) - [x] Caddy installiert & konfiguriert - [x] Sparfuchs-Code deployed & läuft - [x] SQLite-DB migriert - [x] systemd-Services eingerichtet - [x] JWT-Auth aktiviert - [x] Funktionstest – erreichbar unter www.sparfuchs-koblenz.com - [ ] Hetzner DNS-Zone `sparfuchs-koblenz.de` löschen - [ ] E-Mail: Entscheidung offen – ob und wo einrichten (MX-Record, Anbieter, oder keine) ## Links - [Sparfuchs](https://www.sparfuchs-koblenz.com) - [Hetzner Console – Server](https://console.hetzner.com/projects/PROJEKT-ID/servers/XXXXXXX/overview) - [Cloudflare DNS](https://dash.cloudflare.com/XXXXXXXX/sparfuchs-koblenz.com/dns/records) - [Cloud Config Tutorial](https://community.hetzner.com/tutorials/basic-cloud-config/de) - [JWT-Auth Plan](Sparfuchs-JWT-Auth-Plan.md) --- [[Hinweise/Impressum|Impressum]] | [[Hinweise/Datenschutzerklärung|Datenschutz]]