This repository has been archived on 2026-06-26. You can view files and clone it, but cannot push or open issues or pull requests.
Set-OPS/roles/serveur_step_ca
Daniel Allaire 2abe3c86c8 Decouplage moteur/instance Phase 1 : delier les roles du domaine
Variable d'identite d'instance domaine_interne (group_vars/all.yml). Les
13 roles qui codaient chezlepro.internal en dur utilisent {{ domaine_interne }} ;
base_dn LDAP et domaine court derives (dc=acme,dc=local pour un autre loup).

Comportement identique pour Chezlepro (domaine_interne: chezlepro.internal),
mais le moteur devient generique -- premiere brique pour partager l'outil
a la meute. Ajout exemples/instance.exemple.yml.

Non destructif : diff de generation vide, ansible-lint 0 echec, base_dn
derive == ancien code en dur (verifie).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-24 08:12:48 -04:00
..
defaults Decouplage moteur/instance Phase 1 : delier les roles du domaine 2026-06-24 08:12:48 -04:00
handlers Mettre les noms de roles et playbooks au singulier 2026-06-23 23:18:52 -04:00
tasks Mettre les noms de roles et playbooks au singulier 2026-06-23 23:18:52 -04:00
templates Mettre les noms de roles et playbooks au singulier 2026-06-23 23:18:52 -04:00
README.md Mettre les noms de roles et playbooks au singulier 2026-06-23 23:18:52 -04:00

serveur_step_ca

Autorité de certification interne Smallstep step-ca avec provisioner ACME, pour émettre les certificats internes de Chezlepro (client_pki est le client ACME).

Rôle

  • Ajoute le dépôt apt officiel Smallstep (clé + source deb822) et installe step-ca + step-cli.
  • Crée l'utilisateur système step et STEPPATH=/etc/step-ca.
  • Déploie les mots de passe (CA et provisioner) depuis Vault.
  • Initialise l'AC une seule fois (step ca init, standalone + provisioner ACME), garde-fou creates: config/ca.json.
  • Déploie l'unité systemd durcie officielle et démarre le service.

Secrets requis (Vault)

Obligatoires dès l'installation :

serveur_step_ca_password: "{{ vault_step_ca_password }}"
serveur_step_ca_provisioner_password: "{{ vault_step_ca_provisioner_password }}"

À placer dans inventories/production/group_vars/serveur_step_ca/vault.yml (chiffré), les variables en clair référençant ces secrets dans .../serveur_step_ca/main.yml.

Variables principales

Variable Défaut Rôle
serveur_step_ca_nom Chezlepro Internal CA Nom de l'AC
serveur_step_ca_dns FQDN + IP SAN/DNS du certificat de l'AC
serveur_step_ca_adresse :8443 Adresse d'écoute
serveur_step_ca_provisioner admin@chezlepro.internal Provisioner JWK admin
serveur_step_ca_acme true Ajoute un provisioner ACME

Notes

  • La ligne step ca init utilise les drapeaux documentés par Smallstep ; selon la version de step-cli installée, un ajustement mineur peut être nécessaire. L'init ne s'exécute qu'une fois (présence de config/ca.json).
  • L'unité systemd provient de la doc de production Smallstep (sandboxing systemd).
  • Émission/renouvellement côté clients : voir le futur rôle client_pki (ACME).

Hors périmètre

  • Sauvegarde/HA de l'AC, RA (registration authority), rotation des clés racine.