Co to jest DNS CAA i jak sprawdzić poprawność i wdrożyć?

Skorzystaj z rekordu DNS CAA, aby upoważnić CA do wydawania certyfikatów TLS.

Co to jest CAA DNS?

CAA jest jednym z typów rekordów DNS, które instruują urząd certyfikacji, czy powinien wydać certyfikat, czy nie. Innymi słowy, dajesz światu znać, kto powinien wydać Twoją domenę Certyfikat SSL/TLS. Implementacja CAA stała się obowiązkowa pod koniec 2017 roku, więc jest stosunkowo nowa i mniej niż 5% popularnych witryn ją wdrożyło.

Weźmy przykład – newsblog.pl jest właścicielem witryny o nazwie „gf.dev”, która ma następujący rekord CAA.

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"

Patrząc na powyższe wyniki, mogę uzyskać certyfikat wydany tylko od DigiCert, Comodo i Let’s encrypt. Jeśli poproszę Thawte lub inny urząd certyfikacji o wydanie certyfikatu dla gf.dev, nie będą mogli tego zrobić. Ponadto, jeśli zwrócisz uwagę, zauważysz, że niektóre wpisy mają problem, a niektóre mają problem. Dowiedzmy się, czym one są.

  • wydanie – poinstruuj urząd certyfikacji, aby wystawił certyfikat tylko dla tej domeny.
  • issuewild – urząd certyfikacji może wystawić certyfikat wieloznaczny, aby można go było używać w domenie lub subdomenie.

Rekord CAA obsługuje również format iodef (format wymiany opisów obiektów incydentów), który umożliwia CA wysłanie raportu o naruszeniu na podany adres e-mail lub dane kontaktowe.

Co się dzieje, gdy nie znaleziono rekordu CAA?

Jeśli domena nie ma rekordu CAA, każdy może wygenerować CSR dla tej domeny i uzyskać certyfikat podpisany przez dowolny urząd certyfikacji. Jest to zagrożenie bezpieczeństwa.

Czy teraz jest jasne?

Jest kilka skrótów, których użyłem powyżej. Sprawdźmy, czym one są.

  • DNS – system nazw domen
  • CA – urząd certyfikacji
  • CAA – autoryzacja urzędu certyfikacji
  • TLS – Zabezpieczenia warstwy transportowej
  • SSL — Bezpieczna warstwa gniazda

Jak sprawdzić rekord DNS CAA?

Istnieje wiele sposobów weryfikacji rekordu CAA. Jeśli nie chcesz wychodzić z terminala, możesz to sprawdzić za pomocą komendy dig.

dig caa $YOURWEBSITE.COM

Przykład newsblog.pl.com

ro[email protected]:~# dig caa newsblog.pl.com

; <<>> DiG 9.11.3-1ubuntu1.8-Ubuntu <<>> caa newsblog.pl.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:
;newsblog.pl.com.			IN	CAA

;; ANSWER SECTION:
newsblog.pl.com.		3600	IN	CAA	0 issuewild "comodoca.com"
newsblog.pl.com.		3600	IN	CAA	0 issuewild "letsencrypt.org"
newsblog.pl.com.		3600	IN	CAA	0 issue "comodoca.com"
newsblog.pl.com.		3600	IN	CAA	0 issue "digicert.com; cansignhttpexchanges=yes"
newsblog.pl.com.		3600	IN	CAA	0 issue "letsencrypt.org"
newsblog.pl.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]:~#

Jeśli chcesz przetestować to zdalnie, możesz użyć Tester DNS CAA narzędzie internetowe.

Jak dodać rekord CAA?

Technicznie rzecz biorąc, jest to ten sam sposób, w jaki dodajesz inne rekordy DNS, takie jak A, NS, CNAME itp.

Jeśli używasz Cloudflare, przejdź do zakładki DNS >> dodaj rekord i wybierz CAA jako typ.

W przypadku GoDaddy przejdź do Zarządzania DNS i dodaj rekord

Jeśli nie masz pewności, jak to dodać, możesz skontaktować się ze swoim dostawcą usług DNS/hostingu w celu uzyskania pomocy.

Wniosek

Jeśli jeszcze tego nie zrobiłeś, powinieneś skorzystać z rekordu CAA, aby dodać warstwę bezpieczeństwa domeny. Dodanie rekordu CAA nie kosztuje.

Podobał Ci się artykuł? A co powiesz na dzielenie się ze światem?