website: publish the closed-test legal set (R-813 narrowed)
gates / gates (push) Successful in 5m34s

Two new Hungarian pages, live on push: /adatkezeles (privacy notice) and
/feltetelek (what the free closed test is, and is not). Operator rulings of
2026-10-09: no company exists yet, so the operator is named as a PRIVATE
PERSON with no postal address and no phone; publish before the lawyer has
seen it, because the site was collecting data with no notice at all; the full
ASZF, the impresszum and the review wait for the company (R-802, R-809).

- All 18 pages carry the operator, info@felhom.eu and both links in the
  footer. Counted, not assumed: 18 pages found = 18 with both links = 18
  structurally valid. English footers say the legal texts are Hungarian.
- The contact form stopped claiming something untrue. The old consent said
  "az adatokat harmadik felnek nem adjuk ki" while Resend, Cloudflare and
  Google carry the message. Both languages replaced; the link opens in a new
  tab so a filled form is not lost.
- site_gates.py NO_TWIN gains the two pages ON PURPOSE, with the reason in a
  comment: an unreviewed English legal text would be worse than an honest
  pointer from the English footer.
- documentation/legal/{adatkezelesi-tajekoztato,feltetelek}-1.0.md are the
  text of record, DERIVED from the published HTML so they cannot drift. The
  drafts are kept and marked superseded for the closed test.

FOUR LOAD-BEARING CLAIMS WERE MEASURED, not copied from a vendor or a README:

  cookies      zero, and no local storage - checked in the browser WITH A
               POSITIVE CONTROL (a probe cookie WAS visible to the same
               method) after the tracker fired; no Set-Cookie on any response
  beacon       the exact Umami payload: site id, screen, language, title,
               url, referrer - no visitor identifier
  Cloudflare   DNS only: the public A record 37.191.56.193 is not a
               Cloudflare address, so site traffic cannot be proxied
  fsn1         Falkenstein, Germany (Hetzner's own location list)

Also measured: felhom-ep0-copy-gc.timer is installed and RAN SUCCESSFULLY
(2026-10-09 08:00, exit 0), so "deleted within 30 days" is true today where
on 2026-10-08 it was written but not switched on.

Three retentions are stated as having NO deadline, deliberately and with the
operator's word: website statistics, web server logs and contact messages
have no automatic deletion, and the pages say so instead of promising a date
nothing enforces. Every other period is enforced by configuration and cited.

No placeholder survived onto either page (0 of "[[", control: the draft still
has 36). The impresszum and the full ASZF are NOT published.

R-813 -> NARROWED. R-915 unblocked: the operator enters the two URLs in the
Meta app's Basic settings; the Live switch stays a separate decision.
R-917 and R-920 -> DEFERRED on the operator's (c): park, publish as posts
once posting starts.
This commit is contained in:
2026-10-09 12:11:31 +02:00
parent 4cee21acf7
commit 30b932bb10
30 changed files with 1213 additions and 28 deletions
+28
View File
@@ -16,6 +16,34 @@
> and holds nothing of its own; this file does hold its own content, namely the standing rulings below.
> **2026-10-09 — the closed-test legal set is PUBLISHED, before the lawyer (operator rulings, this day).** Three
> rulings, recorded together because they move R-813: **(1) no company exists yet** — the operator is named on the
> public pages as a **private person** (Nagyfenyvesi Viktor), with `info@felhom.eu` and **no postal address and no
> phone**; **(2) publish the closed-test set now, before a lawyer has seen it** — the website was collecting data with
> no notice at all, and an honest notice beats none; **(3) the full ÁSZF, the impresszum and the lawyer's review wait
> for the company and the first paying customer** (R-802, R-809). Published: `website/adatkezeles.html` →
> <https://felhom.eu/adatkezeles> and `website/feltetelek.html` → <https://felhom.eu/feltetelek>, both Hungarian only;
> the text of record is `documentation/legal/{adatkezelesi-tajekoztato,feltetelek}-1.0.md`, **derived from the
> published HTML** so it cannot drift. Every page's footer carries the operator, the e-mail and both links (18 of 18,
> counted); the English footers say the legal texts are Hungarian. `site_gates.py` `NO_TWIN` now holds the two pages —
> an **unreviewed English legal text would be worse than an honest pointer**, so the absence of a twin is deliberate
> and commented. The contact form's consent text was replaced: the old one claimed „az adatokat harmadik félnek nem
> adjuk ki" while Resend, Cloudflare and Google carry the message.
>
> **Four facts were measured for this, not taken from a vendor or a README** (they are the notice's load-bearing
> claims): the site sets **zero cookies** and uses no local storage — checked in the browser *with a positive control*
> after the tracker fired, and no response carries `Set-Cookie`; the Umami beacon's exact payload (site id, screen
> size, language, title, url, referrer — **no visitor identifier**); Cloudflare is **DNS only** — the public A record
> `37.191.56.193` is not a Cloudflare address, so site traffic cannot be proxied; and `fsn1` is **Falkenstein,
> Germany** (Hetzner's own location list). Also measured: `felhom-ep0-copy-gc.timer` is **installed and ran
> successfully** (2026-10-09 08:00, exit 0) — so the „deleted within 30 days" line is now true, where on 2026-10-08
> it was written but not switched on.
>
> **Three retentions are stated as having no deadline, on purpose** (operator confirmed): website statistics, web
> server logs and contact messages have no automatic deletion today, and the pages say so rather than promising a
> date nothing enforces. Every other period on the page is enforced by configuration and cited, or — for the 30-day
> backup deletion — by the measured job above.
> **2026-10-08 — Facebook Page: the decision home (spike `audits/SPIKE-facebook-page-api-2026-10-08.md`).** The
> Felhom.eu Page is run through a Meta **system user** (`felhom-cc`) owned by the Felhom business portfolio, via the
> Meta app `felhom.eu` (`2273465403490709`). Its token lives **only** in `~/.config/credentials` (`FACEBOOK_API`) on
+24
View File
@@ -35,6 +35,30 @@
- **Still to prove:** the lost off-site copy alarm (Tester 1's next clean-up
window, about 12 October), and the failed-restore hold (needs a scratch off-site store).
## Legal pages (2026-10-09): the website finally says what it does with people's data
- **Two new pages are live:** <https://felhom.eu/adatkezeles> (what we do with data) and
<https://felhom.eu/feltetelek> (what the free test is, and is not). Both in Hungarian, both short, both written
for a household rather than a lawyer. Every page of the site now links them at the bottom.
- **You are named on them as a private person** — Nagyfenyvesi Viktor, with the e-mail address. **No home address
and no phone number appear anywhere.** There is no company yet, and the pages say that plainly.
- **The contact form stopped telling people something untrue.** It used to say „the data is not passed to third
parties". It is: the mail services carry the message. The new text says so, and links the notice.
- **The pages promise nothing we cannot do.** Where there is no deletion deadline today — website statistics,
server logs, your e-mails to us — they say there is none, instead of inventing a date. Where a deadline is real,
it comes from the configuration, and for the 30-day backup deletion I checked the job actually ran this morning.
- **Four things I measured rather than believed:** the site sets no cookies at all; the visitor counter sends no
identifier for you; Cloudflare only answers the name, our traffic does not go through it; and the backup storage
is in Falkenstein, Germany. These are the claims the notice stands on, so I did not take anyone's word.
- **Your next click (2 minutes, unblocks the Facebook app):** Meta app → Basic settings → Privacy Policy URL =
`https://felhom.eu/adatkezeles`, Terms of Service URL = `https://felhom.eu/feltetelek`. **Switching the app to
Live is a separate decision, and still yours.**
- **Still waiting, and not published:** the full ÁSZF and the impresszum — both need company details that do not
exist yet — and **no lawyer has read any of this**. That was your decision, and it is the right way round: an
honest notice now beats no notice at all. When the company exists, the lawyer's review comes with it.
- The two parked Facebook texts (the long description, the four Messenger answers) stay parked until posting
starts, as you chose.
## Facebook Page (2026-10-09): the details box filled in — and two things Facebook simply will not allow
- **Your e-mail and phone were already on the Page** when I looked — you had set them yourself. I checked the
File diff suppressed because one or more lines are too long
@@ -1,5 +1,7 @@
# DRAFT — Adatkezelési tájékoztató (Felhom)
> **Superseded for the closed test by `adatkezelesi-tajekoztato-1.0.md` (published 2026-10-09 at https://felhom.eu/adatkezeles); this draft remains the base for the full version.**
> **English summary.** First draft of the Felhom privacy notice, written 2026-10-08 for R-813. NOT
> published, NOT legal advice, pending lawyer review (R-802). It lists what personal data Felhom
> handles, where, by whom and for how long — built from the architecture documents and the code,
+2
View File
@@ -1,5 +1,7 @@
# DRAFT — Általános Szerződési Feltételek (Felhom)
> **Superseded for the closed test by `feltetelek-1.0.md` (published 2026-10-09 at https://felhom.eu/feltetelek) — only its service description was used; this draft remains the base for the full ASZF, which waits for the company and the lawyer (R-802, R-809).**
> **English summary.** First draft of the Felhom general terms (ÁSZF), written 2026-10-08 for
> R-813/R-809. NOT published, NOT legal advice, pending lawyer review (R-802). It is a structured
> skeleton: the service description is drawn from the architecture documents (each cited in an HTML
@@ -1,5 +1,7 @@
# DRAFT — A kapcsolatfelvételi űrlap hozzájárulási szövege
> **Superseded for the closed test: the proposed consent text was applied to website/kapcsolat.html and website/en/contact.html on 2026-10-09, with the placeholders resolved (no company — the operator as a private person; /adatkezeles is the live path, measured).**
> **English summary.** A proposed replacement for the contact form's consent checkbox text
> (`website/kapcsolat.html:122-128`), written 2026-10-08 for R-813. NOT applied to the website,
> NOT legal advice, pending lawyer review (R-802). The current text names no controller, no
+27 -4
View File
@@ -1,7 +1,27 @@
# Legal drafts — NOT published, NOT legal advice
# Legal texts — the closed-test set IS published; the rest are drafts. NOT legal advice.
**Status: first drafts, written 2026-10-08 by Claude Code on the operator's request (Part E of that
night's brief). Pending lawyer review. Nothing here is on the website.**
**Status, 2026-10-09: the closed-test set is LIVE.** On the operator's ruling of 2026-10-09 — *no
company exists yet; publish a closed-test set now; the full ÁSZF, the impresszum and the lawyer's
review wait for the company and the first paying customer* — two pages went onto the website:
| Published | Live at | Source of record |
|---|---|---|
| Privacy notice | <https://felhom.eu/adatkezeles> | `adatkezelesi-tajekoztato-1.0.md` |
| Closed-test terms | <https://felhom.eu/feltetelek> | `feltetelek-1.0.md` |
The two `…-1.0.md` files are **derived from the published HTML** so the record cannot drift from the
page. Every page of the website now links both in its footer, and the contact form's consent text was
replaced with the honest one.
**Still not published and still pending the lawyer (R-802):** the full ÁSZF, the impresszum (it needs
company data that does not exist) and any English translation of the legal texts.
**Not legal advice.** These texts were written by an AI assistant from the system's own documents.
A lawyer decides what is legally required, what legal basis applies, and what the final text says.
They were published **before** that review, deliberately, on the operator's ruling above.
**Status of the drafts: first drafts, written 2026-10-08 by Claude Code on the operator's request
(Part E of that night's brief). Pending lawyer review.**
These files are working drafts for register rows **R-813** (the website collects personal data but
publishes no privacy notice, no terms and no imprint — owner: operator) and **R-802** (the lawyer's
@@ -11,6 +31,8 @@ review before the first paying customer — owner: operator). The wider set of b
| File | What it is |
|---|---|
| `adatkezelesi-tajekoztato-1.0.md` | **PUBLISHED** — the privacy notice as it stands on the website |
| `feltetelek-1.0.md` | **PUBLISHED** — the closed-test terms as they stand on the website |
| `DRAFT-aszf.md` | Általános Szerződési Feltételek — a structured skeleton; business terms are placeholders |
| `DRAFT-adatkezelesi-tajekoztato.md` | Adatkezelési tájékoztató — built from the architecture documents and the code, each line cited |
| `DRAFT-impresszum.md` | Impresszum — placeholders only |
@@ -27,6 +49,7 @@ review before the first paying customer — owner: operator). The wider set of b
must change with it.
- **Nothing is published until the operator says so.** Publishing means a website change (`website/`
is served from `main` by git-sync), a link from every page footer, and the contact form's consent
text replaced — none of which is done here.
text replaced. All three were done on 2026-10-09 **for the closed-test set only**, on the operator's
word. The ÁSZF and the impresszum are still unpublished, and the rule still holds for them.
- Each draft ends with the list of points the lawyer must check and every point where the draft had
to guess.
@@ -0,0 +1,278 @@
# Adatkezelesi tajekoztato — AS PUBLISHED, 1.0
> **This is the text as published**, derived from `website/adatkezeles.html` on 2026-10-09 so the record cannot
> drift from the page. Live at <https://felhom.eu/adatkezeles>. Base draft: `DRAFT-adatkezelesi-tajekoztato.md` (kept).
> **Not legal advice** — written by an AI assistant from the system's own documents; a lawyer
> still decides what is legally required (R-802). Published before that review on the
> operator's ruling of 2026-10-09.
---
**Zárt teszt — 1.0 verzió, hatályos: 2026. október 9.**
## 1. Ki kezeli az adataidat?
<!-- source: operator ruling 2026-10-09 (no company exists yet; the operator is named as a private person) -->
- **Név:** Nagyfenyvesi Viktor — magánszemélyként. A Felhom ma még nem cég.
- **E-mail:** [info@felhom.eu](mailto:info@felhom.eu)
- **Adatvédelmi tisztviselő:** nincs kijelölve.
Az alábbiakban: **Felhom** vagy **mi**.
## 2. Kétféle szerepünk van
**Az egyik:** a weboldal látogatóinak, a kapcsolatfelvételi űrlap kitöltőinek és
a zárt teszt résztvevőinek adatait mi kezeljük. Erről szól ez a tájékoztató.
**A másik:** a nálad lévő szerveren tárolt adatok (fényképek, dokumentumok,
alkalmazásadatok) a tieid. Azokat mi csak üzemeltetjük, felügyeljük és mentjük.
Ahol ez a tájékoztató ezeket érinti (mentés, hozzáférés), azt azért írjuk le, hogy lásd,
mi történik velük. Külön adatfeldolgozási megállapodás a zárt teszt alatt még nincs.
<!-- source: documentation/backlog/ROADMAP.md:53 (R-809: data-processing agreement not written) -->
## 3. A weboldal (felhom.eu)
### 3.1 Sütik: egyet sem használunk
A weboldal **egyetlen sütit sem helyez el** a böngésződben, és nem használ
helyi tárolót sem. Ezt 2026. október 9-én megmértük: a böngészőben a sütik, a
localStorage és a sessionStorage
üresek maradtak az oldal betöltése és a látogatottság-mérés lefutása után is, és egyetlen
válasz sem küldött sütit.
<!-- source: measured 2026-10-09 in the operator's Chrome: document.cookie "", localStorage/sessionStorage empty after the Umami beacon fired, with a positive control (a probe cookie WAS visible to the same method); curl -I on felhom.eu/ and stats.felhom.eu/script.js: 0 Set-Cookie headers -->
### 3.2 Látogatottság-mérés
Azt mérjük, hány oldalmegtekintés történik. Az eszköz az **Umami**, amelyet
**mi magunk üzemeltetünk** a saját szerverünkön (a `stats.felhom.eu`
címen). Az adatok nem jutnak külső elemző céghez.
A böngésződ ezeket küldi el egy oldalmegtekintéskor (megmérve, 2026. október 9.):
- a weboldal saját azonosítója (nem a tiéd),
- a képernyő mérete,
- a böngésző nyelve,
- az oldal címe és webcíme,
- a hivatkozó oldal, ha máshonnan érkeztél.
Ezen felül a kiszolgálónk — mint minden webkiszolgáló — látja az **IP-címedet**
és a böngésződ azonosítóját; a program ezekből országot és böngészőtípust állapít meg.
A böngésződ nem küld rólad egyedi azonosítót.
<!-- source: measured 2026-10-09, the actual beacon body to stats.felhom.eu/api/send: {"type":"event","payload":{"website":"d419db57-…","screen":"1920x1080","language":"en-US","title":"…","hostname":"felhom.eu","url":"…","referrer":""}} -->
**Meddig:** a mérőprogramban ma **nincs beállítva automatikus törlés**,
tehát a statisztika határozatlan ideig megmarad. Ezt őszintén leírjuk, mert nem akarunk olyan
határidőt ígérni, amit semmi nem tart be.
<!-- source: manifests/umami.yaml:194-206 (env: only DATABASE_URL, APP_SECRET, DISABLE_TELEMETRY, TZ — no retention setting) -->
**Jogalap:** jogos érdek (GDPR 6. cikk (1) f) — hogy lássuk, használják-e az oldalt.
### 3.3 Szervernaplók
A weboldalt kiszolgáló program (nginx) a kéréseket naplózhatja, köztük az IP-címedet. Külön
naplózási vagy megőrzési beállítást nem adtunk meg, tehát az alapértelmezés működik, és
**megőrzési időt erre sem állítottunk be**.
<!-- source: manifests/webpage.yaml (nginx:alpine; no access_log/log_format directive anywhere) -->
### 3.4 Külső tartalom és a DNS
A weboldal nem tölt be külső betűtípust, külső szkriptet, beágyazott videót vagy hirdetést.
A saját mérőprogramunkon kívül semmi nem töltődik be máshonnan.
<!-- source: measured 2026-10-09 in the browser: the only script sources are felhom.eu/assets/gallery.js and stats.felhom.eu/script.js; no external stylesheet, no iframe -->
A `felhom.eu` névfeloldását (DNS) a **Cloudflare** végzi, de
**csak névfeloldást**: a weboldal forgalma nem halad át a Cloudflare-en.
Ezt megmértük — a `felhom.eu` nyilvános címbejegyzése a mi saját kiszolgálónkra
mutat, nem a Cloudflare hálózatára.
<!-- source: measured 2026-10-09 from DooPlex: dig @1.1.1.1 and @8.8.8.8 felhom.eu A -> 37.191.56.193 (not a Cloudflare address range); NS -> martha/tony.ns.cloudflare.com; curl -I https://felhom.eu/ returns no cf-ray header -->
## 4. Kapcsolatfelvételi űrlap és e-mail
**Mit adsz meg:** a nevedet, az e-mail-címedet, a választott tárgyat, az üzenetet
és a csatolt fájlokat (legfeljebb 5 fájl, összesen 20 MB).
<!-- source: website/kapcsolat.html:78-111 (fields), :193-196 (maxFiles 5, 20 MB) -->
**Mire használjuk:** hogy válaszoljunk neked.
**Hogyan jut el hozzánk:** a böngésződ elküldi a saját kis programunknak, az
e-mailt a **Resend** levélküldő szolgáltatás továbbítja az
`info@felhom.eu` címre, ahová a leveleket a **Cloudflare Email Routing**
viszi tovább egy **Gmail**-postafiókba. Ott olvassuk el. Ha közvetlenül írsz az
`info@felhom.eu` címre, ugyanez az út érvényes, a Resend nélkül.
<!-- source: manifests/contact-mailer.yaml:1-2, :66-69; README.md:133-135, :146-151 -->
**Meddig:** amíg a megkeresésed le nem zárul, és utána is, amíg a levelezésünkben
marad. **Automatikus törlés ma nincs beállítva.** Ha szeretnéd, hogy töröljük a
leveledet, írj az [info@felhom.eu](mailto:info@felhom.eu) címre, és töröljük.
**Jogalap:** a hozzájárulásod (GDPR 6. cikk (1) a). Ha árajánlatot kérsz, a
szerződéskötést megelőző lépés is lehet a jogalap (6. cikk (1) b).
## 5. A Facebook-oldalunk és a Messenger
Van egy Facebook-oldalunk: `facebook.com/felhom.eu`. Ha meglátogatod vagy írsz
nekünk a Messengeren, a Meta a saját szabályai szerint kezeli az adataidat — ezt mi nem tudjuk
megváltoztatni.
Az oldal **látogatottsági statisztikájáért** („Oldalelemzések") a Meta és mi
**közös adatkezelők** vagyunk a GDPR 26. cikke szerint. Mi csak összesített
számokat látunk, azt nem, hogy ki járt az oldalon. A Messengeren küldött üzenetedet
elolvassuk, és ugyanúgy kezeljük, mint egy e-mailt.
- A Meta kiegészítése az Oldalelemzésekről:
[facebook.com/legal/terms/page_controller_addendum](https://www.facebook.com/legal/terms/page_controller_addendum)
- A Meta adatkezelési szabályzata:
[facebook.com/privacy/policy](https://www.facebook.com/privacy/policy/)
<!-- source: read 2026-10-09 — https://www.facebook.com/legal/terms/page_controller_addendum, title "Tudnivalók az Oldalelemzésekről", section "Az Oldalelemzések funkció adatkezelői függeléke": Meta Platforms Ireland Limited and the Page admin are joint controllers under GDPR Art. 26 for Page Insights; effective 25 April 2023 -->
## 6. A zárt teszt résztvevőinek adatai a központi rendszerünkben
A szervered rendszeresen jelentést küld a központi rendszerünknek
(`hub.felhom.eu`), hogy lássuk, minden rendben van-e. Ezeket tároljuk:
- **Azonosítód, neved, domained, e-mail-címed, nyelved** — amíg törölünk téged a rendszerből.
<!-- source: hub/internal/store/store.go:161-171, :223 -->
- **A szerver állapotjelentései** (gépnév, processzor-, memória- és lemezhasználat, hőmérséklet,
a telepített alkalmazások neve és állapota, a mentések állapota) — **90 nap**.
<!-- source: manifests/hub.yaml:78 (retention.max_days: 90); hub/internal/store/store.go:1528-1540 -->
- **Események** (például „a mentés nem sikerült") — **90 nap**.
<!-- source: hub/internal/store/store.go:2695-2702 (PruneEvents) -->
- **Alkalmazásonkénti erőforrás-statisztika** — **90 nap**.
<!-- source: hub/cmd/hub/main.go:1022 -->
- **Alkalmazásnaplókból kiszűrt hibaüzenetek**, kitakarva — az utolsó előfordulás után **30 nap**.
<!-- source: hub/cmd/hub/main.go:1027 (PruneStaleIssues 30 days); hub/internal/store/telemetry.go:35 -->
- **Naplórészlet, csak ha külön kérjük**, kitakarva — alkalmazásonként a legutóbbi kettő, és a törlésedkor törlődik.
<!-- source: hub/internal/store/logtail.go:74-82; customer_delete.go:57-58 -->
- **Diagnosztikai naplócsomag, csak külön kérésre** — **72 óra**.
<!-- source: hub/internal/store/logbundle.go:28-29 (logBundleTTL = 72h) -->
- **A kiküldött értesítések naplója** — a törlésed után **1 évig**, aztán törlődik.
Amíg aktív vagy, erre nincs megőrzési idő.
<!-- source: operator ruling 2026-10-08 09:04, 09 §3 decision 181; hub/internal/store/deleted_customer_audit.go -->
- **A visszaállítások és a szervertörlés naplója** — ezt **nem töröljük**, hogy utólag is elszámoltatható legyen, ki mit tett.
<!-- source: hub/internal/store/store.go:734 ("NEVER pruned") -->
- **A mentésed titkosító kulcsa, a helyreállító kódoddal lezárva** — amíg törölünk téged.
<!-- source: hub/internal/store/store.go:400-446 -->
- **A szerver vészhelyzeti konzoljelszava, titkosítva** — amíg a szervert töröljük.
<!-- source: hub/internal/store/store.go:552-564 -->
**A kulcsletétről, egyszerűen:** a mentésed kulcsát csak lezárt formában tároljuk.
Kinyitni csak a **helyreállító kódoddal** lehet, ami nálunk nincs meg. Ha elveszíted
ezt a kódot, a távoli mentésed nem nyitható ki — mi sem tudjuk kinyitni.
<!-- source: documentation/architecture/07-backup-architecture.md:67-75 ("genuinely zero-knowledge… R exists in zero system copies by design") -->
A központi rendszer adatbázisáról éjjelente mentés készül, titkosítva, a távoli mentőszerverünkre.
Ott **14 napi és 8 heti** példány marad meg, a nálunk tárolt másolatban **8 heti**.
Ezért egy törölt résztvevő adatai a mentésekben eddig az ideig még megtalálhatók.
<!-- source: documentation/runbooks/RUNBOOK-hub-db-offsite-backup.md:72-73 (--keep-daily 14 --keep-weekly 8); documentation/runbooks/ep0-datastore-copy.md:15-17 (keep-weekly 8) -->
**Jogalap:** a veled kötött megállapodás teljesítése (GDPR 6. cikk (1) b); a naplók megőrzésére jogos érdek (6. cikk (1) f).
## 7. A szervered adatainak távoli mentése
A szervereden lévő adatokról távoli mentés készül. **A mentés nálad, a szerveren
titkosítódik, mielőtt elhagyja az otthonodat.** Sem a tárhely üzemeltetője, sem mi nem
tudjuk elolvasni a tartalmát.
<!-- source: documentation/architecture/01-topology-and-trust.md:118 ("ciphertext only (operator can't read)"); 07-backup-architecture.md:378-379 -->
- **Alkalmazásonkénti fájlmentés** — **Hetzner Storage Box**,
Falkenstein, Németország. 7 napi, 4 heti és 6 havi példány marad meg. A fiókod
visszaállításakor törlődik.
<!-- source: manifests/hub.yaml:224-226 (HETZNER_LOCATION "fsn1"); fsn1 = Falkenstein, Germany per https://docs.hetzner.com/cloud/general/locations/ read 2026-10-09; 07-backup-architecture.md:377 (keep-daily 7, weekly 4, monthly 6) -->
- **Teljes szervermentés** — a saját távoli mentőszerverünkre, amely a
**Hetzner Cloud** nürnbergi (Németország) telephelyén fut. A legutóbbi 2 heti
példány marad meg; a törlésedkor törlődik.
<!-- source: documentation/runbooks/RUNBOOK-ep0-datastore-volume-2026-07-27.md:6 ("Hetzner CX33 … Nuremberg") -->
- **Ennek másolata a saját szerverünkön** — továbbra is titkosítva, 8 heti példány.
A törlésed után **legfeljebb 30 napon belül** törlődik; ezt egy naponta futó
feladat végzi.
<!-- source: operator ruling 2026-10-08 09:04, decision 181; scripts/ep0-copy-gc/; MEASURED 2026-10-09 on DooPlex: felhom-ep0-copy-gc.timer active, last run Fri 2026-10-09 08:00 CEST, Result=success, ExecMainStatus=0 -->
## 8. Hozzáférés a szerveredhez
Őszintén: **rendszergazdai (root) hozzáférésünk van minden szerverhez, amit kezelünk.**
Ez kell a frissítésekhez, a mentések ellenőrzéséhez és a hibák javításához. Ezzel a hozzáféréssel
a szervereden tárolt adatok elérhetők. Csak üzemeltetésre és hibaelhárításra használjuk.
<!-- source: documentation/architecture/07-backup-architecture.md:49-52 ("The operator holds root SSH on every box… 'The operator cannot read customer data' was never the security property") -->
A fájljaid és az alkalmazásaid adatai **nem kerülnek át** a központi rendszerbe.
Oda csak a 6. pontban felsorolt állapotadatok jutnak el, és — külön kérésre, kitakarva —
naplórészletek.
<!-- source: felhom-controller/controller/internal/report/types.go:13-56; documentation/architecture/05-hub-architecture.md:206 -->
## 9. Az alkalmazásaid elérése az interneten
A szervereden futó alkalmazásokat a **Cloudflare Tunnel** szolgáltatáson keresztül
lehet elérni az internetről. **A titkosított kapcsolat a Cloudflare hálózatán végződik**,
vagyis ezeknek az alkalmazásoknak a forgalma áthalad a Cloudflare rendszerén. (Ez más, mint a
weboldalunk: a felhom.eu forgalma nem megy át rajta — lásd a 3.4 pontot.)
<!-- source: documentation/architecture/05-hub-architecture.md:178-180 ("the edge terminates TLS"); 01-topology-and-trust.md:113-114, :202-224 -->
## 10. Kik látják még az adataidat
- **Resend** — e-mail-küldés. Látja: a címzett e-mail-címét és a levél tartalmát.
- **Cloudflare** — a felhom.eu névfeloldása; a @felhom.eu címre érkező levelek
továbbítása; az alkalmazásaid internetes elérése. Látja: a továbbított leveleket és az
alkalmazások forgalmát.
- **Google (Gmail)** — az `info@felhom.eu` postafiókja. Látja: a
beérkező leveleket, köztük az űrlap üzeneteit.
- **Hetzner** (Németország) — a titkosított mentések tárolása. Csak titkosított
adatot lát.
- **Meta** — csak akkor, ha a Facebook-oldalunkat használod (5. pont).
A Resend, a Cloudflare, a Google és a Meta nemzetközi szolgáltatók, amelyek adatot az Európai
Gazdasági Térségen kívül is kezelhetnek. Hogy pontosan hol és milyen garanciával, azt a saját
adatkezelési tájékoztatójuk írja le.
## 11. A jogaid
Bármikor kérheted tőlünk, hogy:
- **megmondjuk, milyen adatot kezelünk rólad** (hozzáférés),
- **javítsuk**, ha valami hibás (helyesbítés),
- **töröljük** az adataidat (törlés),
- **korlátozzuk** a kezelését, amíg egy vitát tisztázunk,
- **odaadjuk neked** géppel olvasható formában (adathordozhatóság),
- **tiltakozz** a jogos érdeken alapuló kezelés ellen,
- **visszavond a hozzájárulásodat** — ettől a korábbi kezelés nem lesz jogellenes.
Hogyan kérd: írj az [info@felhom.eu](mailto:info@felhom.eu) címre.
**Egy hónapon belül válaszolunk** (GDPR 12. cikk (3)).
## 12. Ha panaszod van
Panasszal a felügyeleti hatósághoz fordulhatsz:
- **Nemzeti Adatvédelmi és Információszabadság Hatóság (NAIH)**
- Cím: 1055 Budapest, Falk Miksa utca 9-11.
- Postacím: 1363 Budapest, Pf.: 9.
- Telefon: +36 (1) 391 1400
- E-mail: [ugyfelszolgalat@naih.hu](mailto:ugyfelszolgalat@naih.hu)
- Web: [naih.hu](https://naih.hu)
<!-- source: https://www.naih.hu/ugyfelszolgalat-kapcsolat read 2026-10-09 -->
Bírósághoz is fordulhatsz.
## 13. A tájékoztató változásai
Ha változik, amit csinálunk, ezt a tájékoztatót is módosítjuk, és a tetején lévő verziószámot
megemeljük. A zárt teszt résztvevőinek a lényeges változásról e-mailt küldünk.
A szolgáltatás feltételeit a [Feltételek](/feltetelek) oldal írja le.
+120
View File
@@ -0,0 +1,120 @@
# A zart teszt feltetelei — AS PUBLISHED, 1.0
> **This is the text as published**, derived from `website/feltetelek.html` on 2026-10-09 so the record cannot
> drift from the page. Live at <https://felhom.eu/feltetelek>. Base draft: `DRAFT-aszf.md (service description only)` (kept).
> **Not legal advice** — written by an AI assistant from the system's own documents; a lawyer
> still decides what is legally required (R-802). Published before that review on the
> operator's ruling of 2026-10-09.
---
**Zárt teszt — 1.0 verzió, hatályos: 2026. október 9.**
## 1. Ki vagyunk
<!-- source: operator ruling 2026-10-09 (no company yet) -->
A Felhomot **Nagyfenyvesi Viktor** magánszemélyként működteti. A Felhom ma még
**nem cég**. Elérhetőség: [info@felhom.eu](mailto:info@felhom.eu).
## 2. Mi ez
Ez egy **ingyenes zárt teszt** egy otthoni szerver szolgáltatásról. Néhány magyar
háztartással próbáljuk ki, hogy működik-e a gyakorlatban. Nem termék, amit megvettél — egy
teszt, amiben részt veszel.
## 3. Mit kapsz a teszt alatt
<!-- source: DRAFT-aszf.md §3, limited to the items the system does today -->
- Egy **otthoni szervert beállítunk** nálad, és működőképes állapotba hozzuk.
<!-- source: documentation/architecture/01-topology-and-trust.md:182-183 -->
- **Alkalmazásokat telepítünk** rá a katalógusunkból, a vezérlőpulton keresztül.
<!-- source: documentation/architecture/01-topology-and-trust.md:85 -->
- Az alkalmazások **elérhetők lesznek az interneten** is.
<!-- source: documentation/architecture/01-topology-and-trust.md:202-215 -->
- **Figyeljük a szervert.** Ha baj van, szólunk.
<!-- source: documentation/architecture/05-hub-architecture.md:71-103, :308-318 -->
- **Mentés készül** több szinten: a szerveren, és titkosítva egy távoli tárhelyen is.
A részleteket az [Adatkezelési tájékoztató](/adatkezeles) 7. pontja írja le.
<!-- source: documentation/architecture/07-backup-architecture.md:373-379 -->
- **Frissítjük** az alkalmazásokat és a rendszert, jellemzően éjszaka, egy általad
beállítható időablakban.
<!-- source: documentation/architecture/07-backup-architecture.md:420 -->
## 4. Mit nem ígérünk
Ezt fontos elolvasni, mert egy teszt nem ugyanaz, mint egy kész szolgáltatás.
- **Nincs díj** a teszt alatt — se tőled, se felénk. Árat nem ajánlunk és nem kérünk.
- **Nem ígérünk rendelkezésre állást.** A szerver leállhat, és előfordulhat, hogy nem
vesszük észre azonnal.
- **Nem ígérünk válaszidőt.** Igyekszünk gyorsan segíteni, de határidőt nem vállalunk.
- **Nem garantáljuk, hogy minden fájl visszaállítható.** Mentés készül, és teszteljük
is, de egy teszt alatt bármi elromolhat.
**Ezért kérünk valamit:** amit nem veszíthetsz el, abból tarts meg egy saját
másolatot magadnál is. Ne a teszt legyen az egyetlen helye.
## 5. Hozzáférünk a szerveredhez
**Rendszergazdai (root) hozzáférésünk van a szerverhez.** Ez kell a frissítésekhez,
a mentés ellenőrzéséhez és a hibák javításához. Ezzel a szerveren lévő adatok elérhetők. Csak
üzemeltetésre és hibaelhárításra használjuk.
<!-- source: documentation/architecture/07-backup-architecture.md:49-52 -->
A veszélyes, adatvesztéssel járó műveletekhez a rendszerünk külön aláírást kér, és a szerver
maga kezdeményezi a kapcsolatot felénk.
<!-- source: documentation/architecture/01-topology-and-trust.md:97-105 (box-initiated control, signed jobs) -->
## 6. A mentésed kulcsa nálad van
A távoli mentésed titkosítva készül. A kulcsát egy **helyreállító kód** zárja, amit
csak te ismersz — nálunk nincs meg, és nem tudjuk pótolni. **Ha elveszíted, a távoli
mentésed nem nyitható ki.** Tedd el jól.
<!-- source: documentation/architecture/07-backup-architecture.md:67-83 -->
## 7. Az alkalmazások nem a mieink
A katalógusunkban mások által írt, nyílt forráskódú programok vannak. Ezeket nem mi adjuk el és
nem mi írtuk; mindegyikre a **saját licencfeltételei** vonatkoznak, és azok rád is
érvényesek.
<!-- source: DRAFT-aszf.md §5.4; documentation/backlog/OPEN-ITEMS.md (R-802 non-OSI licence list) -->
## 8. Az adataid a tieid
A szervereden lévő adatok és alkalmazások a tieid. Nem tartjuk vissza őket: a teszt után is
visszaállíthatók a helyreállító kódoddal.
<!-- source: documentation/architecture/01-topology-and-trust.md:300-302 ("Never hold data hostage") -->
## 9. Ha ki akarsz szállni
**Bármikor abbahagyhatod**, indoklás nélkül. Írj egy e-mailt az
[info@felhom.eu](mailto:info@felhom.eu) címre, és leállítjuk.
Ami ezután az adataiddal nálunk történik:
- a teljes szervermentésed a mentőszerverünkön a törléseddel **törlődik**;
- ennek nálunk tárolt másolata **legfeljebb 30 napon belül** törlődik — ezt egy
naponta futó feladat végzi;
<!-- source: MEASURED 2026-10-09 on DooPlex: felhom-ep0-copy-gc.timer active, last run Fri 2026-10-09 08:00 CEST, Result=success, ExecMainStatus=0 -->
- a kiküldött értesítések naplója a törlésed után **1 évig** marad meg, aztán törlődik;
- a visszaállítások és a szervertörlés naplóját **megőrizzük**, hogy utólag is
látható legyen, ki mit tett.
A részletes lista az [Adatkezelési tájékoztató](/adatkezeles) 6. és 7. pontjában van.
## 10. Ha változnak a feltételek
Ezek a feltételek változhatnak. Ha lényeges változás lesz, a teszt résztvevőinek
**előtte e-mailt küldünk**, és a tetején lévő verziószámot megemeljük.
## 11. Kapcsolat
[info@felhom.eu](mailto:info@felhom.eu) — adatkezelés:
[Adatkezelési tájékoztató](/adatkezeles).
+5 -1
View File
@@ -59,7 +59,11 @@ URL = {"index.html": "/", "alkalmazasok.html": "/alkalmazasok", "technologiak.ht
os.path.join("en", "download.html"): "/en/download"}
# Pages with no twin, BY NAME: the hidden prices page stays Hungarian only (brief 2026-10-08), and the 404 page
# is served at whatever URL was wrong — it carries one English line instead of a twin.
NO_TWIN = {"szolgaltatasok-nonpublic.html", "404.html"}
# adatkezeles/feltetelek have NO English twin ON PURPOSE (2026-10-09, R-813): the legal texts are
# Hungarian only, and every English page's footer says so and links the Hungarian page. A twin would
# be an English legal text nobody has reviewed — worse than an honest pointer. If an English version
# is ever written and reviewed, move them into TWINS and add both URLs above.
NO_TWIN = {"szolgaltatasok-nonpublic.html", "404.html", "adatkezeles.html", "feltetelek.html"}
PAGES = list(TWINS) + list(TWINS.values()) + sorted(NO_TWIN)
EN_PAGES = set(TWINS.values())
+2 -1
View File
@@ -6,7 +6,7 @@
<title>Az oldal nem található | Felhom.eu</title>
<meta name="robots" content="noindex, follow">
<!-- shared assets: bump ?v= together on any site.css/icons.svg change -->
<link rel="stylesheet" href="/assets/site.css?v=5">
<link rel="stylesheet" href="/assets/site.css?v=6">
<link rel="icon" type="image/png" href="/assets/logo_favicon_2.svg">
<script defer src="https://stats.felhom.eu/script.js" data-website-id="d419db57-5e1c-48df-bdb3-c29f25fb1661"></script>
</head>
@@ -57,6 +57,7 @@
<footer>
<div class="container">
<p>© 2026 felhom.eu — Saját felhőd, saját szabályaid</p>
<p class="footer-legal">Üzemeltető: Nagyfenyvesi Viktor · <a href="mailto:info@felhom.eu">info@felhom.eu</a> · <a href="/adatkezeles">Adatkezelési tájékoztató</a> · <a href="/feltetelek">Feltételek</a></p>
</div>
</footer>
<script>
+410
View File
@@ -0,0 +1,410 @@
<!DOCTYPE html>
<html lang="hu">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Adatkezelési tájékoztató | Felhom.eu</title>
<meta name="description" content="Mit kezelünk rólad, miért, meddig, és kik látják még. A Felhom.eu adatkezelési tájékoztatója, egyszerűen leírva.">
<meta name="robots" content="index, follow">
<link rel="canonical" href="https://felhom.eu/adatkezeles">
<link rel="alternate" hreflang="hu" href="https://felhom.eu/adatkezeles">
<link rel="alternate" hreflang="x-default" href="https://felhom.eu/adatkezeles">
<meta property="og:type" content="article">
<meta property="og:url" content="https://felhom.eu/adatkezeles">
<meta property="og:title" content="Adatkezelési tájékoztató — Felhom.eu">
<meta property="og:description" content="Mit kezelünk rólad, miért, meddig, és kik látják még. A Felhom.eu adatkezelési tájékoztatója, egyszerűen leírva.">
<meta property="og:image" content="https://felhom.eu/assets/og-image.png">
<meta property="og:locale" content="hu_HU">
<meta property="og:site_name" content="Felhom.eu">
<!-- shared assets: bump ?v= together on any site.css/icons.svg change -->
<link rel="stylesheet" href="/assets/site.css?v=6">
<link rel="icon" type="image/png" href="/assets/logo_favicon_2.svg">
<script defer src="https://stats.felhom.eu/script.js" data-website-id="d419db57-5e1c-48df-bdb3-c29f25fb1661"></script>
</head>
<body class="page-adatkezeles">
<nav>
<div class="container">
<a href="/" class="logo">
<img src="/assets/logo.png" alt="Felhom.eu logo">
<span class="logo-text">felhom.eu</span>
</a>
<ul class="nav-links">
<li><a href="/#szolgaltatasok">Szolgáltatások</a></li>
<li><a href="/alkalmazasok">Alkalmazások</a></li>
<li><a href="/technologiak">Technológiák</a></li>
<li><a href="/biztonsagimentes">Mentések</a></li>
<li><a href="/gyik">GYIK</a></li>
<li><a href="/kapcsolat">Kapcsolat</a></li>
<li class="lang-globe-li"><details class="lang-globe"><summary class="lang-globe-btn" aria-label="Nyelv" title="Nyelv"><svg class="ico-lg" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-globe"/></svg></summary><ul class="lang-globe-menu"><li><a href="/adatkezeles" lang="hu" hreflang="hu" class="lang-globe-item current" aria-current="true">Magyar</a></li><li><a href="/en/" lang="en" hreflang="en" class="lang-globe-item">English</a></li></ul></details></li>
</ul>
<button class="hamburger" id="hamburger" aria-label="Menü megnyitása" aria-expanded="false">
<span class="hamburger-box">
<span class="hamburger-line"></span>
<span class="hamburger-line"></span>
<span class="hamburger-line"></span>
</span>
</button>
</div>
</nav>
<div class="mobile-overlay" id="mobileOverlay"></div>
<header class="page-header">
<div class="container">
<h1>Adatkezelési tájékoztató</h1>
<p>Mit kezelünk rólad, miért, meddig, és kik látják még. Egyszerűen leírva.</p>
</div>
</header>
<section class="section">
<div class="container legal">
<p class="legal-version"><strong>Zárt teszt — 1.0 verzió, hatályos: 2026. október 9.</strong></p>
<h2>1. Ki kezeli az adataidat?</h2>
<!-- source: operator ruling 2026-10-09 (no company exists yet; the operator is named as a private person) -->
<ul>
<li><strong>Név:</strong> Nagyfenyvesi Viktor — magánszemélyként. A Felhom ma még nem cég.</li>
<li><strong>E-mail:</strong> <a href="mailto:info@felhom.eu">info@felhom.eu</a></li>
<li><strong>Adatvédelmi tisztviselő:</strong> nincs kijelölve.</li>
</ul>
<p>Az alábbiakban: <strong>Felhom</strong> vagy <strong>mi</strong>.</p>
<h2>2. Kétféle szerepünk van</h2>
<p>
<strong>Az egyik:</strong> a weboldal látogatóinak, a kapcsolatfelvételi űrlap kitöltőinek és
a zárt teszt résztvevőinek adatait mi kezeljük. Erről szól ez a tájékoztató.
</p>
<p>
<strong>A másik:</strong> a nálad lévő szerveren tárolt adatok (fényképek, dokumentumok,
alkalmazásadatok) <em>a tieid</em>. Azokat mi csak üzemeltetjük, felügyeljük és mentjük.
Ahol ez a tájékoztató ezeket érinti (mentés, hozzáférés), azt azért írjuk le, hogy lásd,
mi történik velük. Külön adatfeldolgozási megállapodás a zárt teszt alatt még nincs.
</p>
<!-- source: documentation/backlog/ROADMAP.md:53 (R-809: data-processing agreement not written) -->
<h2>3. A weboldal (felhom.eu)</h2>
<h3>3.1 Sütik: egyet sem használunk</h3>
<p>
A weboldal <strong>egyetlen sütit sem helyez el</strong> a böngésződben, és nem használ
helyi tárolót sem. Ezt 2026. október 9-én megmértük: a böngészőben a sütik, a
<span class="nowrap">localStorage</span> és a <span class="nowrap">sessionStorage</span>
üresek maradtak az oldal betöltése és a látogatottság-mérés lefutása után is, és egyetlen
válasz sem küldött sütit.
</p>
<!-- source: measured 2026-10-09 in the operator's Chrome: document.cookie "", localStorage/sessionStorage empty after the Umami beacon fired, with a positive control (a probe cookie WAS visible to the same method); curl -I on felhom.eu/ and stats.felhom.eu/script.js: 0 Set-Cookie headers -->
<h3>3.2 Látogatottság-mérés</h3>
<p>
Azt mérjük, hány oldalmegtekintés történik. Az eszköz az <strong>Umami</strong>, amelyet
<strong>mi magunk üzemeltetünk</strong> a saját szerverünkön (a <code>stats.felhom.eu</code>
címen). Az adatok nem jutnak külső elemző céghez.
</p>
<p>A böngésződ ezeket küldi el egy oldalmegtekintéskor (megmérve, 2026. október 9.):</p>
<ul>
<li>a weboldal saját azonosítója (nem a tiéd),</li>
<li>a képernyő mérete,</li>
<li>a böngésző nyelve,</li>
<li>az oldal címe és webcíme,</li>
<li>a hivatkozó oldal, ha máshonnan érkeztél.</li>
</ul>
<p>
Ezen felül a kiszolgálónk — mint minden webkiszolgáló — látja az <strong>IP-címedet</strong>
és a böngésződ azonosítóját; a program ezekből országot és böngészőtípust állapít meg.
A böngésződ nem küld rólad egyedi azonosítót.
</p>
<!-- source: measured 2026-10-09, the actual beacon body to stats.felhom.eu/api/send: {"type":"event","payload":{"website":"d419db57-…","screen":"1920x1080","language":"en-US","title":"…","hostname":"felhom.eu","url":"…","referrer":""}} -->
<p>
<strong>Meddig:</strong> a mérőprogramban ma <strong>nincs beállítva automatikus törlés</strong>,
tehát a statisztika határozatlan ideig megmarad. Ezt őszintén leírjuk, mert nem akarunk olyan
határidőt ígérni, amit semmi nem tart be.
</p>
<!-- source: manifests/umami.yaml:194-206 (env: only DATABASE_URL, APP_SECRET, DISABLE_TELEMETRY, TZ — no retention setting) -->
<p><strong>Jogalap:</strong> jogos érdek (GDPR 6. cikk (1) f) — hogy lássuk, használják-e az oldalt.</p>
<h3>3.3 Szervernaplók</h3>
<p>
A weboldalt kiszolgáló program (nginx) a kéréseket naplózhatja, köztük az IP-címedet. Külön
naplózási vagy megőrzési beállítást nem adtunk meg, tehát az alapértelmezés működik, és
<strong>megőrzési időt erre sem állítottunk be</strong>.
</p>
<!-- source: manifests/webpage.yaml (nginx:alpine; no access_log/log_format directive anywhere) -->
<h3>3.4 Külső tartalom és a DNS</h3>
<p>
A weboldal nem tölt be külső betűtípust, külső szkriptet, beágyazott videót vagy hirdetést.
A saját mérőprogramunkon kívül semmi nem töltődik be máshonnan.
</p>
<!-- source: measured 2026-10-09 in the browser: the only script sources are felhom.eu/assets/gallery.js and stats.felhom.eu/script.js; no external stylesheet, no iframe -->
<p>
A <code>felhom.eu</code> névfeloldását (DNS) a <strong>Cloudflare</strong> végzi, de
<strong>csak névfeloldást</strong>: a weboldal forgalma nem halad át a Cloudflare-en.
Ezt megmértük — a <code>felhom.eu</code> nyilvános címbejegyzése a mi saját kiszolgálónkra
mutat, nem a Cloudflare hálózatára.
</p>
<!-- source: measured 2026-10-09 from DooPlex: dig @1.1.1.1 and @8.8.8.8 felhom.eu A -> 37.191.56.193 (not a Cloudflare address range); NS -> martha/tony.ns.cloudflare.com; curl -I https://felhom.eu/ returns no cf-ray header -->
<h2>4. Kapcsolatfelvételi űrlap és e-mail</h2>
<p>
<strong>Mit adsz meg:</strong> a nevedet, az e-mail-címedet, a választott tárgyat, az üzenetet
és a csatolt fájlokat (legfeljebb 5 fájl, összesen 20 MB).
</p>
<!-- source: website/kapcsolat.html:78-111 (fields), :193-196 (maxFiles 5, 20 MB) -->
<p><strong>Mire használjuk:</strong> hogy válaszoljunk neked.</p>
<p>
<strong>Hogyan jut el hozzánk:</strong> a böngésződ elküldi a saját kis programunknak, az
e-mailt a <strong>Resend</strong> levélküldő szolgáltatás továbbítja az
<code>info@felhom.eu</code> címre, ahová a leveleket a <strong>Cloudflare Email Routing</strong>
viszi tovább egy <strong>Gmail</strong>-postafiókba. Ott olvassuk el. Ha közvetlenül írsz az
<code>info@felhom.eu</code> címre, ugyanez az út érvényes, a Resend nélkül.
</p>
<!-- source: manifests/contact-mailer.yaml:1-2, :66-69; README.md:133-135, :146-151 -->
<p>
<strong>Meddig:</strong> amíg a megkeresésed le nem zárul, és utána is, amíg a levelezésünkben
marad. <strong>Automatikus törlés ma nincs beállítva.</strong> Ha szeretnéd, hogy töröljük a
leveledet, írj az <a href="mailto:info@felhom.eu">info@felhom.eu</a> címre, és töröljük.
</p>
<p>
<strong>Jogalap:</strong> a hozzájárulásod (GDPR 6. cikk (1) a). Ha árajánlatot kérsz, a
szerződéskötést megelőző lépés is lehet a jogalap (6. cikk (1) b).
</p>
<h2>5. A Facebook-oldalunk és a Messenger</h2>
<p>
Van egy Facebook-oldalunk: <code>facebook.com/felhom.eu</code>. Ha meglátogatod vagy írsz
nekünk a Messengeren, a Meta a saját szabályai szerint kezeli az adataidat — ezt mi nem tudjuk
megváltoztatni.
</p>
<p>
Az oldal <strong>látogatottsági statisztikájáért</strong> („Oldalelemzések") a Meta és mi
<strong>közös adatkezelők</strong> vagyunk a GDPR 26. cikke szerint. Mi csak összesített
számokat látunk, azt nem, hogy ki járt az oldalon. A Messengeren küldött üzenetedet
elolvassuk, és ugyanúgy kezeljük, mint egy e-mailt.
</p>
<ul>
<li>A Meta kiegészítése az Oldalelemzésekről:
<a href="https://www.facebook.com/legal/terms/page_controller_addendum" target="_blank" rel="noopener">facebook.com/legal/terms/page_controller_addendum</a></li>
<li>A Meta adatkezelési szabályzata:
<a href="https://www.facebook.com/privacy/policy/" target="_blank" rel="noopener">facebook.com/privacy/policy</a></li>
</ul>
<!-- source: read 2026-10-09 — https://www.facebook.com/legal/terms/page_controller_addendum, title "Tudnivalók az Oldalelemzésekről", section "Az Oldalelemzések funkció adatkezelői függeléke": Meta Platforms Ireland Limited and the Page admin are joint controllers under GDPR Art. 26 for Page Insights; effective 25 April 2023 -->
<h2>6. A zárt teszt résztvevőinek adatai a központi rendszerünkben</h2>
<p>
A szervered rendszeresen jelentést küld a központi rendszerünknek
(<code>hub.felhom.eu</code>), hogy lássuk, minden rendben van-e. Ezeket tároljuk:
</p>
<ul>
<li><strong>Azonosítód, neved, domained, e-mail-címed, nyelved</strong> — amíg törölünk téged a rendszerből.
<!-- source: hub/internal/store/store.go:161-171, :223 --></li>
<li><strong>A szerver állapotjelentései</strong> (gépnév, processzor-, memória- és lemezhasználat, hőmérséklet,
a telepített alkalmazások neve és állapota, a mentések állapota) — <strong>90 nap</strong>.
<!-- source: manifests/hub.yaml:78 (retention.max_days: 90); hub/internal/store/store.go:1528-1540 --></li>
<li><strong>Események</strong> (például „a mentés nem sikerült") — <strong>90 nap</strong>.
<!-- source: hub/internal/store/store.go:2695-2702 (PruneEvents) --></li>
<li><strong>Alkalmazásonkénti erőforrás-statisztika</strong> — <strong>90 nap</strong>.
<!-- source: hub/cmd/hub/main.go:1022 --></li>
<li><strong>Alkalmazásnaplókból kiszűrt hibaüzenetek</strong>, kitakarva — az utolsó előfordulás után <strong>30 nap</strong>.
<!-- source: hub/cmd/hub/main.go:1027 (PruneStaleIssues 30 days); hub/internal/store/telemetry.go:35 --></li>
<li><strong>Naplórészlet, csak ha külön kérjük</strong>, kitakarva — alkalmazásonként a legutóbbi kettő, és a törlésedkor törlődik.
<!-- source: hub/internal/store/logtail.go:74-82; customer_delete.go:57-58 --></li>
<li><strong>Diagnosztikai naplócsomag, csak külön kérésre</strong> — <strong>72 óra</strong>.
<!-- source: hub/internal/store/logbundle.go:28-29 (logBundleTTL = 72h) --></li>
<li><strong>A kiküldött értesítések naplója</strong> — a törlésed után <strong>1 évig</strong>, aztán törlődik.
Amíg aktív vagy, erre nincs megőrzési idő.
<!-- source: operator ruling 2026-10-08 09:04, 09 §3 decision 181; hub/internal/store/deleted_customer_audit.go --></li>
<li><strong>A visszaállítások és a szervertörlés naplója</strong> — ezt <strong>nem töröljük</strong>, hogy utólag is elszámoltatható legyen, ki mit tett.
<!-- source: hub/internal/store/store.go:734 ("NEVER pruned") --></li>
<li><strong>A mentésed titkosító kulcsa, a helyreállító kódoddal lezárva</strong> — amíg törölünk téged.
<!-- source: hub/internal/store/store.go:400-446 --></li>
<li><strong>A szerver vészhelyzeti konzoljelszava, titkosítva</strong> — amíg a szervert töröljük.
<!-- source: hub/internal/store/store.go:552-564 --></li>
</ul>
<p>
<strong>A kulcsletétről, egyszerűen:</strong> a mentésed kulcsát csak lezárt formában tároljuk.
Kinyitni csak a <strong>helyreállító kódoddal</strong> lehet, ami nálunk nincs meg. Ha elveszíted
ezt a kódot, a távoli mentésed nem nyitható ki — mi sem tudjuk kinyitni.
</p>
<!-- source: documentation/architecture/07-backup-architecture.md:67-75 ("genuinely zero-knowledge… R exists in zero system copies by design") -->
<p>
A központi rendszer adatbázisáról éjjelente mentés készül, titkosítva, a távoli mentőszerverünkre.
Ott <strong>14 napi és 8 heti</strong> példány marad meg, a nálunk tárolt másolatban <strong>8 heti</strong>.
Ezért egy törölt résztvevő adatai a mentésekben eddig az ideig még megtalálhatók.
</p>
<!-- source: documentation/runbooks/RUNBOOK-hub-db-offsite-backup.md:72-73 (--keep-daily 14 --keep-weekly 8); documentation/runbooks/ep0-datastore-copy.md:15-17 (keep-weekly 8) -->
<p><strong>Jogalap:</strong> a veled kötött megállapodás teljesítése (GDPR 6. cikk (1) b); a naplók megőrzésére jogos érdek (6. cikk (1) f).</p>
<h2>7. A szervered adatainak távoli mentése</h2>
<p>
A szervereden lévő adatokról távoli mentés készül. <strong>A mentés nálad, a szerveren
titkosítódik, mielőtt elhagyja az otthonodat.</strong> Sem a tárhely üzemeltetője, sem mi nem
tudjuk elolvasni a tartalmát.
</p>
<!-- source: documentation/architecture/01-topology-and-trust.md:118 ("ciphertext only (operator can't read)"); 07-backup-architecture.md:378-379 -->
<ul>
<li><strong>Alkalmazásonkénti fájlmentés</strong> — <strong>Hetzner Storage Box</strong>,
Falkenstein, Németország. 7 napi, 4 heti és 6 havi példány marad meg. A fiókod
visszaállításakor törlődik.
<!-- source: manifests/hub.yaml:224-226 (HETZNER_LOCATION "fsn1"); fsn1 = Falkenstein, Germany per https://docs.hetzner.com/cloud/general/locations/ read 2026-10-09; 07-backup-architecture.md:377 (keep-daily 7, weekly 4, monthly 6) --></li>
<li><strong>Teljes szervermentés</strong> — a saját távoli mentőszerverünkre, amely a
<strong>Hetzner Cloud</strong> nürnbergi (Németország) telephelyén fut. A legutóbbi 2 heti
példány marad meg; a törlésedkor törlődik.
<!-- source: documentation/runbooks/RUNBOOK-ep0-datastore-volume-2026-07-27.md:6 ("Hetzner CX33 … Nuremberg") --></li>
<li><strong>Ennek másolata a saját szerverünkön</strong> — továbbra is titkosítva, 8 heti példány.
A törlésed után <strong>legfeljebb 30 napon belül</strong> törlődik; ezt egy naponta futó
feladat végzi.
<!-- source: operator ruling 2026-10-08 09:04, decision 181; scripts/ep0-copy-gc/; MEASURED 2026-10-09 on DooPlex: felhom-ep0-copy-gc.timer active, last run Fri 2026-10-09 08:00 CEST, Result=success, ExecMainStatus=0 --></li>
</ul>
<h2>8. Hozzáférés a szerveredhez</h2>
<p>
Őszintén: <strong>rendszergazdai (root) hozzáférésünk van minden szerverhez, amit kezelünk.</strong>
Ez kell a frissítésekhez, a mentések ellenőrzéséhez és a hibák javításához. Ezzel a hozzáféréssel
a szervereden tárolt adatok elérhetők. Csak üzemeltetésre és hibaelhárításra használjuk.
</p>
<!-- source: documentation/architecture/07-backup-architecture.md:49-52 ("The operator holds root SSH on every box… 'The operator cannot read customer data' was never the security property") -->
<p>
A fájljaid és az alkalmazásaid adatai <strong>nem kerülnek át</strong> a központi rendszerbe.
Oda csak a 6. pontban felsorolt állapotadatok jutnak el, és — külön kérésre, kitakarva —
naplórészletek.
</p>
<!-- source: felhom-controller/controller/internal/report/types.go:13-56; documentation/architecture/05-hub-architecture.md:206 -->
<h2>9. Az alkalmazásaid elérése az interneten</h2>
<p>
A szervereden futó alkalmazásokat a <strong>Cloudflare Tunnel</strong> szolgáltatáson keresztül
lehet elérni az internetről. <strong>A titkosított kapcsolat a Cloudflare hálózatán végződik</strong>,
vagyis ezeknek az alkalmazásoknak a forgalma áthalad a Cloudflare rendszerén. (Ez más, mint a
weboldalunk: a felhom.eu forgalma nem megy át rajta — lásd a 3.4 pontot.)
</p>
<!-- source: documentation/architecture/05-hub-architecture.md:178-180 ("the edge terminates TLS"); 01-topology-and-trust.md:113-114, :202-224 -->
<h2>10. Kik látják még az adataidat</h2>
<ul>
<li><strong>Resend</strong> — e-mail-küldés. Látja: a címzett e-mail-címét és a levél tartalmát.</li>
<li><strong>Cloudflare</strong> — a felhom.eu névfeloldása; a @felhom.eu címre érkező levelek
továbbítása; az alkalmazásaid internetes elérése. Látja: a továbbított leveleket és az
alkalmazások forgalmát.</li>
<li><strong>Google (Gmail)</strong> — az <code>info@felhom.eu</code> postafiókja. Látja: a
beérkező leveleket, köztük az űrlap üzeneteit.</li>
<li><strong>Hetzner</strong> (Németország) — a titkosított mentések tárolása. Csak titkosított
adatot lát.</li>
<li><strong>Meta</strong> — csak akkor, ha a Facebook-oldalunkat használod (5. pont).</li>
</ul>
<p>
A Resend, a Cloudflare, a Google és a Meta nemzetközi szolgáltatók, amelyek adatot az Európai
Gazdasági Térségen kívül is kezelhetnek. Hogy pontosan hol és milyen garanciával, azt a saját
adatkezelési tájékoztatójuk írja le.
</p>
<h2>11. A jogaid</h2>
<p>Bármikor kérheted tőlünk, hogy:</p>
<ul>
<li><strong>megmondjuk, milyen adatot kezelünk rólad</strong> (hozzáférés),</li>
<li><strong>javítsuk</strong>, ha valami hibás (helyesbítés),</li>
<li><strong>töröljük</strong> az adataidat (törlés),</li>
<li><strong>korlátozzuk</strong> a kezelését, amíg egy vitát tisztázunk,</li>
<li><strong>odaadjuk neked</strong> géppel olvasható formában (adathordozhatóság),</li>
<li><strong>tiltakozz</strong> a jogos érdeken alapuló kezelés ellen,</li>
<li><strong>visszavond a hozzájárulásodat</strong> — ettől a korábbi kezelés nem lesz jogellenes.</li>
</ul>
<p>
Hogyan kérd: írj az <a href="mailto:info@felhom.eu">info@felhom.eu</a> címre.
<strong>Egy hónapon belül válaszolunk</strong> (GDPR 12. cikk (3)).
</p>
<h2>12. Ha panaszod van</h2>
<p>Panasszal a felügyeleti hatósághoz fordulhatsz:</p>
<ul>
<li><strong>Nemzeti Adatvédelmi és Információszabadság Hatóság (NAIH)</strong></li>
<li>Cím: 1055 Budapest, Falk Miksa utca 9-11.</li>
<li>Postacím: 1363 Budapest, Pf.: 9.</li>
<li>Telefon: +36 (1) 391 1400</li>
<li>E-mail: <a href="mailto:ugyfelszolgalat@naih.hu">ugyfelszolgalat@naih.hu</a></li>
<li>Web: <a href="https://naih.hu" target="_blank" rel="noopener">naih.hu</a></li>
</ul>
<!-- source: https://www.naih.hu/ugyfelszolgalat-kapcsolat read 2026-10-09 -->
<p>Bírósághoz is fordulhatsz.</p>
<h2>13. A tájékoztató változásai</h2>
<p>
Ha változik, amit csinálunk, ezt a tájékoztatót is módosítjuk, és a tetején lévő verziószámot
megemeljük. A zárt teszt résztvevőinek a lényeges változásról e-mailt küldünk.
</p>
<p>
A szolgáltatás feltételeit a <a href="/feltetelek">Feltételek</a> oldal írja le.
</p>
</div>
</section>
<footer>
<div class="container">
<p>© 2026 felhom.eu — Saját felhőd, saját szabályaid</p>
<p class="footer-legal">Üzemeltető: Nagyfenyvesi Viktor · <a href="mailto:info@felhom.eu">info@felhom.eu</a> · <a href="/adatkezeles">Adatkezelési tájékoztató</a> · <a href="/feltetelek">Feltételek</a></p>
</div>
</footer>
<script>
(function() {
var hamburger = document.getElementById('hamburger');
var navLinks = document.querySelector('.nav-links');
var overlay = document.getElementById('mobileOverlay');
var body = document.body;
if (!hamburger || !navLinks || !overlay) {
console.warn('[mobile-menu] Missing elements:', {
hamburger: !!hamburger,
navLinks: !!navLinks,
overlay: !!overlay
});
return;
}
function openMenu() {
hamburger.classList.add('is-active');
navLinks.classList.add('is-open');
overlay.classList.add('is-visible');
body.classList.add('menu-open');
hamburger.setAttribute('aria-expanded', 'true');
hamburger.setAttribute('aria-label', 'Menü bezárása');
}
function closeMenu() {
hamburger.classList.remove('is-active');
navLinks.classList.remove('is-open');
overlay.classList.remove('is-visible');
body.classList.remove('menu-open');
hamburger.setAttribute('aria-expanded', 'false');
hamburger.setAttribute('aria-label', 'Menü megnyitása');
}
hamburger.addEventListener('click', function() {
if (navLinks.classList.contains('is-open')) {
closeMenu();
} else {
openMenu();
}
});
overlay.addEventListener('click', closeMenu);
navLinks.querySelectorAll('a').forEach(function(link) {
link.addEventListener('click', closeMenu);
});
document.addEventListener('keydown', function(e) {
if (e.key === 'Escape' && navLinks.classList.contains('is-open')) {
closeMenu();
}
});
window.addEventListener('resize', function() {
if (window.innerWidth > 900 && navLinks.classList.contains('is-open')) {
closeMenu();
}
});
})();
</script>
</body>
</html>
+2 -1
View File
@@ -43,7 +43,7 @@
}
</script>
<!-- shared assets: bump ?v= together on any site.css/icons.svg change -->
<link rel="stylesheet" href="/assets/site.css?v=5">
<link rel="stylesheet" href="/assets/site.css?v=6">
<link rel="icon" type="image/png" href="/assets/logo_favicon_2.svg">
<script defer src="/assets/gallery.js?v=2"></script>
<script defer src="https://stats.felhom.eu/script.js" data-website-id="d419db57-5e1c-48df-bdb3-c29f25fb1661"></script>
@@ -1235,6 +1235,7 @@
<footer>
<div class="container">
<p>© 2026 felhom.eu — Saját felhőd, saját szabályaid</p>
<p class="footer-legal">Üzemeltető: Nagyfenyvesi Viktor · <a href="mailto:info@felhom.eu">info@felhom.eu</a> · <a href="/adatkezeles">Adatkezelési tájékoztató</a> · <a href="/feltetelek">Feltételek</a></p>
</div>
</footer>
+15 -1
View File
@@ -1,4 +1,4 @@
/* ============================================================
/* ============================================================
felhom.eu — site.css v1 (design system v2, TASK-D3)
One shared stylesheet for all seven pages. Canonical tokens:
documentation/design/design-system.md. Bump ?v= in the pages
@@ -2069,3 +2069,17 @@ footer p { color: var(--text-2); font-size: 0.9rem; }
.dash-shot figcaption { margin-top: 10px; color: var(--text-2); font-size: 0.95rem; line-height: 1.5; }
.dash-shot figcaption strong { color: var(--text-1); }
@media (max-width: 700px) { .dash-grid { grid-template-columns: minmax(0, 1fr); } }
/* --- legal pages (adatkezeles, feltetelek): a readable prose column -------- */
.legal { max-width: 760px; }
.legal h2 { font-size: 1.45rem; font-weight: 700; margin: 40px 0 14px; letter-spacing: -0.01em; }
.legal h3 { font-size: 1.1rem; font-weight: 600; margin: 26px 0 10px; color: var(--text-1); }
.legal p { color: var(--text-2); line-height: 1.75; margin-bottom: 14px; }
.legal ul { margin: 0 0 16px 22px; }
.legal li { color: var(--text-2); line-height: 1.75; margin-bottom: 9px; }
.legal strong { color: var(--text-1); }
.legal code { font-size: 0.93em; color: var(--text-1); }
.legal a { color: var(--blue); }
.legal-version { padding: 12px 16px; border: 1px solid var(--line); border-radius: var(--radius); }
.legal-callout { padding: 16px; border: 1px solid var(--blue); border-radius: var(--radius); }
.nowrap { white-space: nowrap; }
+2 -1
View File
@@ -37,7 +37,7 @@
}
</script>
<!-- shared assets: bump ?v= together on any site.css/icons.svg change -->
<link rel="stylesheet" href="/assets/site.css?v=5">
<link rel="stylesheet" href="/assets/site.css?v=6">
<link rel="icon" type="image/png" href="/assets/logo_favicon_2.svg">
<script defer src="https://stats.felhom.eu/script.js" data-website-id="d419db57-5e1c-48df-bdb3-c29f25fb1661"></script>
</head>
@@ -264,6 +264,7 @@
<footer>
<div class="container">
<p>© 2026 felhom.eu — Saját felhőd, saját szabályaid</p>
<p class="footer-legal">Üzemeltető: Nagyfenyvesi Viktor · <a href="mailto:info@felhom.eu">info@felhom.eu</a> · <a href="/adatkezeles">Adatkezelési tájékoztató</a> · <a href="/feltetelek">Feltételek</a></p>
</div>
</footer>
<script>
+2 -1
View File
@@ -43,7 +43,7 @@
}
</script>
<!-- shared assets: bump ?v= together on any site.css/icons.svg change -->
<link rel="stylesheet" href="/assets/site.css?v=5">
<link rel="stylesheet" href="/assets/site.css?v=6">
<link rel="icon" type="image/png" href="/assets/logo_favicon_2.svg">
<script defer src="/assets/gallery.js?v=2"></script>
<script defer src="https://stats.felhom.eu/script.js" data-website-id="d419db57-5e1c-48df-bdb3-c29f25fb1661"></script>
@@ -1235,6 +1235,7 @@
<footer>
<div class="container">
<p>© 2026 felhom.eu — Your own cloud, your own rules. Felhom serves households in Hungary.</p>
<p class="footer-legal">Operated by Nagyfenyvesi Viktor · <a href="mailto:info@felhom.eu">info@felhom.eu</a> · <a href="/adatkezeles">Privacy notice (Hungarian)</a> · <a href="/feltetelek">Terms (Hungarian)</a></p>
</div>
</footer>
+2 -1
View File
@@ -37,7 +37,7 @@
}
</script>
<!-- shared assets: bump ?v= together on any site.css/icons.svg change -->
<link rel="stylesheet" href="/assets/site.css?v=5">
<link rel="stylesheet" href="/assets/site.css?v=6">
<link rel="icon" type="image/png" href="/assets/logo_favicon_2.svg">
<script defer src="https://stats.felhom.eu/script.js" data-website-id="d419db57-5e1c-48df-bdb3-c29f25fb1661"></script>
</head>
@@ -264,6 +264,7 @@
<footer>
<div class="container">
<p>© 2026 felhom.eu — Your own cloud, your own rules. Felhom serves households in Hungary.</p>
<p class="footer-legal">Operated by Nagyfenyvesi Viktor · <a href="mailto:info@felhom.eu">info@felhom.eu</a> · <a href="/adatkezeles">Privacy notice (Hungarian)</a> · <a href="/feltetelek">Terms (Hungarian)</a></p>
</div>
</footer>
<script>
+3 -2
View File
@@ -26,7 +26,7 @@
<meta name="twitter:description" content="A question? Write to us: info@felhom.eu">
<meta name="twitter:image" content="https://felhom.eu/assets/og-image-en.png">
<!-- shared assets: bump ?v= together on any site.css/icons.svg change -->
<link rel="stylesheet" href="/assets/site.css?v=5">
<link rel="stylesheet" href="/assets/site.css?v=6">
<link rel="icon" type="image/png" href="/assets/logo_favicon_2.svg">
<script defer src="https://stats.felhom.eu/script.js" data-website-id="d419db57-5e1c-48df-bdb3-c29f25fb1661"></script>
</head>
@@ -126,7 +126,7 @@
<div class="checkbox-group">
<input type="checkbox" id="privacy" name="privacy" required>
<label for="privacy">
I agree that Felhom.eu uses the details I give in this form to answer my enquiry. The details are not passed on to third parties.
I have read the <a href="/adatkezeles" target="_blank" rel="noopener">privacy notice (in Hungarian)</a> and agree that my name, e-mail address, message and attached files are used to answer my enquiry. The message is carried by mail-sending and mailbox providers. I can withdraw this consent at any time at info@felhom.eu.
</label>
</div>
<div class="error-message" id="privacyError" style="margin-top: -16px; margin-bottom: 16px;">Your consent to the use of your details is needed.</div>
@@ -174,6 +174,7 @@
<footer>
<div class="container">
<p>© 2026 felhom.eu — Your own cloud, your own rules. Felhom serves households in Hungary.</p>
<p class="footer-legal">Operated by Nagyfenyvesi Viktor · <a href="mailto:info@felhom.eu">info@felhom.eu</a> · <a href="/adatkezeles">Privacy notice (Hungarian)</a> · <a href="/feltetelek">Terms (Hungarian)</a></p>
</div>
</footer>
+2 -1
View File
@@ -24,7 +24,7 @@
<meta name="twitter:description" content="Download, checksum, and what to check before you install.">
<meta name="twitter:image" content="https://felhom.eu/assets/og-image.png">
<!-- shared assets: bump ?v= together on any site.css/icons.svg change -->
<link rel="stylesheet" href="/assets/site.css?v=5">
<link rel="stylesheet" href="/assets/site.css?v=6">
<link rel="icon" type="image/png" href="/assets/logo_favicon_2.svg">
<script defer src="https://stats.felhom.eu/script.js" data-website-id="d419db57-5e1c-48df-bdb3-c29f25fb1661"></script>
</head>
@@ -97,6 +97,7 @@
<footer>
<div class="container">
<p>© 2026 felhom.eu — Your own cloud, your own rules. Felhom serves households in Hungary.</p>
<p class="footer-legal">Operated by Nagyfenyvesi Viktor · <a href="mailto:info@felhom.eu">info@felhom.eu</a> · <a href="/adatkezeles">Privacy notice (Hungarian)</a> · <a href="/feltetelek">Terms (Hungarian)</a></p>
</div>
</footer>
<script>
+2 -1
View File
@@ -363,7 +363,7 @@
}
</script>
<!-- shared assets: bump ?v= together on any site.css/icons.svg change -->
<link rel="stylesheet" href="/assets/site.css?v=5">
<link rel="stylesheet" href="/assets/site.css?v=6">
<link rel="icon" type="image/png" href="/assets/logo_favicon_2.svg">
<script defer src="https://stats.felhom.eu/script.js" data-website-id="d419db57-5e1c-48df-bdb3-c29f25fb1661"></script>
</head>
@@ -950,6 +950,7 @@
<footer>
<div class="container">
<p>© 2026 felhom.eu — Your own cloud, your own rules. Felhom serves households in Hungary.</p>
<p class="footer-legal">Operated by Nagyfenyvesi Viktor · <a href="mailto:info@felhom.eu">info@felhom.eu</a> · <a href="/adatkezeles">Privacy notice (Hungarian)</a> · <a href="/feltetelek">Terms (Hungarian)</a></p>
</div>
</footer>
+2 -1
View File
@@ -54,7 +54,7 @@
}
</script>
<!-- shared assets: bump ?v= together on any site.css/icons.svg change -->
<link rel="stylesheet" href="/assets/site.css?v=5">
<link rel="stylesheet" href="/assets/site.css?v=6">
<link rel="icon" type="image/png" href="/assets/logo_favicon_2.svg">
<script defer src="/assets/gallery.js?v=2"></script>
<script defer src="https://stats.felhom.eu/script.js" data-website-id="d419db57-5e1c-48df-bdb3-c29f25fb1661"></script>
@@ -532,6 +532,7 @@
<footer>
<div class="container">
<p>© 2026 felhom.eu — Your own cloud, your own rules. Felhom serves households in Hungary.</p>
<p class="footer-legal">Operated by Nagyfenyvesi Viktor · <a href="mailto:info@felhom.eu">info@felhom.eu</a> · <a href="/adatkezeles">Privacy notice (Hungarian)</a> · <a href="/feltetelek">Terms (Hungarian)</a></p>
</div>
</footer>
<script>
+2 -1
View File
@@ -38,7 +38,7 @@
}
</script>
<!-- shared assets: bump ?v= together on any site.css/icons.svg change -->
<link rel="stylesheet" href="/assets/site.css?v=5">
<link rel="stylesheet" href="/assets/site.css?v=6">
<link rel="icon" type="image/png" href="/assets/logo_favicon_2.svg">
<script defer src="/assets/gallery.js?v=2"></script>
<script defer src="https://stats.felhom.eu/script.js" data-website-id="d419db57-5e1c-48df-bdb3-c29f25fb1661"></script>
@@ -443,6 +443,7 @@
<footer>
<div class="container">
<p>© 2026 felhom.eu — Your own cloud, your own rules. Felhom serves households in Hungary.</p>
<p class="footer-legal">Operated by Nagyfenyvesi Viktor · <a href="mailto:info@felhom.eu">info@felhom.eu</a> · <a href="/adatkezeles">Privacy notice (Hungarian)</a> · <a href="/feltetelek">Terms (Hungarian)</a></p>
</div>
</footer>
<script>
+248
View File
@@ -0,0 +1,248 @@
<!DOCTYPE html>
<html lang="hu">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>A zárt teszt feltételei | Felhom.eu</title>
<meta name="description" content="Mit kapsz a Felhom.eu ingyenes zárt tesztjében, mit nem ígérünk, és hogyan tudsz bármikor kiszállni.">
<meta name="robots" content="index, follow">
<link rel="canonical" href="https://felhom.eu/feltetelek">
<link rel="alternate" hreflang="hu" href="https://felhom.eu/feltetelek">
<link rel="alternate" hreflang="x-default" href="https://felhom.eu/feltetelek">
<meta property="og:type" content="article">
<meta property="og:url" content="https://felhom.eu/feltetelek">
<meta property="og:title" content="A zárt teszt feltételei — Felhom.eu">
<meta property="og:description" content="Mit kapsz a Felhom.eu ingyenes zárt tesztjében, mit nem ígérünk, és hogyan tudsz bármikor kiszállni.">
<meta property="og:image" content="https://felhom.eu/assets/og-image.png">
<meta property="og:locale" content="hu_HU">
<meta property="og:site_name" content="Felhom.eu">
<!-- shared assets: bump ?v= together on any site.css/icons.svg change -->
<link rel="stylesheet" href="/assets/site.css?v=6">
<link rel="icon" type="image/png" href="/assets/logo_favicon_2.svg">
<script defer src="https://stats.felhom.eu/script.js" data-website-id="d419db57-5e1c-48df-bdb3-c29f25fb1661"></script>
</head>
<body class="page-feltetelek">
<nav>
<div class="container">
<a href="/" class="logo">
<img src="/assets/logo.png" alt="Felhom.eu logo">
<span class="logo-text">felhom.eu</span>
</a>
<ul class="nav-links">
<li><a href="/#szolgaltatasok">Szolgáltatások</a></li>
<li><a href="/alkalmazasok">Alkalmazások</a></li>
<li><a href="/technologiak">Technológiák</a></li>
<li><a href="/biztonsagimentes">Mentések</a></li>
<li><a href="/gyik">GYIK</a></li>
<li><a href="/kapcsolat">Kapcsolat</a></li>
<li class="lang-globe-li"><details class="lang-globe"><summary class="lang-globe-btn" aria-label="Nyelv" title="Nyelv"><svg class="ico-lg" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-globe"/></svg></summary><ul class="lang-globe-menu"><li><a href="/feltetelek" lang="hu" hreflang="hu" class="lang-globe-item current" aria-current="true">Magyar</a></li><li><a href="/en/" lang="en" hreflang="en" class="lang-globe-item">English</a></li></ul></details></li>
</ul>
<button class="hamburger" id="hamburger" aria-label="Menü megnyitása" aria-expanded="false">
<span class="hamburger-box">
<span class="hamburger-line"></span>
<span class="hamburger-line"></span>
<span class="hamburger-line"></span>
</span>
</button>
</div>
</nav>
<div class="mobile-overlay" id="mobileOverlay"></div>
<header class="page-header">
<div class="container">
<h1>A zárt teszt feltételei</h1>
<p>Rövid és őszinte: mit kapsz, mit nem ígérünk, és hogyan tudsz kiszállni.</p>
</div>
</header>
<section class="section">
<div class="container legal">
<p class="legal-version"><strong>Zárt teszt — 1.0 verzió, hatályos: 2026. október 9.</strong></p>
<h2>1. Ki vagyunk</h2>
<!-- source: operator ruling 2026-10-09 (no company yet) -->
<p>
A Felhomot <strong>Nagyfenyvesi Viktor</strong> magánszemélyként működteti. A Felhom ma még
<strong>nem cég</strong>. Elérhetőség: <a href="mailto:info@felhom.eu">info@felhom.eu</a>.
</p>
<h2>2. Mi ez</h2>
<p>
Ez egy <strong>ingyenes zárt teszt</strong> egy otthoni szerver szolgáltatásról. Néhány magyar
háztartással próbáljuk ki, hogy működik-e a gyakorlatban. Nem termék, amit megvettél — egy
teszt, amiben részt veszel.
</p>
<h2>3. Mit kapsz a teszt alatt</h2>
<!-- source: DRAFT-aszf.md §3, limited to the items the system does today -->
<ul>
<li>Egy <strong>otthoni szervert beállítunk</strong> nálad, és működőképes állapotba hozzuk.
<!-- source: documentation/architecture/01-topology-and-trust.md:182-183 --></li>
<li><strong>Alkalmazásokat telepítünk</strong> rá a katalógusunkból, a vezérlőpulton keresztül.
<!-- source: documentation/architecture/01-topology-and-trust.md:85 --></li>
<li>Az alkalmazások <strong>elérhetők lesznek az interneten</strong> is.
<!-- source: documentation/architecture/01-topology-and-trust.md:202-215 --></li>
<li><strong>Figyeljük a szervert.</strong> Ha baj van, szólunk.
<!-- source: documentation/architecture/05-hub-architecture.md:71-103, :308-318 --></li>
<li><strong>Mentés készül</strong> több szinten: a szerveren, és titkosítva egy távoli tárhelyen is.
A részleteket az <a href="/adatkezeles">Adatkezelési tájékoztató</a> 7. pontja írja le.
<!-- source: documentation/architecture/07-backup-architecture.md:373-379 --></li>
<li><strong>Frissítjük</strong> az alkalmazásokat és a rendszert, jellemzően éjszaka, egy általad
beállítható időablakban.
<!-- source: documentation/architecture/07-backup-architecture.md:420 --></li>
</ul>
<h2>4. Mit nem ígérünk</h2>
<p>Ezt fontos elolvasni, mert egy teszt nem ugyanaz, mint egy kész szolgáltatás.</p>
<ul>
<li><strong>Nincs díj</strong> a teszt alatt — se tőled, se felénk. Árat nem ajánlunk és nem kérünk.</li>
<li><strong>Nem ígérünk rendelkezésre állást.</strong> A szerver leállhat, és előfordulhat, hogy nem
vesszük észre azonnal.</li>
<li><strong>Nem ígérünk válaszidőt.</strong> Igyekszünk gyorsan segíteni, de határidőt nem vállalunk.</li>
<li><strong>Nem garantáljuk, hogy minden fájl visszaállítható.</strong> Mentés készül, és teszteljük
is, de egy teszt alatt bármi elromolhat.</li>
</ul>
<p class="legal-callout">
<strong>Ezért kérünk valamit:</strong> amit nem veszíthetsz el, abból tarts meg egy saját
másolatot magadnál is. Ne a teszt legyen az egyetlen helye.
</p>
<h2>5. Hozzáférünk a szerveredhez</h2>
<p>
<strong>Rendszergazdai (root) hozzáférésünk van a szerverhez.</strong> Ez kell a frissítésekhez,
a mentés ellenőrzéséhez és a hibák javításához. Ezzel a szerveren lévő adatok elérhetők. Csak
üzemeltetésre és hibaelhárításra használjuk.
</p>
<!-- source: documentation/architecture/07-backup-architecture.md:49-52 -->
<p>
A veszélyes, adatvesztéssel járó műveletekhez a rendszerünk külön aláírást kér, és a szerver
maga kezdeményezi a kapcsolatot felénk.
</p>
<!-- source: documentation/architecture/01-topology-and-trust.md:97-105 (box-initiated control, signed jobs) -->
<h2>6. A mentésed kulcsa nálad van</h2>
<p>
A távoli mentésed titkosítva készül. A kulcsát egy <strong>helyreállító kód</strong> zárja, amit
csak te ismersz — nálunk nincs meg, és nem tudjuk pótolni. <strong>Ha elveszíted, a távoli
mentésed nem nyitható ki.</strong> Tedd el jól.
</p>
<!-- source: documentation/architecture/07-backup-architecture.md:67-83 -->
<h2>7. Az alkalmazások nem a mieink</h2>
<p>
A katalógusunkban mások által írt, nyílt forráskódú programok vannak. Ezeket nem mi adjuk el és
nem mi írtuk; mindegyikre a <strong>saját licencfeltételei</strong> vonatkoznak, és azok rád is
érvényesek.
</p>
<!-- source: DRAFT-aszf.md §5.4; documentation/backlog/OPEN-ITEMS.md (R-802 non-OSI licence list) -->
<h2>8. Az adataid a tieid</h2>
<p>
A szervereden lévő adatok és alkalmazások a tieid. Nem tartjuk vissza őket: a teszt után is
visszaállíthatók a helyreállító kódoddal.
</p>
<!-- source: documentation/architecture/01-topology-and-trust.md:300-302 ("Never hold data hostage") -->
<h2>9. Ha ki akarsz szállni</h2>
<p>
<strong>Bármikor abbahagyhatod</strong>, indoklás nélkül. Írj egy e-mailt az
<a href="mailto:info@felhom.eu">info@felhom.eu</a> címre, és leállítjuk.
</p>
<p>Ami ezután az adataiddal nálunk történik:</p>
<ul>
<li>a teljes szervermentésed a mentőszerverünkön a törléseddel <strong>törlődik</strong>;</li>
<li>ennek nálunk tárolt másolata <strong>legfeljebb 30 napon belül</strong> törlődik — ezt egy
naponta futó feladat végzi;
<!-- source: MEASURED 2026-10-09 on DooPlex: felhom-ep0-copy-gc.timer active, last run Fri 2026-10-09 08:00 CEST, Result=success, ExecMainStatus=0 --></li>
<li>a kiküldött értesítések naplója a törlésed után <strong>1 évig</strong> marad meg, aztán törlődik;</li>
<li>a visszaállítások és a szervertörlés naplóját <strong>megőrizzük</strong>, hogy utólag is
látható legyen, ki mit tett.</li>
</ul>
<p>A részletes lista az <a href="/adatkezeles">Adatkezelési tájékoztató</a> 6. és 7. pontjában van.</p>
<h2>10. Ha változnak a feltételek</h2>
<p>
Ezek a feltételek változhatnak. Ha lényeges változás lesz, a teszt résztvevőinek
<strong>előtte e-mailt küldünk</strong>, és a tetején lévő verziószámot megemeljük.
</p>
<h2>11. Kapcsolat</h2>
<p>
<a href="mailto:info@felhom.eu">info@felhom.eu</a> — adatkezelés:
<a href="/adatkezeles">Adatkezelési tájékoztató</a>.
</p>
</div>
</section>
<footer>
<div class="container">
<p>© 2026 felhom.eu — Saját felhőd, saját szabályaid</p>
<p class="footer-legal">Üzemeltető: Nagyfenyvesi Viktor · <a href="mailto:info@felhom.eu">info@felhom.eu</a> · <a href="/adatkezeles">Adatkezelési tájékoztató</a> · <a href="/feltetelek">Feltételek</a></p>
</div>
</footer>
<script>
(function() {
var hamburger = document.getElementById('hamburger');
var navLinks = document.querySelector('.nav-links');
var overlay = document.getElementById('mobileOverlay');
var body = document.body;
if (!hamburger || !navLinks || !overlay) {
console.warn('[mobile-menu] Missing elements:', {
hamburger: !!hamburger,
navLinks: !!navLinks,
overlay: !!overlay
});
return;
}
function openMenu() {
hamburger.classList.add('is-active');
navLinks.classList.add('is-open');
overlay.classList.add('is-visible');
body.classList.add('menu-open');
hamburger.setAttribute('aria-expanded', 'true');
hamburger.setAttribute('aria-label', 'Menü bezárása');
}
function closeMenu() {
hamburger.classList.remove('is-active');
navLinks.classList.remove('is-open');
overlay.classList.remove('is-visible');
body.classList.remove('menu-open');
hamburger.setAttribute('aria-expanded', 'false');
hamburger.setAttribute('aria-label', 'Menü megnyitása');
}
hamburger.addEventListener('click', function() {
if (navLinks.classList.contains('is-open')) {
closeMenu();
} else {
openMenu();
}
});
overlay.addEventListener('click', closeMenu);
navLinks.querySelectorAll('a').forEach(function(link) {
link.addEventListener('click', closeMenu);
});
document.addEventListener('keydown', function(e) {
if (e.key === 'Escape' && navLinks.classList.contains('is-open')) {
closeMenu();
}
});
window.addEventListener('resize', function() {
if (window.innerWidth > 900 && navLinks.classList.contains('is-open')) {
closeMenu();
}
});
})();
</script>
</body>
</html>
+2 -1
View File
@@ -363,7 +363,7 @@
}
</script>
<!-- shared assets: bump ?v= together on any site.css/icons.svg change -->
<link rel="stylesheet" href="/assets/site.css?v=5">
<link rel="stylesheet" href="/assets/site.css?v=6">
<link rel="icon" type="image/png" href="/assets/logo_favicon_2.svg">
<script defer src="https://stats.felhom.eu/script.js" data-website-id="d419db57-5e1c-48df-bdb3-c29f25fb1661"></script>
</head>
@@ -950,6 +950,7 @@
<footer>
<div class="container">
<p>© 2026 felhom.eu — Saját felhőd, saját szabályaid</p>
<p class="footer-legal">Üzemeltető: Nagyfenyvesi Viktor · <a href="mailto:info@felhom.eu">info@felhom.eu</a> · <a href="/adatkezeles">Adatkezelési tájékoztató</a> · <a href="/feltetelek">Feltételek</a></p>
</div>
</footer>
+2 -1
View File
@@ -54,7 +54,7 @@
}
</script>
<!-- shared assets: bump ?v= together on any site.css/icons.svg change -->
<link rel="stylesheet" href="/assets/site.css?v=5">
<link rel="stylesheet" href="/assets/site.css?v=6">
<link rel="icon" type="image/png" href="/assets/logo_favicon_2.svg">
<script defer src="/assets/gallery.js?v=2"></script>
<script defer src="https://stats.felhom.eu/script.js" data-website-id="d419db57-5e1c-48df-bdb3-c29f25fb1661"></script>
@@ -532,6 +532,7 @@
<footer>
<div class="container">
<p>© 2026 felhom.eu — Saját felhőd, saját szabályaid</p>
<p class="footer-legal">Üzemeltető: Nagyfenyvesi Viktor · <a href="mailto:info@felhom.eu">info@felhom.eu</a> · <a href="/adatkezeles">Adatkezelési tájékoztató</a> · <a href="/feltetelek">Feltételek</a></p>
</div>
</footer>
<script>
+3 -2
View File
@@ -26,7 +26,7 @@
<meta name="twitter:description" content="Kérdésed van? Írj nekünk: info@felhom.eu">
<meta name="twitter:image" content="https://felhom.eu/assets/og-image.png">
<!-- shared assets: bump ?v= together on any site.css/icons.svg change -->
<link rel="stylesheet" href="/assets/site.css?v=5">
<link rel="stylesheet" href="/assets/site.css?v=6">
<link rel="icon" type="image/png" href="/assets/logo_favicon_2.svg">
<script defer src="https://stats.felhom.eu/script.js" data-website-id="d419db57-5e1c-48df-bdb3-c29f25fb1661"></script>
</head>
@@ -126,7 +126,7 @@
<div class="checkbox-group">
<input type="checkbox" id="privacy" name="privacy" required>
<label for="privacy">
Elfogadom, hogy az űrlapon megadott adataimat a Felhom.eu a megkeresésem megválaszolásához felhasználja. Az adatokat harmadik félnek nem adjuk ki.
Elolvastam az <a href="/adatkezeles" target="_blank" rel="noopener">Adatkezelési tájékoztatót</a>, és hozzájárulok, hogy a megadott nevemet, e-mail-címemet, üzenetemet és csatolt fájljaimat a megkeresésem megválaszolására kezeljék. Az üzenetet levélküldő és levelezési szolgáltatók továbbítják. A hozzájárulásomat bármikor visszavonhatom az info@felhom.eu címen.
</label>
</div>
<div class="error-message" id="privacyError" style="margin-top: -16px; margin-bottom: 16px;">Az adatkezelési hozzájárulás szükséges.</div>
@@ -174,6 +174,7 @@
<footer>
<div class="container">
<p>© 2026 felhom.eu — Saját felhőd, saját szabályaid</p>
<p class="footer-legal">Üzemeltető: Nagyfenyvesi Viktor · <a href="mailto:info@felhom.eu">info@felhom.eu</a> · <a href="/adatkezeles">Adatkezelési tájékoztató</a> · <a href="/feltetelek">Feltételek</a></p>
</div>
</footer>
+2 -1
View File
@@ -24,7 +24,7 @@
<meta name="twitter:description" content="Letöltés, ellenőrző összeg, és mire figyelj a telepítés előtt.">
<meta name="twitter:image" content="https://felhom.eu/assets/og-image.png">
<!-- shared assets: bump ?v= together on any site.css/icons.svg change -->
<link rel="stylesheet" href="/assets/site.css?v=5">
<link rel="stylesheet" href="/assets/site.css?v=6">
<link rel="icon" type="image/png" href="/assets/logo_favicon_2.svg">
<script defer src="https://stats.felhom.eu/script.js" data-website-id="d419db57-5e1c-48df-bdb3-c29f25fb1661"></script>
</head>
@@ -97,6 +97,7 @@
<footer>
<div class="container">
<p>© 2026 felhom.eu — Saját felhőd, saját szabályaid</p>
<p class="footer-legal">Üzemeltető: Nagyfenyvesi Viktor · <a href="mailto:info@felhom.eu">info@felhom.eu</a> · <a href="/adatkezeles">Adatkezelési tájékoztató</a> · <a href="/feltetelek">Feltételek</a></p>
</div>
</footer>
<script>
+14
View File
@@ -112,4 +112,18 @@
<changefreq>monthly</changefreq>
<priority>0.3</priority>
</url>
<url>
<loc>https://felhom.eu/adatkezeles</loc>
<xhtml:link rel="alternate" hreflang="hu" href="https://felhom.eu/adatkezeles"/>
<xhtml:link rel="alternate" hreflang="x-default" href="https://felhom.eu/adatkezeles"/>
<changefreq>yearly</changefreq>
<priority>0.3</priority>
</url>
<url>
<loc>https://felhom.eu/feltetelek</loc>
<xhtml:link rel="alternate" hreflang="hu" href="https://felhom.eu/feltetelek"/>
<xhtml:link rel="alternate" hreflang="x-default" href="https://felhom.eu/feltetelek"/>
<changefreq>yearly</changefreq>
<priority>0.3</priority>
</url>
</urlset>
+2 -1
View File
@@ -6,7 +6,7 @@
<meta name="description" content="Felhom.eu - Szolgáltatások és árak. Otthoni szerver telepítés, üzemeltetés, monitoring és támogatás.">
<title>Szolgáltatások - Felhom.eu</title>
<!-- shared assets: bump ?v= together on any site.css/icons.svg change -->
<link rel="stylesheet" href="/assets/site.css?v=5">
<link rel="stylesheet" href="/assets/site.css?v=6">
<link rel="icon" type="image/png" href="/assets/logo_favicon_2.svg">
<!-- analytics intentionally omitted for draft page -->
</head>
@@ -575,6 +575,7 @@
<footer>
<div class="container">
<p>© 2026 felhom.eu — Saját felhőd, saját szabályaid</p>
<p class="footer-legal">Üzemeltető: Nagyfenyvesi Viktor · <a href="mailto:info@felhom.eu">info@felhom.eu</a> · <a href="/adatkezeles">Adatkezelési tájékoztató</a> · <a href="/feltetelek">Feltételek</a></p>
</div>
</footer>
<script>
+2 -1
View File
@@ -38,7 +38,7 @@
}
</script>
<!-- shared assets: bump ?v= together on any site.css/icons.svg change -->
<link rel="stylesheet" href="/assets/site.css?v=5">
<link rel="stylesheet" href="/assets/site.css?v=6">
<link rel="icon" type="image/png" href="/assets/logo_favicon_2.svg">
<script defer src="/assets/gallery.js?v=2"></script>
<script defer src="https://stats.felhom.eu/script.js" data-website-id="d419db57-5e1c-48df-bdb3-c29f25fb1661"></script>
@@ -443,6 +443,7 @@
<footer>
<div class="container">
<p>© 2026 felhom.eu — Saját felhőd, saját szabályaid</p>
<p class="footer-legal">Üzemeltető: Nagyfenyvesi Viktor · <a href="mailto:info@felhom.eu">info@felhom.eu</a> · <a href="/adatkezeles">Adatkezelési tájékoztató</a> · <a href="/feltetelek">Feltételek</a></p>
</div>
</footer>
<script>