TorrentServer: differenze tra le versioni

Da PNLUG.
(Installazione)
(Condivisione Pubblica)
 
(17 versioni intermedie di uno stesso utente non sono mostrate)
Riga 1: Riga 1:
 
=Abstract=
 
=Abstract=
Spesso le imamgini iso e altri software "pesanti" vengono proposti come torrent, un protocollo peer-to-peer (P2P) che consente la distribuzione e la condivisione di file su Internet [https://it.wikipedia.org/wiki/Torrent_%28formato_di_file%29 Wikipedia Torrent]
+
Spesso le immagini iso e altri software "pesanti" vengono proposti come torrent, un protocollo peer-to-peer (P2P) <br>
 
+
che consente la distribuzione e la condivisione di file su Internet [https://it.wikipedia.org/wiki/Torrent_%28formato_di_file%29 Wikipedia Torrent]<br>
Esistono molti client uno dei più famosi è [http://www.transmissionbt.com/about/ Transmission], disponibile il client in ogni distribuzione.
+
<br>
Unico problema è che dovete lasciare acceso il vostro PC acceso per tutto il tempo del download.
+
Esistono molti client uno dei più famosi è [http://www.transmissionbt.com/about/ Transmission],lo trovate in ogni distribuzione.<br>
 +
<br>
 +
Unico problema è che dovete lasciare acceso il vostro PC per tutto il tempo del download.<br>
  
 
==Soluzione==
 
==Soluzione==
Sia che recuperiate un vecchio PC ([https://trac.transmissionbt.com/wiki/HeadlessUsage senza interfaccia grafica]) oppure sfruttando un macchina virtuale
+
Sia che recuperiate un vecchio PC ([https://trac.transmissionbt.com/wiki/HeadlessUsage senza interfaccia grafica]) <br>
è possibile utilizzare una versione "daemon" del software e sfruttare l'intrinseca interfaccia web.
+
oppure utilizziate un macchina virtuale è consigliabile utilizzare una versione "daemon" del software e sfruttare l'intrinseca interfaccia web.<br>
  
 
=Prerequisiti=
 
=Prerequisiti=
Riga 29: Riga 31:
  
  
==Installazione==
+
=Installazione=
  
Collegatevi in ssh
+
Collegatevi in ssh, create un secondo utente (es:utente)<br>
Create due folders nella home del utente
+
Create due folders nella home del utente: <br>
  
mk /home/utente/complete
+
mkdir /home/utente/complete
  
mk /home/utente/incomplete
+
mkdir /home/utente/incomplete
  
  
Riga 49: Riga 51:
 
editiamo il file di configurazione :
 
editiamo il file di configurazione :
  
  nano/etc/transmission-daemon/settings.json
+
  nano /etc/transmission-daemon/settings.json
  
  
Riga 64: Riga 66:
 
   "rpc-whitelist-enabled" : false      <-- qualunque richiesta verrà accettata
 
   "rpc-whitelist-enabled" : false      <-- qualunque richiesta verrà accettata
  
===Security improve===
+
==Security improve==
  
 
   "rpc-whitelist-enabled" : true
 
   "rpc-whitelist-enabled" : true
Riga 82: Riga 84:
  
 
=Accesso web=
 
=Accesso web=
 +
 +
Per accedere all'interfaccia web aprite il browser :
 +
 +
http://hostname:9091/transmission
 +
http://indirizzoIP:9091/transmission
 +
 +
e utilizzate
 +
 +
username
 +
password
 +
 +
del secondo utente Linux creato in precedenza.
 +
=Bug fix=
 +
 +
La versione installata se wheezy :
 +
 +
apt-cache policy transmission-daemon
 +
  transmission-daemon:
 +
  Installed: 2.52-3+nmu2
 +
  Candidate: 2.52-3+nmu2
 +
  Version table:
 +
  *** 2.52-3+nmu2 0
 +
        500 http://ftp.debian.org/debian/ wheezy/main i386 Packages
 +
        500 http://security.debian.org/ wheezy/updates/main i386 Packages
 +
        100 /var/lib/dpkg/status
 +
 +
Ha un piccolo bug, non mostra le frecce up & down nell'interfaccia web.
 +
 +
Per risolvere editate il file :
 +
 +
/usr/share/transmission/web/javascript/torrent-row.js
 +
 +
e modificate le righe con un editor
 +
 +
return '↑  ' + Transmission.fmt.speedBps(t.getUploadSpeed());
 +
return '↓  ' + Transmission.fmt.speedBps(t.getDownloadSpeed());
 +
 +
Nota:
 +
 +
  TorrentRendererHelper.formatUL = function(t)
 +
  {
 +
        return '↑ ' + Transmission.fmt.speedBps(t.getUploadSpeed());
 +
  };
 +
 +
  TorrentRendererHelper.formatDL = function(t)
 +
  {
 +
  return '↓ ' + Transmission.fmt.speedBps(t.getDownloadSpeed());
 +
  };
 +
 +
=Condivisione Pubblica=
 +
 +
Natale '15 ha portato a casa una SM@RT TV[0].<br>
 +
Questa periferica ha la capacità di fare browser della rete su cartelle SAMBA[1], <br>
 +
quindi ho pensato di fare una piccola aggiunta al server torrent,<br>
 +
rendendo pubblica[2] la cartella relativa[3],<br>
 +
 +
Prendendo spunto dalla documentazione ufficiale [4]
 +
 +
ho installato samba :
 +
 +
  apt-get install samba
 +
 +
Per precauzione ho salvato il file di configurazione originale :
 +
 +
  mv /etc/samba/smb.conf /etc/samba/smb.ori
 +
 +
poi ho creato un nuovo file di configurazione :
 +
 +
  [global]
 +
  map to guest = bad user
 +
 +
  [public]
 +
  path = /home/utente/complete
 +
  guest ok = yes
 +
 +
  [public]
 +
  path = /home/utente/complete
 +
  guest ok = yes
 +
  read only = yes
 +
 +
 +
concludiamo riavviando il demone :
 +
 +
service samba restart
 +
 +
 +
== Test della cartella pubblica ==
 +
 +
  smbclient //server/public -Unot_a_user%foo
 +
 +
dove server è il vostro Torrentserver.
 +
 +
Una risposta simile a questa è di buon auspicio :-)
 +
 +
  Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.6.6]
 +
  smb: \>
 +
 +
un
 +
 +
  ls
 +
 +
oppure un
 +
 +
  pwd
 +
 +
potrete controllare il contenuto e il percorso della cartella public.
 +
 +
 +
=== Scaricare i file in locale via  ===
 +
 +
Posizionatevi nella cartella locale dove volete scaricare il file, poi tramite smbclient <br>
 +
collegatevi al server SAMBA:
 +
 +
  Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.6.6]
 +
  smb: \>
 +
 +
poi utilizzate il comando get scaricate il file :
 +
 +
 +
  Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.6.6]
 +
  smb: \> get nomefile
 +
 +
 +
Tip: nomi con spazi tra "nome cartella", vale anche per altri comandi cd, ls ... <br>
 +
 +
[0] Haider U5000A Powered by Android <br>
 +
[1] https://www.samba.org/ <br>
 +
[2] Attenzione : Pubblica indica una cartella accessibile senza sicurezza in maniera anonima da qualunque periferica !!! <br>
 +
[3] nel nostro caso /home/utente/complete settata in "download-dir" : "/home/utente/complete" <br>
 +
[4] https://wiki.samba.org/index.php/Public_Samba_Server <br>
 +
 +
=Link=
 +
 +
[http://sandspaceship.blogspot.it/2013/09/torrent-and-dlna-station-with-raspberry.html Con Raspberry Pi ] <br>
 +
[https://wiki.debian.org/BitTorrent/Transmission wiki.debian.org] <br>
 +
[https://trac.transmissionbt.com/wiki/EditConfigFiles configuration file] <br>
 +
[https://bugs.launchpad.net/ubuntu/+source/transmission/+bug/1059136 bug] <br>
 +
[http://sourceforge.net/p/azureus/mailman/azureus-commitlog/?viewmonth=201303&viewday=15 bug2] <br>

Versione attuale delle 15:51, 5 gen 2016

Abstract

Spesso le immagini iso e altri software "pesanti" vengono proposti come torrent, un protocollo peer-to-peer (P2P)
che consente la distribuzione e la condivisione di file su Internet Wikipedia Torrent

Esistono molti client uno dei più famosi è Transmission,lo trovate in ogni distribuzione.

Unico problema è che dovete lasciare acceso il vostro PC per tutto il tempo del download.

Soluzione

Sia che recuperiate un vecchio PC (senza interfaccia grafica)
oppure utilizziate un macchina virtuale è consigliabile utilizzare una versione "daemon" del software e sfruttare l'intrinseca interfaccia web.

Prerequisiti

  • Installazione minimale (net-install senza interfaccia grafica) di Debian (o Ubuntu basterà aggiungere sudo ai comando) .
  • accesso alla rete
    • apt-get update
    • apt-get upgrade consigliati
  • un secondo utente oltre a quello di root
  • ssh installato sulla macchina di destinazione

openssh-server - secure shell (SSH) server, for secure access from remote machines

apt-get install openssh-server


Dalla versione 2.0 non è permesso l'accesso in ssh dall'utente root di default. Potete utilizzare un secondo utente e poi assumere il ruolo di root con

su -


Installazione

Collegatevi in ssh, create un secondo utente (es:utente)
Create due folders nella home del utente:

mkdir /home/utente/complete
mkdir /home/utente/incomplete


Da root

apt-get install transmission-daemon

fermiamo il servizio per configurare il demone:

service transmission-daemon stop

editiamo il file di configurazione :

nano /etc/transmission-daemon/settings.json


Andiamo a modificare i seguenti parametri :


 "download-dir" : "/home/utente/complete"
 "incomplete-dir" : "/home/utente/incomplete"
 "incomplete-dir-enabled" : true
 "download-queue-enabled" : false
 "rpc-enabled" : true
 "rpc-password" : "CHOOSE A PASSWORD" <-- password in chiaro, al primo avvio verrà creato l'HASH.
 "rpc-username" : "CHOOSE A USERNAME" <-- secondo utente creato in precedenza.
 "rpc-whitelist-enabled" : false      <-- qualunque richiesta verrà accettata

Security improve

 "rpc-whitelist-enabled" : true
 "rpc-whitelist": "127.0.0.1,192.168.1.*" <-- solo le macchine della rete 192.168.1.* potranno accedere al demone.

inserite un range coerente con la vostra rete.

Avvio Demone

Manuale

service transmission-daemon stop

Automatico all'avvio

update-rc.d transmission-daemon defaults

Accesso web

Per accedere all'interfaccia web aprite il browser :

http://hostname:9091/transmission
http://indirizzoIP:9091/transmission

e utilizzate

username
password

del secondo utente Linux creato in precedenza.

Bug fix

La versione installata se wheezy :

apt-cache policy transmission-daemon
 transmission-daemon:
  Installed: 2.52-3+nmu2
  Candidate: 2.52-3+nmu2
  Version table:
 *** 2.52-3+nmu2 0
       500 http://ftp.debian.org/debian/ wheezy/main i386 Packages
       500 http://security.debian.org/ wheezy/updates/main i386 Packages
       100 /var/lib/dpkg/status

Ha un piccolo bug, non mostra le frecce up & down nell'interfaccia web.

Per risolvere editate il file :

/usr/share/transmission/web/javascript/torrent-row.js

e modificate le righe con un editor

return '↑  ' + Transmission.fmt.speedBps(t.getUploadSpeed());
return '↓  ' + Transmission.fmt.speedBps(t.getDownloadSpeed());

Nota:

 TorrentRendererHelper.formatUL = function(t)
 {
       return '↑ ' + Transmission.fmt.speedBps(t.getUploadSpeed());
 };

 TorrentRendererHelper.formatDL = function(t)
 {
 	return '↓ ' + Transmission.fmt.speedBps(t.getDownloadSpeed());
 };

Condivisione Pubblica

Natale '15 ha portato a casa una SM@RT TV[0].
Questa periferica ha la capacità di fare browser della rete su cartelle SAMBA[1],
quindi ho pensato di fare una piccola aggiunta al server torrent,
rendendo pubblica[2] la cartella relativa[3],

Prendendo spunto dalla documentazione ufficiale [4]

ho installato samba :

 apt-get install samba

Per precauzione ho salvato il file di configurazione originale :

 mv /etc/samba/smb.conf /etc/samba/smb.ori

poi ho creato un nuovo file di configurazione :

 [global]
  map to guest = bad user
 [public]
  path = /home/utente/complete
  guest ok = yes
 [public]
  path = /home/utente/complete
  guest ok = yes
  read only = yes

concludiamo riavviando il demone :

service samba restart


Test della cartella pubblica

 smbclient //server/public -Unot_a_user%foo

dove server è il vostro Torrentserver.

Una risposta simile a questa è di buon auspicio :-)

 Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.6.6]
 smb: \> 

un

 ls

oppure un

 pwd 

potrete controllare il contenuto e il percorso della cartella public.


Scaricare i file in locale via

Posizionatevi nella cartella locale dove volete scaricare il file, poi tramite smbclient
collegatevi al server SAMBA:

 Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.6.6]
 smb: \> 

poi utilizzate il comando get scaricate il file :


 Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.6.6]
 smb: \> get nomefile


Tip: nomi con spazi tra "nome cartella", vale anche per altri comandi cd, ls ...

[0] Haider U5000A Powered by Android
[1] https://www.samba.org/
[2] Attenzione : Pubblica indica una cartella accessibile senza sicurezza in maniera anonima da qualunque periferica !!!
[3] nel nostro caso /home/utente/complete settata in "download-dir" : "/home/utente/complete"
[4] https://wiki.samba.org/index.php/Public_Samba_Server

Link

Con Raspberry Pi
wiki.debian.org
configuration file
bug
bug2