- par défaut :
http://<host>:18789/ - avec
gateway.tls.enabled: true:https://<host>:18789/ - préfixe facultatif : définissez
gateway.controlUi.basePath(par exemple/openclaw)
Configuration (activée par défaut)
L’interface de contrôle est activée par défaut lorsque les ressources sont présentes (dist/control-ui) :
Webhooks
Lorsquehooks.enabled=true, le Gateway expose également un point de terminaison Webhook sur le même serveur HTTP. Consultez hooks dans la référence de configuration du Gateway pour l’authentification et les charges utiles.
RPC HTTP d’administration
POST /api/v1/admin/rpc expose certaines méthodes du plan de contrôle du Gateway via HTTP. Désactivé par défaut ; enregistré uniquement lorsque le Plugin admin-http-rpc est activé. Consultez RPC HTTP d’administration pour le modèle d’authentification, les méthodes autorisées et la comparaison avec l’API WebSocket.
Accès Tailscale
- Serve intégré (recommandé)
- Liaison au tailnet + jeton
- Internet public (Funnel)
Maintenez le Gateway sur local loopback et laissez Tailscale Serve agir comme proxy :Démarrez le Gateway :Ouvrez
https://<magicdns>/ (ou la valeur configurée pour gateway.controlUi.basePath).Remarques sur la sécurité
- L’authentification du Gateway est requise par défaut : jeton, mot de passe, proxy de confiance ou en-têtes d’identité Tailscale Serve lorsqu’ils sont activés.
- Les liaisons hors local loopback nécessitent toujours l’authentification du Gateway : authentification par jeton ou mot de passe, ou proxy inverse tenant compte de l’identité avec
gateway.auth.mode: "trusted-proxy". - L’assistant d’intégration crée par défaut une authentification à secret partagé et génère généralement un jeton de Gateway, même sur local loopback.
- En mode secret partagé, l’interface envoie
connect.params.auth.tokenouconnect.params.auth.passwordlors de l’établissement de la connexion WebSocket. - Avec
gateway.tls.enabled: true, les outils locaux de tableau de bord et d’état affichent des URLhttps://et des URL WebSocketwss://. - Dans les modes transmettant l’identité (Tailscale Serve,
trusted-proxy), la vérification de l’authentification WebSocket s’appuie sur les en-têtes de la requête plutôt que sur un secret partagé. - Pour les déploiements publics de l’interface de contrôle hors local loopback, définissez explicitement
gateway.controlUi.allowedOriginsavec les origines complètes. Sans ce paramètre, les chargements privés depuis la même origine sont acceptés pour local loopback, les hôtes RFC1918 ou link-local,.local,.ts.netet les hôtes CGNAT de Tailscale. gateway.controlUi.dangerouslyAllowHostHeaderOriginFallback: trueactive le repli sur l’origine fournie par l’en-tête Host ; il s’agit d’un dangereux affaiblissement de la sécurité.- Avec Serve, les en-têtes d’identité Tailscale satisfont l’authentification de l’interface de contrôle et du WebSocket lorsque
gateway.auth.allowTailscale: true(aucun jeton ni mot de passe requis). Les points de terminaison de l’API HTTP n’utilisent pas les en-têtes d’identité Tailscale ; ils suivent toujours le mode d’authentification HTTP normal du Gateway. Définissezgateway.auth.allowTailscale: falsepour exiger des identifiants explicites, même via Serve. Ce flux sans jeton suppose que l’hôte du Gateway lui-même est fiable. Consultez Tailscale et Sécurité.
Compilation de l’interface
Le Gateway fournit les fichiers statiques depuisdist/control-ui :