# SERVER.md — rejestr serwera **Źródło prawdy o tym, co stoi na maszynie.** Każda zmiana stanu serwera = wpis tutaj, w tej samej sesji. Jeśli czegoś nie ma w tym pliku — z punktu widzenia dokumentacji to nie istnieje. Ostatnia aktualizacja: _(uzupełnić przy pierwszym bootstrapie)_ --- ## 1. Maszyna | Pozycja | Wartość | |---|---| | Dostawca | OVH | | Model | VPS-2 2026 | | Host OVH | `vps-c936b594.vps.ovh.net` | | vCore / RAM / dysk | 6 / 12 GB / 100 GB SSD NVMe | | System | Ubuntu 24.04 LTS | | Lokalizacja | _(uzupełnić)_ | | IPv4 | `54.38.159.156` | | IPv6 | _(uzupełnić)_ | | Snapshot OVH | włączony, 1 slot, ręczny | | Data ostatniego snapshota | _(uzupełniać przy każdym)_ | --- ## 2. Domeny | Domena | Rola | Rejestrator | DNS | |---|---|---|---| | `dfkk.cloud` | infrastruktura + subdomeny projektów | OVH | OVH | | _(domena 2)_ | wolna, pod projekt | OVH | OVH | | _(domena 3)_ | wolna, pod projekt | OVH | OVH | Certyfikaty: Let's Encrypt, wildcard `*.dfkk.cloud`, wyzwanie **DNS-01** przez API OVH. Klucze API OVH: przechowywane w `/srv/infra/stacks/traefik/.env` (poza repo). ### Zajęte subdomeny | Subdomena | Usługa | Publiczna? | Uwagi | |---|---|---|---| | `git.dfkk.cloud` | Gitea | tak | rejestracja wyłączona | | `status.dfkk.cloud` | Uptime Kuma | tak | za basic auth | | `traefik.dfkk.cloud` | Traefik dashboard | nie | tylko przez tunel SSH | --- ## 3. Użytkownicy systemowi | Użytkownik | Rola | sudo | Uwagi | |---|---|---|---| | `root` | — | — | logowanie po SSH wyłączone przez OVH i przez nas | | `ubuntu` | praca codzienna, Docker, Claude Code | tak | konto domyślne obrazu OVH | --- ## 4. Klucze SSH Każde urządzenie ma **własny** klucz. Zgubiony laptop = usunięcie jednej linii z `authorized_keys`, bez ruszania pozostałych. | Urządzenie | Typ | Komentarz w kluczu | Dodany | Status | |---|---|---|---|---| | MacBook | ed25519 | `kamil@macbook` | _(data)_ | _(aktywny)_ | | Windows | ed25519 | `kamil@windows` | _(data)_ | _(aktywny)_ | | iPhone (Termius/Blink) | ed25519 | `kamil@iphone` | _(data)_ | _(aktywny)_ | | _(klucz istniejący, do weryfikacji)_ | ? | ? | ? | **do sprawdzenia przy bootstrapie** | --- ## 5. Porty otwarte na świat | Port | Usługa | Uzasadnienie | |---|---|---| | 22 | SSH | dostęp administracyjny, tylko klucze | | 80 | Traefik | przekierowanie na 443 | | 443 | Traefik | cały ruch HTTPS | **Nic więcej.** Każdy dodatkowy port wymaga wpisu tutaj z uzasadnieniem. Pamiętaj: opublikowany port kontenera omija ufw — patrz `CLAUDE.md`, sekcja 3.3. --- ## 6. Stacki infrastruktury | Stack | Ścieżka | Status | Opis | |---|---|---|---| | Traefik | `/srv/infra/stacks/traefik` | _(planowany)_ | reverse proxy, TLS, wejście do wszystkiego | | Gitea | `/srv/infra/stacks/gitea` | _(planowany)_ | repozytoria kodu, mirror na GitHub | | Monitoring | `/srv/infra/stacks/monitoring` | _(planowany)_ | Uptime Kuma, alerty na maila | --- ## 7. Projekty Tabela uzupełniana przy każdym nowym projekcie (runbook `10-nowa-usluga.md`) i czyszczona przy usuwaniu (runbook `30-usuwanie.md`). | Projekt | Katalog | Repo | Domena | Wolumeny | Baza | Backup | Uruchomiony | |---|---|---|---|---|---|---|---| | _(brak)_ | | | | | | | | --- ## 8. Zadania cykliczne (cron / systemd timers) | Zadanie | Harmonogram | Gdzie zdefiniowane | Co robi | |---|---|---|---| | `unattended-upgrades` | codziennie | systemd | aktualizacje bezpieczeństwa | | _(uzupełniać)_ | | | | --- ## 9. Konta zewnętrzne powiązane z serwerem | Usługa | Do czego | Gdzie klucz/token | |---|---|---| | OVH API | DNS-01 dla Traefika | `/srv/infra/stacks/traefik/.env` | | GitHub | mirror repo `infra` | token w Gitei, ustawienia push mirror | | SMTP (Resend/Brevo) | wysyłka maili z aplikacji | `.env` danego projektu | --- ## 10. Dziennik większych zmian Krótko, jedna linia, najnowsze na górze. Chodzi o to, żeby po miesiącu dało się odtworzyć, co się działo — nie o pełny changelog. | Data | Co się zmieniło | Kto | |---|---|---| | 2026-08-20 | Poprawki `00-bootstrap.md` (Krok 9 tmux append + `focus-events`, Krok 10 katalogi, Krok 12 Claude Code jako wykonany, nowy Krok 14 audyt) i numeracja `HANDOFF.md` sekcja 6 | Claude |