Udnyt CAA DNS-posten til at autorisere CA til at udstede TLS-certifikaterne.
Indholdsfortegnelse
Hvad er DNS CAA?
CAA er en af de DNS-posttyper, der instruerer CA, om de skal udstede et certifikat eller ej. Med et andet ord, du lader verden vide, hvem der skal udstede dit domæne SSL/TLS certifikat. CAA-implementering blev obligatorisk i slutningen af 2017, så det er relativt nyt, og mindre end 5 % af de populære websteder har implementeret dette.
Lad os tage et eksempel – toadmin.dk ejer et websted kaldet “gf.dev”, som har følgende CAA-rekord.
gf.dev. 3586 IN CAA 0 issue "digicert.com; cansignhttpexchanges=yes" gf.dev. 3586 IN CAA 0 issuewild "comodoca.com" gf.dev. 3586 IN CAA 0 issue "comodoca.com" gf.dev. 3586 IN CAA 0 issuewild "digicert.com; cansignhttpexchanges=yes" gf.dev. 3586 IN CAA 0 issuewild "letsencrypt.org" gf.dev. 3586 IN CAA 0 issue "letsencrypt.org"
Ved at se på ovenstående resultater kan jeg kun få certifikatet udstedt fra DigiCert, Comodo og Let’s encrypt. Hvis jeg beder Thawte eller en anden CA om at udstede et cert for gf.dev, så vil de ikke være i stand til det. Også, hvis du er opmærksom, vil du bemærke, at nogle indgange har problemer og nogle vilde. Lad os finde ud af, hvad de er.
- issue – instruer CA om kun at udstede certifikatet for det pågældende domæne.
- issuewild – CA kan udstede wildcard-certifikatet, så det kan bruges i et domæne eller underdomæne.
CAA record understøtter også iodef (Incident object description exchange format), som tillader CA at sende overtrædelsesrapport til den angivne e-mail eller kontaktoplysninger.
Hvad sker der, når der ikke findes nogen CAA-registrering?
Hvis et domæne ikke har en CAA-record, kan enhver generere en CSR for det pågældende domæne og få certifikatet underskrevet af enhver CA. Dette er en sikkerhedsrisiko.
Er det klart nu?
Der er et par forkortelser, jeg har brugt ovenfor. Lad os se, hvad de er.
- DNS – Domænenavnesystem
- CA – Certifikatmyndighed
- CAA – Certification Authorization
- TLS – Transportlagssikkerhed
- SSL – Sikkert socketlag
Hvordan kontrollerer man DNS CAA-posten?
Der er flere måder at validere CAA-posten på. Hvis du ikke vil forlade din terminal, kan du tjekke ved hjælp af dig-kommandoen.
dig caa $YOURWEBSITE.COM
Eksempel på toadmin.dk.com
[email protected]:~# dig caa toadmin.dk.com ; <<>> DiG 9.11.3-1ubuntu1.8-Ubuntu <<>> caa toadmin.dk.com ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 54430 ;; flags: qr rd ra; QUERY: 1, ANSWER: 6, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 65494 ;; QUESTION SECTION: ;toadmin.dk.com. IN CAA ;; ANSWER SECTION: toadmin.dk.com. 3600 IN CAA 0 issuewild "comodoca.com" toadmin.dk.com. 3600 IN CAA 0 issuewild "letsencrypt.org" toadmin.dk.com. 3600 IN CAA 0 issue "comodoca.com" toadmin.dk.com. 3600 IN CAA 0 issue "digicert.com; cansignhttpexchanges=yes" toadmin.dk.com. 3600 IN CAA 0 issue "letsencrypt.org" toadmin.dk.com. 3600 IN CAA 0 issuewild "digicert.com; cansignhttpexchanges=yes" ;; Query time: 7 msec ;; SERVER: 127.0.0.53#53(127.0.0.53) ;; WHEN: Tue Oct 08 07:12:21 UTC 2019 ;; MSG SIZE rcvd: 298 [email protected]:~#
Hvis du kan lide at teste dette eksternt, så kan du bruge DNS CAA tester online værktøj.
Hvordan tilføjer man en CAA-post?
Teknisk set er dette på samme måde, som du tilføjer andre DNS-poster som A, NS, CNAME osv.
Hvis du bruger Cloudflare, skal du gå til fanen DNS >> tilføje en post og vælge CAA som type.
For GoDaddy skal du gå til DNS Management og tilføje en post
Hvis du ikke er sikker på, hvordan du tilføjer, kan du kontakte din DNS/hostingudbyder for at få hjælp.
Konklusion
Hvis ikke allerede, bør du udnytte CAA-posten til at tilføje et lag af domænesikkerhed. Det koster dig ikke at tilføje en CAA-record.
Nydt at læse artiklen? Hvad med at dele med verden?