Възползвайте се от DNS записа на CAA, за да упълномощите CA да издава TLS сертификати.
Съдържание
Какво е DNS CAA?
CAA е един от типовете DNS записи, които инструктират CA дали трябва да издадат сертификат или не. С други думи, вие уведомявате света кой трябва да издаде вашия домейн SSL/TLS сертификат. Внедряването на CAA стана задължително в края на 2017 г., така че е сравнително ново и по-малко от 5% от популярните сайтове са го внедрили.
Да вземем пример – pctechbg.net притежава сайт, наречен „gf.dev“, който има следния 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"
Разглеждайки горните резултати, мога да получа сертификата, издаден само от DigiCert, Comodo и Let’s encrypt. Ако помоля Thawte или друг CA да издадат сертификат за gf.dev, те няма да могат да го направят. Освен това, ако обърнете внимание, ще забележите, че някои записи имат проблем, а други – проблем. Нека да разберем какви са те.
- issue – инструктирайте CA да издаде сертификата само за този домейн.
- issuewild – CA може да издаде сертификата със заместващ знак, така че да може да се използва в домейн или поддомейн.
Записът на CAA също така поддържа iodef (формат за обмен на описание на инцидентен обект), който позволява на CA да изпраща доклад за нарушение до посочения имейл или данни за контакт.
Какво се случва, когато не бъде открит CAA запис?
Ако даден домейн няма CAA запис, тогава всеки може да генерира CSR за този домейн и да получи сертификата, подписан от всеки CA. Това е риск за сигурността.
ясно ли е сега
Има няколко съкращения, които използвах по-горе. Нека да проверим какви са те.
- DNS – Система за имена на домейни
- CA – Сертифициращ орган
- CAA – Упълномощаване на сертифициращ орган
- TLS – Сигурност на транспортния слой
- SSL – защитен слой на сокет
Как да проверя DNS CAA записа?
Има няколко начина за валидиране на CAA записа. Ако не искате да напускате терминала си, можете да проверите с командата dig.
dig caa $YOURWEBSITE.COM
Пример за pctechbg.net.com
[email protected]:~# dig caa pctechbg.net.com ; <<>> DiG 9.11.3-1ubuntu1.8-Ubuntu <<>> caa pctechbg.net.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: ;pctechbg.net.com. IN CAA ;; ANSWER SECTION: pctechbg.net.com. 3600 IN CAA 0 issuewild "comodoca.com" pctechbg.net.com. 3600 IN CAA 0 issuewild "letsencrypt.org" pctechbg.net.com. 3600 IN CAA 0 issue "comodoca.com" pctechbg.net.com. 3600 IN CAA 0 issue "digicert.com; cansignhttpexchanges=yes" pctechbg.net.com. 3600 IN CAA 0 issue "letsencrypt.org" pctechbg.net.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]:~#
Ако искате да тествате това дистанционно, тогава можете да използвате DNS CAA тестер онлайн инструмент.
Как да добавите CAA запис?
Технически това е същият начин, по който добавяте други DNS записи като A, NS, CNAME и т.н.
Ако използвате Cloudflare, отидете в раздела DNS >> добавете запис и изберете CAA като тип.
За GoDaddy отидете на DNS управление и добавете запис
Ако не сте сигурни как да добавите тогава, можете да се свържете с вашия DNS/хостинг доставчик за помощ.
Заключение
Ако още не сте, трябва да се възползвате от CAA записа, за да добавите ниво на сигурност на домейна. Добавянето на CAA запис не ви струва.
Приятно ви е да прочетете статията? Какво ще кажете за споделяне със света?