
Envoyer un fichier de manière simple, temporaire, sans inscription et sans dépendre de services commerciaux comme WeTransfer ? C’est exactement ce que propose Lufi, un outil open source développé par Framasoft.
Dans ce tutoriel, vous allez apprendre à auto-héberger Lufi sur votre VPS, avec ou sans Docker, derrière un reverse proxy sécurisé.
🎯 Objectif
Mettre en place un service de partage de fichiers éphémères, avec :
- 🗂️ Interface web minimaliste
- ⏳ Durée de vie configurable
- 🔐 Chiffrement côté client
- 📦 Hébergement personnel (Debian + Nginx + HTTPS)
⚙️ 1. Installation de Lufi
🐳 Méthode A : via Docker (recommandé)
Assurez-vous d’avoir Docker et Docker Compose installés :
sudo apt update
sudo apt install docker.io docker-compose
Créez un dossier :
mkdir ~/lufi && cd ~/lufi
Fichier docker-compose.yml
:
version: '3'
services:
lufi:
image: lufi/lufi
container_name: lufi
restart: always
ports:
- "127.0.0.1:8080:8080"
volumes:
- ./lufi.conf:/etc/lufi.conf
- ./data:/var/lufi/files
Téléchargez la configuration de base ici : https://git.framasoft.org/Framasoft/Lufi
Lancez :
docker-compose up -d
🧑💻 Méthode B : Installation manuelle (Debian)
sudo apt install libmojolicious-perl build-essential cpanminus libsqlite3-dev
git clone https://framagit.org/Framasoft/Lufi.git
cd Lufi
cpan install Carton
carton install
cp lufi.conf.template lufi.conf
Lancez Lufi :
carton exec hypnotoad script/lufi
🛠️ 2. Configuration de Lufi
Dans lufi.conf
, vous pouvez ajuster :
provisioning => {
max_file_size => 104857600, # 100 Mo
max_delay => 3600, # 1h (durée de vie)
max_files => 5 # max fichiers par envoi
}
🔒 Activez également la compression, le log minimal et la purge auto.
🌐 3. Reverse proxy Nginx + HTTPS (Let’s Encrypt)
Installez Nginx :
sudo apt install nginx
Créez un fichier /etc/nginx/sites-available/lufi.conf
:
server {
listen 80;
server_name fichiers.mondomaine.fr;
location / {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
Activez le site :
ln -s /etc/nginx/sites-available/lufi.conf /etc/nginx/sites-enabled/
nginx -t && sudo systemctl reload nginx
Ajoutez HTTPS :
sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx -d fichiers.mondomaine.fr
🔐 4. Sécuriser l’accès via un sous-domaine
Dans la zone DNS de votre nom de domaine, ajoutez une entrée :
Type : A
Nom : fichiers
Valeur : IP de votre VPS
👉 Ensuite, connectez-vous à https://fichiers.mondomaine.fr
pour tester.
🧪 5. Utilisation via l’interface web
- Faites glisser un fichier
- Définissez la durée de vie (minutes à plusieurs jours)
- Obtenez un lien à partager
- Vos fichiers sont chiffrés côté navigateur, et non consultables par l’administrateur
💡 Aucun compte nécessaire, pas d’historique, pas de surveillance.
✅ Résultat
Vous avez maintenant votre propre WeTransfer libre, respectueux de la vie privée, hébergé sur votre serveur, sans dépendance à un service tiers. Idéal pour :
- Transmettre des fichiers pro ou perso,
- Permettre aux clients de vous envoyer des documents,
- Éviter les plateformes commerciales intrusives.