Enviar archivos del teléfono a un servidor, NAS o Raspberry Pi
Última revisión
La mayoría de las herramientas para compartir archivos en el navegador necesitan una pestaña abierta en el lado que recibe. Un servidor doméstico, un NAS, una Raspberry Pi o una máquina virtual en la nube no tienen pantalla ni navegador. El buzón de línea de comandos de tosstome está pensado justo para ese tipo de máquina.
Configura el buzón
En el servidor (Node.js 22 o posterior):
tosstome listen --dir /srv/inbox
Muestra un enlace y un código QR en la terminal:
- Escanea el código QR con el teléfono o copia el enlace en él.
- Añade la página a la pantalla de inicio del teléfono.
- Ábrela, elige los archivos y pulsa Enviar. Se escriben en
/srv/inbox.
Cuando el teléfono está en la misma red que el servidor, los archivos van directamente a él por esa red y no salen de ella. Desde cualquier otro lugar van directos si las dos redes lo permiten, o a través de un relé que no guarda nada.
El enlace del buzón no cambia al reiniciar, así que el icono de la pantalla de inicio sigue funcionando. Para mostrarlo de nuevo más tarde, ejecuta tosstome url. Para descartar el enlace anterior y crear uno nuevo, ejecuta tosstome listen --new.
Cómo se protege el buzón
- El enlace contiene una clave de envío secreta después del
#. Los navegadores nunca envían esa parte del enlace al servidor en la petición de la página; la clave se pasa más tarde dentro de la conexión WebSocket. - El servidor guarda solo hashes SHA-256 de las claves.
- El lado del servidor usa una clave de agente aparte que nunca sale de
~/.config/tosstome/inbox.json. - Las claves de envío incorrectas bloquean a quienes envían, nunca la conexión del propio servidor.
- Los nombres de archivo que envía el remitente se reducen a un nombre simple dentro de la carpeta de destino. Los archivos se escriben como
.party se renombran al terminar, así que un script que vigile la carpeta nunca ve un archivo a medias.
También visible en la red local
tosstome listen --nearby
Con --nearby, el servidor también aparece en la lista “En esta red” de los navegadores de la misma red, así que cualquiera en casa puede enviarle archivos sin el enlace. Esos archivos van a una subcarpeta nearby/ aparte, porque cualquier persona de esa red puede enviarlos.
Ejecútalo como servicio
Para una máquina que deba aceptar archivos siempre, ejecuta el comando con lo que mantenga activos tus otros servicios, como una unidad de systemd, un contenedor de Docker o tmux. Añade --json para obtener un evento JSON por línea (ready, offer, file, error), útil para registros o scripts.
[Unit]
Description=tosstome inbox
After=network-online.target
[Service]
ExecStart=/usr/bin/env tosstome listen --dir /srv/inbox --json
Restart=always
User=media
[Install]
WantedBy=multi-user.target
Enviar desde la terminal de otra computadora
tosstome send report.pdf photos.zip --to "INBOX_LINK"
Pon el enlace entre comillas, porque contiene un # que los shells tratan como comentario.
Preguntas
¿El servidor necesita una IP pública o puertos abiertos?
No. El buzón abre una conexión WebSocket saliente hacia toss2.me y espera allí, así que funciona detrás de routers domésticos, NAT y firewalls que permitan HTTPS saliente.
En casa, ¿los archivos pasan por internet?
No. Solo el breve establecimiento de la conexión pasa por toss2.me. Cuando el teléfono y el servidor están en la misma red, los archivos van directamente entre ellos por WebRTC, así que la velocidad depende de tu Wi-Fi o Ethernet. La página indica si una transferencia fue directa o por el relé.
¿Qué pasa si el servidor está desconectado cuando envío?
No se envía nada y no se guarda nada. La página del teléfono avisa de que el buzón está desconectado.
¿Otras personas pueden enviar a mi buzón?
Solo quienes tengan el enlace. Si se filtra, ejecuta tosstome listen --new para reemplazarlo; el enlace anterior deja de funcionar.
¿Hay un límite de tamaño de archivo?
tosstome no impone ningún límite. El navegador que recibe mantiene el archivo en memoria hasta que lo guardas, así que para archivos de varios gigabytes conviene más recibir con el buzón de línea de comandos, que escribe directamente en el disco.
Relacionado
- La herramienta de línea de comandos de tosstome
- Envía archivos del móvil al ordenador
- PairDrop vs tosstome
- Cómo funciona tosstome
Pruébalo ahora
Abre toss2.me en dos dispositivos. Sin app, sin cuenta y sin guardar nada.
Enviar un archivo ahora