Set-OPS-Public/roles/serveur_step_ca
Daniel Allaire f05f505b88 Reconstruction propre : orchestrateur ordonné, registre des flux + pare-feu
Rend l'écosystème reconstructible en une commande (create+deploy idempotent) et
ajoute la couche « accès » (nftables least-privilege) au zéro-confiance.

Orchestrateur (phase 2) :
- docs/couches-deploiement.yml : registre des couches (socle → pki → services → apps → agents)
- scripts/orchestrer.py : tri par couche + topo intra-couche (graphe) → playbooks/site.yml ordonné
- Makefile : site / deployer-tout / flotte-creer / reconstruire / myDay (+ gardes CONFIRMER)
- docs/dependances-groupes.yml : graphe complété (keycloak→openldap, dovecot, postfix, icingaweb2, nextcloud)

Audit codé-en-dur (phase 1b) : labels/slug OIDC dérivés de l'intrant `organisation`
(serveur_forgejo/grafana/nextcloud) — le moteur ne porte plus de nom de tenant.

Registre des flux réseau (phase 0) :
- meta/flux.yml pour tous les rôles (29 rôles, 63 flux ; schéma + matrice validés)
- scripts/resoudre_flux.py : matrice d'audit (docs/registre-flux.md) + rulesets nftables résolus par hôte
- roles/nftables_baseline : déploie le ruleset résolu (moindre-privilège) quand activé, sinon repli

Correctifs : détection du coffre Vault (chemin production → inventaire réellement résolu).
Outillage : make wiki-publier (publication du wiki pédagogique dans Forgejo).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-07 03:08:09 -04:00
..
defaults Câbler les secrets des rôles à leur variable de voûte (vault_*) 2026-07-01 21:29:18 -04:00
handlers Rendre le dry-run (--check) fiable sur les rôles applicatifs 2026-07-01 21:01:53 -04:00
meta Reconstruction propre : orchestrateur ordonné, registre des flux + pare-feu 2026-07-07 03:08:09 -04:00
tasks step_ca : dry-run check-safe (install + init du dépôt Smallstep) 2026-07-01 21:44:14 -04:00
templates Set-OPS — moteur d'ecosystemes numeriques souverains (Alliance Boreale) 2026-06-24 20:17:46 -04:00
README.md Set-OPS — moteur d'ecosystemes numeriques souverains (Alliance Boreale) 2026-06-24 20:17:46 -04:00

serveur_step_ca

Autorité de certification interne Smallstep step-ca avec provisioner ACME, pour émettre les certificats internes (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 instance/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 Set-OPS 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@exemple.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.