Halusin itselleni osoitteen, jonka voi laittaa CV:hen ja joka on minun, vaikka vaihtaisin joskus sähköpostipalvelua tai sivuston alustaa. Lopputulos on topiautio.fi: kotisivu osoitteessa topiautio.fi ja sähköposti muotoa topi@topiautio.fi.
Kokonaisuus koostuu neljästä palasta:
| Osa | Palvelu | Hinta |
|---|---|---|
| Verkkotunnus | Webbikettu | 19,95 €/v |
| Nimipalvelu (DNS) | Cloudflare | ilmainen |
| Kotisivu | GitHub Pages | ilmainen |
| Sähköposti | Proton Mail | 7,99 €/kk (Ultimate) |
1. Verkkotunnus
Halusin .fi-päätteen. Traficom ylläpitää listaa .fi-verkkotunnusvälittäjistä, eli yrityksistä, joiden kautta verkkotunnuksen voi rekisteröidä. Kävin listaa läpi ja päädyin Webbikettuun, jolla hinta oli 19,95 € vuodessa.
Minulle tärkein ehto oli, että nimipalvelimet saa vaihtaa itse. Webbiketussa se onnistuu, joten verkkotunnuksen DNS-asetuksia ei tarvitse hallita välittäjän omassa paneelissa.

2. Nimipalvelu Cloudflareen
Vaihdoin verkkotunnuksen nimipalvelimiksi Cloudflaren nimipalvelimet. Cloudflaren ilmaisessa paketissa DNS-tietueita on helppo hallita yhdessä paikassa, ja muutokset näkyvät nopeasti.
Käytännössä:
- Lisää verkkotunnus Cloudflareen. Cloudflare kertoo kaksi nimipalvelinta.
- Vaihda ne verkkotunnusvälittäjän paneelissa vanhojen tilalle.
- Odota, että muutos leviää. Webbikettu varoittaa, että siihen voi mennä jopa vuorokausi.

Tämän jälkeen kaikki muut asetukset tehdään Cloudflaren DNS-näkymässä. Kuvan ottamisen aikaan tietueita oli 14: viisi sivustolle, kahdeksan sähköpostille ja yksi Googlen vahvistusta varten. Myöhemmin lisäsin vielä IPv6-tietueet, niistä lisää alempana.

Kaikki tietueet ovat tilassa DNS only. Cloudflare toimii minulla siis pelkkänä nimipalveluna, eikä liikenne kulje sen välityspalvelimen kautta. GitHub Pages hoitaa HTTPS-varmenteen itse.
3. Kotisivu GitHub Pagesiin
Sivusto on rakennettu Hugolla, ja sen lähdekoodi on GitHubissa. GitHub Actions rakentaa sivun jokaisen pushin jälkeen ja julkaisee sen GitHub Pagesiin. GitHub Pages on ilmainen julkisille repositorioille.
Jotta sivu näkyy omassa osoitteessa, tarvitaan kaksi asiaa:
- GitHubissa: repositorion Pages-asetuksiin oma verkkotunnus ja ”Enforce HTTPS” päälle.
- Cloudflaressa: juuriverkkotunnukselle A-tietueet GitHubin osoitteisiin ja
www-aliverkkotunnukselle CNAME-tietue. Ajantasaiset osoitteet löytyvät GitHubin ohjeesta.
Yksi vinkki tietoturvan puolelta: vahvista verkkotunnus GitHub-tililläsi. Silloin kukaan muu ei voi ottaa verkkotunnustasi käyttöön omalle Pages-sivulleen, jos oma sivusi on vaikka hetken pois päältä.
4. Sähköposti Proton Mailiin
Sähköpostini on Proton Mailissa. Oma verkkotunnus vaatii maksullisen tilauksen. Minulla on Ultimate-paketti, joka maksaa 7,99 € kuussa ja johon saa liitettyä kolme omaa verkkotunnusta. Pelkkään sähköpostiin oman verkkotunnuksen kanssa riittää myös halvempi paketti, joten vertaa Protonin hintoja itse.
Kun verkkotunnuksen lisää Protoniin, Proton antaa listan DNS-tietueita, jotka lisätään Cloudflareen:
- TXT-vahvistustietue, jolla todistat omistavasi verkkotunnuksen
- MX-tietueet, jotka ohjaavat saapuvan postin Protonille
- SPF (TXT), joka kertoo, mitkä palvelimet saavat lähettää postia nimissäsi
- DKIM (CNAME), jolla lähtevät viestit allekirjoitetaan
- DMARC (TXT), joka kertoo vastaanottajalle, mitä tehdä viesteille, jotka eivät läpäise SPF- ja DKIM-tarkistuksia
Kopioi arvot suoraan Protonin hallintapaneelista. Cloudflaressa sähköpostin tietueiden pitää olla tilassa DNS only (harmaa pilvi), eli niitä ei saa ohjata Cloudflaren välityspalvelimen kautta. Omassa DMARC-tietueessani on käytäntö p=quarantine, eli tarkistukset läpäisemättömät viestit ohjataan vastaanottajalla roskapostiin.
Kun tietueet ovat paikallaan, Proton näyttää jokaisen tarkistuksen vihreänä:

Laitoin päälle myös catch-all-osoitteen. Silloin myös väärin kirjoitettuun osoitteeseen, kuten topu@topiautio.fi, lähetetty viesti tulee perille. Lopuksi asetin oman osoitteen oletukseksi, jolloin uudet viestit lähtevät siitä:

5. Sivu hakukoneisiin
Sivu ei ilmesty hakutuloksiin heti, vaikka se olisi netissä. Sitä voi nopeuttaa:
- Google Search Console: vahvista verkkotunnus TXT-tietueella Cloudflaressa ja lähetä sivukartta. Hugo tekee sivukartan automaattisesti osoitteeseen
/sitemap.xml. - Bing Webmaster Tools: sama juttu Bingille. Asetukset voi tuoda suoraan Search Consolesta. Bingin hakemistoa käyttävät myös esimerkiksi DuckDuckGo ja Ecosia, joten tällä yhdellä saa katettua useamman hakukoneen.
Brave Searchilla on oma hakemistonsa, mutta sille ei ole vastaavaa työkalua. Sivu löytyy sinne ajan kanssa.
6. IPv6 ja DNSSEC
Perusasetusten jälkeen kaksi asiaa jäi vielä puuttumaan.
IPv6. Sivulla oli vain IPv4-osoitteet (A-tietueet). GitHub Pages toimii myös IPv6:lla, joten lisäsin Cloudflareen neljä AAAA-tietuetta GitHubin osoitteisiin 2606:50c0:8000::153–2606:50c0:8003::153. A-tietueet jäivät paikalleen, joten sivu toimii kummallakin protokollalla.
DNSSEC. Ilman DNSSECiä nimipalvelun vastauksia ei voi todentaa, ja hyökkääjä voi teoriassa syöttää väärennetyn vastauksen ja ohjata kävijän väärään osoitteeseen. DNSSEC allekirjoittaa DNS-vastaukset, ja resolveri voi tarkistaa allekirjoitukset .fi-juuresta asti.
Käyttöönotossa on kaksi vaihetta:
- Cloudflare allekirjoittaa vyöhykkeen. Se tapahtuu yhdellä napilla: DNS → Settings → Enable DNSSEC. Cloudflare näyttää DS-tietueen tiedot.
- Verkkotunnusvälittäjä vie DS-tietueen .fi-rekisteriin. Näin .fi-vyöhyke kertoo, mihin avaimeen topiautio.fi:n allekirjoituksiin pitää luottaa.
Webbiketun paneelissa ei ollut DS-tietueelle omaa kenttää, joten lähetin tukipyynnön Cloudflaren antamilla tiedoilla. Lähetin sen illalla, vastaus tuli seuraavana aamuna, ja DS-tietue ilmestyi rekisteriin muutaman tunnin päästä.
Toimivuuden voi tarkistaa esimerkiksi DNSViz-palvelulla tai komennolla:
dig +dnssec topiautio.fi @1.1.1.1
Kun vastauksen otsakkeessa näkyy ad-lippu (authenticated data), resolveri on todentanut vastauksen.
Yksi asia kannattaa muistaa: jos nimipalvelimet joskus vaihtuvat pois Cloudflaresta, DS-tietue pitää poistaa rekisteristä ennen vaihtoa. Muuten validoivat resolverit hylkäävät domainin vastaukset, eikä sivu tai sähköposti toimi.
Ylläpito
Tämä oli minulle koko jutun paras puoli: ylläpidettävää ei käytännössä ole. Ei palvelinta, jota päivittää, eikä tietokantaa. Ainoa pakollinen kulu on verkkotunnus, 19,95 € vuodessa.
Sivua muokatessani teen muutokset ja pushaan ne GitHubiin. GitHub Pages ja Cloudflare hoitavat loput, ja muutos näkyy sivulla parissa minuutissa.
Koodin kirjoitan Codexin tai Claude Coden avulla, joista maksan noin 23 € kuussa. Pidän koodin kirjoittamista käsin todella tylsänä. Minua kiinnostaa enemmän järjestelmien ja kokonaisuuksien suunnittelu: mitä palveluja käytetään, miten ne liittyvät toisiinsa ja missä kohtaa jokin voi mennä rikki.
Jos haluat tehdä saman
Valintani eivät ole ainoita oikeita. Jokaiselle palalle on vaihtoehtoja:
- Verkkotunnus: välittäjiä on paljon. Jos haluat .fi-päätteen, aloita Traficomin listasta. Tarkista, että nimipalvelimet saa vaihtaa itse.
- Kotisivu: GitHub Pagesin sijaan Cloudflare Pages, Netlify tai Vercel. Kaikissa on ilmainen taso pienelle staattiselle sivulle.
- Sähköposti: Protonin sijaan esimerkiksi Tuta. Sähköpostipalvelimen voi periaatteessa hostata itsekin, mutta silloin vastuu toimitettavuudesta ja tietoturvasta on kokonaan omasi.
Kun verkkotunnus on oma, mikään näistä valinnoista ei ole lopullinen. Palvelua voi vaihtaa muuttamalla DNS-tietueita, ja osoite pysyy samana.