DNS & Records

CAA Record

Καθορίζει ποιες Certificate Authorities επιτρέπεται να εκδίδουν SSL για το domain σου.

Τι είναι το CAA

Το CAA (Certification Authority Authorization) record ορίζει ποιες Certificate Authorities (CAs) έχουν δικαίωμα να εκδίδουν SSL πιστοποιητικά για το domain σου. Είναι ένας μηχανισμός προστασίας από certificate mis-issuance: αν κάποιος επιτιθέμενος πάει σε διαφορετική CA για να βγάλει cert για το example.com, η CA οφείλει να ελέγξει το CAA και να αρνηθεί.

Παράδειγμα

example.com.  IN  CAA  0 issue "letsencrypt.org"
example.com.  IN  CAA  0 issue "digicert.com"
example.com.  IN  CAA  0 issuewild ";"
example.com.  IN  CAA  0 iodef "mailto:security@example.com"

Στοιχεία:

  • 0 — flags (συνήθως 0)
  • issue — ποια CA επιτρέπεται για κανονικά πιστοποιητικά
  • issuewild — ποια CA επιτρέπεται για wildcard. Το ";" σημαίνει «καμία».
  • iodef — αν παραβιαστεί το CAA, στείλε αναφορά εδώ

Πώς εφαρμόζεται

Από τον Σεπτέμβριο του 2017, όλες οι CAs υποχρεούνται να ελέγχουν το CAA πριν εκδώσουν πιστοποιητικό. Αν δεν υπάρχει CAA, επιτρέπεται οποιαδήποτε CA. Αν υπάρχει αλλά δε σε αναφέρει, η έκδοση απορρίπτεται.

Πότε αξίζει

  • Για corporate domains όπου ξέρεις ότι θα χρησιμοποιείς πάντα 1-2 συγκεκριμένες CAs.
  • Όταν θες audit trail (μέσω iodef) για προσπάθειες έκδοσης.
  • Για να αποτρέψεις «εκπληξεις» από rogue πιστοποιητικά.

Συχνά λάθη

  • Βάζεις CAA με letsencrypt.org και ξεχνάς ότι ο CDN σου χρησιμοποιεί Cloudflare/AWS που έχει δικές του CAs → cert renewal αποτυγχάνει.
  • Wildcard απαιτεί issuewild εκτός από issue. Αν χρειάζεσαι wildcard, βάλε και τα δύο.

Συνήθης ονόματα CA για το issue: letsencrypt.org, digicert.com, sectigo.com, globalsign.com, pki.goog, amazon.com.

Σχετικά εργαλεία

Σχετικοί όροι