Files
infra/docs/SERVER.md
T
kacperor 6ed7a7f4d2 Init repo infra + poprawki runbooka bootstrap i HANDOFF
- Krok 9 (tmux): tee -> tee -a (nie nadpisuj configu), dodano
  focus-events on, poprawiono nazwę sesji na "bootstrap"
- Krok 10: struktura katalogów odzwierciedla stan faktyczny
  (/srv i /srv/infra już istnieją, brakuje apps i data)
- Krok 12: Claude Code oznaczony jako wykonany 20-08-2026,
  instalator natywny bez Node.js
- Nowy Krok 14: audyt po bootstrapie (SSH, ufw, fail2ban,
  unattended-upgrades, swap, Docker, porty, klucze)
- HANDOFF.md: poprawiona numeracja sekcji 6
2026-08-20 15:53:51 +00:00

4.2 KiB

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