Transmission: differenze tra le versioni
Wtf (discussione | contributi) |
Wtf (discussione | contributi) |
||
(49 versioni intermedie di 4 utenti non mostrate) | |||
Riga 1: | Riga 1: | ||
{{Versioni compatibili | {{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. | |||
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 | |||
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 | 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. | |||
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 | |||
== 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> | ||
# | # systemctl start transmission-daemon | ||
# | # 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 | |||
{{Warningbox|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: | Di seguito un elenco dei parametri di più comune interesse: | ||
<pre> | <pre> | ||
"download-dir": " | "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": | "rpc-authentication-required": true, | ||
"rpc-username": " | "rpc-username": "transmission", | ||
"rpc-password": " | "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": | "speed-limit-down-enabled": false, | ||
"speed-limit- | "speed-limit-up-enabled": false, | ||
"speed-limit- | "speed-limit-down": 100, | ||
"speed-limit-up | "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 | * ''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-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... | ||
* | * ''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 | * ''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:// | {{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 | |||
=== 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 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> | |||
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 <code>~/.config/Transmission Remote GUI</code>. | ||
=== 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>. | |||
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. | |||
#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 | |||
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 | | |||
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'' | * ''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' | 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 [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 | 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 | 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 | * [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
Versioni Compatibili Tutte le versioni supportate di Debian |
Introduzione
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
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).
rpc-password La stringa criptata è composta semplicemente da
A scopo didattico, è possibile calcolare l'hash in questo modo, utilizzando la password di default (" $ 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.
- trovare il link al file .torrent desiderato partendo da 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
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
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 | Debianized 40% |
Estesa da:
| |
Verificata da:
| |
Verificare ed estendere la guida | Cos'è una guida Debianized |