---
title: "Cómo sincronizar bóvedas de Obsidian entre dispositivos"
description: "Sincronice sus bóvedas de Obsidian entre dispositivos y acceda a sus notas en la web de forma segura con Synch e Ignis dentro de Cloudflare Zero Trust."
canonical_url: "https://techvoyage.dev/es/article/sync-obsidian-across-devices"
last_updated: "2026-10-20T09:53:54.972Z"
---

Obsidian es una aplicación de gestión de conocimientos que funciona de forma local (local-first). Cada nota es un archivo markdown en su dispositivo y permanece completamente bajo su control. Sin embargo, a menudo queremos tener la misma bóveda (vault) en nuestra computadora portátil, teléfono y otros dispositivos, o poder acceder a ella a través de un navegador web de forma remota.

![Ilustración de la bóveda de Obsidian sincronizada en varios dispositivos](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/obsidian-multi-device-sync-illustration.webp)Existen varias soluciones de sincronización para Obsidian, pero todas implican concesiones en cuanto al manejo de conflictos, el cifrado o la soberanía de los datos. [Synch](https://github.com/hjinco/synch) es una aplicación de código abierto que sincroniza su bóveda de Obsidian con cifrado de extremo a extremo y gestión automática de conflictos en un servidor autoalojado.

Aunque el enfoque local de Obsidian funciona perfectamente la mayor parte del tiempo, es posible que en algunas ocasiones necesitemos acceder a nuestra bóveda de forma remota a través de un navegador web. [Ignis](https://github.com/Nystik-gh/ignis) es una aplicación de código abierto que ejecuta Obsidian dentro de un navegador web en un formato muy cercano al nativo, lo que le permite leer y editar su bóveda desde cualquier lugar.

En esta guía, configuraremos **Synch** e **Ignis** en un **VPS** (Servidor Privado Virtual), alojándolos de forma segura dentro de una red privada de **Cloudflare Zero Trust** en lugar de exponerlos al internet abierto.

![Diagrama de arquitectura de la sincronización de Obsidian mediante Cloudflare Zero Trust](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/obsidian-sync-cloudflare-zero-trust-architecture.webp)<article-card description="Aprenda a exponer y acceder de forma segura a su Hermes Agent a nivel global utilizando Cloudflare WARP y Zero Trust sin abrir puertos de entrada en el cortafuegos." image="https://inimages.techvoyage.dev/articles/Exposing%20Hermes%20Agent%20to%20Private%20Network%20Using%20Cloudflare%20WARP/EN-Exposing-Hermes-Agent-to-Private-Network-Using-Cloudflare-WARP.webp" image-alt="Exposición segura de Hermes Agent a una red privada mediante el túnel Cloudflare Zero Trust y WARP" label="Guía relacionada" min-read="8" title="Cómo exponer Hermes Agent de forma privada con Cloudflare WARP" to="/article/exposing-hermes-agent-to-private-network-using-cloudflare-warp">



</article-card>

## Sincronización segura de bóvedas de Obsidian con Synch

**Synch** ofrece las siguientes características:

- Sincroniza su bóveda tan pronto como se detectan cambios
- Cifra los datos de la bóveda antes de subirlos
- Permite la restauración desde el historial de versiones
- Incluye gestión automática de conflictos

**Synch** genera una **clave de bóveda** aleatoria de 32 bytes en su dispositivo, que se utiliza para cifrar los datos de su bóveda. Cuando crea una bóveda remota, elige una **contraseña de bóveda**; esta contraseña se utiliza para proteger la **clave de bóveda** para que la clave se pueda almacenar de forma segura en el servidor y desbloquearse en otros dispositivos.

Tenga en cuenta que la resolución de conflictos se gestiona en sus dispositivos cliente en lugar de en el servidor. Si dos dispositivos editan la misma nota simultáneamente, el servidor conserva la versión que llegue primero e identifica al otro dispositivo como desactualizado. El dispositivo desactualizado luego fusiona automáticamente la versión más nueva con sus cambios locales antes de subir la nota final fusionada.

### Configurar Synch en su VPS

#### Crear un nombre de dominio

Cree un registro A en Cloudflare y establezca su estado de proxy en **Solo DNS** (omitir la CDN de Cloudflare).

![Configurando un registro A de DNS para el servidor Synch en Cloudflare](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/cloudflare-dns-a-record-synch-server.webp)#### Instalar Synch Docker en Ubuntu

##### Clonar el repositorio

```bash
git clone https://github.com/hjinco/synch.git       
        
# Navegar a la carpeta de la API
cd synch/apps/api
        
# Copiar el archivo de entorno de ejemplo:
cp .env.example .env
```

##### Editar valores de `.env`

- `PUBLIC_URL=synch.pafor.me`: Ingrese el nombre de dominio público de su servidor Synch (el nombre de dominio creado en el paso anterior).
- `BETTER_AUTH_SECRET` y `SYNC_TOKEN_SECRET`: Genere claves seguras utilizando esta [herramienta de clave secreta en línea](/es/tools/secret-key-hex) o ejecutando `openssl rand -hex 32` dos veces en su terminal.
- `AUTH_ALLOWED_EMAILS`: Una lista separada por comas de las direcciones de correo electrónico autorizadas para registrarse y crear cuentas.

##### Agregar el dominio a Caddyfile

Los detalles de cómo se integra el módulo DNS de Cloudflare con Caddy y se inicia dentro de un contenedor se pueden encontrar en nuestro [artículo sobre cómo autoalojar Buzz](/article/self-hosting-buzz-as-the-workspace-where-ai-agents-become-colleagues#_4-enable-https-with-caddy).

<article-card description="Aprenda a configurar Caddy para aprovisionar automáticamente certificados SSL/TLS utilizando desafíos DNS de Cloudflare en contenedores Docker." image="https://inimages.techvoyage.dev/articles/Self-Hosting%20Buzz%20As%20The%20Workspace%20Where%20AI%20Agents%20Become%20Colleagues/EN-Self-Hosting-Buzz-As-The-Workspace-Where-AI-Agents-Become-Colleagues.webp" image-alt="Configuración de Caddy con token de API DNS de Cloudflare para la generación automatizada de certificados SSL/TLS en un espacio de trabajo autoalojado" label="Guía de autoalojamiento" min-read="12" title="Cómo autoalojar Buzz de Block: Espacio de trabajo para agentes IA" to="/article/self-hosting-buzz-as-the-workspace-where-ai-agents-become-colleagues#_4-enable-https-with-caddy">



</article-card>

Incluya la directiva `SYNCH_DOMAIN` en su Caddyfile, apuntando al puerto 8787 (el puerto utilizado por el contenedor de Synch):

```json
{
  acme_dns cloudflare {env.CLOUDFLARE_API_TOKEN}
}

{$SYNCH_DOMAIN} {
  encode zstd gzip
  reverse_proxy host.docker.internal:8787
}
```

Inicie el contenedor:

```bash
docker compose up -d
```

Ejecute el siguiente comando `curl` para verificar su disponibilidad:

```bash
curl https://synch.pafor.me/health
```

### Conectar Obsidian a su servidor Synch

#### Instalar el complemento Synch en Obsidian

Abra la configuración de Obsidian, navegue a **Community plugins** (Complementos de la comunidad) y haga clic en el botón **'Browse'** (Examinar):

![Explorando plugins de la comunidad en la configuración de Obsidian](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/obsidian-community-plugins-browse.webp)Busque e instale **'Synchrun'**:
![Instalando el plugin Synchrun en Obsidian](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/obsidian-install-synchrun-plugin.webp)

Una vez instalado **'Synchrun'**, abra la configuración del complemento y habilite **'Use a self-hosted server'** (Usar un servidor autoalojado). Luego, ingrese `https://synch.pafor.me` en el campo **'Server URL'** (URL del servidor) y haga clic en **'Save'** (Guardar).

![Configurando la URL del servidor autoalojado en Synchrun](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/obsidian-synchrun-plugin-settings-self-hosted.webp)Haga clic en el botón **'Sign in on this device'** (Iniciar sesión en este dispositivo) debajo de **'Account'** (Cuenta). A continuación, regístrese para obtener una cuenta utilizando la dirección de correo electrónico que especificó en su lista `AUTH_ALLOWED_EMAILS`; luego será redirigido a la siguiente página de autorización:

![Página de autorización de cuenta para Synchrun](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/synchrun-account-authorization-page.webp)Haga clic en el botón **'Allow Obsidian sign-in'** (Permitir inicio de sesión en Obsidian):

![Permitiendo el inicio de sesión de Obsidian para Synch](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/synchrun-allow-obsidian-signin.webp)Haga clic en el botón **'Return to Obsidian'** (Volver a Obsidian) y luego haga clic en **'Create vault'** (Crear bóveda):
![Creando una nueva bóveda remota en Synchrun](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/obsidian-synchrun-create-remote-vault.webp)

Ingrese un nombre y una contraseña segura para crear su bóveda remota.

![Estableciendo una contraseña segura para la bóveda remota de Obsidian](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/obsidian-synchrun-vault-password-setup.webp)El proceso de sincronización comenzará de inmediato y puede llevar un tiempo según el tamaño de su bóveda. Una vez completado, se mostrará su uso total de almacenamiento.

![Sincronización completada en Synchrun mostrando el almacenamiento total usado](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/obsidian-synchrun-sync-completed-storage.webp)## Acceso a Obsidian basado en navegador con Ignis

**Ignis** reemplaza las API Electron de Obsidian con API web, lo que permite que el código JavaScript de Obsidian se ejecute directamente en un navegador web estándar. Todos sus archivos markdown y archivos adjuntos se almacenan directamente en el sistema de archivos del servidor host.

Sin embargo, existen algunas limitaciones en comparación con la aplicación de escritorio independiente de Obsidian. Ciertas características o complementos que requieren las API Electron o Node.js, que no tienen un equivalente directo en un entorno de navegador, no funcionarán. Consulte las guías de [Limitaciones](https://ignis.thiefling.com/docs/using/limitations/) y [Compatibilidad de complementos](https://ignis.thiefling.com/docs/using/plugin-compatibility/) de Ignis para obtener listados de compatibilidad detallados.

### Configuración de Ignis

Instalaremos **Ignis** en nuestro VPS usando Docker, montándolo en la carpeta local `./vaults`. Este directorio de bóveda se sincronizará utilizando la **CLI de Synch** para extraer las actualizaciones de notas de la bóveda remota que configuramos anteriormente.

Dado que **Ignis** no tiene autenticación integrada, debe protegerse detrás de una red privada de **Cloudflare Zero Trust**.

#### Crear registro DNS

![Configurando un registro A de DNS para el cliente web Ignis en Cloudflare](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/cloudflare-dns-a-record-ignis.webp)#### Agregar el dominio a Caddyfile

Agregue `obsidian.pafor.me` a su Caddyfile de la misma manera que `synch.pafor.me`:

```json
{$OBSIDIAN_DOMAIN} {
  encode zstd gzip
  reverse_proxy host.docker.internal:9898
}
```

#### Iniciar Ignis usando Docker

Guarde el siguiente archivo docker compose yml como `ignis-docker-compose.yml` en el VPS:

```yml
services:
  ignis:
    image: nobbe/ignis:latest
    ports:
      - "9898:8080"
    environment:
      # coincidir con su usuario host (ejecutar: id)
      - PUID=1000
      - PGID=1000
      - WS_ORIGINS=https://obsidian.pafor.me
    volumes:
      - ./vaults:/vaults
      - ./data:/app/data
      - obsidian-app:/app/obsidian-app
    restart: unless-stopped

volumes:
  obsidian-app:
```

- Utilice el puerto `9898` en el host, ya que el `8080` suele ser utilizado por otros servicios.
- Ejecute el comando `id` en su VPS para verificar el `UID` y el `GID` de su usuario host para garantizar los permisos correctos del sistema de archivos.
- Establezca `WS_ORIGINS` para permitir únicamente conexiones WebSocket originadas desde su nombre de dominio específico.

Inicie el contenedor de **Ignis**:

```bash
docker compose -f ignis-docker-compose.yml up -d
```

Cuando navegue a su dominio en un navegador web, aparecerá el **'Vault Manager'** (Administrador de bóvedas). Estará vacío ya que aún no se ha configurado ninguna bóveda. Configuraremos la **'Synch CLI'** en la siguiente sección para sincronizar los contenidos de nuestra bóveda remota.

![Interfaz vacía del Administrador de Bóvedas en el cliente web Ignis](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/ignis-vault-manager-empty.webp)#### Problema con el cortafuegos

Por defecto, Docker inserta automáticamente sus propias reglas DNAT y FORWARD, que enrutan el tráfico público directamente a los contenedores activos. Esto elude la cadena `INPUT` estándar de UFW/iptables de Ubuntu. Para bloquear el tráfico público externo y mantener los contenedores privados, agregue manualmente las siguientes reglas a `iptables`:

```bash
# Bloquear todo el tráfico público externo
sudo iptables -I DOCKER-USER -i ext_if -j DROP 

# Permitir tráfico únicamente desde la IP privada de su cliente Cloudflare WARP
sudo iptables -I DOCKER-USER -i ext_if -s 100.96.0.10 -j ACCEPT
```

#### Configuración de la CLI de Synch

La **CLI de Synch** es una herramienta sin cabecera (headless) que permite sincronizar un directorio de bóveda de Obsidian directamente en servidores remotos sin necesidad de instalar la aplicación de escritorio completa.

Compile la **CLI de Synch** desde su repositorio `synch` clonado. La compilación requiere **Node.js >= 22.5** (ya que la CLI depende de `node:sqlite` y de API de navegador globales como `fetch`, `WebSocket` y `WebCrypto`) y **pnpm** (dado que el repositorio está estructurado como un espacio de trabajo de pnpm que utiliza la versión `10.33.0`):

```bash
# Verificar versiones
node --version   # debe ser >= 22.5
pnpm --version

# En la raíz del repositorio
pnpm install

# Compilar el paquete de la CLI
pnpm -C apps/cli build

# Después de una compilación exitosa, tendrá `apps/cli/dist/synch.js`. Hágalo ejecutable y colóquelo en su PATH
chmod +x apps/cli/dist/synch.js
ln -sf "$PWD/apps/cli/dist/synch.js" "$HOME/.local/bin/synch"

# Verificación
synch --help
```

Dado que la CLI de Synch se está ejecutando en el mismo VPS que su bóveda remota de Synch, puede conectarse directamente al servidor de la API local. Si está configurando un servidor diferente, ejecute `synch login --api-url <url-api-synch-remota>` para definir su endpoint de API de destino.

![Ejecutando synch login con una URL de API personalizada en el terminal](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/synch-login-api-url-terminal.webp)

Ejecute `synch login` en su terminal y recibirá una URL de autenticación:

![Salida del terminal mostrando la URL de autenticación para Synch CLI](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/synch-login-auth-url-terminal.webp)

Inicie sesión a través de la página web utilizando la misma dirección de correo electrónico registrada con el complemento Synchrun de su aplicación de escritorio Obsidian.

![Inicio de sesión web exitoso para la autorización de Synch CLI](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/synch-web-login-success.webp)

Ejecute `synch vault connect --vault ~/vaults/<nombreboveda> --vault-id asadqe-7b29-4677-fsad-234asdafasd` para vincular su directorio de bóveda local en el VPS a la bóveda remota.

El ID de la bóveda remota se puede encontrar dentro de la configuración del complemento **Synchrun** haciendo clic en **'Manage remote vaults'** (Administrar bóvedas remotas). Esto mostrará una página web con una lista de sus bóvedas remotas, cada una identificada por un GUID único (por ejemplo, `123e4567-e89b-12d3-a456-426614174000`):

![Administrando bóvedas remotas en el plugin Synchrun](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/synchrun-manage-remote-vaults.webp)![Localizando el ID único de la bóveda remota en Synchrun](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/synchrun-remote-vault-id.webp)

Ingrese la contraseña de su bóveda cuando se le solicite para establecer el vínculo. Una vez conectado, ejecute `synch sync --vault ~/vaults/<nombre-boveda>` para realizar su sincronización inicial. Esta primera ejecución puede llevar algún tiempo según el tamaño de su bóveda.

![Progreso inicial de sincronización de la bóveda en Synch CLI](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/synch-cli-initial-sync-progress.webp)

Para automatizar esto, configure y habilite un servicio systemd para ejecutar `synch watch` de forma continua, asegurando que los cambios se sincronicen instantáneamente al arrancar:

```bash
sudo tee /etc/systemd/system/synch-watch.service <<'EOF'
[Unit]
Description=Synch vault watcher
After=network-online.target
Wants=network-online.target

[Service]
Type=simple
User=<username>
ExecStart=/home/<username>/.local/bin/synch watch --vault /home/<username>/vaults/<vault-name>
WorkingDirectory=/home/<username>/vaults
Environment="PATH=/home/<username>/.local/bin:/home/<username>/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
Environment="HOME=/home/<username>"
Restart=always
RestartSec=5

[Install]
WantedBy=multi-user.target
EOF
sudo systemctl daemon-reload
sudo systemctl enable --now synch-watch.service
```

Abra `obsidian.pafor.me` en su navegador web. Encontrará que la interfaz de usuario y el diseño son prácticamente idénticos a los de la aplicación de escritorio:

![Interfaz web de Ignis mostrando la bóveda de Obsidian en escritorio](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/ignis-web-interface-desktop-view.webp)Hacer clic en el icono de configuración revela que casi todas las configuraciones principales están intactas, aunque sus complementos de la comunidad deberán reinstalarse:

![Configuración de plugins de la comunidad en la interfaz web de Ignis](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/ignis-settings-community-plugins.webp)Para probar la configuración, puede agregar una nueva nota a través de la interfaz web:

![Creando una nueva nota markdown mediante la interfaz web de Ignis](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/ignis-create-new-note-web.webp)La nota se sincroniza inmediatamente con su aplicación de escritorio Obsidian. Tenga en cuenta que las carpetas vacías no aparecen en **Ignis**.

![Nota recién creada sincronizada con éxito a la aplicación de escritorio de Obsidian](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/obsidian-desktop-synced-note.webp)Visualización de `obsidian.pafor.me` en un navegador web móvil:

![Navegación de la barra lateral del cliente web de Ignis en un dispositivo móvil](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/ignis-mobile-view-sidebar.webp)![Editor de notas markdown del cliente web de Ignis en un dispositivo móvil](https://inimages.techvoyage.dev/articles/Sync%20Obsidian%20Across%20Devices/ignis-mobile-view-editor.webp)

Cuando elimina una nota en **Ignis**, se mueve de manera segura a la carpeta `~/vaults/<nombre-boveda>/.trash` de su bóveda local.

## Reflexiones finales sobre las bóvedas autoalojadas

Juntos, **Synch** e **Ignis** hacen que su bóveda principal de Obsidian esté disponible sin problemas en todos sus dispositivos, alojada por completo en una infraestructura bajo su control directo. Ubicar estos servicios dentro de una red privada de **Cloudflare Zero Trust** garantiza que sus notas personales estén completamente protegidas del internet público.

**Ignis** no está diseñado para reemplazar por completo la aplicación nativa de escritorio de Obsidian. En cambio, sirve como un cliente web ligero y temporal para acceder y editar su bóveda cuando está lejos de su computadora principal. Para la escritura diaria y la gestión exhaustiva de bóvedas, la aplicación nativa de Obsidian sigue siendo la opción más cómoda.

Debido a que Synch utiliza cifrado de extremo a extremo, la contraseña de su bóveda remota debe ser altamente segura para protegerla contra ataques de adivinación por fuerza bruta. Es fundamental que nunca pierda esta contraseña: el servidor no almacena la **clave de la bóveda** sin cifrar y, si la olvida, sus datos serán completamente irrecuperables. Además, asegúrese de que su instancia de VPS, junto con cualquier instantánea o copia de seguridad automatizada, esté debidamente protegida y mantenida.

Aunque el historial de versiones cifrado de Synch y las herramientas de recuperación de archivos eliminados cubren la mayoría de las pérdidas accidentales, se sigue recomendando realizar una copia de seguridad independiente y separada de su bóveda de Obsidian.

## Referencias

- [Despliegue de Synch con Docker Compose](https://synch.run/self-hosting-docker/)
- [Despliegue de Ignis con Docker](https://ignis.thiefling.com/docs/server/deploy/)
- [¿Cómo funciona el cifrado de extremo a extremo en Synch?](https://synch.run/blog/encryption-and-decryption/)
