Profitez de l’enregistrement DNS CAA pour autoriser l’autorité de certification à émettre les certificats TLS.

Qu’est-ce que le DNS CAA ?

CAA est l’un des types d’enregistrement DNS qui indique à l’autorité de certification si elle doit émettre un certificat ou non. En d’autres termes, vous faites savoir au monde entier qui doit émettre le certificat SSL/TLS de votre domaine. La mise en œuvre de l’AAC a été rendue obligatoire fin 2017, elle est donc relativement récente et moins de 5% des sites populaires l’ont mise en œuvre.

Prenons un exemple – Geekflare possède un site appelé “gf.dev”, qui a l’enregistrement CAA suivant.

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 issuewild "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"

En regardant les résultats ci-dessus, je peux obtenir le certificat émis uniquement par DigiCert, Comodo et Let’s encrypt. Si je demande à Thawte ou à une autre autorité de certification d’émettre un certificat pour gf.dev, ils ne pourront pas le faire. De plus, si vous êtes attentif, vous remarquerez que certaines entrées ont issue et d’autres issuewild. Voyons de quoi il s’agit.

  • issue – demande à l’autorité de certification d’émettre le certificat uniquement pour ce domaine.
  • issuewild – l’autorité de certification peut émettre un certificat de type “wildcard” afin qu’il puisse être utilisé dans un domaine ou un sous-domaine.

L’enregistrement CAA prend également en charge le format iodef (Incident object description exchange format) qui permet à l’autorité de certification d’envoyer un rapport de violation à l’adresse électronique ou aux coordonnées spécifiées.

Que se passe-t-il si aucun enregistrement CAA n’est trouvé ?

Si un domaine n’a pas d’enregistrement CAA, n’importe qui peut générer une CSR pour ce domaine et faire signer le certificat par n’importe quelle autorité de certification. Il s’agit d’un risque pour la sécurité.

Est-ce que c’est clair maintenant ?

J’ai utilisé quelques abréviations ci-dessus. Voyons de quoi il s’agit.

  • DNS – Système de noms de domaine
  • CA – Autorité de certification
  • CAA – Autorisation de l’autorité de certification
  • TLS – Transport layer security (sécurité de la couche transport)
  • SSL – Secure socket layer (couche de sockets sécurisés)

Comment vérifier l’enregistrement DNS CAA ?

Il existe plusieurs façons de valider l’enregistrement CAA. Si vous ne voulez pas quitter votre terminal, vous pouvez utiliser la commande dig.

dig caa $VotreWEBSITE.COM

Exemple de geekflare.com/fr

root@geekflare:~# dig caa geekflare.com/fr

<<>> DiG 9.11.3-1ubuntu1.8-Ubuntu <<>> caa geekflare.com/fr
; ; options globales : cmd
; ; Réponse obtenue :
; ; ->>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
; ; SECTION DE LA QUESTION :
;geekflare.com/fr. IN CAA

; ; SECTION RÉPONSE :
geekflare.com/fr. 3600 IN CAA 0 issuewild "comodoca.com"
geekflare.com/fr. 3600 IN CAA 0 issuewild "letsencrypt.org"
geekflare.com/fr. 3600 IN CAA 0 issue "comodoca.com"
geekflare.com/fr. 3600 IN CAA 0 issue "digicert.com ; cansignhttpexchanges=yes"
geekflare.com/fr. 3600 IN CAA 0 issue "letsencrypt.org"
geekflare.com/fr. 3600 IN CAA 0 issuewild "digicert.com ; cansignhttpexchanges=yes"

; ; Temps de requête : 7 msec
; ; SERVEUR : 127.0.0.53#53(127.0.0.53)
; ; WHEN : Tue Oct 08 07:12:21 UTC 2019
; ; MSG SIZE rcvd : 298

root@geekflare:~#

Si vous souhaitez tester cela à distance, vous pouvez utiliser l’outil en ligne DNS CAA Tester.

Comment ajouter un enregistrement CAA ?

Techniquement, il s’agit de la même manière que vous ajoutez d’autres enregistrements DNS tels que A, NS, CNAME, etc.

Si vous utilisez Cloudflare, allez dans l’onglet DNS >> ajouter un enregistrement et sélectionnez CAA comme type.

Pour GoDaddy, allez dans Gestion DNS et ajoutez un enregistrement

Si vous n’êtes pas sûr de savoir comment ajouter un enregistrement, vous pouvez contacter votre fournisseur de DNS/d’hébergement pour obtenir de l’aide.

Conclusion

Si ce n’est déjà fait, vous devriez profiter de l’enregistrement CAA pour ajouter une couche de sécurité à votre domaine. L’ajout d’un enregistrement CAA ne vous coûte rien.