📄 Documentation : Accès Ollama distant via un pont local (Socat)
1. Présentation
Cette configuration permet à une application (type OpenClaw) installée sur un serveur distant (VM Proxmox/Cloud) d’accéder à une instance Ollama située sur un réseau local (PC Windows/Linux derrière une Box), tout en laissant l’application croire qu’Ollama tourne en local sur 127.0.0.1.
Le principe : on crée sur la VM un pont local qui écoute sur 127.0.0.1:11434 et redirige vers l’instance Ollama distante exposée via la box.
2. Prérequis
- Côté Maison : une redirection de port (NAT) sur votre routeur/box (port
11434/TCP) pointant vers la machine Ollama. - Sécurité : restriction de l’IP source sur le routeur/box pour n’autoriser que l’IP publique de votre serveur (OVH/Proxmox).
- Côté Serveur Distant (VM OpenClaw) : le port
11434doit être libre (si un Ollama local écoute déjà, il faudra l’arrêter).
Variables à remplacer
VOTRE_ADRESSE_DISTANTE: le nom DNS ou l’IP publique qui pointe vers votre box (ex :mon-domaine.exampleou203.0.113.10).
3. Installation de l’utilitaire
Sur le serveur distant (Debian/Ubuntu) :
sudo apt update && sudo apt install socat -y
4. Création du service de redirection (persistance)
Pour éviter de relancer la commande à chaque redémarrage, on crée un service systemd.
1) Créer le fichier de service :
sudo nano /etc/systemd/system/ollama-bridge.service
2) Coller la configuration suivante (remplacez VOTRE_ADRESSE_DISTANTE) :
[Unit]
Description=Pont local vers Ollama distant (socat)
After=network.target
[Service]
Type=simple
# Écoute uniquement en local (127.0.0.1) et redirige vers l'instance Ollama distante
ExecStart=/usr/bin/socat TCP-LISTEN:11434,fork,bind=127.0.0.1 TCP:VOTRE_ADRESSE_DISTANTE:11434
Restart=always
RestartSec=5
[Install]
WantedBy=multi-user.target
3) Activer et démarrer le service :
sudo systemctl daemon-reload
sudo systemctl enable ollama-bridge
sudo systemctl start ollama-bridge
4) Vérifier l’état :
sudo systemctl status ollama-bridge --no-pager
5. Configuration de l’application (OpenClaw)
Dans OpenClaw (ou son fichier de configuration), utilisez l’URL locale :
- Ollama API URL :
http://127.0.0.1:11434
Même si OpenClaw régénère un fichier comme models.json et remet 127.0.0.1, cela restera correct, car socat fournit justement ce endpoint local.
6. Vérification
Depuis la VM OpenClaw :
curl http://127.0.0.1:11434/api/tags
Si le JSON listant vos modèles s’affiche, le pont est opérationnel.
7. Avantages de cette méthode
- Léger : pas besoin d’installer/maintenir Nginx.
- Transparent : OpenClaw continue de viser
127.0.0.1:11434. - Sécurisé côté VM : le port
11434n’écoute que sur127.0.0.1(pas exposé publiquement).
8. Dépannage rapide
Voir les logs du service :
journalctl -u ollama-bridge -f
Tester l’accès direct à l’instance distante (doit fonctionner depuis la VM) :
curl http://VOTRE_ADRESSE_DISTANTE:11434/api/tags
Conflit de port (11434 déjà utilisé) :
sudo ss -lntp | grep 11434
Si un processus écoute déjà sur 127.0.0.1:11434, il faut l’arrêter ou changer le port local du bridge.
9. Configuration des modèles dans OpenClaw
9.1. Modification du fichier .openclaw/openclaw.json
Ajouter ou modifier les paramètres nécessaires dans le fichier pour configurer les modèles selon vos besoins.
a) Dans la section auth, ajouter la partie pour Ollama :
"auth": {
"profiles": {
"zai:default": {
"provider": "zai",
"mode": "api_key"
},
"mistral:default": {
"provider": "mistral",
"mode": "api_key"
},
"ollama:default": {
"provider": "ollama",
"mode": "api_key"
}
}
}
b) Dans la section defaults, ajouter les modèles Ollama :
"model": {
"primary": "ollama/ministral-gpu:latest"
},
"models": {
"zai/glm-4.7-flash": {},
"mistral/mistral-medium-latest": {},
"mistral/mistral-small-latest": {},
"mistral/mistral-large-latest": {},
"mistral/pixtral-large-latest": {},
"mistral/open-mistral-7b": {},
"mistral/magistral-medium-latest": {},
"mistral/magistral-small": {},
"ollama/glm-4.7-flash:latest": {},
"ollama/glm4:9b-chat-q5_K_M": {},
"ollama/glm-4.6:cloud": {},
"ollama/ministral-3:8b": {},
"ollama/qwen3-vl:latest": {},
"ollama/ministral-gpu:latest": {},
"ollama/gpt-oss:latest": {}
}
9.2. Modification du fichier .openclaw/agents/main/agent/auth-profiles.json
Dans la section profiles, ajouter les informations concernant Ollama :
"profiles": {
"zai:default": {
"type": "api_key",
"provider": "zai",
"key": "VOTRE_CLE_API"
},
"mistral:default": {
"provider": "mistral",
"type": "api_key",
"key": "VOTRE_CLE_API",
"baseURL": "https://api.mistral.ai/v1"
},
"ollama:default": {
"type": "api_key",
"provider": "ollama",
"baseURL": "http://127.0.0.1:11434",
"key": "ollama"
}
}