Repolode
orhun

orhun/rustypaste

Servicio mínimo y autohospedado de subida de archivos y pastebin, escrito en Rust, que los guarda en el sistema de archivos local sin necesidad de base de datos.

Estrellas
1,213
Forks
94
Issues abiertos
19
Último commit
anteayer

¿Qué es?

Rustypaste permite subir archivos con curl o un cliente HTTP similar y obtener una URL corta para compartirlos. También permite acortar URLs y descargar en el servidor un archivo remoto mediante su URL. Los archivos se guardan en el sistema de archivos, por lo que no se necesita una base de datos; el proyecto se distribuye como un único binario y mediante imágenes de Docker.

El servicio ofrece controles opcionales para definir cómo se nombran los archivos y cuánto tiempo se conservan. Los nombres pueden generarse al azar (nombres de mascotas, cadenas alfanuméricas o un sufijo aleatorio), los enlaces pueden caducar automáticamente y los archivos caducados pueden eliminarse según un calendario. Los enlaces de un solo uso solo pueden abrirse una vez, y los archivos pueden protegerse con contraseñas cuyos hashes se generan con Argon2id. También hay tokens de autenticación, un endpoint DELETE protegido con tokens de eliminación y un endpoint opcional para listar archivos.

La configuración se realiza mediante un archivo TOML que admite recarga en caliente. Los tipos MIME se deducen de las extensiones y pueden sobrescribirse o incluirse en una lista de bloqueo; los tipos similares a texto se sirven como texto sin formato para evitar la ejecución de scripts. También se puede configurar una página de inicio personalizada, como un formulario HTML para subir archivos.

Funciones clave

  • 01Subida mediante curl o HTTP, con URLs cortas para compartir
  • 02Almacenamiento en el sistema de archivos, sin necesidad de base de datos
  • 03Nombres aleatorios opcionales, caducidad automática y enlaces de un solo uso
  • 04Archivos protegidos con contraseñas mediante hashes Argon2id
  • 05Tokens de autenticación y endpoint DELETE protegido con tokens
  • 06Detección de tipos MIME con opciones para sobrescribirlos y bloquearlos
  • 07Configuración TOML con recarga en caliente e imágenes de Docker

Casos de uso

  • Montar un pastebin privado o un servidor para compartir archivos en tu propio equipo o VPS
  • Compartir capturas de pantalla y archivos temporales que deban caducar automáticamente
  • Enviar enlaces de descarga de un solo uso que solo puedan abrirse una vez
  • Compartir archivos protegidos con contraseña sin recurrir a un servicio de terceros

Inicio rápido

  1. 1

    Instálalo desde crates.io con Cargo

    cargo install rustypaste
  2. 2

    Crea un config.toml en el directorio de trabajo (consulta el config.toml del repositorio) y, después, inicia el servidor

    rustypaste
  3. 3

    Sube un archivo al servidor en ejecución

    curl -F "file=@x.txt" "<server_address>"

Antes de usarlo

  • Los archivos se almacenan en el sistema de archivos local sin base de datos, por lo que es adecuado para alojarlo por cuenta propia en un solo servidor.

En colecciones

Temas

#file-sharing#pastebin#file-upload#self-hosted#rust#url-shortener#file-upload-server#file-upload-service#file-uploading#hacktoberfest

Preguntas frecuentes

¿Qué es rustypaste?
Servicio mínimo y autohospedado de subida de archivos y pastebin, escrito en Rust, que los guarda en el sistema de archivos local sin necesidad de base de datos. Rustypaste permite subir archivos con curl o un cliente HTTP similar y obtener una URL corta para compartirlos. También permite acortar URLs y descargar en el servidor un archivo remoto mediante su URL. Los archivos se guardan en el sistema de archivos, por lo que no se necesita una base de datos; el proyecto se distribuye como un único binario y mediante imágenes de Docker.
¿rustypaste es gratuito? ¿Qué licencia tiene?
rustypaste es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿rustypaste sigue mantenido?
Mantenimiento activo. El último commit de rustypaste fue el 4 nov 2026.
¿Para qué puedo usar rustypaste?
Montar un pastebin privado o un servidor para compartir archivos en tu propio equipo o VPS Compartir capturas de pantalla y archivos temporales que deban caducar automáticamente Enviar enlaces de descarga de un solo uso que solo puedan abrirse una vez Compartir archivos protegidos con contraseña sin recurrir a un servicio de terceros
¿Cómo se instala rustypaste?
Instálalo desde crates.io con Cargo: cargo install rustypaste Crea un config.toml en el directorio de trabajo (consulta el config.toml del repositorio) y, después, inicia el servidor: rustypaste Sube un archivo al servidor en ejecución: curl -F "file=@x.txt" "<server_address>"
¿Dónde consigo rustypaste?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/orhun/rustypaste

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados