Depuis la dernière mise à jour d’Ubuntu Server, le daemon transmission ne fonctionne plus correctement : il ne démarre plus de manière stable et les téléchargements ne se lancent que pendant cette période où il tente de se lancer.
J’ai passé pas mal de temps à essayer de résoudre le problème mais les mises à jour de transmission sont vraiment très espacées et il est fort probable que le projet ne soit plus maintenu dans quelques temps.
Il est donc temps de passer à un nouveau daemon bittorrent, qui se veut léger, rapide et efficace : deluge. Voici donc un tutoriel pour installer deluge sur Ubuntu Server pour créer une seedbox bittorrent.
Qu’est-ce qu’une seedbox ?
Une seedbox est un serveur informatique privé dédié au stockage, au téléchargement et à l’émission de fichiers numériques. Généralement, les seedboxes utilisent le protocole BitTorrent pour émettre et recevoir des données. Ces serveurs sont connectés à des réseaux à très haut débit symétrique, allant de 100 Mbit/s à 1 Gbit/s ou plus, selon l’option choisie.
Les principaux avantages d’une seedbox sont :
- Vitesse : les seedboxes peuvent télécharger et partager des fichiers à des vitesses très élevées, bien supérieures à celles d’une connexion Internet domestique classique.
- Sécurité : l’utilisation d’une seedbox permet de masquer votre adresse IP personnelle, offrant ainsi une meilleure protection de votre vie privée.
- Disponibilité : une seedbox fonctionne 24h/24 et 7j/7, même lorsque votre ordinateur personnel est éteint.
- Gestion de l’espace : les fichiers sont stockés sur le serveur distant, libérant ainsi de l’espace sur votre propre machine.
Dans le cadre de notre tutoriel, nous allons utiliser Deluge, un client BitTorrent open-source populaire, pour configurer notre seedbox sur un serveur Ubuntu.
Installation de deluge
Création de l’utilisateur UNIX et des répertoires deluge
Créons l’utilisateur deluge
, qui appartient au groupe deluge
, et dont le répertoire d’utilisation est /home/deluge
:
sudo adduser --system --gecos "Deluge Service" --disabled-password --group --home /home/deluge deluge
Code language: JavaScript (javascript)
Résultat :
info: Selecting UID from range 100 to 999 ...
info: Selecting GID from range 100 to 999 ...
info: Adding system user `deluge' (UID 124) ...
info: Adding new group `deluge' (GID 133) ...
info: Adding new user `deluge' (UID 124) with group `deluge' ...
info: Creating home directory `/home/deluge' ...
Code language: PHP (php)
Créons maintenant les répertoires nécessaires, avec les bonnes permissions :
sudo mkdir -p /home/deluge/completed /home/deluge/torrents /home/deluge/.config/deluge
sudo chown -R deluge:deluge /home/deluge
sudo chmod -R 755 /home/deluge
Installation de deluge
Installons deluge sur notre serveur :
sudo apt install deluged deluge-web
Cela installe le daemon deluge et son webui, pour pouvoir y accéder depuis un navigateur.
Éditions maintenant le fichier deluged.service
pour systemd
:
sudo nano /etc/systemd/system/deluged.service
On y ajoute:
[Unit]
Description=Deluge Bittorrent Client Daemon
After=network-online.target
[Service]
Type=simple
User=deluge
Group=deluge
UMask=027
ExecStart=/usr/bin/deluged -d
Restart=on-failure
[Install]
WantedBy=multi-user.target
Code language: JavaScript (javascript)
Enregistrez le fichier et quittez.
Ouvrons les ports dans le pare-feu avec ufw
:
sudo ufw allow 58846/tcp comment 'Allow Deluge'
sudo ufw allow 8112/tcp comment 'Allow Deluge Web UI'
Code language: JavaScript (javascript)
Et on démarre tous les services deluge:
sudo systemctl daemon-reload
sudo systemctl restart deluged
sudo systemctl restart deluge-web
Configuration de NginX en reverse-proxy pour deluge-web
On édite notre snippet dédié à deluge
:
nano /etc/nginx/snippets/deluge.conf
Et on y ajoute:
############
### Deluge ###
############
location ^~ /deluge {
proxy_pass http://127.0.0.1:8112/;
proxy_set_header X-Deluge-Base "/deluge/";
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_http_version 1.1;
proxy_set_header Connection "";
add_header Front-End-Https on;
add_header X-Frame-Options SAMEORIGIN;
proxy_connect_timeout 1s;
proxy_send_timeout 600;
proxy_read_timeout 36000s;
proxy_buffer_size 64k;
proxy_buffers 16 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;
proxy_set_header Accept-Encoding '';
proxy_ignore_headers Cache-Control Expires;
proxy_set_header Referer $http_referer;
proxy_set_header Cookie $http_cookie;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-Port '443';
proxy_set_header X-Forwarded-Ssl on;
proxy_set_header X-Forwarded-Proto https;
proxy_set_header Authorization '';
proxy_buffering off;
proxy_redirect off;
}
Code language: PHP (php)
Sauvons le fichier et redémarrons nginx
:
service nginx restart
Configuration de deluge avec le WebUI
1. Visitons notre URL qui se termine par /deluge
, puisque c’est ce que nous avons défini dans notre server block NginX.
2. Changez le mot de passe par défault (qui est deluge) pour un mot de passe fort et unique.
3. Donnez les bons chemins dans l’onglet Downloads :

Mettons :
/home/deluge
pour le répertoire par défaut,/home/deluge/completed
pour les fichiers téléchargés et complétés,/home/deluge/torrents
pour stocker les fichiers.torrent
4. Dans l’onglet Queue, limitons un peu le seed:

Mettons:
- tous les réglages de Seeding Rotation à 0
- le Share Ratio à 0 et ensuite Remove torrent
Envoyer les fichiers torrent à notre instance deluge
Le moyen le plus simple et le plus transparent de gérer les téléchargements de fichier .torrent reste de les envoyer directement sur le serveur, sans avoir à les télécharger sur notre machine.
Pour ce faire, nous utilisons l’extension Firefox Torrent Control, qui est capable de gérer les liens torrent et magnet des interfaces web des client Bittorent les plus populaires : BiglyBT, Cloud Torrent, Deluge, Flood, ruTorrent, Synology Download Station, Tixati, Transmission, tTorrent, µTorrent, Vuze and qBittorrent.
Une fois l’extension installée, il suffit de faire un petit tour dans ses options pour y ajouter les informations de votre client bittorrent :

Conclusion
Voilà, il ne vous reste plus qu’à lancer les téléchargements, directement depuis votre navigateur avec un clic droit → Torrent Control → Add torrent. Simple et efficace !
Rencontrez-vous des défis avec votre site WordPress ou WooCommerce? Laissez-moi les résoudre pour vous.