Ansible
La forma recomendada de implementar OpenClaw en servidores de producción es mediante openclaw-ansible — un instalador automatizado con arquitectura de seguridad primero.
Inicio Rápido
Instalación con un comando:
curl -fsSL https://raw.githubusercontent.com/openclaw/openclaw-ansible/main/install.sh | bash
📦 Guía completa: github.com/openclaw/openclaw-ansible El repositorio openclaw-ansible es la fuente de verdad para la implementación con Ansible. Esta página es una descripción general rápida.
Lo que obtienes
- 🔒 Seguridad primero con firewall: UFW + aislamiento Docker (solo SSH + Tailscale accesibles)
- 🔐 VPN Tailscale: Acceso remoto seguro sin exponer servicios públicamente
- 🐳 Docker: Contenedores sandbox aislados, enlaces solo a localhost
- 🛡️ Defensa en profundidad: Arquitectura de seguridad de 4 capas
- 🚀 Configuración con un comando: Implementación completa en minutos
- 🔧 Integración con Systemd: Inicio automático al arrancar con endurecimiento
Requisitos
- Sistema Operativo: Debian 11+ o Ubuntu 20.04+
- Acceso: Privilegios de root o sudo
- Red: Conexión a Internet para la instalación de paquetes
- Ansible: 2.14+ (instalado automáticamente por el script de inicio rápido)
Qué se instala
El playbook de Ansible instala y configura:
- Tailscale (VPN en malla para acceso remoto seguro)
- Firewall UFW (solo puertos SSH + Tailscale)
- Docker CE + Compose V2 (para sandboxes de agentes)
- Node.js 22.x + pnpm (dependencias de tiempo de ejecución)
- OpenClaw (basado en el host, no contenerizado)
- Servicio Systemd (inicio automático con endurecimiento de seguridad)
Nota: La puerta de enlace se ejecuta directamente en el host (no en Docker), pero los sandboxes de agentes usan Docker para aislamiento. Consulta Sandboxing para más detalles.
Configuración posterior a la instalación
Una vez completada la instalación, cambia al usuario openclaw:
sudo -i -u openclaw
El script posterior a la instalación te guiará a través de:
- Asistente de incorporación: Configura los ajustes de OpenClaw
- Inicio de sesión del proveedor: Conecta WhatsApp/Telegram/Discord/Signal
- Prueba de la puerta de enlace: Verifica la instalación
- Configuración de Tailscale: Conéctate a tu malla VPN
Comandos rápidos
# Verificar estado del servicio
sudo systemctl status openclaw
# Ver registros en vivo
sudo journalctl -u openclaw -f
# Reiniciar la puerta de enlace
sudo systemctl restart openclaw
# Inicio de sesión del proveedor (ejecutar como usuario openclaw)
sudo -i -u openclaw
openclaw channels login
Arquitectura de seguridad
Defensa de 4 capas
- Firewall (UFW): Solo SSH (22) + Tailscale (41641/udp) expuestos públicamente
- VPN (Tailscale): La puerta de enlace es accesible solo a través de la malla VPN
- Aislamiento Docker: La cadena DOCKER-USER de iptables evita la exposición de puertos externos
- Endurecimiento de Systemd: NoNewPrivileges, PrivateTmp, usuario sin privilegios
Verificación
Prueba la superficie de ataque externa:
nmap -p- TU_IP_DEL_SERVIDOR
Debería mostrar solo el puerto 22 (SSH) abierto. Todos los demás servicios (puerta de enlace, Docker) están bloqueados.
Disponibilidad de Docker
Docker se instala para sandboxes de agentes (ejecución aislada de herramientas), no para ejecutar la puerta de enlace en sí. La puerta de enlace se enlaza solo a localhost y es accesible a través de la VPN Tailscale. Consulta Sandbox y herramientas multi-agente para la configuración del sandbox.
Instalación manual
Si prefieres control manual sobre la automatización:
# 1. Instalar requisitos previos
sudo apt update && sudo apt install -y ansible git
# 2. Clonar repositorio
git clone https://github.com/openclaw/openclaw-ansible.git
cd openclaw-ansible
# 3. Instalar colecciones de Ansible
ansible-galaxy collection install -r requirements.yml
# 4. Ejecutar playbook
./run-playbook.sh
# O ejecutar directamente (luego ejecutar manualmente /tmp/openclaw-setup.sh después)
# ansible-playbook playbook.yml --ask-become-pass
Actualizando OpenClaw
El instalador de Ansible configura OpenClaw para actualizaciones manuales. Consulta Actualizando para el flujo de actualización estándar. Para volver a ejecutar el playbook de Ansible (por ejemplo, para cambios de configuración):
cd openclaw-ansible
./run-playbook.sh
Nota: Esto es idempotente y seguro de ejecutar múltiples veces.
Solución de problemas
El firewall bloquea mi conexión
Si te quedas bloqueado fuera:
- Asegúrate de poder acceder primero a través de la VPN Tailscale
- El acceso SSH (puerto 22) siempre está permitido
- La puerta de enlace es solo accesible a través de Tailscale por diseño
El servicio no se inicia
# Verificar registros
sudo journalctl -u openclaw -n 100
# Verificar permisos
sudo ls -la /opt/openclaw
# Probar inicio manual
sudo -i -u openclaw
cd ~/openclaw
pnpm start
Problemas con el sandbox de Docker
# Verificar que Docker esté ejecutándose
sudo systemctl status docker
# Verificar imagen del sandbox
sudo docker images | grep openclaw-sandbox
# Construir imagen del sandbox si falta
cd /opt/openclaw/openclaw
sudo -u openclaw ./scripts/sandbox-setup.sh
Fallo en el inicio de sesión del proveedor
Asegúrate de estar ejecutando como el usuario openclaw:
sudo -i -u openclaw
openclaw channels login
Configuración avanzada
Para detalles de arquitectura de seguridad y solución de problemas:
Relacionado
- openclaw-ansible — guía completa de implementación
- Docker — configuración de puerta de enlace contenerizada
- Sandboxing — configuración de sandbox de agentes
- Sandbox y herramientas multi-agente — aislamiento por agente