Passa al contenuto principale

RFC 8555 - Ambiente di gestione automatica dei certificati (ACME)

Internet Engineering Task Force (IETF) Request for Comments: 8555 Categoria: Standards Track ISSN: 2070-1721

Autori: R. Barnes (Cisco) J. Hoffman-Andrews (EFF) D. McCarney (Let's Encrypt) J. Kasten (University of Michigan)

Pubblicato: Marzo 2019


Sommario

I certificati dell'infrastruttura a chiave pubblica che utilizzano X.509 (PKIX) sono utilizzati per vari scopi, il più significativo dei quali è l'autenticazione dei nomi di dominio. Pertanto, le autorità di certificazione (CA) nel PKI web sono incaricate di verificare che un richiedente di un certificato rappresenti legittimamente i nomi di dominio nel certificato. Al momento della stesura, questa verifica viene effettuata attraverso una raccolta di meccanismi ad hoc. Questo documento descrive un protocollo che una CA e un richiedente possono utilizzare per automatizzare il processo di verifica ed emissione del certificato. Il protocollo fornisce anche funzionalità per altre funzioni di gestione dei certificati, come la revoca dei certificati.


Stato di questo Memo

Questo è un documento dell'Internet Standards Track.

Questo documento è un prodotto dell'Internet Engineering Task Force (IETF). Rappresenta il consenso della comunità IETF. Ha ricevuto una revisione pubblica ed è stato approvato per la pubblicazione dall'Internet Engineering Steering Group (IESG).


Caratteristiche principali

Vantaggi del protocollo ACME:

  • Completamente automatizzato: Nessun intervento manuale dalla richiesta al rinnovo
  • 🔄 Aggiornamenti frequenti: Supporta certificati di breve durata (Let's Encrypt predefinito: 90 giorni)
  • 💰 Riduzione dei costi: Elimina i costi dei processi manuali
  • 🔒 Sicurezza migliorata: I certificati di breve durata riducono il rischio di esposizione

Flusso di lavoro ACME tipico:

Client (Client ACME)                    Server ACME (CA)
| |
| 1. Creare account |
|--------------------------------------->|
| <-- URL dell'account |
| |
| 2. Inviare ordine certificato |
|--------------------------------------->|
| <-- Oggetto ordine + Sfide |
| |
| 3. Completare validazione |
| (HTTP-01 o DNS-01) |
|--------------------------------------->|
| <-- Validazione riuscita |
| |
| 4. Finalizzare (Inviare CSR) |
|--------------------------------------->|
| <-- URL del certificato |
| |
| 5. Scaricare certificato |
|--------------------------------------->|
| <-- Catena certificati formato PEM |

Componenti principali

Tipi di risorse

  1. Directory: Directory degli endpoint API del server
  2. Account: Informazioni sull'account del client
  3. Order: Ordine del certificato
  4. Authorization: Autorizzazione del dominio
  5. Challenge: Sfida di validazione
  6. Certificate: Certificato emesso

Metodi di validazione

  • Sfida HTTP-01: Fornire un file in un percorso HTTP specifico
  • Sfida DNS-01: Fornire un record DNS TXT specifico

Client ACME popolari

  • Certbot (EFF Ufficiale)
  • acme.sh (Script Shell)
  • Lego (Linguaggio Go)
  • win-acme (Windows)

RFC correlati

  • RFC 7515 - JSON Web Signature
  • RFC 5280 - Certificati X.509
  • RFC 6797 - HSTS
  • RFC 7807 - Problem Details per API HTTP

Riferimenti


Per le specifiche tecniche dettagliate, si prega di consultare il documento ufficiale RFC 8555.