OpenClaw 2026 en pratique : liste blanche sortante et sandbox compétences en lecture seule sur Mac distant loué

1 avril 2026 · ~9 min · Équipe technique MacCompute · Guide

Lorsque vous exécutez OpenClaw sur une capacité Mac distante louée, vous déployez une pile d’agents sur du matériel que vous ne contrôlez pas physiquement. L’objectif opérationnel rejoint celui de toute location de calcul partagée : appliquer le moindre privilège aux paquets de compétences (skill packs), isoler l’espace de travail en lecture seule lorsque c’est possible, et définir une liste blanche explicite des domaines en sortie pour empêcher les outils de contacter des hôtes arbitraires. Ce guide propose une séquence compacte et reproductible à intégrer dans un runbook interne — une fois la passerelle opérationnelle (voir notre guide OpenClaw Docker, durcissement et dépannage) et l’accès SSH sécurisé (voir la checklist SSH / VNC première configuration). Si vous co-hébergez l’inférence locale, croisez avec le guide OpenClaw et file batch Ollama pour garder le trafic loopback hors du périmètre « sortie Internet ».

Passerelle et verrouillage des versions des paquets de compétences

La dérive de version sur un nœud loué élargit silencieusement la surface d’attaque : une nouvelle build de passerelle peut activer des outils supplémentaires, et un paquet de compétences mis à jour peut introduire des appels réseau non revus. Traitez le Mac loué comme une petite cellule de production.

  • Passerelle — Avec la CLI globale, installez un semver explicite (par exemple [email protected]) et documentez la commande de montée de version dans le contrôle des changements ; exécutez openclaw doctor après chaque bump. Sous Docker, fixez OPENCLAW_IMAGE sur une référence d’image épinglée par digest, pas seulement :latest, et archivez le digest à côté du fichier compose.
  • Paquets de compétences — Les compétences éditeur ou internes doivent résider dans un répertoire versionné (étiquette Git ou somme de contrôle d’archive). Les chemins de chargement dans la configuration doivent pointer vers cet arbre figé jusqu’à un rafraîchissement délibéré.
  • Instantané de configuration — Exportez la configuration OpenClaw effective (et les fichiers d’environnement avec secrets masqués) dans votre système de tickets à chaque changement d’épinglage ; sur hôtes partagés, c’est la preuve de ce qui était actif pendant un incident.

Combinez l’épinglage avec les contrôles réseau et fichiers ci-dessous : sans politique de sortie, un simple appel curl ou client HTTP embarqué suffit à ouvrir du trafic sortant imprévu dès qu’une compétence l’invoque.

Tableau des paramètres du sandbox de répertoires et des montages en lecture seule

Le sandbox OpenClaw s’articule entre la configuration de la passerelle et la manière dont vous lancez conteneurs ou démons sur macOS. Sur Mac loué, privilégiez une racine d’espace de travail claire, des montages lecture seule pour le code et les données de référence, et un petit volume scratch en écriture pour les artefacts générés. Le tableau suivant sert de checklist mappable sur les options -v Docker ou les volumes Compose.

Paramètre Posture recommandée Notes Mac loué
Racine d’espace de travail Chemin canonique unique (ex. /srv/openclaw/workspace) Éviter d’éparpiller les écritures sous des répertoires personnels partagés avec d’autres outils locataires.
Arbre client / dépôt Montage :ro Les compétences en lecture seule ne altèrent pas la provenance ; repassez en rw uniquement pendant des fenêtres de maintenance contrôlées.
Répertoire du bundle de compétences Montage :ro après installation Empêche l’auto-modification à l’exécution ; les mises à jour passent par votre chaîne de paquets.
Scratch / sorties Volume rw dédié, quota si disponible Journaliser et faire tourner ; seul cet emplacement devrait accueillir de gros fichiers créés par les agents.
Configuration et secrets Chemin hôte avec permissions POSIX strictes ; non lisible par tous Sur images de location partagées, vérifiez umask et appartenance aux groupes avant le premier démarrage de la passerelle.
Mode sandbox agent OS Style d’isolation non-main pour sessions non fiables S’aligne sur les recommandations amont pour les canaux de groupe ; voir le guide de déploiement pour le contexte agents.defaults.sandbox.mode.

Exemple de lignes de volumes façon Docker (adaptez les chemins au layout de votre fournisseur) :

- /data/customer/acme/src:/workspace/src:ro
- /data/skills/acme-pack/v1.4.2:/skills/acme:ro
- /data/scratch/acme:/workspace/out:rw

Étapes de configuration de la liste blanche des domaines sortants

C’est à ce stade que la sécurité de la location de capacité rencontre la politique applicative : le Mac peut se trouver dans un réseau fournisseur avec une sortie Internet généreuse ; vous exprimez l’intention au niveau du processus ou du bord réseau.

  1. Inventaire — Pour chaque compétence, listez les hôtes touchés à l’exécution : registres de paquets, API de modèles, hôtes Git, télémétrie et webhooks. Incluez domaines apex et sous-domaines API courants.
  2. Classification — Séparez « indispensable au succès du job » et « confort ». Repoussez l’analytique optionnelle tant que la liste blanche n’est pas stable.
  3. Mise en œuvre — Privilégiez un point de strangulation unique : pare-feu hôte (pf, profil géré), proxy de sortie avec règles de domaine, ou politique réseau conteneur si le runtime le permet. Reproduisez la même liste dans la politique d’outils OpenClaw si le projet expose des filtres d’URL — tenez le document et la règle live synchronisés.
  4. Déploiement par paliers — Commencez en mode journalisation seule ou allow large, collectez les refus pendant une journée ouvrée, puis resserrez. Sur hôtes loués, des journaux de refus bruyants révèlent souvent des CDN ou chaînes de redirection oubliées.
  5. Vérification — Lancez un job sec qui exerce chaque chemin de compétence ; les échecs doivent être des « sortie bloquée » explicites plutôt que des timeouts opaques.

Si vous servez Ollama en local sur la même machine, le trafic loopback ne doit pas transiter par le filtre externe — mais documentez tout de même que le serveur de modèles est lié à 127.0.0.1, comme dans le guide batch cité en introduction.

Points clés des journaux d’audit

Les journaux d’audit sur Mac loué doivent répondre après coup à deux questions : que l’agent a-t-il tenté, et qu’a-t-on refusé. Champs minimum à conserver (JSON structuré si possible) :

  • Temps et session — Horodatage UTC, identifiant de session ou de canal passerelle, étiquette utilisateur ou locataire si vous multiplexez.
  • Identité d’outil — Nom d’outil, version du paquet de compétences, empreinte de configuration.
  • Système de fichiers — Chemin demandé, chemin absolu normalisé, racine d’espace de travail, opération (lecture / écriture / exécution), issue autoriser / refuser.
  • Réseau — Pour les outils HTTP : méthode, hôte, IP résolue (si journalisable sans fuite de données sensibles), statut ou motif de blocage.
  • Version de politique — Identifiant de la liste de sortie et de la carte des montages pour que les auditeurs sachent quel jeu de règles s’appliquait.

Expédiez les journaux vers un réceptacle que vous maîtrisez (stockage objet, SIEM ou hôte de logs dédié). Les fournisseurs peuvent recycler les disques ; considérez la rétention locale comme best-effort et configurez des forwarders sous launchd ou votre orchestrateur.

FAQ dépannage : dépassement de privilèges et traversée de chemins

Symptôme : l’outil signale « permission denied » sur un fichier pourtant présent. Vérifiez si le chemin se trouve sur un montage lecture seule, si la confidentialité macOS (accès disque complet) bloque le processus passerelle, et si l’UID conteneur correspond à un uid hôte sans droits de lecture.

Symptôme : des écritures apparaissent en dehors du répertoire scratch. Inspectez les cibles des liens symboliques avant montage, désactivez le suivi des symlinks si le runtime le permet, et rejetez les séquences ../ après normalisation dans vos enveloppes d’outils personnalisées.

Symptôme : 403 intermittents d’une API après allowlist. Le nom d’hôte peut différer du SNI TLS (bord CDN). Utilisez les journaux pour capturer l’hôte de connexion réel et ajoutez ce FQDN ; évitez d’ouvrir des domaines fournisseur entiers sauf si le risque est assumé.

Symptôme : la compétence « marche sur mon portable » mais échoue sur le Mac loué. Comparez table de montage, uid/gid et résolveurs DNS ; les images de location utilisent parfois des domaines de recherche différents qui modifient les points de terminaison API.

Symptôme : suspicion de dépassement après mise à jour d’une compétence. Revenez au digest précédent, différenciez les entrées réseau et fichiers d’audit entre versions, et n’élargissez les listes blanches qu’avec référence de ticket.

Synthèse

La capacité Mac louée est un excellent terrain pour OpenClaw et les charges agents macOS natives — à condition de traiter l’exécution des compétences comme du code de production : épingler passerelle et versions, monter les arbres sensibles en lecture seule, imposer des listes blanches de domaines sortants et journaliser refus et résolution de chemins pour analyse ultérieure. C’est le plus petit lot reproductible que nous recommandons avant de multiplier les locataires sur un même matériel.

Pour les forfaits et régions, consultez Tarifs et Achat ; pour l’accès et la facturation, le Centre d’aide.

Les agents sécurisés méritent un matériel prévisible. Des paliers Mac mini dédiés ou loués maintiennent passerelles OpenClaw et sandboxes en ligne sans dépendre du cycle veille de votre portable ni de votre liaison résidentielle.

Achat rapide