Repolode
orhun

orhun/rustypaste

Serviço minimalista e auto-hospedado de upload de arquivos e pastebin, escrito em Rust, que armazena os arquivos no sistema de arquivos local sem precisar de banco de dados.

Estrelas
1,213
Forks
94
Issues abertas
19
Último commit
há 3 dias

O que é?

Com o Rustypaste, você pode enviar arquivos com curl ou outro cliente HTTP semelhante e receber uma URL curta para compartilhar. O serviço também oferece encurtamento de URLs e permite buscar um arquivo remoto no servidor informando sua URL. Os uploads são armazenados no sistema de arquivos, sem necessidade de banco de dados, e o projeto é distribuído como um único binário e imagens Docker.

O serviço oferece controles opcionais para definir os nomes dos arquivos e por quanto tempo eles ficam disponíveis. Os nomes podem ser aleatórios (nomes de animais de estimação, sequências alfanuméricas ou um sufixo aleatório), os links podem expirar automaticamente e os arquivos expirados podem ser excluídos em intervalos programados. Links de uso único podem ser acessados apenas uma vez, e os arquivos podem ser protegidos por senha, armazenada com hash Argon2id. O serviço também oferece tokens de autenticação, um endpoint DELETE protegido por tokens de exclusão e um endpoint opcional para listar arquivos.

A configuração é feita por meio de um arquivo TOML com suporte a recarga a quente. Os tipos MIME são inferidos pelas extensões e podem ser substituídos ou incluídos em uma lista de bloqueio; tipos semelhantes a texto são servidos como texto simples para evitar a execução de scripts. Também é possível configurar uma página inicial personalizada, como um formulário HTML para uploads.

Recursos principais

  • 01Uploads via curl ou HTTP, com retorno de URLs curtas para compartilhar
  • 02Armazenamento no sistema de arquivos, sem necessidade de banco de dados
  • 03Nomes de arquivo aleatórios, expiração automática e links de uso único opcionais
  • 04Arquivos protegidos por senha com hash Argon2id
  • 05Tokens de autenticação e endpoint DELETE protegido por tokens
  • 06Detecção de tipos MIME, com opções para substituí-los e incluí-los em uma lista de bloqueio
  • 07Configuração TOML com recarga a quente e imagens Docker

Casos de uso

  • Executar um pastebin privado ou servidor de compartilhamento de arquivos na sua própria máquina ou VPS
  • Compartilhar capturas de tela e arquivos temporários que devem expirar automaticamente
  • Enviar links de download de uso único, que só podem ser acessados uma vez
  • Compartilhar arquivos protegidos por senha sem recorrer a um serviço de terceiros

Início rápido

  1. 1

    Instale pelo crates.io com Cargo

    cargo install rustypaste
  2. 2

    Crie um config.toml no diretório de trabalho (consulte o config.toml do repositório) e inicie o servidor

    rustypaste
  3. 3

    Envie um arquivo para o servidor em execução

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

Antes de usar

  • Os arquivos são armazenados no sistema de arquivos local, sem banco de dados, por isso é adequado para hospedagem própria em um único servidor.

Em coleções

Tópicos

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

Perguntas frequentes

O que é rustypaste?
Serviço minimalista e auto-hospedado de upload de arquivos e pastebin, escrito em Rust, que armazena os arquivos no sistema de arquivos local sem precisar de banco de dados. Com o Rustypaste, você pode enviar arquivos com curl ou outro cliente HTTP semelhante e receber uma URL curta para compartilhar. O serviço também oferece encurtamento de URLs e permite buscar um arquivo remoto no servidor informando sua URL. Os uploads são armazenados no sistema de arquivos, sem necessidade de banco de dados, e o projeto é distribuído como um único binário e imagens Docker.
rustypaste é gratuito? Qual é a licença?
rustypaste é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
rustypaste ainda é mantido?
Manutenção ativa. O último commit de rustypaste foi em 4 de nov. de 2026.
Para que posso usar rustypaste?
Executar um pastebin privado ou servidor de compartilhamento de arquivos na sua própria máquina ou VPS Compartilhar capturas de tela e arquivos temporários que devem expirar automaticamente Enviar links de download de uso único, que só podem ser acessados uma vez Compartilhar arquivos protegidos por senha sem recorrer a um serviço de terceiros
Como instalar rustypaste?
Instale pelo crates.io com Cargo: cargo install rustypaste Crie um config.toml no diretório de trabalho (consulte o config.toml do repositório) e inicie o servidor: rustypaste Envie um arquivo para o servidor em execução: curl -F "file=@x.txt" "<server_address>"
Onde consigo rustypaste?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/orhun/rustypaste

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados