Implémentation du protocole ACME par Sectigo

Le protocole ACME (Automatic Certificate Management Environment) a été créé à l'origine pour le service Let's Encrypt afin d'automatiser les relations entre une machine et l'AC chargée de lui délivrer des certificats.

Ce protocole a fait depuis l'objet d'un RFC (8555).

À la différence de Let's encrypt qui délivre des certificats conformes au standard DV (Domain Validation), le protocole a été implémenté par Sectigo afin de délivrer aussi des certificats OV (Organization Validation) et EV (Extended Validation).

La documentation de l'API REST de Sectigo est accessible en téléchargeant le document SCM - Sectigo Certificate Manager Administrator's Guide sur https://support.sectigo.com/Com_KnowledgeProductPage?c=Sectigo_Certificate_Manager_SCM.

Cette fonctionnalité est accessible aux RAO et DRAO dans la limite des périmètres qui leur ont été affectés.

Création du compte ACME

L'utilisation du protocole ACME passe par la création d'un compte ACME spécifique depuis le portail SCM de Sectigo. Les étapes sont les suivantes :

  1. Connectez-vous au portail SCM de Sectigo en tant que RAO ou DRAO
  2. Choisissez le menu Settings, puis cliquez sur Enrollment Endpoints :
  3. Cliquez sur Accounts en ayant sélectionné la ligne “https://acme.sectigo.com/v2/OV” si vous souhaitez un compte ACME permettant de demander des certificats OV
  4. Cliquez sur Add
    1. Si vous souhaitez créer un compte ACME pour votre organisation en tant que RAO, sélectionnez votre organisation dans la liste
    2. Si vous souhaitez créer un compte ACME pour votre département en tant que DRAO, sélectionnez votre organisation dans la liste puis cliquez sur Departments et enfin sélectionnez votre département dans la liste
  5. Vous devrez choisir les domaines pour lesquels le compte sera actif.
    Par exemple si vous prenez sousdomaine.domaine.fr, le compte permettra de demander des certificats pour les exemples ci-dessous :
  6. Cliquez sur Ok pour valider la création du compte
  7. Notez bien les informations suivantes (elles peuvent être récupérées à nouveau en cliquant sur Details) :
    • ACME URL
    • Key ID
    • HMAC Key

Le compte ACME ainsi créé dans le portail SCM a alors un état pending tant que le client certbot n'est pas installé et qu'aucun certificat n'a été demandé.

Vous pouvez associer des domaines dont la DCV n'a pas encore été réalisée. La validation du domaine peut être réalisée par challenge avec cerbot dans ce cas uniquement.

Utilisation du compte ACME avec certbot

Installation de certbot

Afin d'installer certbot sur votre machine, le plus simple est de se rendre sur la page https://certbot.eff.org et de sélectionner votre logiciel et système d'exploitation, un guide d'installation adapté vous sera alors proposé.

Utilisation de certbot

La première chose à faire est d'activer le compte ACME créé précédemment :

//exemple avec un certificat de type OV
sudo certbot register --email monemail@domaine.fr --server https://acme.sectigo.com/v2/OV --eab-kid <Key ID> --eab-hmac-key <HMAC Key>

Puis vous pouvez demander votre certificat, soit en mode batch, soit en interactif :

sudo certbot certonly --standalone --non-interactive --agree-tos --email monemail@domaine.fr --server https://acme.sectigo.com/v2/OV --eab-kid <Key ID> --eab-hmac-key <HMAC Key> --domain mondomaine.fr

A partir de là, le compte ACME dans le portail SCM de Sectigo aura un état valid.