Configuración
Claude Code en un VPS
Un pequeño servidor siempre encendido saca a Claude Code de tu portátil y le permite seguir trabajando mientras tú no lo haces. Esta es una configuración rápida de montar y segura para dejarla funcionando, con sitio también para los demás agentes de código.
Respuesta rápida
Alquila un VPS Linux con al menos 4 GB de RAM, crea un usuario no root y deja SSH solo con claves. Después instala Claude Code con curl -fsSL https://claude.ai/install.sh | bash (sin necesidad de Node.js) e inicia sesión con claude auth login, pegando el código de vuelta por SSH. Mantén las sesiones vivas con tmux, Remote Control o un daemon de sesiones como Maude.
Ejecutar Claude Code en un servidor en lugar de en tu portátil te da tres cosas. Sigue trabajando cuando el portátil está cerrado. Sobrevive a una conexión caída. Y pone al agente en una máquina que puedes tirar, no en la que tiene tus claves SSH y tu perfil del navegador. Esta guía cubre una configuración que lleva unos quince minutos en una máquina Debian o Ubuntu recién creada. Los mismos pasos sirven en Alpine y Fedora con pequeños cambios.
Necesitas un plan de Claude que incluya Claude Code: Pro, Max, Team o Enterprise, o una cuenta de Console. El plan gratuito de claude.ai no lo incluye. Si inicias sesión con tu suscripción, no hay clave de API que gestionar ni consumo facturado aparte.
1. Elige una máquina
Los requisitos del sistema de Anthropic indican 4 GB de RAM o más y un procesador x64 o ARM64. Los sistemas Linux compatibles son Ubuntu 20.04+, Debian 10+ y Alpine 3.19+. En la práctica, la toolchain de tu proyecto pesa más que la propia CLI:
- 4 GB: el mínimo documentado, suficiente para una sesión en un proyecto modesto.
- 8 GB: si compilas algo de cierto tamaño (un bundler, una batería de tests, un contenedor o dos) o ejecutas varias sesiones a la vez.
- 16 GB: si ejecutas varios agentes en paralelo, o una base de datos a su lado.
Hetzner, DigitalOcean, Scaleway, OVH, Vultr y otros funcionan, y también un equipo viejo debajo de tu mesa. Elige una región cercana si alguna vez vas a escribir en una terminal en él. Las instancias ARM suelen ser las más baratas por gigabyte y Claude Code funciona en ellas de forma nativa. Nuestra guía del mejor VPS para agentes de código compara proveedores y tamaños.
2. Crea un usuario no root
Muchas imágenes de VPS te conectan como root. No ejecutes el agente como root: convierte cualquier error en uno que afecta a todo el sistema. Además, Claude Code se niega a arrancar en modo bypass-permissions como root, así que tarde o temprano necesitarás un usuario normal. En Debian o Ubuntu:
adduser dev
usermod -aG sudo dev
rsync --archive --chown=dev:dev ~/.ssh /home/dev
En Fedora, el grupo de administración es wheel en lugar de sudo. En Alpine, instala primero sudo o doas. La última línea copia la clave con la que ya has iniciado sesión, para que puedas volver a conectarte como dev antes de cerrar nada. Pruébalo desde una segunda terminal antes de cerrar la primera. Quedarte fuera de un VPS recién creado es un rito de iniciación que mejor saltarse.
3. Claves SSH y bastionado
Si todavía entras con contraseña, cambia primero a una clave. Genera una en tu ordenador con ssh-keygen -t ed25519 y súbela con ssh-copy-id dev@your-server. Cuando el acceso con clave funcione, edita /etc/ssh/sshd_config:
PermitRootLogin no
PasswordAuthentication no
PubkeyAuthentication yes
Después reinicia SSH: sudo systemctl restart ssh en Debian y Ubuntu. En Fedora el servicio se llama sshd, así que ejecuta sudo systemctl restart sshd. Para ir más allá, añade fail2ban y un firewall que solo permita SSH. Si la máquina no necesita estar en Internet en absoluto, ponla en una red de Tailscale. Tu móvil se une a la misma red y llega a ella directamente.
Desde el móvil: las apps de SSH pueden generar una clave en el dispositivo y mostrarte la parte pública para pegarla en ~/.ssh/authorized_keys. Maude lo hace por ti: su botón «Configurar acceso con clave» crea una clave a través de la conexión con la que ya has iniciado sesión. Instala la parte pública, prueba la nueva clave y guarda la parte privada solo en el llavero del móvil.
4. Instala Claude Code
Anthropic recomienda ahora el instalador nativo, que no necesita Node.js. Ejecútalo con tu usuario normal, no con sudo:
curl -fsSL https://claude.ai/install.sh | bash
claude --version
claude doctor
Coloca el lanzador en ~/.local/bin/claude y se actualiza solo en segundo plano. claude doctor comprueba la instalación y tu configuración sin iniciar una sesión. Algunas alternativas, todas sacadas de la documentación de instalación:
- Repositorios firmados de apt, dnf y apk, si prefieres que lo gestione el gestor de paquetes del sistema. No se actualizan solos; se actualizan con el resto del sistema.
- npm sigue funcionando (
npm install -g @anthropic-ai/claude-code, Node.js 22 o posterior). Instala el mismo binario nativo. Anthropic desaconsejasudo npm install -g. - Alpine necesita
bash,curl,libgcc,libstdc++yripgrep, además deUSE_BUILTIN_RIPGREP=0en tu configuración.
Si una guía más antigua te decía que instalaras Node primero, ya puedes saltarte ese paso.
5. Inicia sesión sin navegador
Ejecuta claude (o claude auth login) y sigue las indicaciones. Un VPS no tiene navegador, así que abrirás la URL de inicio de sesión en cualquier otro dispositivo. Claude Code te deja pulsar c para copiarla. Inicia sesión allí. Cuando el navegador no puede llegar al callback local de Claude Code, algo normal por SSH, muestra un código en su lugar. Pégalo en la línea Paste code here if prompted y el inicio de sesión se completa en el servidor.
La credencial se guarda en ~/.claude/.credentials.json con modo 0600. Trata la máquina en consecuencia: cualquiera con una shell como ese usuario puede usar tu suscripción de Claude. Para scripts y CI también existe claude setup-token, que imprime un token de un año que configuras como CLAUDE_CODE_OAUTH_TOKEN. Según la documentación de autenticación, ese token solo puede hacer peticiones al modelo y no puede iniciar sesiones de Remote Control.
6. Mantenlo vivo
Todo lo que inicias en primer plano en una sesión SSH muere con esa conexión. La solución habitual es tmux:
sudo apt install tmux
tmux new -s work
# start claude, then detach with Ctrl-B then D
tmux attach -t work
Puedes desconectarte, perder la cobertura, volver a conectarte horas después y reengancharte, y la sesión sigue intacta. Eso sí, tmux no sobrevive a un reinicio. Después de uno, claude --continue retoma la conversación más reciente de ese directorio. Nuestra guía sobre mantener Claude Code en marcha con el portátil cerrado cubre las demás opciones, incluidos systemd y los daemons de sesiones.
7. La misma máquina, más agentes
Un servidor que ejecuta Claude Code puede ejecutar los demás agentes de código a su lado. Cada uno se instala en tu directorio personal y mantiene su propio inicio de sesión, así que no se estorban. Deja RAM libre para cada uno que funcione a la vez.
| Agente | Instalación | Inicio de sesión sin navegador |
|---|---|---|
| Codex (OpenAI) | npm install -g @openai/codex | codex login --device-auth (activa antes el inicio de sesión con código de dispositivo en los ajustes de seguridad de ChatGPT) o una clave de API |
| OpenCode | curl -fsSL https://opencode.ai/install | bash | /connect en la TUI y después pega la clave de un proveedor |
| Grok Build (xAI) | curl -fsSL https://x.ai/cli/install.sh | bash | Inicio de sesión en el navegador al primer arranque, o XAI_API_KEY |
Antigravity CLI (Google, agy) | curl -fsSL https://antigravity.google/cli/install.sh | bash | Por SSH imprime una URL y pegas el código de vuelta, o configura GEMINI_API_KEY |
Fuentes: autenticación de Codex, documentación de OpenCode, documentación de Grok Build, instalación de Antigravity CLI, consultadas en octubre de 2026. Codex y Antigravity tienen sus propias guías: Codex CLI en un VPS y Antigravity CLI en un servidor. Gemini CLI ya no es una opción para cuentas personales de Google, y Antigravity CLI es su sustituto por parte de Google.
8. Accede desde el móvil
Hay tres formas de hacerlo, de la más manual a la que menos:
Una app de SSH y tmux. Termius, Blink o cualquier otro cliente, conectado a tu sesión de tmux. Es gratis y completo, y manejas una terminal a pantalla completa con un teclado táctil. Así se compara.
Remote Control. Inicia claude remote-control dentro de tmux y abre la sesión desde la pestaña Code de la app de Claude. Está incluido en Pro, Max, Team y Enterprise. La documentación de Anthropic sugiere tmux o screen justo para este caso. Solo funciona con Claude, y las solicitudes de permiso de la sesión llegan al móvil para que las respondas. La app no puede pasar la sesión a Auto ni a Bypass permissions.
Maude. Maude hace por ti los pasos 4 y 6, y el paso 5 pasa a tu móvil. Añades el servidor por su dirección, pegando un comando ssh … o escaneando un código QR generado con curl -fsSL https://maude.pilotdev.fr/setup | sh. Si has iniciado sesión como root, un botón crea por ti el usuario no root del paso 2. Después Maude despliega su propio daemon por SSH e instala cada agente en una versión que hemos probado y fijado. Inicias sesión en Claude, Codex o cualquiera de los demás desde el móvil. Las sesiones siguen en marcha en el servidor con la app cerrada, y el servidor se conecta por su cuenta al relay de Maude, así que funciona detrás de NAT sin abrir ningún puerto.
9. Decide los permisos
Ahora viene la pregunta interesante: ¿cuánto le dejas hacer sin supervisión? Un servidor que puedes reconstruir es el sitio adecuado para relajar los permisos, siempre que de verdad lo hayas tratado como desechable. El modo auto de Claude Code, en el que un clasificador aprueba las acciones seguras, cubre buena parte del hueco. El bypass completo tiene sus propias reglas, incluida la restricción de root del paso 2. Tienen su propia página: ejecutar Claude Code con permisos completos, de forma segura.
Configura la máquina de forma que perderla sea una molestia y no algo grave. Haz push de tu trabajo a un remoto a menudo, no guardes en ella secretos que no existan en otro sitio y da por hecho que puede que la reconstruyas. Todas las decisiones anteriores se vuelven más fáciles cuando esto se cumple.
Manéjalo desde el móvil
Con el servidor en marcha, Claude Code en el móvil explica cómo lo maneja Maude. Si Claude no es tu único agente, empieza por la vista general de agentes.
Preguntas frecuentes
¿Cuánta RAM necesita Claude Code?
¿Puedo iniciar sesión en Claude Code en un servidor sin navegador?
claude o claude auth login, abre la URL que te da en cualquier dispositivo e inicia sesión. Por SSH, el navegador suele mostrar un código en lugar de redirigir; pégalo en la terminal cuando te lo pida. Para scripts no interactivos, claude setup-token genera un token de larga duración, pero no puede iniciar sesiones de Remote Control.¿Debo ejecutarlo como root?
¿Pueden varios agentes compartir un VPS?
¿Sigo necesitando Node.js?
Qué ha cambiado
- — La instalación pasa al instalador nativo de Anthropic (Node.js ya no es necesario); recomendaciones de RAM alineadas con el mínimo documentado de 4 GB; añadidos el flujo de inicio de sesión sin navegador pegando el código y setup-token; nueva sección sobre ejecutar Codex, OpenCode, Grok Build y Antigravity en la misma máquina.
- — Primera publicación.