Modul 7 · 7.1
DNS til din VPS og reverse DNS
Modul 7: Domæne, webserver og https · Læsetid: 10 minutter
Læringsmål: Efter denne lektion kan du lade et domæne eller underdomæne pege på din VPS med A- og AAAA-records, sætte din servers reverse DNS korrekt op og kontrollere, at navn og adresse stemmer begge veje.
Centrale begreber: A-record, AAAA-record, TTL, underdomæne pr. tjeneste, www, serverens værtsnavn, PTR, reverse DNS, forward-confirmed reverse DNS (FCrDNS), CAA, glemt IPv6
Fra IP-adresse til navn
Indtil nu har du tilgået din server med dens IP-adresse, for eksempel ssh anna@192.0.2.10. Til et website, et certifikat (lektion 7.3) og tjenesterne fra modul 9 har du brug for et navn. Den kobling laver du i dit domænes DNS, hos den part der administrerer din DNS: din registrar, dit hostingfirma eller en DNS-tjeneste. Selve VPS'en har intet med det at gøre; din server "ved" ikke, hvilke navne der peger på den.
Det grundlæggende om DNS lærte du i DNS-kurset. Til en VPS har du især brug for to records:
| Record | Hvad | Eksempel |
|---|---|---|
| A | navn til IPv4-adresse | web1.example.com. 3600 IN A 192.0.2.10 |
| AAAA | navn til IPv6-adresse | web1.example.com. 3600 IN AAAA 2001:db8::10 |
Din VPS har som regel både en fast IPv4- og en fast IPv6-adresse. Sæt så begge records. Besøgende med IPv6 (i Nederland en stor del af hjemmeforbindelserne og mobilnettene) bruger så IPv6, resten IPv4.
Hvilke navne opretter du?
En almindelig opdeling for en VPS med et website og et par tjenester:
web1.example.com. A 192.0.2.10 ; selve serveren (værtsnavn, PTR)
web1.example.com. AAAA 2001:db8::10
example.com. A 192.0.2.10 ; websitet
example.com. AAAA 2001:db8::10
www.example.com. CNAME example.com.
status.example.com. CNAME web1.example.com. ; Uptime Kuma (lektion 9.4)
kluis.example.com. CNAME web1.example.com. ; Vaultwarden (lektion 9.4)Der ligger et par valg i den:
- Serveren har sit eget navn (
web1), adskilt fra websitet. Det navn bruger du til SSH, til reverse DNS og som systemets værtsnavn. Flytter websitet senere til en anden server, så stemmerweb1stadig. - Et underdomæne pr. tjeneste. Uptime Kuma og Vaultwarden får hver deres eget navn. Det er meget enklere (og sikrere) end at lægge tjenester under en sti som
example.com/kluis: hver tjeneste får sit eget certifikat, cookies blandes ikke sammen, og du kan senere flytte en tjeneste til en anden server ved at ændre én record. - CNAME til underdomænerne. En CNAME til
web1betyder: hvis serverens IP-adresse ændres, retter du kun records forweb1. På det rene domænenavn (example.com) må der ikke stå en CNAME; der sætter du A og AAAA.
Selve systemets værtsnavn sætter du på serveren:
anna@web1:~$ sudo hostnamectl set-hostname web1.example.com
anna@web1:~$ hostname -f
web1.example.comKontrollér også, at /etc/hosts ikke indeholder et gammelt navn. Et korrekt værtsnavn er især vigtigt, hvis serveren nogensinde sender mail.
TTL: hvor hurtigt en ændring slår igennem
TTL (time to live) er det antal sekunder, resolvere må huske et svar. Ved 3600 kan det tage op til en time, før alle ser en ny adresse. Skal du flytte et website til din VPS, så sæt TTL'en til 300 (fem minutter) en dag i forvejen, vent mindst den gamle TTL, ændr adressen, og sæt derefter TTL'en op igen. Det er præcis trinplanen fra DNS-kurset, lektion 6.3.
Kontrollér med dig (DNS-kurset lektion 8.2), hvad resten af internettet ser, og spørg en offentlig resolver i stedet for din egen computer:
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::10På Windows: Resolve-DnsName example.com -Type AAAA -Server 1.1.1.1.
Faldgruben: en AAAA-record uden fungerende IPv6
Sætter du en AAAA-record, skal tjenesten også reelt kunne nås via IPv6. En hyppig fejl: recorden findes, men webserveren lytter kun på IPv4, eller firewallen lukker ikke IPv6 igennem (lektion 5.2), eller IPv6 er ikke sat op i VPS'en. Besøgende med IPv6 ser så et langsomt eller fejlende site, mens det hos dig "bare virker", fordi du derhjemme måske kun har IPv4. Også Let's Encrypt prøver IPv6 først, hvis der findes en AAAA-record (lektion 7.3). Giver din server et andet svar via IPv6 end via IPv4, så mislykkes certifikatanmodningen.
Test derfor IPv6 separat, fra en anden maskine med IPv6: curl -6 -I https://example.com. Har du ikke selv IPv6, så brug en onlinetest som internet.nl.
Reverse DNS: fra adresse tilbage til navn
Reverse DNS kobler en IP-adresse tilbage til et navn med en PTR-record (DNS-kurset lektion 4.6). Den record står ikke i dit domænes zone, men i IP-adressens zone, og den tilhører den part, der administrerer adressen: din VPS-udbyder. Du sætter altså PTR'en i udbyderens panel, ikke i din egen DNS.
Hvorfor skulle du gøre det?
- Mail. Modtagende mailservere afviser eller mistror mail fra en adresse uden korrekt reverse DNS. Sender din VPS mail (om det så bare er en besked fra en formular), er dette et krav (se kurset E-mail i orden, lektion 5.1).
- Genkendelighed. I logfiler og traceroutes ser andre
web1.example.comi stedet for et generisk navn fra udbyderen. - Ordentlighed. Nogle tjenester og spamfiltre giver minuspoint til adresser med en generisk eller manglende PTR.
Reglen er forward-confirmed reverse DNS (FCrDNS): adressen peger med PTR på et navn, og det navn peger med A eller AAAA tilbage på den samme adresse. Opret altså først A- og AAAA-recorden, og bestil derefter PTR'en, for både IPv4 og 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::10Kommer det forventede svar tilbage ved alle fire, så stemmer det begge veje.
CAA: hvem må udstede certifikater?
Med en CAA-record (DNS-kurset lektion 5.2) angiver du, hvilke certifikatudstedere der må udstede certifikater til dit domæne. Bruger du kun Let's Encrypt:
example.com. 3600 IN CAA 0 issue "letsencrypt.org"Det er ikke et krav, men et pænt ekstra lag. Bemærk: har du allerede en CAA-record med en anden udsteder, afviser Let's Encrypt din anmodning. Kig derfor først med dig CAA example.com.
I praksis: reverse DNS i VPS-skærmen
Hos WebOké sætter du reverse DNS i VPS-skærmen, på fanen "ISO og rDNS". Ligger dit domænes DNS også hos WebOké, kan panelet oprette A- og AAAA-recorden for dig med det samme; ligger DNS'en et andet sted, opretter du først selv de records og udfylder derefter det fulde navn. Hos andre udbydere hedder det "Reverse DNS", "rDNS" eller "PTR" i kundepanelet; hos nogle skal du bestille det via en supportsag. Det fungerer overalt på samme måde: først navnet til adressen, så adressen til navnet.
Opsummering
- Du kobler et navn til din VPS med en A-record (IPv4) og en AAAA-record (IPv6) i dit domænes DNS.
- Giv serveren sit eget navn (
web1.example.com) og hver tjeneste sit eget underdomæne; CNAME'er til servernavnet gør flytning nem. - Sænk TTL'en før en flytning, og kontrollér med
dighos en offentlig resolver. - Sæt ikke en AAAA-record, hvis tjenesten ikke reelt virker via IPv6; test IPv6 separat.
- PTR'en sætter du hos din VPS-udbyder; det skal stemme begge veje (FCrDNS), for både IPv4 og IPv6.
Quiz
Opgave
Opgave Z7.1: A, AAAA og PTR for din server. Giv din server sit eget navn (for eksempel web1.<jouwdomein>), opret A- og AAAA-recorden, og sæt reverse DNS hos din udbyder. Udfyld i opgaven din servers navn, IPv4- og IPv6-adressen samt det navn, du fik ved dig -x for begge adresser. Programmet slår A- og AAAA-records og PTR for begge adresser op live og kontrollerer, at alt stemmer begge veje. Har din server ikke IPv6, kontrollerer det kun IPv4 og melder det med orange.
Læs mere
- Send mail fra din VPS og opsæt reverse DNS
- IPv6 hos WebOké
- Gratis DNS-kursus 3.1: A- og AAAA-records
- Gratis DNS-kursus 4.6: Reverse DNS (PTR): fra nummer tilbage til navn
- Gratis DNS-kursus 5.2: CAA: hvem må udstede certifikater?
- Gratis DNS-kursus 8.2: Slå DNS op med dig og nslookup
- VPS: fra første login til sikker server 4.1: En A- og AAAA-post i Mine domæner
- VPS: fra første login til sikker server 4.2: Reverse DNS og afsendelse af mail fra din VPS
- Gratis kursus E-mail i orden: opsætning og god levering 5.1: Reverse DNS og din afsenderserver
