Sei sulla pagina 1di 12

Creazione di un download server Indice generale

1 Premessa.......................................................................................................................................2 2 Caratteristiche del download server..............................................................................................2 3 Schema del sistema.......................................................................................................................3 4 Prerequisiti....................................................................................................................................3 5 Hardware.......................................................................................................................................4 5.1 Panoramica, caratteristiche e scelta dell'hardware................................................................4 5.2 Preparazione del NAS...........................................................................................................5 6 Installazione e configurazione di Transmission............................................................................5 6.1 Installazione..........................................................................................................................5 6.2 Avviare, riavviare e fermare Transmission............................................................................6 6.3 Configurazione......................................................................................................................6 6.4 Scheduling avanzato con cron...............................................................................................9 7 Accesso da remoto......................................................................................................................10 8 Alcuni software alternativi..........................................................................................................10 9 Conclusione.................................................................................................................................11

By lipschitz debian.potato@libero.it (C) Viene concessa la possibilit di riprodurre e ridistribuire parzialmente o totalmente la seguente guida con il solo obbligo di citare l'autore originale

Ver. 0.2 del 19 agosto 2013

DISCLAIMER Sebbene questa guida sia stata redatta con la massima attenzione, non mi assumo nessuna responsabilit sulle conseguenze che il vostro hardware potrebbe subire. Questa opera fornita cos come e non viene fornita nessuna garanzia sui contenuti. Il lettore si assume ogni rischio derivante dal suo utilizzo.

Premessa

Lo scopo di questa guida dare indicazioni su come realizzare con costi molto bassi (circa 150 euro) un piccolo server dedicato alla condivisione tramite torrent di contenuti. Un tale server deve poter rimanere acceso 24h/24h e per questo deve essere affidabile, silenzioso e avere bassi consumi elettrici. Inoltre deve poter essere gestibile da remoto, in modo da permettere al proprietario di monitorarlo anche quando fuori casa. La necessit di questa guida nasce dalla constatazione che il mondo dei torrent italiano egoista: moltissimi troppi utenti, immediatamente dopo aver scaricato il contenuto di loro interesse, tolgono il file dal seed lasciando cos tutto il peso della condivisione sulle spalle di pochi utenti. Non questa la filosofia della condivisione ed lampante che un atteggiamento del genere tender a rendere scarsi i contenuti sulla rete torrent, con svantaggio di tutti, anche di chi si crede furbo e scarica senza condividere. Gi oggi gli utenti torrent italiani hanno difficolt a reperire materiale in HD proprio per questo atteggiamento. Basterebbe condividere i file con un rapporto di condivisione anche solo di 1,5 (ovvero ogni 100 MB scaricati ne faccio scaricare 150) per avere una situazione radicalmente diversa. Tale atteggiamento di scarsa condivisione dovuto principalmente a due motivi: uno soggettivo l'egoismo e uno oggettivo la mancanza di risorse hw/sw che permettano all'utente di condividere agevolmente i contenuti. La prima motivazione legata all'egoismo dei furbetti (detti anche vampirla) che scaricano e non condividono. Si pu fare poco per questo, se non cercare di persuaderli che con il loro atteggiamento disincentivano tutti a condividere: i releaser (coloro che realizzano i torrent, stanchi di essere gli unici che hanno in condivisione i file) e gli utenti normali che facendo fatica a trovare i contenuti di loro interesse oppure esasperati dalla lentezza del download dovuta alla scarsezza di seeder abbandonano il mondo torrent rivolgendosi ad altri metodi. Una comunit torrent senza seeder muore e allora anche i furbetti rimarranno a secco. La motivazione oggettiva legata alla appunto oggettiva scomodit che si ha nel condividere i contenuti. L'ideale sarebbe lasciare acceso il PC 24h/24h, ma questo problematico per motivi di consumi elettrici, rumorosit (e in estate anche calore) emessa dal PC (soprattutto di notte) ed usura di componenti pensati non per un uso continuato. Cos i file si condividono quando usiamo il PC per altri motivi, ma in questo caso spesso la condivisione una noia perch ci ruba banda proprio mentre ne abbiamo bisogno. Questa guida cercher quindi di risolvere il secondo problema, dando indicazioni su come realizzare il nostro download server con una spesa molto contenuta. Per motivi tecnici che saranno chiari nelle prossime pagine, non possibile dare istruzioni passo passo; quello che si pu fare dare idee, spunti, suggerimenti per realizzare il server. Con questi spunti e con l'aiuto di san google e di specifici forum sar poi facile portare a termine l'opera.

Caratteristiche del download server


Possibilit di rimanere up 24h/24h; Affidabilit; Bassi consumi elettrici; Silenziosit;

Come gi accennato precedentemente, le caratteristiche del download server saranno:

Accesso da remoto.

L'obbiettivo di avere una macchina di cui ci si pu dimenticare una volta connessa alla rete: noi indicheremo i torrent che vogliamo scaricare e lei lavorer silenziosamente 24h/24h, adattando la velocit di download e upload alla situazione della rete.

Schema del sistema

Dal punto di vista pratico, il nostro server sar costituito da un NAS (1) (su cui gira un sistema operativo linux-based e che sar il nostro download server) in cui installeremo un client bittorrent (il cui nome Transmission, http://www.transmissionbt.com) pensato per girare su sistemi senza schermo e senza tastiera. Transmission si comanda tramite una interfaccia web, raggiungibile con un browser qualsiasi anche da remoto. Il NAS sar collegato al nostro router/modem adsl (2) tramite cui si connetter ad internet e scaricher i contenuti. Una volta scaricati. i contenuti saranno sul disco del NAS e sar possibile vederli tramite DLNA (se il NAS possiede questa funzione) oppure li si sposter sul nostro PC tramite la rete locale.

Prerequisiti

La realizzazione del download server richiede la conoscenza, almeno basilare, di linux, poich su di esso sono basati i NAS che sono la base del nostro lavoro. Dovrete essere in grado perlomeno di usare un programma come putty per connettervi tramite telnet/ssh al NAS, accedere e usare la shell di linux, modificare un file di testo utilizzando programmi come vi o nano, cercare e spostare file ed eseguire operazioni base sul filesystem tramite linea di comando. Se non avete queste conoscenze esistono moltissimi semplici e brevi tutorial per acquisirle, considerato che faremo un uso abbastanza superficiale e veloce degli skills sopra elencati: il grosso della configurazione avverr tramite l'interfaccia web del programma. Se invece tali conoscenze vi risultano ostiche, vi consiglio fortemente di orientarvi verso uno dei prodotti QNAP (ripeto che non ho nessun interesse personale a consigliare questi prodotti), che oltre ad aver creato un pacchetto di Transmission installabile e configurabile interamente tramite l'interfaccia web del NAS, hanno una attiva comunit e un forum in italiano. 3

Hardware

Buona parte delle caratteristiche e delle performance del download server dipendono dall'hardware che utilizzeremo come base per il nostro sistema. In particolare, i bassi consumi elettrici e la silenziosit dipendono interamente dall'hardware, mentre l'affidabilit e la possibilit di rimanere up 24h/24h dipendono in parte dall'hardware e in parte dal software (queste caratteristiche dipendono infatti anche dalla stabilit del software che gestisce l'hardware). Da alcuni anni sono a disposizione sul mercato numerosi prodotti per l'archiviazione di dati pensati per un uso domestico che hanno le caratteristiche di affidabilit, bassi consumi e silenziosit che noi cerchiamo. Sono generalmente chiamati NAS o dischi di rete e sono disponibili per ogni fascia di prezzo. Sono l'evoluzione dei vecchi NAS, unit un tempo costose e ingombranti utilizzate da operatori professionali per archiviare grandi quantit di dati. L'evoluzione tecnologica ha permesso di creare una linea di tali dispositivi di dimensioni contenute, economici e con processori la cui potenza permette di fornire vari servizi oltre alla semplice archiviazione di dati. Attualmente non difficile trovare unit di questo tipo che permettono l'archiviazione di dati, l'accesso remoto agli stessi e lo streaming su rete locale tramite DLNA di contenuti audio e video. 5.1 Panoramica, caratteristiche e scelta dell'hardware

Per il nostro scopo ci rivolgeremo dispositivi basati su tecnologia ARM, senza ventola e con una accoppiata processore e RAM sufficientemente potente da poter gestire vari servizi. Dovr avere anche a disposizione un disco di almeno un terabyte per archiviare con comodit i nostri contenuti. Considerando che ormai i contenuti in HD sono molto comuni, la scheda di rete dovr essere preferibilmente gigabit, per permettere ampia banda sulla rete locale. Difficilmente tali dispositivi hanno a disposizione un trasmettitore wifi, per cui se volete accedere al dispositivo tramite questa tecnologia dovrete avere un router che la supporti, cosa comunque assai comune visto che tutti gli ISP mettono a disposizione dei modem che sono anche dei router wifi. Il sistema operativo utilizzato nella quasi totalit di questi NAS domestici una qualche versione di linux, in alcuni casi personalizzata dal produttore. Ci orienteremo ad una fascia di prezzo di circa 150 euro. A solo scopo esemplificativo elenco alcuni dispositivi che soddisfano le caratteristiche prefissate: Buffalo 2TB LinkStation Live (circa 130 euro): questo sistema ha un processore ARM a 600 Mhz, 64 MB di RAM, assorbe 17W, pu trasmettere contenuti audio/video su rete locale tramite DLNA e ha gi un client bittorrent integrato (ma il mio consiglio di usare comunque Transmission) ed ha una scheda di rete a 1000 Mbps; in base a informazioni raccolte su internet (http://forum.buffalo.nas-central.org/viewtopic.php?f=66&t=22054) l'installazione di Transmission possibile. D-Link DNS-320 Sharecenter Pulse (circa 60 euro, ma senza disco): questo NAS venduto senza disco (con 80-90 euro se ne pu acquistare uno da 2TB) ed avendo una ventola di raffreddamento dovrebbe essere pi rumoroso degli altri; ha un processore ARM da 800 MHZ, 128 MB di RAM e un assorbimento di 16 W; pu trasmettere contenuti audio/video su rete locale tramite DLNA, ha una scheda di rete a 1000 Mbps; in base a informazioni raccolte su internet (http://klseet.com/index.php/d-link-dns-320-nas/173) l'installazione di Transmission possibile. WD My Book Live 2TB Personal Cloud Storage (circa 125 euro):questo sistema ha un processore a 800 Mhz (non presente nel documento di specifiche tecniche il tipo di processore, che dovrebbe comunque essere un ARM, n la RAM installata), assorbe 18W, pu trasmettere contenuti audio/video su rete locale tramite DLNA ed ha una scheda di rete a 1000 Mbps; in base a informazioni raccolte su internet (http://us.ncix.com/products/? mode=productreviewread&product_id=56247) l'installazione di Transmission possibile. Se potete spendere qualcosa di pi i modelli QNAP sono un'ottima scelta (il modello base qnap ts4

112 costa senza disco rigido circa 130 euro), non solo dal punto di vista hardware, ma anche perch supportano una versione ad hoc di Transmission, installabile come se fosse una app. I NAS HP (ad esempio il Microserver N40L o N54L) sono una soluzione ancora migliore: basati su architettura x86 (amd o intel) sono una scelta professionale. Possono ospitare fino a 4 HD ed possibile metterli in RAID molto facilmente. Il prezzo e anche i consumi elettrici sono per maggiori. Ribadisco che i NAS sopra elencati sono a solo titolo di esempio. Non ho nessun interesse personale nel suggerire quei prodotti, ho semplicemente fatto una veloce ricerca. Personalmente ho un sistema Iomega, ma ormai fuori produzione e di conseguenza non l'ho citato. Esiste una alternativa al NAS: un disco rigido esterno collegato ad un router che permette l'installazione di programmi. I router di ultima generazione hanno infatti processori potenti e una discreta quantit di memoria, permettendo quindi di installare vari software. Una volta installato Transmission sufficiente collegare un HD esterno sui cui memorizzare i contenuti. Il firmware DD-WRT permette questa operazione. Una semplice ricerca con google vi permetter di sapere se il vostro router adatto allo scopo. 5.2 Preparazione del NAS

Una volta acquistato il NAS che si ritiene pi adeguato alle proprie esigenze, esso va collegato alla nostra rete locale. Generalmente sufficiente collegare il NAS all'alimentazione e al nostro router e poi accenderlo: il router dovrebbe assegnare un indirizzo IP al NAS e dovremmo poter accedere alla sua interfaccia web di gestione tramite il nostro web browser preferito. Fate comunque riferimento alla documentazione del NAS per istruzioni precise. Per i nostri scopi per dobbiamo accedere al NAS tramite telnet o ssh. Su alcuni NAS esiste una specifica opzione per attivare telnet o ssh (consiglio vivamente di usare ssh), ma nella maggior parte dei casi bisogna ricorrere a qualche trucchetto, in quanto i produttori di hardware limitano le capacit del firmware/sistema operativo installato sul sistema. Non infrequente dover sostituire il firmware installato dal produttore con un firmware libero e questa parte potrebbe essere pi complicata di tutto il resto delle operazioni, per cui nella scelta del NAS tenete conto anche di questo. Anche qui, essendo ogni NAS un caso a s, vi rimando alla documentazione del NAS o a fonti internet: il sito www.nas-central.org e il suo forum contengono una miniera di informazioni utili. Una nota terminologica: sebbene firmware e sistema operativo indichino due cose che possono essere abbastanza diverse, in questo caso inutile sottilizzare e li useremo come sinonimi.

Installazione e configurazione di Transmission

Procediamo con la parte pi importante del nostro download server, ovvero l''installazione e la configurazione del client bittorrent che si occuper di scaricare i contenuti. Il software scelto Transmission, un client bittorrent pensato proprio per sistemi headless (senza monitor n tastiera) e che impegna poche risorse. Il sito web ufficiale del software http://www.transmissionbt.com e ospita anche documentazione e un forum su cui possibile chiedere aiuto per l'installazione e la configurazione. 6.1 Installazione

Per quanto riguarda l'installazione, la cattiva notizia che non possibile fornire una procedura standardizzata, in quanto questa dipende dal NAS che si usa. La buona notizia che esistono pacchetti precompilati per l'architettura ARM sia per Debian che per ArchLinux (in genere i NAS montano una versione pi o meno personalizzata di una di queste distribuzioni) e anche per 5

moltissime altre distribuzioni. Sul sito del programma sono scaricabili i pacchetti precompilati, ma poich il programma molto supportato, facile che tali pacchetti siano presenti nei repository ufficiali della distribuzione. In genere quindi l'installazione si riduce ad un semplice comando tramite la shell (se il vostro sistema basato su debian per installare il programma dovrebbe bastare connettersi al NAS tramite telnet/ssh e digitare il comando apt-get install transmission). Inoltre esistono pacchetti precompilati per alcuni specifici NAS, che rendono l'installazione ancora pi semplice. In ogni caso prima di procedere necessaria una ricerca su google e molto probabilmente troverete le istruzioni passo passo per l'installazione adatte al NAS da voi scelto. 6.2 Avviare, riavviare e fermare Transmission

I pacchetti precompilati di Transmission installano anche il cosiddetto script di avvio. Tale script una sorta di programma usato dal sistema per lanciare il programma all'accensione. Il contenuto dello script di avvio e la sua localizzazione all'interno del sistema variano. Sul mio sistema (basato su debian) il file si trova in /etc/init.d/transmission-daemon con una semplice ricerca su internet troverete dove pone lo script il vostro sistema. Con i seguenti comandi da shell possibile, rispettivamente, avviare, riavviare e fermare il programma: /etc/init.d/transmission-daemon start /etc/init.d/transmission-daemon restart /etc/init.d/transmission-daemon stop In genere lo script di avvio non necessita di modifiche. Leggere lo script di avvio e i file correlati per importante, perch spesso ci dicono dove si trova il file di configurazione. Ad esempio nel mio caso (sistema basato su debian) nel file /etc/default/transmission-daemon (che contiene le variabili utilizzate dallo script di avvio) c' la la seguente riga: CONFIG_DIR="/var/lib/transmission-daemon/info" che mi indica la directory dove trovare il file di configurazione. 6.3 Configurazione

La configurazione del programma avviene sia tramite riga di comando, che tramite l'interfaccia web del programma. Bisogna dunque per prima cosa accedere tramite putty alla shell del NAS e individuare il file di configurazione (il cui nome settings.json) che generalmente si trova nella cartella /etc del sistema. Le modifiche necessarie da fare tramite riga di comando sono veramente minimali (sostanzialmente, la modifica della password e delle directory dove salvare i file scaricati), mentre possiamo utilizzare la pi intuitiva interfaccia web per le altre modifiche. Notare che, in base alla distribuzione di linux e al modello del NAS il modo di configurare il programma pu variare (ad esempio potrebbe essere presente una interfaccia web del NAS anche per impostare la password), in genere comunque sempre possibile dare una prima configurazione editando a mano il file apposito. Importante: prima di mettere mano al file di configurazione, assicurarsi che il programma non sia in esecuzione (digitate da linea di comando ps ax e verificate che tra i processi in esecuzione non ci sia Transmission) in quanto esso sovrascrive il file di configurazione in uscita. Se il programma fosse in esecuzione per fermarlo usate lo script di avvio. Iniziamo modificando la password dell'interfaccia web; apriamo con vi o programma simile il file di configurazione e cerchiamo le seguenti righe: 6

"rpc-authentication-required": true, "rpc-password": "putyourpasswordhere", La prima riga deve avere il valore impostato su true (senza virgolette e con una virgola alla fine), mentre nella seconda dovete inserire tra virgolette la password da voi scelta (le virgolette non fanno parte della password e ricordate di lasciare la virgola alla fine della riga). Raccomando di usare una password difficile, soprattutto se volete accedere al programma da remoto. Una nota: una volta che il programma in esecuzione la password viene criptata, per cui se aprite il file mentre il programma in esecuzione, al posto della vostra password vedrete una serie di caratteri casuali, ma non c' nulla di cui preoccuparsi. Abbiamo impostato la password, ma qual il nome utente da utilizzare per l'accesso? Cercate una riga del genere per saperlo: "rpc-username": "admin", Se non avete un motivo particolare, consiglio di non cambiare il nome utente. Ora verifichiamo la porta tramite cui ci si connette all'interfaccia web; cercate la seguente riga: "rpc-port": 9091, Se non avete motivi particolari per cambiarla (ad esempio altro servizio che gira sulla stessa porta), lasciate il valore preimpostato. Per modificare la directory in cui i file scaricati saranno salvati, cercate la seguente riga: "download-dir": "/mnt/disk/downloads", Anche in questo caso, inserite tra virgolette il percorso di vostra scelta e lasciate la virgola alla fine della riga. Se volete che i file incompleti vengano salvati in una directory a parte cercate le seguenti righe: "incomplete-dir-enabled": true, "incomplete-dir": "/mnt/disk/downloads", Impostate su true (senza virgolette e con una virgola alla fine) la prima riga, per attivare la direcotry dei file incompleti e nella seconda riga inserite tra virgolette il percorso di vostra scelta lasciando la virgola alla fine della riga. A questo punto salvate il file, chiudetelo e avviate il programma tramite lo script di avvio (con un comando tipo /etc/init.d/transmission-daemon start): termineremo la configurazione tramite l'interfaccia web del programma. Una volta avuto accesso all'interfaccia web, la configurazione simile a quella di qualunque altro client bittorrent per cui non mi dilungher pi di tanto. Aprite il browser e digitate nella barra degli indirizzi l'indirizzo IP del NAS seguito dal simbolo dei due punti e da 9091 (ovvero http://192.168.1.2:9091 dove 192.168.1.2 va sostituito con l'indirizzo del NAS) e inserite nome utente e password precedentemente impostati. Se avete modificato in precedenza la porta dell'interfaccia web usate al posto di 9091 il valore che avete impostato. L'interfaccia web molto intuitiva; per accedere alla configurazione cliccate sul simbolo con la chiave inglese che si trova in basso a sinistra. Si aprir una finestra con alcuni tab, cliccate su quello nominato Network e prendete nota del valore vicino a Peer listening port: la porta che dovete aprire sul router per permettere al programma di connettersi alla rete. Ora cliccate sul tab Torrents; in questo tab dovete impostare il rapporto di condivisione. Si raccomanda di impostarlo almeno ad 1.5 in modo da favorire la diffusione dei contenuti. Usate la figura seguente come riferimento. 7

A questo punto passiamo ad impostare la velocit di download. Poich il nostro download server funzioner 24h/24h e sette giorni su sette, consigliabile impostare velocit differenti per le ore di punta e per le ore in cui c' meno traffico. Tenete comunque presente che il router che gestisce la vostra rete locale contiene gi dei meccanismi per limitare il traffico torrent nel momento in cui vi un utilizzo intenso della rete. Transmission permette di avere due velocit differenti: una normale, l'altra alternativa (detta anche turtle mode) che si attiva in orari e giorni particolari. Prendiamo come esempio la figura che segue.

Abbiamo impostato come velocit normale 250 kB/s in download e 100 in upload e come velocit alternativa 25 kB/s in download e 10 in upload. Spuntando la voce Scheduled times diciamo a Transmission di attivare la velocit alternativa tra le 7:00 e le 19:00 dei weekdays (cio dal luned al venerd), questo perch nel caso specifico la connessione serve per lavoro dalle sette di mattina 8

alle sette di sere nei giorni della settimana, mentre negli orari serali e nei fine settimana non viene utilizzata. Nel caso di una connessione casalinga potrebbe essere consigliabile il contrario (di giorno si al lavoro e si ha banda disponibile, la sera si a casa e si vuole usare la connessione), per cui si imposter la velocit piena da mezzanotte alle sei del pomeriggio. Tenete presente che potete attivare o disattivare il turtle mode in ogni momento tramite l'interfaccia web cliccando sul simbolo della tartaruga (lo vedete qui sotto) che si trova nella parte in basso a sinistra dell'interfaccia web del programma.

Sperimentate le varie opzioni offerte da Transmission per trovare quella che meglio si adatta alle vostre esigenze. La configurazione base di Transmission terminata, se siete interessati ad approfondirla, questa https://trac.transmissionbt.com/wiki/ la pagina wiki della documentazione del programma. 6.4 Scheduling avanzato con cron

Transmission offre due sole coppie upload/download di velocit con cui operare, eventualmente differenziabili per i giorni lavorativi e il fine settimana. Questo pu essere sufficiente per molti utenti, ma molti altri preferiscono uno scheduling pi dettagliato. Per ottenerlo necessario farci aiutare da cron, un programma che chi usa linux sicuramente conosce: il suo scopo quello di eseguire comandi in giorni ed orari pianificati. Per l'utilizzo di cron vi rimando ad una delle moltissime guide presenti in rete. In questa sede mi limito a far notare che il vostro NAS potrebbe prevedere una interfaccia web per la configurazione di cron, magari sotto un nome diverso, tipo operazioni pianificate. Comunque sempre possibile configurarlo connettendosi alla shell e usando la linea di comando. Il comando da far eseguire a cron per modificare la velocit di upload e download rispettivamente a 100 kB/s e 300 kB/s il seguente: transmission-remote -n user:password -u 100 -d 300 in cui sostituirete ad user e password il nome utente e la password impostati. Supponiamo di volere le seguenti impostazioni: dal luned al venerd, a zero la velocit di up/down dalle 8 del mattino alle 5 e 30 del pomeriggio, poi a 100 in up e 200 in down dalle 17:30 alle 20, a 50/100 dalle 20 a mezzanotte e illimitata da mezzanotte alle 8 del mattino. Il sabato invece a 0 dalle 8 alle 15, a 100/200 dalle 15 alle 20, e illimitata dalle 20 in poi. La domenica infine: illimitata fino alle 11 del mattino, a 100/200 dalle 11 alle 20 a 50/100 fino alle 23 e poi illimitata. Per ottenere questo scopo dovrete modificare il file crontab connettendovi al NAS tramite shell, digitando crontab -e e inserendo i seguenti dati:
#Min Ore 0 30 0 0 0 0 0 0 8 17 20 0 0 8 15 20 Giorni Mesi Giorno della settimana * * * * * * * * * * * * * * * * 1-5 1-5 1-5 1-5 6 6 6 6 /usr/bin/transmission-remote -n user:password -u 0 -d 0 /usr/bin/transmission-remote -n user:password -u 100 -d 200 /usr/bin/transmission-remote -n user:password -u 50 -d 100 /usr/bin/transmission-remote -n user:password -U -D /usr/bin/transmission-remote -n user:password -U -D /usr/bin/transmission-remote -n user:password -u 0 -d 0 /usr/bin/transmission-remote -n user:password -u 100 -d 200 /usr/bin/transmission-remote -n user:password -U -D

0 0 0

11 20 23

* * *

* * *

7 7 7

/usr/bin/transmission-remote -n user:password -u 100 -d 200 /usr/bin/transmission-remote -n user:password -u 50 -d 100 /usr/bin/transmission-remote -n user:password -U -D

Notate che per impostare la velocit illimitata in upload e download si usano una U e una D maiuscole.

Accesso da remoto

Con un download server una funzione molto utile l'accesso da remoto. In tal modo possibile modificare la velocit di download, controllare lo stato dei torrent, aggiungerne altri. Per utenti avanzati anche possibile monitorare ed eventualmente modificare il comportamento generale del server. L'interfaccia web di Transmission pensata per un utilizzo tramite dispositivi mobili, per cui se vi connettete ad essa tramite uno smartphone essa se ne accorger e verr visualizzata in modo tale da poter essere utilizzata agevolmente con tali dispositivi. Personalmente ho deciso di non attivare l'accesso remoto, per cui dar alcune indicazioni generali, ma che non ho testato personalmente. Il primo passo da fare registrarsi su un servizio di Dynamic DNS gratuito. Ce ne sono vari a disposizione, ci che fanno assegnare all'indirizzo IP dinamico della vostra connessione un dominio web fisso di terzo livello. Ad esempio con la versione free di no-ip (http://www.noip.com/services/managed_dns/free_dynamic_dns.html) potete avere un sottodominio del tipo yournewhost.no-ip.biz che punta all'indirizzo che l'ISP vi ha assegnato. Spesso i router hanno integrata una funzione di dynamic DNS (ad esempio il firmware dd-wrt ha questa opzione) che si appoggia a questi servizi: controllate la documentazione del vostro router per sapere se supporta tale servizio. Dopo esservi registrati al servizio ed averlo configurato, ricordate di aprire la porta 9091 sul router, in modo che l'interfaccia web di Transmission sia accessibile dall'esterno. Fatto ci dovrete semplicemente usare l'indirizzo scelto a cui aggiungerete 9091(yournewhost.no-ip.biz:9091) per accedere da remoto. Ribadisco l'importanza di scegliere una password difficile se si decide di attivare l'accesso remoto.

Alcuni software alternativi

In questa guida si parlato diffusamente di Transmission, ma esso non l'unico client bittorrent che permette di creare un download server come quello descritto. Libtorrent/rtorrent una valida alternativa, anche se la sua installazione configurazione un po' pi complicata. Una alternativa completamente diversa OpenMediaVault (OMV). OMV non un client bittorrent, ma un firmware (forse sarebbe il caso di definirlo sistema operativo, ma la sostanza non cambia) che sostituisce completamente quello installato sul NAS dal produttore. OMV include Transmission come plugin, per cui una volta installato OMV bastano pochi click per avere Transmission funzionante. Con OMV avrete completo accesso e libert di utilizzo al vostro NAS, ma l'installazione non semplice. Su dispositivi ARM come quelli qui descritti non nemmeno ufficialmente supportato, anche se comunque su tali sistemi lo si pu installare senza eccessivi problemi. Personalmente ho installato OMV su un dispositivo basato su piattaforma ARM e il mio NAS ha performance nettamente migliori con OMV che non con il firmware originale del produttore, senza poi contare la possibilit di fare del mio NAS ci che voglio (il firmware del produttore impediva alcune funzioni) e di configurarlo a mio piacimento. Se vi piacciono le sfide e avete esperienza con i sistemi linux, OMV (http://www.openmediavault.org/) merita una prova. 10

Tenete per presente che installandolo potreste rendere inutilizzabile il vostro NAS (possibilit remota, ma che pu comunque verificarsi) e quasi certamente invaliderete la garanzia. Questa guida stata specificamente pensata per utenti torrent, ma questo non l'unico modo per scaricare contenuti. Molto popolari sono oggi quei servizi denominati file locker o file hoster (ad esempio easybytez, netload o rapidshare) che permettono dietro al pagamento di un abbonamento di varia durata di scaricare ad altissima velocit file caricati da altri utenti. Inoltre esiste ed tuttora vivo il sempreverde protocollo emule che prima dell'avvento dei torrent la faceva da padrone. Per entrambi i metodi esistono programmi pensati con la stessa architettura di Transmission, ovvero un demone o programma principale, che gira sul server ed una interfaccia grafica basata sul web per utilizzarlo. Per quanto riguarda i file hoster si consiglia pyload (http://pyload.org/), mentre per emule il programma consigliato mldonkey (http://mldonkey.sourceforge.net se avete una debian il pacchetto da scaricare si chiama mldonkey-server): Transmission, Mldonkey e Pyload possono funzionare in contemporanea, ma in questo caso va valutata con molta attenzione la banda da riservare a ciascuno di essi in quanto potrebbero ostacolarsi a vicenda.

Conclusione

Bene, siamo giunti alla conclusione. Questa guida diversa da come l'avevo pensata: volevo scrivere un tutorial snello e che potesse essere seguito passo passo anche da un utente con pochissima esperienza di linux e invece ho una lunga e prolissa guida che in molti punti lascia l'utente solo con i suoi problemi. Ciononostante credo che gli spunti e le idee presenti siano assolutamente interessanti e che il lettore dotato di buona volont non faticher a superare gli ostacoli che mano a mano gli si presentano. Tutto ci che aumenta la conoscenza ha un valore intrinseco e questa guida, pur con tutti i suoi limiti, un ulteriore contributo (piccolo o grande non importa) alla sua diffusione.

11

Changelog
Ver 0.1 (2013-08-16) Rilascio iniziale del tutorial Ver 0.2 (2013-08-19) Corretti errori di battitura; Aggiunto i seguenti paragrafi: -Prerequisiti -Preparazione del NAS -Scheduling avanzato con cron -Avviare, fermare, riavviare Transmission tramite script di avvio Aggiunti riferimenti a mldonkey e pyload

12