Actualizado a 3 de Septiembre de 2020
Instrucciones para instalar torrent manualmente en un servidor ya existente para proporcionarle más funcionalidad, en este caso estas son las instrucciones para los dos más populares, Deluge y Transmission.
Primero actualizar la Raspberry pi
sudo rpi-update sudo apt-get update sudo apt-get upgrade sudo apt-get dist-upgrade
Vamos a utilizar el cliente Deluge así que instalamos los paquetes:
sudo apt-get install deluged sudo apt-get deluge-console
Ahora hay que arrancar el demonio en Linux y después lo paramos, esto es para que cree la configuración por defecto.
sudo deluged sudo pkill deluged
Primero un backup de la configuración original y editamos el archivo, al haber instalado con sudo los ficheros estarán en la carpeta /root.
sudo cp /root/.config/deluge/auth /root/.config/deluge/auth.old.nano sudo nano /root/config/deluge/auth
Ahora hay que cambiar la línea que aparece en fichero con este formato user:password:level, esta cuenta sirve para administrar raspberry, en este caso usamos los valores por defecto de raspberry como ejemplo, donde 10 indica máximo nivel de permisos, pi:raspberry:10 y ahora arrancamos el demonio y arrancamos la consola.
sudo deluged sudo deluge-console
En esta consola arrancamos los siguientes comandos: config -s allow_remote True, esto habilita las conexiones remotas, para verificar el valor se puede usar el comando config allow_remote, para salir basta con usar exit.
Ahora reiniciar para hacer efectivos los cambios.
sudo pkill deluged sudo deluged
En web de Deluge existen clientes de escritorio para instalar, pero en este caso vamos a usarlo vía web.
sudo apt-get install python-mako sudo apt-get install deluge-web sudo deluge-web &
El puerto por defecto es 8112, si se quiere cambiar se puede hacer con el siguiente comando, en el fichero cambiar la línea port por el puerto (superior a 1000), en este mismo fichero completamos la línea: «default_daemon»:»localhost:58846″
sudo pkill deluge-web sudo nano /root/.config/deluge/web.conf
Ahora se puede acceder a la dirección web http://raspberry:8112 la cual abrirá una web con una contraseña que por defecto es deluge.
Después de esto es necesario reiniciar y arrancar de nuevo.
sudo pkill deluged sudo deluged
Ahora solo queda configurar Deluge para que arranque en el inicio, para esto editamos el archivo /etc/rc.local y agregamos las siguientes líneas al final del archivo (antes de la línea exit 0)
sudo -u pi /usr/bin/python /usr/bin/deluged
sudo -u pi /usr/bin/python /usr/bin/deluge-web
Ahora vamos a instalar transmission:
Primero instalar los paquetes:
sudo apt-get update sudo apt-get install transmission transmission-daemon
Ahora paramos el servicio para poder editar los ficheros de configuración
sudo service transmission-daemon stop
Ahora editamos el fichero:
sudo nano /etc/transmission-daemon/settings.json
Y modificamos los siguientes parámetros, en este caso los parámetros «download-dir» y «incomplete-dir» apuntan a la carpeta donde se guardará el torrent y la carpeta temporal donde se ubican mientras se van descargando. La carpeta «watch-dir» es la carpeta donde se dejan los torrent que se descargarán automaticamente.
"blocklist-enabled": true, "blocklist-url": "http://john.bitsurge.net/public/biglist.p2p.gz", "download-dir": "/mnt/samba/hdd/download", "incomplete-dir": "/mnt/samba/hdd/temp", "incomplete-dir-enabled": true, "rpc-password": "TuPassWord", "rpc-username": "transmission", "rpc-whitelist-enabled": false, "watch-dir":"/mnt, "rpc-host-whitelist-enabled": false,
Ahora tenemos que cambiar el usuario con el que se ejecuta para poder hacerlo con el usuario pi, esto es especialmente útil sobre todo si hemos usado el usuario pi para mapear una unidad de red o una unidad USB.
Primero detenemos el demonio.
service transmission-daemon stop
Cambiamos el usuario
sudo nano /etc/init.d/transmission-daemon
y cambiamos:
USER=debian-transmission por USER=pi
También tenemos que editar el siguiente fichero:
nano /etc/systemd/system/multi-user.target.wants/transmission-daemon.service
Y ponemos esto:
[Unit] Description=Transmission BitTorrent Daemon After=network.target [Service] User=pi Type=forking PIDFile=/var/lib/transmission-daemon/.config/transmission-daemon/trans.PID ExecStart=/usr/bin/transmission-daemon --pid-file /var/lib/transmission-daemon/.config/transmission-daemon/trans.PID --config-dir /var/lib/transmission-daemon/.config/transmission-daemon/ [Install] WantedBy=multi-user.target
Ahora creamos el archivo pid y configuramos los permisos:
touch /var/lib/transmission-daemon/.config/transmission-daemon/trans.PID chown pi.pi /var/lib/transmission-daemon/.config/transmission-daemon/trans.PID
Ahora cambiamos el propietario de los ficheros:
chown -R pi.pi /var/lib/transmission-daemon chown -R pi.pi /etc/transmission-daemon/settings.json chown -h pi.pi /var/lib/transmission-daemon/info/settings.json
La dirección por defecto para acceder es:
http://127.0.0.1:9091/transmission
Hay que tener en cuenta que el fichero settings.json se tiene que editar cuando el servicio esté parado de lo contrario al pararse sobreescribe con los cambios actuales.
Ahora vamos a ver como configurar estas rutas por algo más fácil de recordar, para ello en Apache creamos un virtual host que nos haga de proxy con el servidor de torrent, creamos un fichero en la carpeta /etc/apache2/sites-available/004-torrent.conf con el siguiente contenido, obviamente deberemos tener un sistema DNS que nos resuelva correctamente el nombre torrent, vamos a suponer que el servidor está en la dirección 192.168.1.4
<VirtualHost torrent:80> ServerName torrent.domain ServerAlias torrent ProxyPreserveHost Off ProxyRequests On ProxyPass / http://192.168.1.4:9091/ ProxyPassReverse / http://192.168.1.4:9091/ CustomLog /var/log/apache2/torrent.log combined ErrorLog /var/log/apache2/torrent.error.log </VirtualHost>
Ahora habilitamos el sitio usando el archivo de configuración que hemos creado
sudo a2ensite 004-torrent.conf
Después de reiniciar el servidor podremos acceder al servidor torrent usando la dirección http://torrent
Finalmente es posible que haya problemas con las carpetas watch de torrent si están en un disco externo ya que es posible que no detecte los cambios, así que vamos a configurar una carpeta por samba para poder dejar los ficheros ahí, así que editamos el fichero /etc/samba/smb.conf e incluimos el siguiente contenido:
[torrent] comment = Carpeta para dejar torrents que se descargarán automaticamente path = /media/torrent read only = No force user = pi force group = pi create mask = 0660
En este caso estamos suponiendo que la carpeta donde se colocarán los torrent está en /media/torrent
En caso de reinstalar la aplicación si no aparecen todos los ficheros que hemos descargado previamente es porque tenemos que rellenar la carpeta torrents con todos los torrents que nos hayamos descargado, podemos copiar el contenido de la antigua carpeta torrents en la nueva.
Enlaces:
https://www.alvaroreig.com/como-configurar-un-proxy-inverso-con-apache/
https://www.vichaunter.org/como-se-hace/cambiar-nombre-usuario-transmission-linux
https://www.vichaunter.org/como-se-hace/instalar-configurar-transmission-raspbian-raspberry-pi