Vi presentiamo PostScale -- API email per invii transazionali, ricezione e indirizzi mascherati. PostScale

    Cos'è un record CAA

    Scopri come i record CAA controllano quali autorità di certificazione possono emettere certificati SSL/TLS per il tuo dominio. Include esempi per la dashboard e l'API di DNScale.

    Un record CAA (Certification Authority Authorization) specifica quali autorità di certificazione (CA) sono autorizzate a emettere certificati SSL/TLS per il tuo dominio. I record CAA sono una misura di sicurezza che aiuta a prevenire l'emissione non autorizzata di certificati.

    Come funzionano i record CAA

    Quando una CA riceve una richiesta di certificato, deve controllare i record CAA:

    example.com.    3600    CAA    0 issue "letsencrypt.org"

    Questo dice alle CA: "Solo Let's Encrypt può emettere certificati per example.com."

    Se non esistono record CAA, qualsiasi CA può emettere certificati. Una volta aggiunti i record CAA, solo le CA autorizzate possono emetterli.

    Componenti del record

    ComponenteDescrizioneValori
    FlagFlag critico0 (non critico) o 128 (critico)
    TagTipo di proprietàissue, issuewild, iodef
    ValoreDominio della CA o contatto"letsencrypt.org"

    Tag spiegati

    TagScopo
    issueAutorizza la CA per certificati regolari
    issuewildAutorizza la CA per certificati wildcard
    iodefSegnala violazioni delle policy a questo indirizzo

    Casi d'uso comuni

    Consentire una singola CA (Let's Encrypt)

    example.com.    3600    CAA    0 issue "letsencrypt.org"

    Consentire più CA

    example.com.    3600    CAA    0 issue "letsencrypt.org"
    example.com.    3600    CAA    0 issue "digicert.com"
    example.com.    3600    CAA    0 issue "sectigo.com"

    Separare l'emissione regolare e wildcard

    ; Certificati regolari da Let's Encrypt
    example.com.    3600    CAA    0 issue "letsencrypt.org"
     
    ; Certificati wildcard solo da DigiCert
    example.com.    3600    CAA    0 issuewild "digicert.com"

    Negare qualsiasi emissione di certificati

    example.com.    3600    CAA    0 issue ";"

    Con segnalazione delle violazioni

    example.com.    3600    CAA    0 issue "letsencrypt.org"
    example.com.    3600    CAA    0 iodef "mailto:security@example.com"
    example.com.    3600    CAA    0 iodef "https://example.com/caa-report"

    Consentire wildcard solo da una CA specifica

    example.com.    3600    CAA    0 issue "letsencrypt.org"
    example.com.    3600    CAA    0 issuewild ";"  ; Nega tutti i wildcard

    Identificatori CA popolari

    CAValore CAA
    Let's Encryptletsencrypt.org
    DigiCertdigicert.com
    Sectigo (Comodo)sectigo.com
    GlobalSignglobalsign.com
    GoDaddygodaddy.com
    Amazon (ACM)amazon.com
    Google Trust Servicespki.goog
    Cloudflaredigicert.com (Cloudflare usa DigiCert)
    ZeroSSLsectigo.com

    Formato del record

    CampoDescrizioneEsempio
    NomeDominio (solitamente apex)@ o sottodominio
    TipoTipo di recordCAA
    FlagFlag critico0 o 128
    TagTipo di proprietàissue, issuewild, iodef
    ValoreIdentificatore CAletsencrypt.org
    TTLTime to live (secondi)3600

    Aggiungere un record CAA

    Tramite la dashboard

    1. Vai alla tua zona nella dashboard di DNScale
    2. Clicca Add Record
    3. Configura il record:
      • Name: Solitamente @ per il dominio apex
      • Type: Seleziona CAA
      • Flag: Scegli 0 (Non critico) o 128 (Critico)
      • Tag: Seleziona issue, issuewild o iodef
      • Value: Inserisci il dominio della CA o l'indirizzo di contatto
      • TTL: Imposta la durata della cache (predefinito: 3600)
    4. Clicca Create Record

    Tramite l'API

    Autorizzare Let's Encrypt a emettere certificati:

    curl -X POST "https://api.dnscale.eu/v1/zones/{zone_id}/records" \
      -H "Authorization: Bearer YOUR_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "name": "@",
        "type": "CAA",
        "content": "0 issue \"letsencrypt.org\"",
        "ttl": 3600
      }'

    Aggiungere autorizzazione wildcard:

    curl -X POST "https://api.dnscale.eu/v1/zones/{zone_id}/records" \
      -H "Authorization: Bearer YOUR_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "name": "@",
        "type": "CAA",
        "content": "0 issuewild \"letsencrypt.org\"",
        "ttl": 3600
      }'

    Aggiungere segnalazione delle violazioni:

    curl -X POST "https://api.dnscale.eu/v1/zones/{zone_id}/records" \
      -H "Authorization: Bearer YOUR_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "name": "@",
        "type": "CAA",
        "content": "0 iodef \"mailto:security@example.com\"",
        "ttl": 3600
      }'

    Risposta API:

    {
      "status": "success",
      "data": {
        "message": "Record created successfully",
        "record": {
          "id": "encoded-record-id",
          "name": "example.com.",
          "type": "CAA",
          "content": "0 issue \"letsencrypt.org\"",
          "ttl": 3600,
          "disabled": false
        }
      }
    }

    Ereditarietà CAA

    I record CAA vengono ereditati dai sottodomini a meno che non vengano sovrascritti:

    ; CAA all'apex - si applica a example.com e a tutti i sottodomini
    example.com.         3600    CAA    0 issue "letsencrypt.org"
     
    ; Override per un sottodominio specifico
    shop.example.com.    3600    CAA    0 issue "digicert.com"

    In questo caso:

    • example.com - solo Let's Encrypt
    • www.example.com - solo Let's Encrypt (ereditato)
    • shop.example.com - solo DigiCert (sovrascritto)

    Best practice

    1. Inizia con il monitoraggio - Aggiungi record iodef per ricevere segnalazioni prima di limitare l'emissione

    2. Includi la tua CA effettiva - Prima di aggiungere record restrittivi, verifica quale CA utilizzi

    3. Pianifica per i wildcard - Ricorda che issuewild è separato da issue

    4. Usa il flag non critico (0) - Usa il flag 128 solo se desideri un'applicazione rigorosa

    5. Aggiorna prima di cambiare CA - Aggiungi l'autorizzazione per la nuova CA prima di cambiare provider

    6. Non dimenticare i sottodomini - Verifica se i sottodomini necessitano di policy diverse

    Risoluzione problemi emissione certificati

    Se l'emissione del certificato fallisce dopo aver aggiunto record CAA:

    1. Verifica che esistano record CAA:

      dig CAA example.com
    2. Controlla l'identificatore CA corretto:

      • Contatta la tua CA per l'identificatore esatto
      • Alcune CA usano identificatori della società madre
    3. Verifica l'autorizzazione wildcard:

      • issuewild è necessario per i certificati wildcard
      • Se esiste solo issue, i wildcard falliranno
    4. Controlla l'ereditarietà dei sottodomini:

      • I sottodomini ereditano il CAA del dominio padre a meno che non venga sovrascritto

    Testare i record CAA

    # Interroga i record CAA
    dig CAA example.com
     
    # Controlla con un nameserver specifico
    dig CAA example.com @ns1.dnscale.eu
     
    # Usa strumenti online
    # - SSLLabs SSL Test
    # - CAA Test (caatest.co.uk)

    Tipi di record correlati

    • TXT - Verifica del dominio per le CA
    • TLSA - Certificate pinning DANE
    • A - Indirizzo del server per la validazione

    Conclusione

    I record CAA sono una misura di sicurezza semplice ma efficace per controllare l'emissione di certificati SSL/TLS. Specificando quali CA possono emettere certificati per il tuo dominio, riduci il rischio di creazione non autorizzata di certificati. DNScale rende facile configurare i record CAA con una selezione intuitiva dei tag per le policy issue, issuewild e iodef.