Transmission: differenze tra le versioni

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca
 
(49 versioni intermedie di 4 utenti non mostrate)
Riga 1: Riga 1:
{{Versioni compatibili|Lenny|Squeeze|Wheezy|}}
{{Versioni compatibili}}
== Introduzione ==
== Introduzione ==
{{Warningbox|L'autore di questa guida non si ritiene responsabile degli atti illeciti che dovessero essere compiuti sfruttando gli strumenti qui illustrati, e '''condanna fermamente''' questi usi impropri che mettono in cattiva luce un protocollo per altro eccellente e molto versatile quale è BitTorrent.}}
Transmission è un programma per reti [http://it.wikipedia.org/wiki/BitTorrent BitTorrent] noto per la sua semplicità d'uso e leggerezza; risulta infatti meno complesso di altri programmi quali Azureus/Vuze, a tutto vantaggio della maggior parte degli utenti. Essendo molto diffuso gode inoltre di ottimo supporto.


Transmission è un programma per reti Bittorrent sviluppato inizialmente per Mac. Risulta meno complesso di altri programmi più famosi come Azureus/Vuze, ma a mio avviso questo è un vantaggio per la maggior parte degli utenti; essendo molto diffuso gode inoltre di ottimo supporto.
Esistono due versioni: una completa che accorpa il nucleo del programma e la sua interfaccia in un unica soluzione, ed un'altra che invece permette di installare separatamente nucleo (d'ora in avanti chiamato demone) ed interfaccia. La prima soluzione è quella più diffusa e nota, non essendo graficamente e funzionalmente molto differente da altri programmi come Bittorrent, Bittornado, Azureus/Vuze, ecc.; la seconda invece torna utile a quegli utenti che possiedono un computer sempre acceso e connesso ad internet, come nel caso di un piccolo server casalingo. Spesso si tratta di vecchi computer privi di interfaccia grafica ed amministrati prevalentemente da terminali remoti, oppure di dispositivi nuovissimi ma ultracompatti e a basso consumo energetico, come ad esempio lo [[SheevaPlug]].
 
Esistono due versioni: una completa che accorpa il nucleo del programma e la sua interfaccia in un unica soluzione ed un'altra che invece permette di installare separatamente nucleo (d'ora in avanti chiamato demone) ed interfaccia. La prima soluzione è quella più diffusa e nota, non essendo graficamente e funzionalmente molto differente da altri programmi come Bittorrent, Bittornado, Azureus/Vuze, ecc.; la seconda invece torna generalmente utile a quegli utenti che possiedono un computer sempre (o comunque di frequente) acceso e connesso ad internet, come nel caso di un piccolo server casalingo. Spesso si tratta di vecchi computer privi di interfaccia grafica ed amministrati prevalentemente da terminali remoti, quindi risulta evidente la comodità di poter installare il demone sul server e l'interfaccia grafica su un PC differente dotato di ambiente grafico.


Questa guida copre entrambe le soluzioni.
Questa guida copre entrambe le soluzioni.


== Versione completa ==
== Versione completa ==
=== Installazione ===
=== Installazione ===
C'è davvero poco da dire. Per l'installazione digitare:
C'è davvero poco da dire. Per l'installazione digitare:


<pre># apt-get install transmission</pre>
<pre># apt-get install transmission</pre>


Spulciando i repository si noterà che esistono altri pacchetti dal nome simile, in particolare ''transmission-gtk'' e ''transmission-qt'' sono essenzialmente identici al precedente differenziandosi prevalentemente per il linguaggio e le librerie utilizzate per codificare l'interfaccia grafica.
Spulciando i repository si noterà che esistono altri pacchetti dal nome simile; in particolare ''transmission-gtk'' e ''transmission-qt'' sono essenzialmente identici al precedente, differenziandosi prevalentemente per il linguaggio e le librerie utilizzate per codificare l'interfaccia grafica.


=== Utilizzo ===
=== Utilizzo ===
Per chiunque abbia già un minimo di confidenza ed esperienza con programmi simili non dovrebbe esserci alcun problema di utilizzo; per maggiori informazioni su contenuti aggiuntivi, supporto e quant'altro si faccia riferimento al [http://www.transmissionbt.com/ sito ufficiale] del progetto.


Per chiunque abbia già un minimo di confidenza ed esperienza con programmi simili non dovrebbe esserci alcun problema di utilizzo, in ogni caso per maggiori informazioni su contenuti aggiuntivi, supporto e quant'altro si veda il [http://www.transmissionbt.com/ sito ufficiale] del progetto.
I vari file, compreso quello di configurazione, si trovano nella cartella <code>~/.config/transmission</code>.
 
I vari file, compreso quello di configurazione, si trovano nella cartella ''~/.config/transmission''.


== Versione ridotta (demone) ==
== Versione ridotta (demone) ==
=== Installazione ===
=== Installazione ===
Anche qui l'installazione da repository ufficiale è estremamente semplice:
Anche qui l'installazione da repository ufficiale è estremamente semplice:


Riga 35: Riga 30:


=== Avvio/Arresto ===
=== Avvio/Arresto ===
Per avviare o terminare manualmente il demone è sufficiente digitare da terminale:
Per avviare o terminare manualmente il demone è sufficiente digitare da terminale:


<pre>
<pre>
# /etc/init.d/transmission-daemon start
# systemctl start transmission-daemon
# /etc/init.d/transmission-daemon stop
# systemctl stop transmission-daemon
</pre>
</pre>


=== Configurazione ===
=== Configurazione ===
Tutte le impostazioni sono contenute nel file <code>/etc/transmission-daemon/settings.json</code>, modificabile con qualsiasi editor di testo disponendo dei privilegi di root. Ad esempio:
# nano /etc/transmission-daemon/settings.json


Tutte le impostazioni sono contenute nel file ''/etc/transmission-daemon/settings.json'', pertanto per editarlo da terminale digitare ad esempio:
{{Warningbox|Prima di editare il suddetto file è necessario aver fermato il demone (si veda la precedente sezione), altrimenti tutte le modifiche apportate andranno perse.}}
 
<pre>nano /etc/transmission-daemon/settings.json</pre>


Di seguito un elenco dei parametri di più comune interesse:
Di seguito un elenco dei parametri di più comune interesse:
<pre>
<pre>
"download-dir": "\/var\/lib\/transmission-daemon\/downloads",
"download-dir": "/var/lib/transmission-daemon/downloads",
"umask": 18,
"umask": 18,
"peer-port": 51413,
"peer-port": 51413,
"rpc-enabled": true,
"rpc-enabled": true,
"rpc-authentication-required": false,
"rpc-authentication-required": true,
"rpc-username": "nome_utente_a_scelta",
"rpc-username": "transmission",
"rpc-password": "parola_segreta_a_scelta",
"rpc-password": "{8b97d4640c3102fd903990a86a366624152ac893rhUob1OT",
"rpc-port": 9091,
"rpc-port": 9091,
"rpc-whitelist-enabled": true,
"rpc-whitelist-enabled": true,
"rpc-whitelist": "127.0.0.1",
"rpc-whitelist": "127.0.0.1",
"speed-limit-down": 600,
"speed-limit-down-enabled": false,
"speed-limit-down-enabled": true,
"speed-limit-up-enabled": false,
"speed-limit-up": 42,
"speed-limit-down": 100,
"speed-limit-up-enabled": true,  
"speed-limit-up": 100,
</pre>
</pre>


*  ''download-dir'', come facilmente intuibile definisce la posizione dove verranno salvati di default i file scaricati. Si noti che diversamente da altri programmi ''transmission-daemon'' ha una propria utenza associata, ovvero ''debian-transmission'', quindi è necessario che qualsiasi cartella specificata dall'utente diversa da quella standard sia leggibile e scrivibile dalla suddetta utenza; in caso contrario risulterà impossibile il download dei vari file.
*  ''download-dir'', come facilmente intuibile definisce la posizione dove verranno salvati di default i file scaricati. Si noti che diversamente da altri programmi ''transmission-daemon'' ha una propria utenza associata, ovvero ''debian-transmission'', quindi è necessario che qualsiasi cartella specificata dall'utente diversa da quella standard sia leggibile e scrivibile dalla suddetta utenza; in caso contrario risulterà impossibile il download dei vari file.
* ''umask'', definisce i permessi con cui saranno creati i file. Si noti che il valore deve essere espresso in base 10 e non in base 8, ad esempio 022 = 18 e 002 = 2;
* ''umask'', definisce i permessi con cui saranno creati i file. Si noti che il valore deve essere espresso in base 10 e non in base 8; ad esempio 022 va scritto come 18 in <code>settings.json</code>, e 002 come 2.
* ''peer-port'', è la porta che deve essere aperta sul router e/o sul firewall (se li avete) perché il trasferimento dati avvenga senza rallentamenti sistematici (dovuti proprio al router e/o al firewall). È possibile indicare un valore qualsiasi (al massimo 65535), tuttavia assicurarsi di non scegliere un numero di porta già usato da qualche altro applicativo (tipicamente oltre il 10000 è quasi impossibile beccare una porta già usata).
* ''peer-port'', è la porta (TCP) che deve essere aperta sul router e/o sul firewall (se li avete) perché il trasferimento dati avvenga senza rallentamenti sistematici (dovuti proprio al router e/o al firewall). È possibile indicare un valore qualsiasi (al massimo 65535), tuttavia assicurarsi di non scegliere un numero di porta già usato da qualche altro applicativo (tipicamente oltre il 10000 è quasi impossibile beccare una porta già usata).
* ''rpc-authentication-required'', definisce se per usare (e non per avviare) il programma saranno richiesti username e password; se il parametro vale "true" allora saranno richiesti username e password per poter usare il demone, viceversa digitando "false" non sarà richiesto nulla (quindi chiunque potrà accedere ed amministrare il demone).
* ''rpc-enabled'', definisce se il demone può ("true") o meno ("false") essere controllato da remoto, cioè in pratica se può essere usato o meno...
* ''rpc-enabled'', definisce se il demone può ("true") o meno ("false") essere controllato da remoto, cioè in pratica se può essere usato o meno...
* Qualora si sia abilitata l'autenticazione all'accesso, ''rpc-username'' e ''rpc-password'' definiscono le credenziali che l'utente dovrà inserire quando tenterà di usare il demone. Si noti che la password inserita verrà visualizzata in chiaro solo finché l'utente non chiude l'editor testuale, in seguito questa verrà visualizzata sempre criptata (almeno finché l'utente non la cambia).
* ''rpc-authentication-required'', definisce se per usare (e non per avviare) il programma saranno richiesti username e password. Se il parametro vale "true" allora saranno richiesti username e password (impostati di default con "transmission" sia come login che come password) per poter usare il demone; viceversa digitando "false" non sarà richiesto nulla (quindi chiunque potrà accedere ed amministrare il demone).
* ''rpc-port'', definisce il numero di porta attraverso cui è possibile controllare il demone usando le varie interfacce.
* ''rpc-username'' e ''rpc-password'' definiscono le credenziali che l'utente dovrà inserire quando tenterà di usare il demone (qualora si sia abilitata l'autenticazione all'accesso). La nuova password va semplicemente scritta in chiaro tra virgolette; al primo avvio del demone, verrà automaticamente criptata (iniziarà con una graffa). Per comprendere l'algoritmo utilizzato si veda il box di approfondimento qui sotto.
* ''rpc-port'', definisce il numero di porta (TCP) attraverso cui è possibile controllare il demone usando le varie interfacce.
* ''rpc-whitelist-enabled'' definisce se limitare o meno l'accesso al demone in base all'indirizzo IP. Impostando "false" chiunque potrà tentare di usare il demone; impostando "true" il demone permetterà l'autenticazione solo agli utenti i cui indirizzi IP sono specificati in un'apposita lista (vedere punto seguente). Si badi che se questo parametro e "rpc-authentication-required" sono impostati entrambi su "false" allora chiunque potrà usare il demone, viceversa se entrambi sono impostati su "true", allora potranno usare il demone solo quegli utenti che conoscono la giusta combinazione username/password e che inoltre sono identificati da un indirizzo IP permesso.
* ''rpc-whitelist-enabled'' definisce se limitare o meno l'accesso al demone in base all'indirizzo IP. Impostando "false" chiunque potrà tentare di usare il demone; impostando "true" il demone permetterà l'autenticazione solo agli utenti i cui indirizzi IP sono specificati in un'apposita lista (vedere punto seguente). Si badi che se questo parametro e "rpc-authentication-required" sono impostati entrambi su "false" allora chiunque potrà usare il demone, viceversa se entrambi sono impostati su "true", allora potranno usare il demone solo quegli utenti che conoscono la giusta combinazione username/password e che inoltre sono identificati da un indirizzo IP permesso.
* ''rpc-whitelist'' definisce gli indirizzi IP da cui è possibile usare il demone; il valore standard 127.0.0.1 indica che sarà possibile usare il demone solo attraverso interfacce installate sullo stesso computer del demone. Per indicare più indirizzi IP è sufficiente separare gli indirizzi con uno spazio, ad esempio "127.0.0.1 192.168.0.43 212.65.33.112 ...".
* ''rpc-whitelist'' definisce gli indirizzi IP da cui è possibile usare il demone; il valore di default 127.0.0.1 (localhost) indica che sarà possibile usare il demone solo attraverso interfacce installate sullo stesso computer del demone. Per indicare più indirizzi IP è sufficiente separare gli indirizzi con una virgola; è possibile usare il [http://it.wikipedia.org/wiki/Metacarattere carattere jolly] "*". Esempio: "127.0.0.1,192.168.0.*".
* ''speed-limit-down-enabled'' e ''speed-limit-up'' definiscono se il demone deve abilitare i limiti rispettivamente delle velocità di ricezione ed invio.
* ''speed-limit-down-enabled'' e ''speed-limit-up-enabled'' definiscono se il demone deve abilitare i limiti rispettivamente delle velocità di ricezione ed invio.
* ''speed-limit-down'' e ''speed-limit-up'' definiscono le velocità limite in kB/s delle velocità di invio e ricezione qualora abilitate (vedere punto precedente).
* ''speed-limit-down'' e ''speed-limit-up'' definiscono le velocità limite in kB/s delle velocità di invio e ricezione qualora abilitate (vedere punto precedente).


Per un elenco esaustivo dei parametri si veda [https://trac.transmissionbt.com/wiki/ConfigurationParameters questa pagina].
{{Box|rpc-password|La stringa criptata è composta semplicemente da
* una parentesi graffa aperta;
* l'hash [http://it.wikipedia.org/wiki/Secure_Hash_Algorithm#SHA-0_e_SHA-1 SHA-1] della password scelta concatenata ad un [https://it.wikipedia.org/wiki/Sale_(crittografia) sale] casuale da 8 byte in una [https://it.wikipedia.org/wiki/Base64 Base64] non standard (al posto del "<code>+</code>" c'è il "<code>.</code>");
* gli otto caratteri del sale.
 
A scopo didattico, è possibile calcolare l'hash in questo modo, utilizzando la password di default ("<code>transmission</code>") e il sale preso dall'esempio precedente ("<code>rhUob1OT</code>"):
<pre>$ echo -n "transmissionrhUob1OT" | sha1sum
8b97d4640c3102fd903990a86a366624152ac893  -</pre>}}
 
 
Per un elenco esaustivo dei parametri si veda [https://github.com/transmission/transmission/wiki/Editing-Configuration-Files#options questa pagina].
 
=== Esempio ===
Di seguito è riportato un file di configurazione che permette l'accesso da tutti i computer della propria LAN (in questo caso con indirizzo <code>192.168.0.X</code>), tramite un nuovo login e una nuova password; vengono inoltre impostate le velocità limite sia in download che in upload. Le righe modificate sono evidenziate in grassetto.
{
    "alt-speed-down": 50,
    "alt-speed-enabled": false,
    "alt-speed-time-begin": 540,
    "alt-speed-time-day": 127,
    "alt-speed-time-enabled": false,
    "alt-speed-time-end": 1020,
    "alt-speed-up": 50,
    "bind-address-ipv4": "0.0.0.0",
    "bind-address-ipv6": "::",
    "blocklist-enabled": false,
    "dht-enabled": true,
    "download-dir": "/var/lib/transmission-daemon/downloads",
    "download-limit": 100,
    "download-limit-enabled": 0,
    "encryption": 1,
    "incomplete-dir": "/root/Downloads",
    "incomplete-dir-enabled": false,
    "lazy-bitfield-enabled": true,
    "lpd-enabled": false,
    "max-peers-global": 200,
    "message-level": 2,
    "open-file-limit": 32,
    "peer-limit-global": 240,
    "peer-limit-per-torrent": 60,
    "peer-port": 51413,
    "peer-port-random-high": 65535,
    "peer-port-random-low": 49152,
    "peer-port-random-on-start": false,
    "peer-socket-tos": 0,
    "pex-enabled": true,
    "port-forwarding-enabled": false,
    "preallocation": 1,
    "proxy": "",
    "proxy-auth-enabled": false,
    "proxy-auth-password": "",
    "proxy-auth-username": "",
    "proxy-enabled": false,
    "proxy-port": 80,
    "proxy-type": 0,
    "ratio-limit": 2.0000,
    "ratio-limit-enabled": false,
    "rename-partial-files": true,
    "rpc-authentication-required": true,
    "rpc-bind-address": "0.0.0.0",
    "rpc-enabled": true,
    '''"rpc-password": "nuova_password", '''
    "rpc-port": 9091,
    '''"rpc-username": "nuovo_login", '''
    '''"rpc-whitelist": "127.0.0.1,192.168.0.*", '''
    "rpc-whitelist-enabled": true,
    "script-torrent-done-enabled": false,
    "script-torrent-done-filename": "",
    '''"speed-limit-down": 600, '''
    '''"speed-limit-down-enabled": true, '''
    '''"speed-limit-up": 42, '''
    '''"speed-limit-up-enabled": true, '''
    "start-added-torrents": true,
    "trash-original-torrent-files": false,
    "umask": 18,
    "upload-limit": 100,
    "upload-limit-enabled": 0,
    "upload-slots-per-torrent": 14
}


== Interfacce ==
== Interfacce ==
 
Di base insieme al demone viene fornita sia un'interfaccia grafica web che una testuale (quest'ultima inclusa anche nella versione completa), tuttavia esistono svariate altre interfacce per amministrare il demone di Transmission, come facilmente verificabile [http://www.transmissionbt.com/resources/ qui].
Di base insieme al demone viene fornita sia un interfaccia grafica web che una testuale (quest'ultima inclusa anche nella versione completa), tuttavia esistono svariate altre interfacce per amministrare il demone di Transmission, come facilmente verificabile [http://www.transmissionbt.com/resources/ qui].
L'interfaccia grafica ''transgui'' è disponibile anche nei repository ufficiali Debian.
L'interfaccia grafica ''transgui'' è disponibile anche nel repository testing.


=== Transmission-Remote ===
=== Transmission-Remote ===
È l'interfaccia testuale fornita sia col demone che con la versione completa. La sintassi per usare un demone è:
È l'interfaccia testuale fornita sia col demone che con la versione completa. La sintassi per usare un demone è:
<pre>transmission-remote ''indirizzo_ip:porta'' -n ''user_name'':''password'' ''comando''</pre>
<pre>transmission-remote ''indirizzo_ip:porta'' -n ''user_name'':''password'' ''comando''</pre>


Omettendo di specificare ''indirizzo_ip:porta'' il programma assume come valori quelli standard, ovvero ''localhost:9091''. Di seguito un paio di esempi:
Omettendo di specificare ''indirizzo_ip:porta'' il programma assume come valori quelli standard, ovvero ''localhost:9091''. Di seguito un paio di esempi.


Aggiungere un file:
Aggiungere un file:
Riga 101: Riga 168:
<pre>transmission-remote -n user_name:password -l</pre>
<pre>transmission-remote -n user_name:password -l</pre>


Si noti che è possibile gestire l'autenticazione anche tramite un apposito file di configurazione, si veda a tal proposito il manuale dell'applicativo.
Si noti che è possibile gestire l'autenticazione anche tramite un apposito file di configurazione; si veda a tal proposito il manuale dell'applicativo.


=== Transmission-Remote-GUI ===
=== Transmission-Remote-GUI ===
Per installarla digitare:
<pre># apt-get install transgui</pre>


Non c'è molto da dire, per installarla dal repository testing (ipotizzato che l'utente vi abbia accesso) digitare:
Al primo avvio verrà proposta una finestra in cui si chiedono indirizzo IP (non è detto che l'uso di alias funzioni), porta, username e password. Se i dati inseriti sono corretti l'utente si ritroverà davanti una finestra molto simile a quella degli altri client P2P.


<pre># apt-get install transgui</pre>
Il file di configurazione dell'interfaccia si trova nella cartella <code>~/.config/Transmission Remote GUI</code>.


Al primo avvio (in GNOME la relativa icona viene creata nel sottomenù internet) verrà proposta una finestra in cui si chiedono indirizzo IP (non è detto che l'uso di alias funzioni), porta, username e password. Se i dati inseriti sono corretti l'utente si ritroverà davanti una finestra molto simile a quella degli altri client P2P.
=== Web ===
Uno dei metodi supportati di default per gestire transmission-daemon è quello via browser; per accedere alla finestra di gestione del demone è sufficiente digitare nella barra degli indirizzi <code><nowiki>http://indirizzo_pc:porta</nowiki></code>, dove con "indirizzo_pc" si intende l'indirizzo IP del PC su cui è installato il demone e con "porta" quella specificata nel file di configurazione alla voce ''rpc-port''. Quindi, nell'ipotesi di un utente che voglia accedere a Transmission usando il PC su cui è stato installato il demone, è necessario puntare il proprio browsaer all'indirizzo <code><nowiki>http://127.0.0.1:9091</nowiki></code>, o equivalentemente all'indirizzo <code><nowiki>http://localhost:9091</nowiki></code>.


Il file di configurazione dell'interfaccia si trova nella cartella ''~/.config/Transmission Remote GUI''.
Dando per scontato che il demone sia avviato e correttamente funzionante, qualora ''rpc-authentication-required'' sia stato impostato su "false" comparirà immediatamente la schermata di gestione; in caso contrario comparirà la finestrella di autenticazione in cui inserire username e password.


=== Web ===
Per chi già conosce Transmission su desktop, l'uso è davvero semplicissimo. È sufficientemente esplorare l'interfaccia grafica per trovarsi a proprio agio.


Uno dei metodi supportati di default per gestire transmission-daemon è quello via browser; per accedere alla finestra di gestione del demone è sufficiente digitare nella barra degli indirizzi ''http://indirizzo_pc:porta'', dove con indirizzo_pc si intende l'indirizzo IP del PC su cui è installato il demone e con porta quella specificata nel file di configurazione alla voce ''rpc-port''. Quindi nell'ipotesi di un utente che voglia accedere a transmission usando il PC su cui è stato installato il demone è necessario digitare ''http://127.0.0.1:9091'' o equivalentemente ''http://localhost:9091".<br/>
Ecco, ad esempio, come fare per scaricare le immagini dei CD di installazione di Debian stabile.
Se il demone è avviato e correttamente funzionante comparirà immediatamente la schermata di gestione qualora "rpc-authentication-required" sia stato impostato su false, in caso contrario comparirà la finestrella di autenticazione in cui inserire username e password.
#trovare il link al file .torrent desiderato partendo da [http://www.debian.org/CD/torrent-cd/ questa pagina], facendo attenzione all'architettura
#copiare l'URL
#cliccare su "Open"
#incollare l'URL
#cliccare su "Upload"
#ripetere dal punto 1 per ogni immagine ISO che ci interessa
#attendere la fine dello scaricamento


== AutoTrans ==
Come previsto dal file di configurazione, troveremo i nostri file nella directory <code>/var/lib/transmission-daemon/downloads</code>.


=== AutoTrans ===
È un interessante plug-in per Firefox che una volta configurato permette di aggiungere i torrent al demone semplicemente cliccando col tasto destro del mouse su un collegamento torrent e selezionando poi dal menù contestuale la voce ''Torrent it!''. Disponibile a [https://addons.mozilla.org/en-US/firefox/addon/autotrans/ questa pagina].
È un interessante plug-in per Firefox che una volta configurato permette di aggiungere i torrent al demone semplicemente cliccando col tasto destro del mouse su un collegamento torrent e selezionando poi dal menù contestuale la voce ''Torrent it!''. Disponibile a [https://addons.mozilla.org/en-US/firefox/addon/autotrans/ questa pagina].


== Firewall/Router ==
== Firewall/Router ==
 
{{ Warningbox | Il computer su cui è in esecuzione Transmission, versione completa o demone non fa differenza, deve avere un indirizzo IP statico interno alla LAN, in modo da reindirizzare correttamente le porte necessarie sul modem-router usato per connettersi ad internet.}}
{{ Warningbox | il computer su cui è in esecuzione Transmission, versione completa o demone non fa differenza, deve avere un indirizzo IP statico nel caso si usi un modem-router per connettersi a internet}}


Le porte che devono essere aperte su un router e/o sul firewall del computer su cui è in esecuzione Transmission sono tipicamente:
Le porte che devono essere aperte su un router e/o sul firewall del computer su cui è in esecuzione Transmission sono tipicamente:


* ''peer-port'', tipo ''TCP'' (forse anche UDP).
* ''peer-port'', tipo ''TCP'';
* ''rpc-port'', tipo ''TCP''.
* ''rpc-port'', tipo ''TCP''.


Se la prima è bloccata si scaricherà molto lentamente sia che si usi la versione completa che quella ridotta.
Se la prima è bloccata si scaricherà molto lentamente, sia che si usi la versione completa che quella ridotta.
L'ultima porta riguarda di norma solo il demone: se bloccata non ci saranno problemi ad amministrare ''transmission-daemon'' fintanto che vi si connette dall'interno della propria LAN; al contrario risulterà impossibile connettersi al demone dall'esterno della propria LAN, quindi sarà impossibile amministrarlo (ma ''transmission-daemon'' di per se funzionerà normalmente, ovvero continuerà a scaricare ed inviare i file già in elenco).
L'altra porta riguarda di norma solo il demone: se bloccata non ci saranno problemi ad amministrare ''transmission-daemon'' fintanto che ci si connette dall'interno della propria LAN; al contrario risulterà impossibile connettersi al demone dall'esterno della propria LAN, e sarà quindi impossibile amministrarlo (ma ''transmission-daemon'' di per funzionerà normalmente, ovvero continuerà a scaricare ed inviare i file già in elenco).
 
Se il firewall blocca il traffico in uscita verso Internet, occorrerà infine aprire anche le porte usate per connettersi ai [https://it.wikipedia.org/wiki/BitTorrent_tracker tracker]; tra le più diffuse ci sono la 1337 e la 6969, entrambe ''UDP'', ma conviene verificare di volta in volta nella scheda "Tracker" dell'interfaccia di Transmission utilizzata, nel caso si riscontrasse una mancata connessione.


In questa guida non ci si occupa di come configurare correttamente un firewall/router poiché la procedura è variabile in base al prodotto usato. L'utente dovrà quindi eventualmente cercare altrove una guida per aprire e reindirizzare correttamente le connessioni necessarie verso la macchina su cui è in esecuzione il demone.
In questa guida non ci si occupa di come configurare correttamente un firewall/router poiché la procedura varia in base al prodotto usato. L'utente dovrà quindi eventualmente cercare altrove una guida per aprire e reindirizzare correttamente le connessioni necessarie verso la macchina su cui è in esecuzione il demone.
Come punto di partenza si può utilizzare questa [http://www.emule.it/guida_emule/config_porte/routers.asp Guida].
Come punto di partenza si può utilizzare [http://www.emule.it/guida_emule/config_porte/routers.asp questa guida].


== Approfondimenti ==
== Approfondimenti ==
=== Sitografia ===
=== Sitografia ===
* [http://www.transmissionbt.com/ Sito ufficiale].
* [http://www.transmissionbt.com/ Sito ufficiale]
* [https://trac.transmissionbt.com/wiki/ConfigFiles Pagina] dedicata ai file di configurazione.
* [https://trac.transmissionbt.com/wiki/ConfigFiles Pagina] dedicata ai file di configurazione
* [https://trac.transmissionbt.com/wiki/ConfigurationParameters Parametri] di configurazione.
* [https://trac.transmissionbt.com/wiki/ConfigurationParameters Parametri] di configurazione
* [http://www.transmissionbt.com/resources/ Interfacce ed addons].
* [http://www.transmissionbt.com/resources/ Interfacce ed addons]
* [http://www.emule.it/guida_emule/config_porte/routers.asp Guida] alla configurazione di porte dati per svariati router in commercio. &Egrave; comunque imprescindibile fare riferimento al manuale istruzioni specifico del proprio router.
* [http://www.emule.it/guida_emule/config_porte/routers.asp Guida] alla configurazione di porte dati per svariati router in commercio; è comunque imprescindibile fare riferimento al manuale istruzioni specifico del proprio router


{{Autori
{{Autori
|Autore = [[Utente:Wtf|Wtf]] 23:08, 30 mag 2011 (CEST)
|Autore = [[Utente:Stemby|Stemby]]
|Verificata_da=
:[[Utente:Wtf|Wtf]] 23:08, 30 mag 2011 (CEST)
|Estesa_da =
:[[Utente:Wtf|Wtf]] 23:08, 30 mag 2011 (CEST)
|Numero_revisori=1
}}
}}


[[Categoria: File sharing]]
[[Categoria: File sharing]]
[[Categoria: Peer to Peer]]
[[Categoria: Peer to Peer]]

Versione attuale delle 17:23, 20 ago 2023

Debian-swirl.png Versioni Compatibili

Tutte le versioni supportate di Debian

Introduzione

Warning.png ATTENZIONE
L'autore di questa guida non si ritiene responsabile degli atti illeciti che dovessero essere compiuti sfruttando gli strumenti qui illustrati, e condanna fermamente questi usi impropri che mettono in cattiva luce un protocollo per altro eccellente e molto versatile quale è BitTorrent.


Transmission è un programma per reti BitTorrent noto per la sua semplicità d'uso e leggerezza; risulta infatti meno complesso di altri programmi quali Azureus/Vuze, a tutto vantaggio della maggior parte degli utenti. Essendo molto diffuso gode inoltre di ottimo supporto.

Esistono due versioni: una completa che accorpa il nucleo del programma e la sua interfaccia in un unica soluzione, ed un'altra che invece permette di installare separatamente nucleo (d'ora in avanti chiamato demone) ed interfaccia. La prima soluzione è quella più diffusa e nota, non essendo graficamente e funzionalmente molto differente da altri programmi come Bittorrent, Bittornado, Azureus/Vuze, ecc.; la seconda invece torna utile a quegli utenti che possiedono un computer sempre acceso e connesso ad internet, come nel caso di un piccolo server casalingo. Spesso si tratta di vecchi computer privi di interfaccia grafica ed amministrati prevalentemente da terminali remoti, oppure di dispositivi nuovissimi ma ultracompatti e a basso consumo energetico, come ad esempio lo SheevaPlug.

Questa guida copre entrambe le soluzioni.

Versione completa

Installazione

C'è davvero poco da dire. Per l'installazione digitare:

# apt-get install transmission

Spulciando i repository si noterà che esistono altri pacchetti dal nome simile; in particolare transmission-gtk e transmission-qt sono essenzialmente identici al precedente, differenziandosi prevalentemente per il linguaggio e le librerie utilizzate per codificare l'interfaccia grafica.

Utilizzo

Per chiunque abbia già un minimo di confidenza ed esperienza con programmi simili non dovrebbe esserci alcun problema di utilizzo; per maggiori informazioni su contenuti aggiuntivi, supporto e quant'altro si faccia riferimento al sito ufficiale del progetto.

I vari file, compreso quello di configurazione, si trovano nella cartella ~/.config/transmission.

Versione ridotta (demone)

Installazione

Anche qui l'installazione da repository ufficiale è estremamente semplice:

# apt-get install transmission-daemon

Si noti che di base la procedura d'installazione predispone il demone per l'avvio automatico durante il boot del computer.

Avvio/Arresto

Per avviare o terminare manualmente il demone è sufficiente digitare da terminale:

# systemctl start transmission-daemon
# systemctl stop transmission-daemon

Configurazione

Tutte le impostazioni sono contenute nel file /etc/transmission-daemon/settings.json, modificabile con qualsiasi editor di testo disponendo dei privilegi di root. Ad esempio:

# nano /etc/transmission-daemon/settings.json
Warning.png ATTENZIONE
Prima di editare il suddetto file è necessario aver fermato il demone (si veda la precedente sezione), altrimenti tutte le modifiche apportate andranno perse.


Di seguito un elenco dei parametri di più comune interesse:

"download-dir": "/var/lib/transmission-daemon/downloads",
"umask": 18,
"peer-port": 51413,
"rpc-enabled": true,
"rpc-authentication-required": true,
"rpc-username": "transmission",
"rpc-password": "{8b97d4640c3102fd903990a86a366624152ac893rhUob1OT",
"rpc-port": 9091,
"rpc-whitelist-enabled": true,
"rpc-whitelist": "127.0.0.1",
"speed-limit-down-enabled": false,
"speed-limit-up-enabled": false,
"speed-limit-down": 100,
"speed-limit-up": 100,
  • download-dir, come facilmente intuibile definisce la posizione dove verranno salvati di default i file scaricati. Si noti che diversamente da altri programmi transmission-daemon ha una propria utenza associata, ovvero debian-transmission, quindi è necessario che qualsiasi cartella specificata dall'utente diversa da quella standard sia leggibile e scrivibile dalla suddetta utenza; in caso contrario risulterà impossibile il download dei vari file.
  • umask, definisce i permessi con cui saranno creati i file. Si noti che il valore deve essere espresso in base 10 e non in base 8; ad esempio 022 va scritto come 18 in settings.json, e 002 come 2.
  • peer-port, è la porta (TCP) che deve essere aperta sul router e/o sul firewall (se li avete) perché il trasferimento dati avvenga senza rallentamenti sistematici (dovuti proprio al router e/o al firewall). È possibile indicare un valore qualsiasi (al massimo 65535), tuttavia assicurarsi di non scegliere un numero di porta già usato da qualche altro applicativo (tipicamente oltre il 10000 è quasi impossibile beccare una porta già usata).
  • rpc-enabled, definisce se il demone può ("true") o meno ("false") essere controllato da remoto, cioè in pratica se può essere usato o meno...
  • rpc-authentication-required, definisce se per usare (e non per avviare) il programma saranno richiesti username e password. Se il parametro vale "true" allora saranno richiesti username e password (impostati di default con "transmission" sia come login che come password) per poter usare il demone; viceversa digitando "false" non sarà richiesto nulla (quindi chiunque potrà accedere ed amministrare il demone).
  • rpc-username e rpc-password definiscono le credenziali che l'utente dovrà inserire quando tenterà di usare il demone (qualora si sia abilitata l'autenticazione all'accesso). La nuova password va semplicemente scritta in chiaro tra virgolette; al primo avvio del demone, verrà automaticamente criptata (iniziarà con una graffa). Per comprendere l'algoritmo utilizzato si veda il box di approfondimento qui sotto.
  • rpc-port, definisce il numero di porta (TCP) attraverso cui è possibile controllare il demone usando le varie interfacce.
  • rpc-whitelist-enabled definisce se limitare o meno l'accesso al demone in base all'indirizzo IP. Impostando "false" chiunque potrà tentare di usare il demone; impostando "true" il demone permetterà l'autenticazione solo agli utenti i cui indirizzi IP sono specificati in un'apposita lista (vedere punto seguente). Si badi che se questo parametro e "rpc-authentication-required" sono impostati entrambi su "false" allora chiunque potrà usare il demone, viceversa se entrambi sono impostati su "true", allora potranno usare il demone solo quegli utenti che conoscono la giusta combinazione username/password e che inoltre sono identificati da un indirizzo IP permesso.
  • rpc-whitelist definisce gli indirizzi IP da cui è possibile usare il demone; il valore di default 127.0.0.1 (localhost) indica che sarà possibile usare il demone solo attraverso interfacce installate sullo stesso computer del demone. Per indicare più indirizzi IP è sufficiente separare gli indirizzi con una virgola; è possibile usare il carattere jolly "*". Esempio: "127.0.0.1,192.168.0.*".
  • speed-limit-down-enabled e speed-limit-up-enabled definiscono se il demone deve abilitare i limiti rispettivamente delle velocità di ricezione ed invio.
  • speed-limit-down e speed-limit-up definiscono le velocità limite in kB/s delle velocità di invio e ricezione qualora abilitate (vedere punto precedente).
Info.png rpc-password
La stringa criptata è composta semplicemente da
  • una parentesi graffa aperta;
  • l'hash SHA-1 della password scelta concatenata ad un sale casuale da 8 byte in una Base64 non standard (al posto del "+" c'è il ".");
  • gli otto caratteri del sale.

A scopo didattico, è possibile calcolare l'hash in questo modo, utilizzando la password di default ("transmission") e il sale preso dall'esempio precedente ("rhUob1OT"):

$ echo -n "transmissionrhUob1OT" | sha1sum 
8b97d4640c3102fd903990a86a366624152ac893  -


Per un elenco esaustivo dei parametri si veda questa pagina.

Esempio

Di seguito è riportato un file di configurazione che permette l'accesso da tutti i computer della propria LAN (in questo caso con indirizzo 192.168.0.X), tramite un nuovo login e una nuova password; vengono inoltre impostate le velocità limite sia in download che in upload. Le righe modificate sono evidenziate in grassetto.

{
    "alt-speed-down": 50, 
    "alt-speed-enabled": false, 
    "alt-speed-time-begin": 540, 
    "alt-speed-time-day": 127, 
    "alt-speed-time-enabled": false, 
    "alt-speed-time-end": 1020, 
    "alt-speed-up": 50, 
    "bind-address-ipv4": "0.0.0.0", 
    "bind-address-ipv6": "::", 
    "blocklist-enabled": false, 
    "dht-enabled": true, 
    "download-dir": "/var/lib/transmission-daemon/downloads", 
    "download-limit": 100, 
    "download-limit-enabled": 0, 
    "encryption": 1, 
    "incomplete-dir": "/root/Downloads", 
    "incomplete-dir-enabled": false, 
    "lazy-bitfield-enabled": true, 
    "lpd-enabled": false, 
    "max-peers-global": 200, 
    "message-level": 2, 
    "open-file-limit": 32, 
    "peer-limit-global": 240, 
    "peer-limit-per-torrent": 60, 
    "peer-port": 51413, 
    "peer-port-random-high": 65535, 
    "peer-port-random-low": 49152, 
    "peer-port-random-on-start": false, 
    "peer-socket-tos": 0, 
    "pex-enabled": true, 
    "port-forwarding-enabled": false, 
    "preallocation": 1, 
    "proxy": "", 
    "proxy-auth-enabled": false, 
    "proxy-auth-password": "", 
    "proxy-auth-username": "", 
    "proxy-enabled": false, 
    "proxy-port": 80, 
    "proxy-type": 0, 
    "ratio-limit": 2.0000, 
    "ratio-limit-enabled": false, 
    "rename-partial-files": true, 
    "rpc-authentication-required": true, 
    "rpc-bind-address": "0.0.0.0", 
    "rpc-enabled": true, 
    "rpc-password": "nuova_password", 
    "rpc-port": 9091, 
    "rpc-username": "nuovo_login", 
    "rpc-whitelist": "127.0.0.1,192.168.0.*", 
    "rpc-whitelist-enabled": true, 
    "script-torrent-done-enabled": false, 
    "script-torrent-done-filename": "", 
    "speed-limit-down": 600, 
    "speed-limit-down-enabled": true, 
    "speed-limit-up": 42, 
    "speed-limit-up-enabled": true, 
    "start-added-torrents": true, 
    "trash-original-torrent-files": false, 
    "umask": 18, 
    "upload-limit": 100, 
    "upload-limit-enabled": 0, 
    "upload-slots-per-torrent": 14
}

Interfacce

Di base insieme al demone viene fornita sia un'interfaccia grafica web che una testuale (quest'ultima inclusa anche nella versione completa), tuttavia esistono svariate altre interfacce per amministrare il demone di Transmission, come facilmente verificabile qui. L'interfaccia grafica transgui è disponibile anche nei repository ufficiali Debian.

Transmission-Remote

È l'interfaccia testuale fornita sia col demone che con la versione completa. La sintassi per usare un demone è:

transmission-remote ''indirizzo_ip:porta'' -n ''user_name'':''password'' ''comando''

Omettendo di specificare indirizzo_ip:porta il programma assume come valori quelli standard, ovvero localhost:9091. Di seguito un paio di esempi.

Aggiungere un file:

transmission-remote -n user_name:password -a nome_file.torrent

Visualizzare l'elenco dei file attivi:

transmission-remote -n user_name:password -l

Si noti che è possibile gestire l'autenticazione anche tramite un apposito file di configurazione; si veda a tal proposito il manuale dell'applicativo.

Transmission-Remote-GUI

Per installarla digitare:

# apt-get install transgui

Al primo avvio verrà proposta una finestra in cui si chiedono indirizzo IP (non è detto che l'uso di alias funzioni), porta, username e password. Se i dati inseriti sono corretti l'utente si ritroverà davanti una finestra molto simile a quella degli altri client P2P.

Il file di configurazione dell'interfaccia si trova nella cartella ~/.config/Transmission Remote GUI.

Web

Uno dei metodi supportati di default per gestire transmission-daemon è quello via browser; per accedere alla finestra di gestione del demone è sufficiente digitare nella barra degli indirizzi http://indirizzo_pc:porta, dove con "indirizzo_pc" si intende l'indirizzo IP del PC su cui è installato il demone e con "porta" quella specificata nel file di configurazione alla voce rpc-port. Quindi, nell'ipotesi di un utente che voglia accedere a Transmission usando il PC su cui è stato installato il demone, è necessario puntare il proprio browsaer all'indirizzo http://127.0.0.1:9091, o equivalentemente all'indirizzo http://localhost:9091.

Dando per scontato che il demone sia avviato e correttamente funzionante, qualora rpc-authentication-required sia stato impostato su "false" comparirà immediatamente la schermata di gestione; in caso contrario comparirà la finestrella di autenticazione in cui inserire username e password.

Per chi già conosce Transmission su desktop, l'uso è davvero semplicissimo. È sufficientemente esplorare l'interfaccia grafica per trovarsi a proprio agio.

Ecco, ad esempio, come fare per scaricare le immagini dei CD di installazione di Debian stabile.

  1. trovare il link al file .torrent desiderato partendo da questa pagina, facendo attenzione all'architettura
  2. copiare l'URL
  3. cliccare su "Open"
  4. incollare l'URL
  5. cliccare su "Upload"
  6. ripetere dal punto 1 per ogni immagine ISO che ci interessa
  7. attendere la fine dello scaricamento

Come previsto dal file di configurazione, troveremo i nostri file nella directory /var/lib/transmission-daemon/downloads.

AutoTrans

È un interessante plug-in per Firefox che una volta configurato permette di aggiungere i torrent al demone semplicemente cliccando col tasto destro del mouse su un collegamento torrent e selezionando poi dal menù contestuale la voce Torrent it!. Disponibile a questa pagina.

Firewall/Router

Warning.png ATTENZIONE
Il computer su cui è in esecuzione Transmission, versione completa o demone non fa differenza, deve avere un indirizzo IP statico interno alla LAN, in modo da reindirizzare correttamente le porte necessarie sul modem-router usato per connettersi ad internet.


Le porte che devono essere aperte su un router e/o sul firewall del computer su cui è in esecuzione Transmission sono tipicamente:

  • peer-port, tipo TCP;
  • rpc-port, tipo TCP.

Se la prima è bloccata si scaricherà molto lentamente, sia che si usi la versione completa che quella ridotta. L'altra porta riguarda di norma solo il demone: se bloccata non ci saranno problemi ad amministrare transmission-daemon fintanto che ci si connette dall'interno della propria LAN; al contrario risulterà impossibile connettersi al demone dall'esterno della propria LAN, e sarà quindi impossibile amministrarlo (ma transmission-daemon di per sé funzionerà normalmente, ovvero continuerà a scaricare ed inviare i file già in elenco).

Se il firewall blocca il traffico in uscita verso Internet, occorrerà infine aprire anche le porte usate per connettersi ai tracker; tra le più diffuse ci sono la 1337 e la 6969, entrambe UDP, ma conviene verificare di volta in volta nella scheda "Tracker" dell'interfaccia di Transmission utilizzata, nel caso si riscontrasse una mancata connessione.

In questa guida non ci si occupa di come configurare correttamente un firewall/router poiché la procedura varia in base al prodotto usato. L'utente dovrà quindi eventualmente cercare altrove una guida per aprire e reindirizzare correttamente le connessioni necessarie verso la macchina su cui è in esecuzione il demone. Come punto di partenza si può utilizzare questa guida.

Approfondimenti

Sitografia

  • Sito ufficiale
  • Pagina dedicata ai file di configurazione
  • Parametri di configurazione
  • Interfacce ed addons
  • Guida alla configurazione di porte dati per svariati router in commercio; è comunque imprescindibile fare riferimento al manuale istruzioni specifico del proprio router




Guida scritta da: Stemby Swirl-auth40.png Debianized 40%
Estesa da:
Wtf 23:08, 30 mag 2011 (CEST)
Verificata da:
Wtf 23:08, 30 mag 2011 (CEST)

Verificare ed estendere la guida | Cos'è una guida Debianized