PairDrop: cómo transferir archivos entre Windows, macOS, Linux, Android e iOS sin cables ni la nube

PairDrop: cómo transferir archivos entre Windows, macOS, Linux, Android e iOS sin cables ni la nube

PairDrop es una herramienta web para la transferencia rápida de archivos, texto y medios entre dispositivos a través del navegador. El proyecto está inspirado en Apple AirDrop, pero no está vinculado al ecosistema de Apple y funciona en Android, iOS, Windows, Linux, macOS y otros sistemas con un navegador moderno. PairDrop nació como un fork de Snapdrop y mantuvo la idea básica de un intercambio sencillo sin cuentas, pero añadió emparejamiento persistente de dispositivos, salas públicas, transferencia por Internet y opciones adicionales de autoalojamiento.

El escenario principal de PairDrop es enviar un archivo de un dispositivo a otro sin pendrive, mensajería, correo o disco en la nube. El usuario abre PairDrop en dos dispositivos, elige al destinatario y confirma la transferencia. Para el intercambio local habitual no se necesita un cliente separado. Si se desea, PairDrop se puede instalar como aplicación PWA para lanzar el servicio desde el escritorio o la pantalla del teléfono.

Qué es la herramienta

PairDrop pertenece a la categoría de soluciones en el navegador para transferencias puntuales de archivos. No es un almacenamiento en la nube, ni un sincronizador de carpetas, ni un sistema empresarial de gestión documental. La herramienta resuelve una tarea más concreta: enviar rápidamente datos entre dispositivos que están cerca, vinculados previamente o conectados a una misma sala temporal.

A diferencia de Snapdrop, PairDrop está mejor adaptado a condiciones de red mixtas. Muestra dispositivos de la red local, participantes de una misma sala pública y dispositivos vinculados anteriormente. Para transferencias por Internet, PairDrop utiliza pares persistentes de dispositivos con un secreto compartido y salas públicas temporales con un código corto o un código QR. Este mecanismo ayuda en redes donde el descubrimiento local simple no funciona: en Wi‑Fi público, en una red corporativa, a través de VPN, iCloud Private Relay, punto de acceso móvil o detrás de NAT.

Funciones principales

  • transferencia de archivos, imágenes, documentos, vídeo, audio y texto;
  • funciona en el navegador sin registro ni instalación de un cliente separado;
  • detecta automáticamente dispositivos en la red local;
  • vincula dispositivos de forma persistente mediante un código de 6 dígitos o un código QR;
  • crea salas públicas temporales mediante un código de 5 letras o un código QR;
  • envía archivos entre dispositivos emparejados a través de Internet;
  • empaqueta automáticamente varios archivos en ZIP;
  • muestra un indicador de progreso conjunto al enviar varios archivos;
  • envía archivos desde el menú «Compartir» en Android y iOS cuando la aplicación PWA está instalada;
  • previsualiza audio y vídeo;
  • permite cambiar el nombre mostrado del dispositivo;
  • soporta autoalojamiento mediante Docker o Node.js;
  • permite configurar servidores STUN/TURN propios en una instancia autohospedada;
  • soporta un fallback a WebSocket para instancias autohospedadas donde WebRTC no está disponible;
  • transfiere archivos mediante pairdrop-cli e integra con el menú contextual de Windows y Nautilus en Ubuntu.

PairDrop usa un servidor principalmente para el descubrimiento de dispositivos y la negociación de la conexión. La transferencia de archivos en el modo normal se realiza mediante WebRTC entre navegadores. Si dos dispositivos están en la misma red local, PairDrop establece una conexión WebRTC directa. En ese escenario los archivos no se envían al servidor. El servidor ayuda a los participantes a encontrarse, pero no almacena los datos transferidos ni utiliza una base de datos.

Pares persistentes y salas públicas

El emparejamiento persistente de dispositivos es útil para dispositivos personales que deben encontrarse después de cerrar el navegador. El usuario vincula dispositivos mediante un código o un código QR, tras lo cual PairDrop usa un secreto compartido. Este modo es cómodo para emparejar «teléfono – portátil», «ordenador de trabajo – ordenador de casa» o «tableta – sistema de sobremesa».

Las salas públicas están pensadas para intercambios temporales. El usuario crea o introduce un código de 5 letras y todos los dispositivos en la misma sala se ven entre sí. Al cerrar PairDrop, el dispositivo sale de la sala. Las salas ayudan cuando los participantes están en redes distintas o cuando el descubrimiento local es imposible. Para archivos privados este escenario requiere precaución: el código de la sala no debe llegar a manos ajenas y al destinatario hay que verificarlo por el nombre del dispositivo.

Privacidad y seguridad

PairDrop no almacena archivos como un servicio en la nube y, según las FAQ del proyecto, no usa una base de datos. En la transferencia directa por WebRTC el servidor no participa en el contenido transmitido. WebRTC cifra los archivos en tránsito, lo que reduce el riesgo de interceptación a nivel de red.

Sin embargo, existen limitaciones. El usuario confía en el servidor de PairDrop como punto de señalización y como fuente del código cliente. Al transmitir a través de TURN, el tráfico se enruta por el servidor TURN, y en el fallback a WebSocket en una instancia autohospedada todo el flujo pasa por el servidor. La documentación indica expresamente que en el fallback a WebSocket el servidor puede leer ese tráfico, por lo que para datos sensibles es mejor usar una instancia propia de confianza o cifrar el archivo antes de enviarlo.

Para quién es útil PairDrop

PairDrop es adecuado para usuarios que trabajan con varias plataformas y con frecuencia transfieren archivos entre teléfono, portátil, tableta y estación de trabajo. La herramienta es útil en casa, en una pequeña redacción, en un aula, en un laboratorio o en un equipo de desarrollo donde se necesita enviar rápidamente una foto, un PDF, un archivo comprimido, un fragmento de texto o un conjunto de documentos.

El servicio resulta útil en entornos mixtos donde AirDrop no está disponible en algunos dispositivos, y donde enviar por mensajería reduce la calidad de las imágenes o añade huella en la nube de terceros. PairDrop también interesa a administradores y desarrolladores que necesitan un canal local sencillo para transferir sin configurar SMB, SFTP o una carpeta compartida.

La herramienta no reemplaza a Nextcloud, Google Drive, OneDrive, Syncthing o un servidor de archivos. En PairDrop no hay almacenamiento prolongado, historial de versiones, control de acceso complejo, auditoría centralizada ni una política completa de permisos. Su fortaleza es el intercambio rápido y puntual, no la gestión de archivos.

Cómo instalar y ejecutar

Para el uso habitual no se requiere instalación. Basta con abrir el sitio público de PairDrop en dos dispositivos. En móviles y sistemas de escritorio el servicio se puede instalar como PWA si el navegador soporta ese modo. Para una instancia autohospedada con funciones PWA se necesita HTTPS.

El arranque autónomo mediante Node.js se ve así:

git clone https://github.com/schlagmichdoch/PairDrop.git
cd PairDrop
npm install
npm start

Por defecto el servidor escucha en el puerto 3000. Para el modo de producción la documentación indica:

npm run start:prod

Al publicar PairDrop detrás de un proxy inverso hay que transmitir correctamente la cabecera X-Forwarded-For. Si el proxy está mal configurado, los clientes pueden verse entre sí no según su pertenencia real en la red, sino como si estuvieran en la misma red. Para protegerse contra eludir el proxy, la documentación recomienda limitar el acceso directo al servidor Node.js o al contenedor Docker y publicar el servicio a través del proxy.

Para despliegue con Docker se puede usar la imagen linuxserver/pairdrop. Ejemplo de ejecución:

docker run -d 
  --name=pairdrop 
  --restart=unless-stopped 
  -p 127.0.0.1:3000:3000 
  -e WS_FALLBACK=false 
  -e RTC_CONFIG=false 
  -e RATE_LIMIT=false 
  lscr.io/linuxserver/pairdrop

Si la instancia autohospedada debe ayudar a dispositivos detrás de NAT, el administrador puede indicar su propia configuración STUN/TURN mediante RTC_CONFIG. Si los usuarios se conectan a través de una VPN que bloquea WebRTC, se puede activar WS_FALLBACK=true, pero ese modo debe evaluarse por separado en términos de privacidad y carga en el servidor.

CLI y menú contextual

PairDrop soporta pairdrop-cli. La utilidad abre PairDrop en el navegador y envía allí los archivos, carpetas o texto seleccionados; luego el usuario elige al destinatario en la interfaz. Los comandos básicos son:

pairdrop
pairdrop file1 directory1
pairdrop -t "text"
pairdrop -d "https://pairdrop.net/"

En Linux y macOS pairdrop-cli se instala desde el archivo pairdrop-cli.zip, tras lo cual el script se añade al PATH. En Windows se requiere Git Bash, y para el menú contextual se usa el script send-with-pairdrop.ps1 y la opción Enviar a. En Ubuntu con Nautilus la integración funciona añadiendo el script send-with-pairdrop al directorio ~/.local/share/nautilus/scripts/.

Licencia

En el archivo principal LICENSE actualmente figura GNU General Public License v3.0. Sin embargo, en el package.json raíz de la versión 1.11.2 el campo license está marcado como ISC. Para el uso normal de un servicio público o de una instancia propia esa discrepancia probablemente no será visible para el usuario, pero antes de modificar, incluir en un producto comercial o distribuir versiones derivadas conviene comprobar la licencia por separado.

El proyecto también tuvo un historial público de discusión sobre la licencia. En el issue nº 23, abierto el 11 de febrero de 2023, un miembro de la comunidad indicó que PairDrop es un fork de Snapdrop y que pasar de GPL‑3.0 a MIT no se puede hacer sin el permiso de los titulares de derechos o de contribuyentes anteriores.

Ventajas y desventajas

Ventajas Desventajas
Funciona en el navegador y no requiere un cliente separado para la transferencia básica. Depende de las capacidades del navegador y de la política de la red.
Soporta distintas plataformas y es cómodo en entornos mixtos. No reemplaza el almacenamiento en la nube, la sincronización de carpetas ni un servidor de archivos.
En la transferencia local por WebRTC los archivos no se envían al servidor. Con enrutamiento por TURN o fallback a WebSocket cambia el modelo de privacidad.
El PairDrop público ya utiliza TURN propio para dispositivos emparejados detrás de NAT. Una instancia autohospedada requiere una configuración cuidadosa del proxy, HTTPS y, si es necesario, STUN/TURN.
Existen pares persistentes de dispositivos y salas públicas temporales. En salas públicas hay que verificar al destinatario y no revelar el código a extraños.
Se admiten CLI, menú Compartir y menú contextual mediante scripts adicionales. Las integraciones requieren instalación manual y comprobar la documentación actualizada.
Código abierto facilita el autoalojamiento y la auditoría. Conviene revisar la licencia antes de distribuir versiones derivadas.

Conclusión

PairDrop es una herramienta cómoda para la transferencia rápida de archivos entre dispositivos, especialmente cuando se necesita una alternativa sencilla a AirDrop fuera del ecosistema de Apple. En la red local funciona como un canal ligero en el navegador sin almacenamiento en la nube ni instalación de cliente. Para Internet, PairDrop ofrece pares persistentes de dispositivos y salas públicas, y el servicio público ya resuelve parte de los problemas de NAT mediante su propio servidor TURN.

Lo principal al describir PairDrop es no mezclar el servicio público y los escenarios autohospedados. En pairdrop.net TURN ya está habilitado en el lado del servicio, y la configuración STUN/TURN corresponde a las instancias propias. El fallback a WebSocket también se aplica a despliegues autohospedados y cambia el modelo de transferencia: en lugar de P2P, el tráfico pasa por el servidor.

PairDrop debe considerarse una herramienta para transferencias puntuales de archivos y texto, no como un sistema de almacenamiento. Para uso personal, equipos pequeños, redacciones y técnicos ofrece una forma rápida y clara de intercambiar entre plataformas diferentes. Para datos sensibles y procesos corporativos conviene evaluar además la confianza en el servidor, el modo de transmisión, la configuración de proxy, la infraestructura TURN y las cuestiones de licencia del proyecto.

Alt text