Instalar Ollama en un servidor Linux se hace con un comando y lleva unos minutos. Lo delicado viene después: Ollama no trae usuario ni contraseña para su API, así que el día que lo abres a la red, lo puede usar cualquiera que llegue a ese puerto. Esta guía cubre las dos partes. Primero, la instalación en una máquina con tarjeta gráfica NVIDIA, cómo comprobar que de verdad usa la GPU, cómo descargar un modelo y cómo hablarle por su API. Después, lo que casi nadie cuenta: dónde escucha, qué dos descuidos lo dejan abierto a internet y cómo darle acceso a tu equipo sin dárselo al mundo. No hace falta ser administrador de sistemas para seguirla, pero sí saber entrar por SSH y usar sudo. Cada comando sale de la documentación oficial de Ollama, y te dejamos el enlace para que lo compruebes tú.
Revisado en septiembre de 2026.
Qué es Ollama y qué no es
Ollama es el programa que carga un modelo de lenguaje en tu servidor y lo sirve por una API: una puerta por la que otros programas le mandan preguntas y reciben respuestas. No es un chat. Si lo instalas esperando una pantalla parecida a ChatGPT, no la vas a encontrar: lo que tienes es un servicio que se queda escuchando en el puerto 11434 y una herramienta de terminal para manejarlo.
La interfaz de chat, con usuarios, historial y subida de documentos, la pone otro programa que se conecta a Ollama. El más usado es Open WebUI, y lo explicamos en cómo montar un ChatGPT privado para tu empresa con Open WebUI. Separar las dos piezas tiene ventajas: puedes cambiar la interfaz sin tocar el modelo, y varias aplicaciones (un chat, un flujo de automatización, un programa propio) pueden usar el mismo Ollama a la vez.
Qué necesitas antes de empezar
Lo que decide si Ollama va rápido o no es la memoria de la tarjeta gráfica, la VRAM. El modelo tiene que caber entero en ella. Si no cabe, Ollama reparte una parte en la memoria normal del servidor y la velocidad cae mucho. Sin GPU también funciona, tirando solo del procesador, pero es lento: sirve para probar, no para que un equipo trabaje con ello a diario.
Según la documentación de hardware de Ollama, en NVIDIA necesitas una tarjeta con capacidad de cómputo 5.0 o superior y los controladores en versión 550 o posterior (las más antiguas, de 5.0 a 6.2, piden la 570). Antes de instalar nada, comprueba que el sistema ve la tarjeta:
nvidia-smi
Si ese comando devuelve una tabla con el modelo de tarjeta, la versión del controlador y la memoria, puedes seguir. Si da error, el problema está en los controladores, no en Ollama, y hay que resolverlo primero.
Para hacerte una idea de cuánta VRAM ocupa cada tamaño de modelo, esta tabla orientativa recoge solo lo que pesan los pesos del modelo, según esta guía comunitaria. Q4 y Q8 son versiones comprimidas (cuantizadas); FP16 es el modelo sin comprimir.
| Tamaño del modelo | Q4 | Q8 | FP16 |
|---|---|---|---|
| 8B (8.000 millones de parámetros) | 4,6 GB | 8 GB | 16 GB |
| 14B | 8 GB | 14 GB | 28 GB |
| 32B | 18,2 GB | 32 GB | 64 GB |
| 70B | 39,9 GB | 70 GB | 140 GB |
A eso súmale un 15-20 % de margen y la memoria del contexto, que crece con la longitud de la conversación: en un modelo de 70B son unos 2,6 GB a 8.000 tokens y unos 10 GB a 32.000. Si quieres hacer la cuenta con calma, la tienes paso a paso en cuánta VRAM necesito para un modelo de IA.
Instalar Ollama en Linux
La guía oficial para Linux instala Ollama con un solo comando:
curl -fsSL https://ollama.com/install.sh | sh
Ese comando descarga un guion de instalación y lo ejecuta. Es lo que recomienda el propio proyecto, pero conviene saber lo que hace: copia el programa, crea un usuario de sistema llamado ollama y deja montado un servicio de systemd (el gestor que arranca los servicios de Linux) para que Ollama se inicie solo con el servidor. Si prefieres leer el guion antes de ejecutarlo, descárgalo primero con curl -fsSL https://ollama.com/install.sh -o install.sh, ábrelo y lánzalo después. La documentación también explica una instalación manual, descargando el paquete y descomprimiéndolo en /usr, para quien no quiera ejecutar guiones de internet.
Al terminar, comprueba la versión y que el servicio está en marcha:
ollama -v
systemctl status ollama
Si algo falla, los registros del servicio se leen con journalctl -e -u ollama. Es el primer sitio donde mirar cuando Ollama arranca pero no hace lo que esperas.
Descargar un modelo y comprobar que usa la GPU
Los modelos se descargan con ollama pull y se prueban con ollama run, que abre una conversación en la propia terminal. El nombre del ejemplo es el que usa la guía de inicio de Ollama; el catálogo completo está en su web, y cada modelo aparece en varios tamaños.
ollama pull gemma4:e2b
ollama run gemma4:e2b
Escribe una pregunta, espera la respuesta y sal con /bye. Ahora viene la comprobación importante: que el modelo está en la GPU y no en el procesador. Mientras está cargado, ejecuta:
ollama ps
La columna PROCESSOR dice dónde está. Según la FAQ oficial, "100% GPU" significa que está entero en la tarjeta; "100% CPU", que está en la memoria normal; y un reparto como "48%/52% CPU/GPU", que no ha cabido y se ha partido entre las dos. Ese último caso es el que explica casi todas las quejas de "va lentísimo": el modelo es demasiado grande para tu VRAM. La solución es un modelo más pequeño o una versión más comprimida, no tocar ajustes.
Con nvidia-smi en otra terminal verás además el proceso de Ollama ocupando memoria de la tarjeta. Otras órdenes que usarás a menudo: ollama ls para ver los modelos descargados, ollama stop para descargar uno de la memoria y ollama rm para borrarlo del disco.
La API: el puerto 11434 y la compatibilidad con OpenAI
Todo lo que hace Ollama pasa por su API, en http://localhost:11434/api. Además, ofrece una segunda puerta compatible con la API de OpenAI en http://localhost:11434/v1, según su página de compatibilidad. Eso significa que muchos programas pensados para hablar con OpenAI pueden hablar con tu servidor cambiando solo la dirección. Una prueba desde el propio servidor:
curl http://localhost:11434/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{"model": "gemma4:e2b", "messages": [{"role": "user", "content": "Di hola en una frase"}]}'
Fíjate en un detalle de esa misma página: las librerías de OpenAI exigen una clave, pero Ollama la ignora. Y la introducción a la API lo deja claro: las peticiones locales no necesitan autenticación. Dicho claro: la API de Ollama no pide contraseña. Mientras solo escuche dentro del servidor no pasa nada. Es lo que hay que tener presente en la sección de seguridad.
El servicio y sus variables
Ollama se configura con variables de entorno que se añaden al servicio. La forma que indica la FAQ es abrir un fichero de ajustes propio, que sobrevive a las actualizaciones:
sudo systemctl edit ollama.service
Dentro, bajo [Service], pones una línea por variable. Por ejemplo, para mantener el modelo cargado una hora:
[Service]
Environment="OLLAMA_KEEP_ALIVE=1h"
Guarda, y aplica con sudo systemctl daemon-reload y sudo systemctl restart ollama. Estas son las variables que más se usan, con lo que dice la FAQ y la página de contexto:
| Variable | Para qué sirve | Por defecto |
|---|---|---|
OLLAMA_HOST | Dirección y puerto donde escucha | 127.0.0.1:11434 (solo el propio servidor) |
OLLAMA_MODELS | Carpeta donde se guardan los modelos | /usr/share/ollama/.ollama/models |
OLLAMA_KEEP_ALIVE | Cuánto tiempo sigue cargado un modelo sin uso | 5 minutos |
OLLAMA_CONTEXT_LENGTH | Longitud máxima de contexto | Depende de la VRAM: 4k con menos de 24 GB, 32k de 24 a 48 GB, 256k con 48 GB o más |
OLLAMA_NUM_PARALLEL | Peticiones que atiende a la vez cada modelo | 1 |
OLLAMA_MAX_LOADED_MODELS | Modelos cargados a la vez | 3 por GPU |
OLLAMA_KEEP_ALIVE merece una línea más. Con el valor por defecto, si nadie pregunta en cinco minutos, el modelo se descarga y la siguiente pregunta tarda más porque hay que volver a cargarlo. Para un equipo que lo usa durante toda la jornada, subirlo evita esas esperas. Acepta valores como 10m o 24h, y -1 para no descargarlo nunca.
Dónde se guardan los modelos (y el disco)
En Linux, los modelos viven en /usr/share/ollama/.ollama/models. Cada uno ocupa en disco más o menos lo mismo que en VRAM, o sea que tres o cuatro modelos medianos son decenas de gigas. Es habitual que esa carpeta acabe en la partición del sistema, que suele ser la más pequeña, y que un día el servidor se quede sin espacio.
Si tienes un disco más grande montado aparte, apunta OLLAMA_MODELS allí. La FAQ avisa de un detalle que suele fallar: el usuario ollama tiene que poder leer y escribir en esa carpeta. Se arregla con sudo chown -R ollama:ollama /ruta/a/la/carpeta. Sin eso, Ollama no arranca o no puede descargar, y el motivo aparece en journalctl.
Seguridad: por qué Ollama no debe quedar abierto a internet
Por defecto, Ollama escucha en 127.0.0.1, es decir, solo acepta conexiones del propio servidor. Así lo dice la FAQ. Es un buen punto de partida: nadie de fuera puede usarlo. El problema llega cuando quieres que otro equipo de la oficina, o una aplicación en otra máquina, lo use. La solución que aparece en muchos tutoriales es cambiar OLLAMA_HOST a 0.0.0.0, que significa "escucha en todas las direcciones". Si el servidor tiene IP pública y nada delante, acabas de publicar una API sin contraseña.
No es una hipótesis. En enero de 2026, SentinelOne SentinelLABS y Censys encontraron unas 175.000 máquinas con Ollama abiertas a internet en 130 países, y casi la mitad tenían activada la llamada a herramientas, la función que permite al modelo actuar sobre otros sistemas. Meses antes, Cisco había localizado 1.139 con el buscador Shodan. Quien encuentra una de estas máquinas puede usar tu GPU gratis, descargar o borrar modelos y, según cómo esté montado, alcanzar lo que haya conectado detrás.
Los dos descuidos que lo abren
El primero es el de arriba: OLLAMA_HOST=0.0.0.0 en un servidor con IP pública y sin cortafuegos que lo filtre. El segundo es más traicionero y aparece con Docker. La documentación de Ollama para Docker lo arranca con -p 11434:11434, que publica el puerto en todas las direcciones. Y Docker avisa de que los puertos que publica se saltan las reglas de ufw: el tráfico se desvía antes de llegar al cortafuegos. O sea, puedes tener ufw bloqueando el 11434 y el puerto seguir abierto. Si usas Docker y solo lo necesitas en local, publícalo atado a la dirección local:
docker run -d --gpus=all -v ollama:/root/.ollama -p 127.0.0.1:11434:11434 --name ollama ollama/ollama
La comprobación que no miente es probar desde fuera. Desde otra máquina, intenta conectar a http://IP-del-servidor:11434. Si responde "Ollama is running", está abierto.
Cómo darle acceso a tu equipo sin dárselo a todo internet
Hay tres formas razonables, de más sencilla a más elaborada. Se pueden combinar:
- Red privada o VPN. Ollama escucha en la IP privada del servidor (por ejemplo, la de la VPN), no en la pública, y solo llega quien está dentro de esa red. Es la opción más limpia para un equipo pequeño: no hay que inventar contraseñas para la API.
- Cortafuegos. Si Ollama tiene que escuchar en una interfaz más amplia, el cortafuegos del servidor solo deja pasar al 11434 las IP concretas que lo usan. Recuerda la trampa de Docker de antes.
- Proxy inverso con autenticación. Ollama sigue en
127.0.0.1y delante pones un servidor web como nginx que pide contraseña y cifra la conexión con HTTPS. La FAQ de Ollama incluye el bloque de nginx para redirigir al puerto 11434; la contraseña la añades tú con el módulo de autenticación básica de nginx:
location / {
auth_basic "Ollama";
auth_basic_user_file /etc/nginx/.htpasswd-ollama;
proxy_pass http://localhost:11434;
proxy_set_header Host localhost:11434;
}
Ese bloque va dentro de un server con HTTPS: una contraseña que viaja sin cifrar no protege nada. Si la interfaz de chat (Open WebUI, por ejemplo) está en el mismo servidor, muchas veces ni siquiera hace falta exponer Ollama: la interfaz, con sus propios usuarios, es lo único que sale, y habla con Ollama por dentro.
Actualizar Ollama
En Linux, actualizar es volver a ejecutar el mismo comando de instalación, según la guía de Linux:
curl -fsSL https://ollama.com/install.sh | sh
Tu configuración en systemctl edit y los modelos descargados se conservan. Aun así, antes de actualizar en una máquina que usa tu equipo, apunta la versión actual con ollama -v y hazlo fuera de horas: las versiones nuevas cambian valores por defecto (el contexto, sin ir más lejos, ha cambiado varias veces) y conviene probar tus modelos después.
Lo que esta guía no te cuenta
Instalar es la primera tarde. Mantenerlo funcionando es cada semana, y ahí es donde se complican las cosas:
- Actualizar sin romper. Cuando el sistema instala solo una actualización de los controladores de NVIDIA, el controlador cargado y el instalado dejan de coincidir hasta que reinicias.
nvidia-smiresponde con "Failed to initialize NVML: Driver/library version mismatch" y Ollama vuelve en silencio al procesador. NVIDIA lo documenta. Nadie te avisa: solo notas que todo va lento. - Mantenerlo cerrado. Un cambio de
OLLAMA_HOSTpara una prueba, un contenedor nuevo con-p, y la API vuelve a estar en internet. Hay que comprobarlo desde fuera, no suponerlo. - Vigilar que responde. Un proceso activo no es lo mismo que un modelo que contesta en la GPU. La prueba útil es una pregunta real cada pocos minutos, más
ollama pspara confirmar dónde está cargado. - Copias. Los modelos se pueden volver a descargar, pero tu configuración, tus modelos personalizados y los datos de la interfaz de chat no.
- Disco lleno de modelos. Cada prueba deja decenas de gigas. Sin limpieza, un día no cabe el siguiente y falla la descarga, o algo peor.
Todo esto se puede hacer con tiempo y cuidado. Si prefieres no encargarte tú, lo montamos y lo mantenemos nosotros en un servidor con GPU: Ollama cerrado a internet, vigilado y actualizado. Hablas con personas, no con un panel.
Artículos relacionados
- Cuánta VRAM necesito para un modelo de IA
- Open WebUI: un ChatGPT privado para tu empresa
- Qué datos de tu empresa no deberías compartir con una IA
¿Prefieres no encargarte tú?
Montamos tu IA en un servidor con GPU, la dejamos funcionando y la mantenemos nosotros.