Modul 7 · 7.1
DNS za Vaš VPS in povratni DNS
Modul 7: Domena, spletni strežnik in https · Čas branja: 10 minut
Učni cilj: Po tej lekciji boste znali domeno ali poddomeno z zapisoma A in AAAA usmeriti na svoj VPS, pravilno nastaviti povratni DNS svojega strežnika in preveriti, da se ime in naslov ujemata v obe smeri.
Ključni pojmi: zapis A, zapis AAAA, TTL, poddomena za vsako storitev, www, ime gostitelja strežnika, PTR, povratni DNS (reverse DNS), forward-confirmed reverse DNS (FCrDNS), CAA, pozabljeni IPv6
Od naslova IP do imena
Doslej ste do svojega strežnika dostopali z njegovim naslovom IP, na primer ssh anna@192.0.2.10. Za spletno mesto, certifikat (lekcija 7.3) in storitve iz modula 9 potrebujete ime. To povezavo ustvarite v DNS svoje domene, pri ponudniku, kjer se upravlja Vaš DNS: pri registrarju, ponudniku gostovanja ali storitvi DNS. Sam VPS s tem nima nič; Vaš strežnik "ne ve", katera imena kažejo nanj.
Osnove DNS ste spoznali v tečaju o DNS. Za VPS potrebujete predvsem dva zapisa:
| Zapis | Kaj | Primer |
|---|---|---|
| A | ime v naslov IPv4 | web1.example.com. 3600 IN A 192.0.2.10 |
| AAAA | ime v naslov IPv6 | web1.example.com. 3600 IN AAAA 2001:db8::10 |
Vaš VPS ima običajno stalen naslov IPv4 in tudi IPv6. Nastavite torej oba zapisa. Obiskovalci z IPv6 (na Nizozemskem velik del domačih priključkov in mobilnih omrežij) bodo tedaj uporabljali IPv6, drugi IPv4.
Katera imena ustvarite?
Običajna razporeditev za VPS s spletnim mestom in nekaj storitvami:
web1.example.com. A 192.0.2.10 ; sam strežnik (ime gostitelja, PTR)
web1.example.com. AAAA 2001:db8::10
example.com. A 192.0.2.10 ; spletno mesto
example.com. AAAA 2001:db8::10
www.example.com. CNAME example.com.
status.example.com. CNAME web1.example.com. ; Uptime Kuma (lekcija 9.4)
kluis.example.com. CNAME web1.example.com. ; Vaultwarden (lekcija 9.4)V tem je skritih nekaj odločitev:
- Strežnik ima svoje ime (
web1), ločeno od spletnega mesta. To ime uporabljate za SSH, za povratni DNS in kot ime gostitelja sistema. Če se spletno mesto pozneje preseli na drug strežnik,web1še vedno drži. - Poddomena za vsako storitev. Uptime Kuma in Vaultwarden dobita vsak svoje ime. To je veliko preprostejše (in varnejše), kot če storitve obesite pod pot, kot je
example.com/kluis: vsaka storitev dobi svoj certifikat, piškotki se ne mešajo, storitev pa lahko pozneje preselite na drug strežnik s spremembo enega samega zapisa. - CNAME za poddomene. CNAME na
web1pomeni: če se naslov IP strežnika spremeni, prilagodite le zapise zaweb1. Na golem imenu domene (example.com) CNAME ni dovoljen; tam nastavite A in AAAA.
Ime gostitelja samega sistema nastavite na strežniku:
anna@web1:~$ sudo hostnamectl set-hostname web1.example.com
anna@web1:~$ hostname -f
web1.example.comPreverite tudi, da /etc/hosts ne vsebuje starega imena. Pravilno ime gostitelja je posebej pomembno, če strežnik kdaj pošilja pošto.
TTL: kako hitro je sprememba vidna povsod
TTL (time to live) je število sekund, ko si razreševalniki (resolverji) smejo zapomniti odgovor. Pri vrednosti 3600 lahko traja do ene ure, preden vsi vidijo nov naslov. Če boste spletno mesto selili na svoj VPS, nastavite TTL dan prej na 300 (pet minut), počakajte vsaj toliko, kot je znašal stari TTL, spremenite naslov in nato TTL znova povišajte. To je natanko načrt korakov iz tečaja o DNS, lekcija 6.3.
Z ukazom dig (tečaj o DNS, lekcija 8.2) preverite, kaj vidi preostali internet, in vprašajte javni razreševalnik namesto lastnega računalnika:
anna@laptop:~$ dig +short A example.com @1.1.1.1
192.0.2.10
anna@laptop:~$ dig +short AAAA example.com @1.1.1.1
2001:db8::10V sistemu Windows: Resolve-DnsName example.com -Type AAAA -Server 1.1.1.1.
Past: zapis AAAA brez delujočega IPv6
Če nastavite zapis AAAA, mora biti storitev res dosegljiva prek IPv6. Pogosta napaka: zapis obstaja, a spletni strežnik posluša le na IPv4, ali pa požarni zid ne prepušča IPv6 (lekcija 5.2), ali pa IPv6 na VPS sploh ni nastavljen. Obiskovalci z IPv6 tedaj vidijo počasno ali nedelujoče spletno mesto, pri Vas pa "preprosto deluje", ker imate doma morda le IPv4. Tudi Let's Encrypt najprej poskusi IPv6, če obstaja zapis AAAA (lekcija 7.3). Če Vaš strežnik prek IPv6 vrne drugačen odgovor kot prek IPv4, zahteva za certifikat ne uspe.
IPv6 zato preizkusite posebej, z druge naprave z IPv6: curl -6 -I https://example.com. Če sami nimate IPv6, uporabite spletni preizkus, kot je internet.nl.
Povratni DNS: od naslova nazaj do imena
Povratni DNS (reverse DNS) poveže naslov IP nazaj z imenom, in sicer z zapisom PTR (tečaj o DNS, lekcija 4.6). Ta zapis ni v coni Vaše domene, temveč v coni naslova IP, ta pa pripada tistemu, ki naslov upravlja: Vašemu ponudniku VPS. Zapis PTR torej nastavite v nadzorni plošči ponudnika, ne v svojem DNS.
Zakaj bi to storili?
- Pošta. Prejemni poštni strežniki zavrnejo pošto z naslova brez ustreznega povratnega DNS ali ji ne zaupajo. Če Vaš VPS pošilja pošto (pa čeprav le obvestilo iz obrazca), je to obvezno (glejte tečaj o urejeni e-pošti, lekcija 5.1).
- Prepoznavnost. V dnevnikih in izpisih traceroute drugi vidijo
web1.example.comnamesto splošnega imena ponudnika. - Urejenost. Nekatere storitve in filtri neželene pošte dodelijo kazenske točke naslovom s splošnim ali manjkajočim zapisom PTR.
Pravilo je forward-confirmed reverse DNS (FCrDNS): naslov z zapisom PTR kaže na ime, to ime pa z A ali AAAA spet kaže na isti naslov. Najprej torej ustvarite zapisa A in AAAA, nato zahtevajte PTR, in to za IPv4 in IPv6.
anna@laptop:~$ dig +short -x 192.0.2.10
web1.example.com.
anna@laptop:~$ dig +short A web1.example.com
192.0.2.10
anna@laptop:~$ dig +short -x 2001:db8::10
web1.example.com.
anna@laptop:~$ dig +short AAAA web1.example.com
2001:db8::10Če pri vseh štirih dobite pričakovani odgovor, se ime in naslov ujemata v obe smeri.
CAA: kdo sme izdajati certifikate?
Z zapisom CAA (tečaj o DNS, lekcija 5.2) določite, kateri izdajatelji certifikatov smejo izdajati certifikate za Vašo domeno. Če uporabljate le Let's Encrypt:
example.com. 3600 IN CAA 0 issue "letsencrypt.org"To ni obvezno, je pa lepa dodatna plast zaščite. Pozor: če že imate zapis CAA z drugim izdajateljem, Let's Encrypt Vašo zahtevo zavrne. Zato najprej preverite z dig CAA example.com.
V praksi: povratni DNS na zaslonu VPS
Pri WebOké povratni DNS nastavite na zaslonu VPS, na zavihku "ISO in rDNS". Če je DNS Vaše domene prav tako pri WebOké, lahko nadzorna plošča zapisa A in AAAA ustvari namesto Vas; če je DNS drugje, te zapise najprej ustvarite sami in nato vpišete polno ime. Pri drugih ponudnikih se to v nadzorni plošči za stranke imenuje "Reverse DNS", "rDNS" ali "PTR"; pri nekaterih ga morate zahtevati prek zahtevka za podporo. Povsod deluje enako: najprej ime na naslov, nato naslov na ime.
Povzetek
- Ime povežete s svojim VPS z zapisom A (IPv4) in zapisom AAAA (IPv6) v DNS svoje domene.
- Strežniku dajte svoje ime (
web1.example.com), vsaki storitvi pa svojo poddomeno; zapisi CNAME na ime strežnika olajšajo selitev. - Pred selitvijo znižajte TTL in preverite z
digpri javnem razreševalniku. - Ne nastavljajte zapisa AAAA, če storitev prek IPv6 res ne deluje; IPv6 preizkusite posebej.
- Zapis PTR nastavite pri ponudniku VPS; ime in naslov se morata ujemati v obe smeri (FCrDNS), za IPv4 in IPv6.
Kviz
Naloga
Naloga Z7.1: A, AAAA in PTR Vašega strežnika. Strežniku dajte lastno ime (na primer web1.<jouwdomein>), ustvarite zapisa A in AAAA ter pri ponudniku nastavite povratni DNS. V nalogo vpišite ime svojega strežnika, naslov IPv4 in naslov IPv6 ter ime, ki ste ga z dig -x dobili za oba naslova. Program sproti poizve zapisa A in AAAA ter PTR obeh naslovov in preveri, da se vse ujema v obe smeri. Če Vaš strežnik nima IPv6, preveri le IPv4 in to sporoči v oranžni barvi.
Za nadaljnje branje
- Pošiljanje e-pošte z Vašega VPS in nastavitev reverse DNS
- IPv6 pri WebOké
- Brezplačen DNS tečaj 3.1: A- in AAAA-zapisi
- Brezplačen DNS tečaj 4.6: Reverse DNS (PTR): od številke nazaj do imena
- Brezplačen DNS tečaj 5.2: CAA: kdo sme izdati certifikate?
- Brezplačen DNS tečaj 8.2: DNS poizvedovanje z dig in nslookup
- VPS: od prve prijave do varnega strežnika 4.1: Zapis A in AAAA v razdelku Moje domene
- VPS: od prve prijave do varnega strežnika 4.2: Obratni DNS in pošiljanje pošte z Vašega VPS
- Brezplačni tečaj E-pošta urejena: nastavitev in pravilna dostava 5.1: Reverse DNS in Vaš strežnik za pošiljanje
