Le deploiement de Chezlepro depuis son propre runner a franchi le socle et le
durcissement sur les quinze machines, et s est arrete sur une seule :
infra-pki-01 : Echec temporaire dans la resolution du nom
url: https://packages.smallstep.com/keys/apt/repo-signing-key.gpg
UN TENANT N A PAS DE DNS SORTANT, ET C EST VOULU. Il resout chez lui, sa requete ne
traverse jamais la frontiere. apt s en sort par le mandataire du cache, qui resout a
sa place ; get_url n a pas de mandataire. Mesure sur la machine : DNS bloque, 443
sortant OK par adresse, apt via le cache OK.
Les cinq reprises du role ne pouvaient rien : elles etaient ecrites pour un serveur
INTERMITTENT (2026-08-23), pas pour une resolution fermee. Une reprise ne repare que
ce qui est passager.
UNE DETTE NOMMEE, APPELEE. client_artefacts le disait : les depots tiers en HTTPS
vont en direct, la seconde voie est propre et RESTE A FAIRE. Elle a ete appelee le
jour ou un ecosysteme s est reconstruit derriere une frontiere qui fait son travail.
La cle est versionnee, avec son empreinte et sa procedure de rafraichissement. Meme
idiome que les collections et les roues : le depot porte, la cible n ouvre rien.
C est ce qui rend une lignee reproductible SANS INTERNET.
Cout ecrit : une rotation amont n est plus recuperee toute seule, mais elle ne passe
pas inapercue — apt refuse alors le depot, bruyamment.
TROUVE EN LA RECUPERANT : l URL publique REDIRIGE vers pkgs.infra.smallstep.com.
Sans suivre les redirections on obtient un fichier VIDE, et curl -f sans -L sort en
succes. La procedure le dit, parce que ce piege ne se voit qu au deploiement suivant.
Le correctif du pare-feu a tenu : plus une seule suspension, quinze machines a
ok=66 et 0 unreachable.
make verifier : vert. make prouver : CONFORME, 55 OK, 0 echec, 0 saute.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019f91zs9SDdwSzL2CVei6on
|
||
|---|---|---|
| .. | ||
| defaults | ||
| files | ||
| handlers | ||
| meta | ||
| tasks | ||
| templates | ||
| README.md | ||
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
stepetSTEPPATH=/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-foucreates: 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 initutilise les drapeaux documentés par Smallstep ; selon la version destep-cliinstallée, un ajustement mineur peut être nécessaire. L'init ne s'exécute qu'une fois (présence deconfig/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.