Ceci est une ancienne révision du document !
Table des matières
Rpi : un serveur BitTorrent économique
http://blog.snapdragon.cc/raspberry-pi-as-bittorrent-server/
Samba est supposé installé, de même que transmission-daemon et avahi-daemon
Voici un script de configuration simple pour transformer le Rpi en une machine de téléchargement économique. Il suffit d'un routeur d'accès Internet et d'un Rpi avec carte SD installée.
Se connecter sur le Rpi :
ssh framboise
Utilisation d'un disque dur
Ouvrir avec les droits d'administration le fichier /etc/fstab pour ajouter la ligne suivante :
/media/Reservoirs/media /srv/media none bind 0 0
Ainsi, le répertoire /srv/media est reporté sur le disque dur /media/Reservoirs.
Adaptation de samba
Ouvrir avec les droits d'administration le fichier /etc/samba/smb.conf pour ajouter ces lignes à la fin :
- /etc/samba/smb.conf
[public] comment = Public Shares browsable = yes path = /srv/media public = yes writable = yes guest ok = yes
Redémarrer samba par :
sudo service samba restart
Fichier de script
Installer transmission-daemon, une version qui tourne sans interface graphique en tant que service, en lançant :
sudo apt-get install -y transmission-daemon
Créer sur le disque dur les deux dossier que va utiliser transmission :
- un dossier pending pour stocker les fichiers en cours de téléchargement
- et un dossier downloaded pour stocker les fichiers terminés
Pour cela,
- nommer le disque :
export DISQUE="/media/Reservoirs"
- bâtir les répertoires :
sudo mkdir -p $DISQUE/bittorrent/{downloaded,pending} && export DISQUE=
Placer dans le groupe debian-transmission l’utilisateur pi et les deux dossiers précédemment créés, et leur donner les droits 770 :
sudo usermod -a -G debian-transmission pi chgrp debian-transmission $DISQUE/bittorrent/{downloaded,pending} chmod -R 770 $DISQUE/bittorrent{downloaded,pending}
Ouvrir avec les droits d'administration le fichier /etc/transmission-daemon/settings.json pour modifier les lignes suivantes :
paramètre | valeur |
---|---|
“rpc-authentication-required” | false |
“rpc-whitelist-enabled” | false |
“download-dir” | “/media/disque2To/downloaded” |
“incomplete-dir” | “/media/disque2To/pending” |
“incomplete-dir-enabled” | true |
Relancer le service :
sudo service transmission-daemon reload
La Seedbox est prête.
Pour télécharger des fichiers via des fichiers torrents, se vous connecter via un navigateur à la seedbox à l’adresse : http://ip.du.raspberry.pi:9091
- ip.du.raspberry.pi : L’ip réseau du Rpi (ou son ip WEb)
- 9091: port par défaut de transmission
Et on atterrit sur le client torrent.
Les fichiers téléchargés apparaîtront dans le dossier downloaded du disque dur, lui même disponible en partage sur le réseau local.
Créer le fichier setup.sh suivant :
- setup.sh
#!/usr/bin/env bash # Installs all components needed for a nice seedbox on your new raspberry pi. # Base image: http://www.linuxsystems.it/2012/06/debian-wheezy-raspberry-pi-minimal-image/ # Prepared by manu (at) snapdragon.cc echo "[+] Configuration de Transmission" service transmission-daemon stop sed -i -re 's/(rpc-authentication-required\":\ )([a-z]+)*/\1false/g' /etc/transmission-daemon/settings.json sed -i -re 's/(rpc-whitelist-enabled\":\ )([a-z]+)*/\1false/g' /etc/transmission-daemon/settings.json sed -i -re 's/(download-dir\":\ )([a-z]+)*(.*)/\1\"\/srv\/media\",/g' /etc/transmission-daemon/settings.json service transmission-daemon start chown debian-transmission /srv/media
Exécution du script
Exécuter le script en tapant :
sudo sh setup.sh
Le script met à jour le gestionnaire de paquets, installe les applications et dépendances et fait les réglages nécessaires.
Utilisation
Si tout va bien, l'interface web de transmission est accessible à l'URL suivante: http://framboise:9091 ou http://192.168.0.100:9091. 1)
Sur l'interace Web de transmission, on peut ajouter et gérer le téléchargement de torrents.
Pour accéder aux téléchargements, on peut monter un disque via CIFS/SMB.
Si tout s'est bien passé, on a maintenant un serveur BitTorrent. Si quelque chose ne fonctionne pas, recommencer avec une nouvelle image et faire une par une les étapes décrites dans le script d'installation.
Si les téléchargements fonctionnent bien mais qu'on ne peut pas y accéder, ajuster les autorisations par un :
chmod -R 777 /srv/media.
<note important>Il ne faut utiliser cette configuration que dans un réseau de confiance car tous les mécanismes de sécurité de l'authentification des utilisateurs sont désactivés. Pour accéder au serveur torrent depuis l'Internet public, il faut un proxy via un serveur web approprié, activer l'authentification HTTPS avec mot de passe.</note>
Puisque ce système fonctionne sur une image Debian standard, on peut ajouter toutes sortes de fonctionnalités intéressantes comme :
- ajouter des torrents automatiquement avec Flexget
- télécharger de cyberlockers, comme Rapidshare avec pyLoad
- partager des fichiers via HTTP avec Apache et h5ai