---
title: "Autoalojar SearXNG: metabuscador privado y búsqueda web gratuita para Open WebUI y LobeHub"
description: "Despliega SearXNG en tu propio servidor con la plantilla de Zenavo, activa su API JSON y conéctalo a Open WebUI y LobeHub por la red privada del proyecto para dar a tus modelos búsqueda web en tiempo real sin pagar por consulta."
date: 2026-11-13
language: es-ES
url: https://zenavo.app/es-ES/blog/self-host-searxng
---

# Autoalojar SearXNG: metabuscador privado y búsqueda web gratuita para Open WebUI y LobeHub

En cuanto tienes funcionando [Open WebUI](https://zenavo.app/es-ES/blog/self-host-open-webui) o [LobeHub](https://zenavo.app/es-ES/blog/self-host-lobehub), surge siempre la misma pregunta: **¿cómo hago para que los modelos consulten noticias de hoy, documentación reciente o páginas web en vivo?** Las API de búsqueda comerciales (Tavily, Serper, Brave Search) cobran por consulta, y las instancias públicas de SearXNG suelen bloquear las peticiones automáticas por límite de velocidad.

[SearXNG](https://docs.searxng.org) es un metabuscador de código abierto: en lugar de mantener su propio índice, consulta en paralelo decenas de buscadores (Google, Bing, DuckDuckGo, Wikipedia, GitHub y más), elimina duplicados y devuelve los resultados sin crear perfiles de seguimiento. Mejor aún: si añades SearXNG al mismo proyecto de Zenavo donde corre Open WebUI o LobeHub, tu aplicación de chat puede consultarlo por la red privada sin coste por búsqueda.

## 1. Dos formas de desplegarlo: backend interno para IA o buscador personal

Primero [conecta un servidor Linux](https://docs.zenavo.app/es-ES/servers/add-a-server) a Zenavo y elige la opción que mejor encaje contigo:

- **Opción A: Backend interno de búsqueda para Open WebUI o LobeHub (recomendado)**
  Abre tu proyecto actual de Open WebUI o LobeHub en Zenavo, haz clic en **Add Service → Templates** y elige **SearXNG**. Así SearXNG se ejecuta dentro de la misma red privada del proyecto (`http://searxng.zenavo.internal:8080`) y **ni siquiera necesita un dominio público**, de modo que nadie desde fuera puede tocar tu buscador.
- **Opción B: Buscador privado independiente para usar también desde el navegador**
  Crea un proyecto nuevo desde la [plantilla de SearXNG](https://zenavo.app/deploy?template=searxng) y asocia un dominio (como `search.example.com`) al puerto `8080` en la pestaña **Networking** del servicio `searxng`. Consulta [Dominios y HTTPS](https://docs.zenavo.app/es-ES/networking/domains).

La plantilla es muy ligera (suele consumir menos de 200 MB de memoria):

| Ajuste | Valor o finalidad |
|---|---|
| Imagen | `searxng/searxng:latest` |
| Puerto HTTP | `8080` |
| Volumen de configuración | `/etc/searxng` (genera `settings.yml` y `limiter.toml` en el primer arranque) |
| Volumen de caché | `/var/cache/searxng` |
| `SEARXNG_SECRET` | Clave secreta generada automáticamente al crear el proyecto |

## 2. Activa el formato JSON (imprescindible para herramientas de IA)

Por defecto, SearXNG solo sirve páginas HTML para navegadores y devuelve `403 Forbidden` cuando un cliente pide `?format=json`. Tanto Open WebUI como LobeHub necesitan la API JSON para obtener los resultados.

Una vez que el servicio haya arrancado por primera vez y creado `/etc/searxng/settings.yml`, edita `/etc/searxng/settings.yml` (desde la terminal del contenedor o la pestaña de archivos de configuración) y añade `json` dentro de `search.formats`:

```yaml
search:
  formats:
    - html
    - json
```

Si solo vas a llamar a SearXNG por la red privada de Zenavo, comprueba también que bajo `server:` esté `limiter: false` para que no bloquee las peticiones internas. Guarda los cambios y pulsa **Restart** en el servicio `searxng`.

## 3. Conecta Open WebUI

Si desplegaste [Open WebUI](https://zenavo.app/es-ES/blog/self-host-open-webui):

1. Entra en Open WebUI con tu cuenta de administrador y abre **Admin Panel → Settings → Web Search**.
2. Activa **Enable Web Search**.
3. En **Web Search Engine**, selecciona `searxng`.
4. En **Searxng Query URL**, escribe:
   - Mismo proyecto de Zenavo (red privada): `http://searxng.zenavo.internal:8080/search?q=<query>`
   - Proyecto distinto (dominio público): `https://search.example.com/search?q=<query>`
5. Haz clic en Guardar. En un chat nuevo, activa **Web Search** debajo del cuadro de texto y pregunta por una noticia reciente para ver cómo consulta la web antes de responder.

## 4. Conecta LobeHub

Si usas [LobeHub](https://zenavo.app/es-ES/blog/self-host-lobehub), añade estas variables de entorno en la pestaña **Variable** del servicio `lobehub`, guarda y reinicia `lobehub`:

```sh
SEARCH_PROVIDERS=searxng
SEARXNG_URL=http://searxng.zenavo.internal:8080
```

(Si SearXNG está en otro proyecto, pon en `SEARXNG_URL` tu dominio `https://search.example.com`.) Al reiniciar, la búsqueda web de LobeHub consultará directamente tu instancia de SearXNG.

## 5. Copias de seguridad y actualizaciones

SearXNG no guarda cuentas de usuario ni historiales de conversación; lo único que interesa conservar es tu archivo `/etc/searxng/settings.yml`:

1. Tras editar `settings.yml`, guarda una copia del contenido o respalda el volumen `/etc/searxng` desde la pestaña **Backup & Restore** durante una ventana de mantenimiento.
2. La plantilla usa `searxng/searxng:latest` porque los buscadores cambian a menudo la estructura de sus páginas y SearXNG publica ajustes con frecuencia. Si prefieres fijar una versión concreta, cambia la etiqueta en **Settings → Source**.

## Preguntas frecuentes

**Open WebUI o LobeHub devuelve `403 Forbidden` al buscar.**
Casi siempre se debe a que aún no has añadido `json` bajo `search.formats` en `/etc/searxng/settings.yml` (paso 2) o a que no reiniciaste el servicio `searxng` tras guardar el archivo. Si además tienes protección antibots en el dominio público, usa la dirección interna `http://searxng.zenavo.internal:8080`.

**¿Por qué Google da a veces tiempo de espera agotado o pide un CAPTCHA?**
Las IP de centros de datos pueden activar límites si todas las consultas van a un único buscador. Activa varios motores a la vez (Bing, DuckDuckGo, Brave, Wikipedia) en **Preferences → Engines** de SearXNG o en `settings.yml` para repartir las consultas.

**Si asocio un dominio público, ¿cómo evito que desconocidos abusen de mi API JSON?**
Si solo lo usas con Open WebUI o LobeHub, lo más seguro es no asociar ningún dominio público y dejarlo únicamente en la [red privada](https://docs.zenavo.app/es-ES/networking/private) `.zenavo.internal`. Si también quieres usarlo desde el navegador, activa `server.limiter: true` en `settings.yml` o no expongas el formato JSON públicamente.

**¿Puedo combinar SearXNG con una pasarela de modelos autoalojada?**
Por supuesto. Una combinación muy habitual es ejecutar **Open WebUI / LobeHub + SearXNG + [Magpie](https://zenavo.app/es-ES/blog/self-host-magpie) (o [New API](https://zenavo.app/es-ES/blog/self-host-new-api) / [LiteLLM](https://zenavo.app/es-ES/blog/self-host-litellm))** dentro del mismo proyecto de Zenavo para que el chat, la búsqueda web y el enrutamiento de modelos se comuniquen por la red interna de un solo servidor.

Despliega la [plantilla de SearXNG](https://zenavo.app/deploy?template=searxng) —o añádelo directamente a tu proyecto de IA actual— para dotar a tus modelos de búsqueda web privada y sin coste por consulta en pocos minutos.
