Automatisation IA 31 mars 2026

2026 Playbook : secrets OpenClaw, variables d’environnement et Trousseau macOS sur Mac mini M4 cloud

Équipe NodeMac

Rédaction pratiques sécurité

Les passerelles OpenClaw lisent les clés API des modèles, les secrets de signature webhook et les jetons de canal depuis l’environnement—mais sur macOS, « environnement » devient ambigu dès que launchd entre en jeu. Ce playbook 2026 compare le stockage Trousseau aux fichiers dotenv, montre comment câbler les secrets dans les LaunchAgents sans les fuiter vers les shells interactifs, et liste les étapes de rotation pour garder des hôtes Mac mini M4 cloud sans écran conformes sans coller des identifiants dans le chat d’équipe.

Associez ce guide à l’installation OpenClaw sur macOS pour le premier bootstrap. En déboguant les chemins d’accès distants, lisez aussi l’administration distante par tunnel SSH pour ne pas élargir les adresses de liaison juste pour copier-coller des jetons. Pour l’hygiène continue, alignez-vous sur le runbook d’exploitation journaux et mises à niveau afin que la rotation des secrets apparaisse dans les mêmes enregistrements de changement que les mises à jour binaires.

Comparaison des options de stockage

Mécanisme Force Faiblesse
Trousseau macOS ACL d’éléments protégés par l’OS ; pas lisible par tout le monde par défaut Les invites sans écran exigent une GUI ponctuelle ou une discipline CLI security
.env sur disque Itération locale rapide Les outils de sauvegarde copient souvent tout le répertoire personnel—voie de fuite facile
Plist EnvironmentVariables Natif launchd ; reproductible en IaC Toujours en clair au repos—restreindre les permissions du plist à 600

Table de routage par classe de secret

Type de secret Stockage suggéré Cadence de rotation
Clé API fournisseur LLM Trousseau ou agent vault → env au démarrage du processus 60–90 jours ou à la sortie d’un collaborateur
Secret HMAC webhook Élément Trousseau par canal 90 jours ; double clé pendant la bascule
Drapeaux non sensibles Plist ou JSON de config dans git Versionné avec les releases applicatives

Jamais : coller des clés de production dans Slack, un e-mail ou un enregistrement d’écran. Si c’est arrivé, tournez immédiatement—considérez le secret brûlé même si le message était « privé ».

Huit étapes pour un bootstrap de secrets reproductible

  1. Créer un utilisateur de service : compte non-admin dédié à la passerelle ; mode répertoire personnel 700.
  2. Générer les clés hors bande : via l’UI de votre coffre ou la console fournisseur ; évitez echo dans l’historique shell.
  3. Insérer dans le Trousseau : un élément par secret avec libellés descriptifs et contrôle d’accès limité au binaire passerelle.
  4. Envelopper la commande de lancement : petit shell qui exporte les variables depuis le Trousseau via security find-generic-password -w puis exécute OpenClaw—journaliser stderr, pas les valeurs.
  5. Référencer l’enveloppe dans le LaunchAgent : ProgramArguments pointe vers l’enveloppe ; le plist ne stocke pas de secrets en clair.
  6. Valider en dry-run : démarrer la passerelle, confirmer le point de santé, puis révoquer l’ancienne clé dans l’UI fournisseur si migration.
  7. Documenter la rotation : le modèle de ticket liste les canaux dépendants et une fenêtre de retour arrière ≤ 30 minutes.
  8. Auditer chaque trimestre : grep disque pour des chaînes accidentelles sk- ou ANTHROPIC hors chemins Trousseau.

Garde-fous numériques que les équipes appliquent vraiment

Choisissez trois chiffres, publiez-les dans votre README interne et faites-les respecter en revue de code : nombre maximal de fichiers secrets en clair sur disque (0 en production), âge maximal d’un jeton longue durée (90 jours par défaut), nombre maximal d’ingénieurs avec sudo sur le compte passerelle (2 personnes nommées). Quand un prestataire a besoin d’accès, limitez sa clé SSH dans le temps à la fenêtre de maintenance plutôt que d’élargir durablement les ACL du Trousseau.

  • Permissions plist : chmod 600 sur tout fichier contenant des chemins vers des secrets—même si le texte secret vit dans le Trousseau.
  • Timeout de l’enveloppe : la lecture Trousseau doit finir en moins de 2 secondes ; au-delà, soupçonnez des invites UI bloquantes sur hôtes sans écran—passez une fois en VNC puis retestez.
  • Âge max des secrets : tout ce qui dépasse 180 jours sans rotation obtient un ticket forcé au prochain sprint planning.

Journalisation d’audit sans imprimer les secrets

Les auditeurs demandent « qui a touché la clé ? »—pas « quelle est la clé ? ». Configurez les logs passerelle pour émettre des empreintes hachées de chaque source d’identifiants (UUID d’élément Trousseau, chemin vault ou ID de lot de rotation) au lieu de jetons littéraux. Quand OpenClaw remonte des erreurs, masquez les paramètres de requête pouvant répercuter des clés API en amont ; de nombreux clients HTTP journalisent l’URL complète par erreur. Conservez les logs au moins 30 jours en stockage chaud et 1 an à froid sous contrôles de type SOC. Associez ces logs aux enregistrements de session SSH uniquement pour les comptes break-glass ; l’accès courant doit s’appuyer sur des changements de config revus en commit plutôt que sur du collage live de secrets.

Si vous exécutez plusieurs passerelles dev/stage/prod, donnez à chacune une partition Trousseau distincte et ne copiez jamais les répertoires ~/Library/Keychains entre hôtes—macOS les traitera comme corrompus ou demandera sans fin sur nœuds sans écran. Reconfigurez chaque environnement avec des éléments neufs et documentez les noms dans votre wiki interne pour que l’astreinte vérifie la présence avec security find-generic-password -a service -s LABEL sans révéler les octets.

Pièges macOS sans écran sur Mac loués

Les Mac cloud ont rarement quelqu’un au bureau pour cliquer « Toujours autoriser ». Finalisez la première autorisation Trousseau via VNC, puis comptez sur SSH pour les modifications du lendemain. Si plusieurs ingénieurs partagent un compte, les ACL se brouillent—séparez les passerelles par environnement plutôt que de partager des identifiants. Pour un env lisible par l’humain temporairement en debug, utilisez un fichier ramdisk supprimé à la déconnexion plutôt que /tmp, qui survit parfois aux reboots selon l’image.

NodeMac loue du matériel Mac mini M4 dédié à Hong Kong, au Japon, en Corée, à Singapour et aux États-Unis avec SSH et VNC : le découpage pragmatique est SSH pour l’automatisation, VNC pour les invites TCC. Comparez les tarifs par région lorsque vous isolez les secrets de production sur des hôtes séparés des expériences staging—contenir le blast radius coûte moins cher qu’une réponse à incident. Lisez la documentation d’aide pour l’onboarding des clés SSH avant d’automatiser des déploiements pilotés par vault sur une flotte.

FAQ

Les secrets doivent-ils vivre dans le même dépôt git que les plists LaunchAgent ?

Les plists oui, jamais les valeurs secrètes—validez la structure et les clés non sensibles uniquement. Injectez les valeurs sensibles via des jobs de déploiement CI qui parlent à l’API de votre coffre à l’installation.

Comment tourner une clé sans doubler la facturation API ?

Ajoutez la nouvelle clé à côté de l’ancienne dans la console fournisseur, déployez la passerelle avec le nouvel élément Trousseau tant que l’ancienne reste valide, observez 24 h de trafic vert, puis révoquez l’ancienne. Ce schéma évite les bascules à minuit qui échouent à mi-chemin à cause d’une faute de frappe dans le script enveloppe.

Le Mac mini M4 est une plateforme solide pour les secrets OpenClaw : Apple Silicon fait tourner des démons toujours allumés efficacement, le Trousseau natif s’intègre aux identités de service, et l’isolation physique évite le bruit de canaux auxiliaires hyperviseur qui complique les questionnaires de conformité. NodeMac fournit des Mac mini dédiés avec SSH/VNC à HK, JP, KR, SG et US pour que les passerelles restent sur du métal prévisible. La location à la demande permet aux équipes sécurité de cloner un hôte « référence secrets » par région sans acheter cinq placards de Mac d’avance.

Isolez les passerelles OpenClaw par région

Nœuds M4 dédiés HK·JP·KR·SG·US—séparez prod et staging sans portables partagés.

NM
NodeMac Cloud Mac
Déploiement 5 min

Louez un Mac Apple Silicon dédié dans le cloud. SSH/VNC, nœuds HK·JP·KR·SG·US.

Démarrer