---
title: Rustypaste
created: 2026-06-07
updated: 2026-06-07
type: app
tags: [catalogue, file-sharing, pastebin, rust, simple]
confidence: high
contested: false
sources: [https://selfh.st/apps/?tag=File+Sharing, https://github.com/orhun/rustypaste]
---

# 📁 Rustypaste

> Pastebin minimaliste écrit en Rust, conçu pour être self-hosté avec un binaire unique et zéro dépendance externe.

## 📋 Informations Générales

| Attribut | Valeur |
|----------|--------|
| **Nom** | Rustypaste |
| **Slug** | rustypaste |
| **Description** | Pastebin Rust minimaliste, orienté texte et snippets |
| **Site officiel** | https://github.com/orhun/rustypaste |
| **Repository** | https://github.com/orhun/rustypaste |
| **Stars** | 1 174 ⭐ |
| **Licence** | MIT |
| **Langage principal** | Rust |
| **Catégorie** | File Sharing |
| **Tags** | [catalogue, file-sharing, pastebin, rust, simple] |

## 📝 Description
Rustypaste est un service de pastebin développé par Orhun (le mainteneur de Porg, GitCloth et autres outils Rust bien connus). L'objectif affiché est la simplicité absolue : un binaire Rust unique, une configuration en TOML, et c'est tout. Pas de base de données, pas de JavaScript côté client, juste un serveur HTTP qui rend du HTML léger.

L'application supporte plusieurs types de contenu : texte brut avec coloration syntaxique (via les feuilles de style de Pygments/CSS), URL one-shot, et fichiers uploadés. Plusieurs backends de stockage sont disponibles : système de fichiers local, S3, et d'autres via des adapters. Une API HTTP est exposée pour automatiser la création de pastes depuis le shell (`curl`).

Le serveur supporte plusieurs URL handlers (paste, URL, file) avec des routes dédiées, et un système de comptes minimal permet de gérer ses propres pastes. Rustypaste est l'outil idéal pour qui veut un pastebin perso sans les lourdeurs d'un PrivateBin complet, et accepte de renoncer au chiffrement côté client.

## 🚀 Installation
### Via Docker (recommandé)
```yaml
# docker-compose.yml
services:
  rustypaste:
    image: ghcr.io/orhun/rustypaste:latest
    container_name: rustypaste
    restart: unless-stopped
    ports:
      - "8000:8000"
    environment:
      - RUSTYPASTE_CONFIG=/config/config.toml
    volumes:
      - ./config.toml:/config/config.toml:ro
      - rustypaste_data:/data
volumes:
  rustypaste_data:
```

### Installation manuelle
```bash
cargo install rustypaste
rustypaste --config ./config.toml
```

## ⚙️ Configuration
- Fichier TOML avec sections `[server]`, `[paste]`, `[file]`, `[url]`
- Choix du backend de stockage (filesystem, S3, etc.)
- Limites de taille de fichier
- Token d'authentification pour l'API

## 🔗 Alternatives
- **PrivateBin** — pastebin chiffré mature, plus complet
- **Hemmelig** — équivalent chiffré E2E moderne
- **0x0.st** — service public de partage fichiers minimaliste

## 🔒 Sécurité
- Pas de chiffrement côté serveur (à coupler avec HTTPS via reverse proxy)
- Authentification par token pour l'API
- Limites de taille et durée de vie configurables
- Sanitisation des noms de fichiers

## 📚 Ressources
- [README officiel](https://github.com/orhun/rustypaste#readme)
- [Exemples de configuration](https://github.com/orhun/rustypaste/tree/main/examples)
- [Docker Hub](https://hub.docker.com/r/orhun/rustypaste)

## 🔗 Pages Liées
- [[cat-file-sharing]] (n'existe pas encore, OK)
- [[app-hemmelig]]
- [[app-cryptgeon]]
- [[app-traefik]]
- [[recettes-docker-compose]]
- [[securisation-home-lab]]
