Modul 5 · 5.2
CAA: kto smie vydávať certifikáty?
Modul 5: Ostatné záznamy · Čas čítania: 6 min
Cieľ lekcie: Po tejto lekcii dokážete prečítať CAA záznam a budete vedieť, ako môže CAA záznam zablokovať žiadosť o SSL certifikát.
Kľúčové pojmy: CAA, issue, issuewild, iodef, certifikačná autorita (CA), žiadny CAA záznam znamená: smie ktokoľvek
Zámok od cudzieho
SSL certifikát (v skutočnosti TLS certifikát) zabezpečuje zámok v prehliadači. Vydáva ho certifikačná autorita, skrátene CA: napríklad Let's Encrypt, Sectigo, DigiCert alebo Google Trust Services. Existujú desiatky CA, ktorým prehliadače dôverujú, a v zásade môže ktorákoľvek z nich vydať certifikát pre vašu doménu, pokiaľ žiadateľ preukáže, že doménu spravuje.
Pomocou CAA záznamu (Certification Authority Authorization, RFC 8659) to môžete obmedziť. V DNS nastavíte, ktoré CA smú pre vašu doménu vydávať certifikáty. Každá CA je povinná tento záznam skontrolovať pred vydaním certifikátu. Ak v ňom daná CA nie je uvedená, musí vydanie odmietnuť.
Toto chráni pred certifikátom, ktorý by na vaše meno vydala nedbanlivá alebo oklamaná CA. Je to dodatočný zámok, nie povinnosť.
Ako vyzerá CAA záznam
example.com. 3600 IN CAA 0 issue "letsencrypt.org"
example.com. 3600 IN CAA 0 issue "sectigo.com"
example.com. 3600 IN CAA 0 iodef "mailto:beveiliging@example.com"CAA záznam má tri časti:
| Časť | Príklad | Význam |
|---|---|---|
| Príznak | 0 | Takmer vždy 0. Hodnota 128 znamená: "ak tomuto pravidlu nerozumiete, nič nevydávajte". |
| Tag | issue | Aký typ pravidla ide (pozri nižšie). |
| Hodnota | "letsencrypt.org" | CA, označená svojou vlastnou doménovou menou. Medzi úvodzovkami. |
Tri tagy, s ktorými sa stretnete:
issue: táto CA smie vydávať bežné certifikáty (preexample.com,www.example.coma podobne).issuewild: táto CA smie vydávať wildcard certifikáty (*.example.com). Akissuewildnie je uvedený, pre wildcard certifikáty platia pravidláissue.iodef: kam môže CA poslať hlásenie, ak niekto požiada o certifikát, ktorý podľa vášho CAA nie je povolený.
Môžete mať viac pravidiel issue: každá uvedená CA potom smie vydávať. Ak naopak chcete, aby nikto nevydával určitý typ certifikátu, použijete prázdnu hodnotu: 0 issuewild ";" znamená "nikto nesmie vydávať wildcard certifikáty".
Žiadny CAA záznam: smie ktokoľvek
Ak vaša doména nemá CAA záznam, certifikát smie vydať ktorákoľvek CA. Ide o bežnú situáciu pre väčšinu domén a nie je to chyba. CAA je voliteľná možnosť.
CA vyhľadáva CAA záznam na presnom názve certifikátu. Ak tam nič nenájde, pozrie sa o úroveň vyššie, až po samotnú doménu. CAA záznam na example.com teda platí aj pre shop.example.com, pokiaľ shop.example.com nemá vlastný CAA záznam.
Ako môže CAA zablokovať váš certifikát
Toto je dôvod, prečo CAA patrí do kurzu pre začiatočníkov: CAA záznam môže spôsobiť, že sa váš bezplatný certifikát prestane obnovovať, a chybové hlásenie pritom nie je vždy jasné.
Predstavte si: vaša webová stránka roky bežala s certifikátom od platenej CA. Niekto vtedy vytvoril CAA záznam:
example.com. CAA 0 issue "sectigo.com"Teraz prechádzate na hosting, ktorý automaticky žiada o certifikáty Let's Encrypt. Let's Encrypt skontroluje CAA, zistí, že smie iba Sectigo, a žiadosť zamietne. Vaša stránka nedostane certifikát a návštevníci uvidia upozornenie.
Riešenie: pridajte CA, ktorú práve používate, alebo starý CAA záznam odstráňte, ak ho už nepotrebujete.
example.com. CAA 0 issue "sectigo.com"
example.com. CAA 0 issue "letsencrypt.org"Ak používate službu, ktorá si certifikáty rieši sama, napríklad platformu pre internetový obchod alebo CDN, zistite si, ktorú CA používa, a pridajte ju. Inak zablokujete aj jej certifikát.
V praxi: ako to vyzerá v paneli
Ako príklad použijeme DNS obrazovku v Môj WebOké, ktorá má CAA pomôcku s najznámejšími CA. V DirectAdmin, Cloudflare a vo väčšine ostatných panelov vypĺňate rovnaké tri polia: príznak, tag a hodnotu.
- Kliknite na Pridať záznam a vyberte CAA.
- Nechajte názov na samotnej doméne (
@). - Nechajte príznak na
0. - Vyberte tag
issue. - Zadajte CA, napríklad
letsencrypt.org. - Uložte a zopakujte pre každú CA, ktorá smie vydávať.
Zhrnutie
- Pomocou CAA záznamu určujete, ktoré certifikačné autority smú vydávať certifikáty pre vašu doménu.
issueplatí pre bežné certifikáty,issuewildpre wildcard certifikáty,iodefpre hlásenia.- Žiadny CAA záznam znamená: smie ktokoľvek. To je normálne.
- CAA záznam na doméne platí aj pre subdomény bez vlastného CAA.
- Zabudnutý CAA záznam môže zablokovať nový alebo obnovovaný certifikát. Pridajte CA, ktorú práve používate.
Kvíz
Úloha
Úloha Z5.2: Vyhľadanie CAA. Vyhľadajte CAA záznamy domény wikipedia.org. Ktoré certifikačné autority smú podľa pravidiel issue vydávať certifikáty? Vypíšte ich všetky.
Úloha O5.2: Vlastné nastavenie vo vašej cvičnej zóne. Vo vašej cvičnej zóne vytvorte na názve samotnej zóny (@) dva CAA záznamy:
0 issue ";"0 iodef "mailto:abuse@dnspractice.eu"
Prvý riadok znamená: nikto nesmie vydávať certifikáty pre tento názov. V cvičnej zóne je to presne správne: nebeží tu žiadna skutočná webová stránka, takže tu žiadny certifikát ani nemá byť, a nikto tak nemôže cvičnú zónu zneužiť na získanie certifikátu. Pri svojej skutočnej doméne toto nikdy nerobte, ak používate https; tam nastavíte CA, ktoré skutočne používate, napríklad 0 issue "letsencrypt.org". Pravidlo iodef v cvičnej zóne smeruje na hlásiacu adresu cvičného prostredia; pri svojej skutočnej doméne zadajte vlastnú adresu.
Potom kliknite na Skontrolovať.
Úloha O5.2
Túto úlohu urobíte vo vlastnej cvičnej zóne: skutočnej DNS zóne na menných serveroch WebOké, určenej iba pre vás. Prihláste sa svojou e-mailovou adresou. Dostanete prihlasovací odkaz e-mailom a potom sa vrátite späť na túto lekciu. Vašu adresu používame iba pre účely kurzu.
Ďalšie čítanie
Tieto články popisujú postup v paneloch WebOké; v iných paneloch sa postupuje podobne.
