Vai al contenuto

BTSync - il cloud senza cloud


jeby

Messaggi Raccomandati:

Si chiama BitTorrent Sync (il suo utilizzo è perfettamente legale) ed è, sostanzialmente, un sistema di sincronizzazione privata di file tramite strategia peer to peer. Funziona attraverso la condivisione di una chiave segreta tra più dispositivi, una volta "collegati" i dispositivi questi si trasmetteranno pezzettini di file cifrati con crittografia AES a 128 bit. Esempio: vuoi avere tutti i tuoi documenti sincronizzati (e scaricati come copia offline) sui tuoi dispositivi senza che passino da un server estraneo? BTSync lo fa, sia su LAN (è veramente velocissimo) sia in connessione remota.

Dato che i file non transitano da server estranei (a meno di problemi di raggiungibilità dei peer, anche se è possibile disabilitare completamente questa funzione) e che i file sono criptati e vengono scambiati direttamente tra i dispositivi, è stato visto subito come alternativa "privacy-proof" al cloud tradizionale. Purtroppo il problema principale è che il protocollo utilizzato è proprietario e non documentato, qualche informazione privata transita comunque dai server BT (a meno di sbattimenti atroci) e quindi, insomma, sempre da usare con le pinze.

Il vantaggio è che permette di sincronizzare molto velocemente qualsiasi cartella su vari dispositivi (Mac, Windows, Linux, Android, iOS, Windows mobile) senza limiti di spazio o di tipologia o numero di file. Qualcuno di voi lo utilizza?

Io lo uso per trasferire diversi file anche abbastanza grandi al Nexus 7 su base quotidiana, fare il backup automatico del camera roll dell'iPhone e scaricare sull'iPhone i tracciati GPX dei percorsi pianificati per la bicicletta.

Se interessa ho scritto un post sul mio blog, che dice qualcosina di più, che riporto qui in versione integrale

Lo sapevate? Quelli di BitTorrent se ne sono usciti qualche tempo fa con un prodotto rivoluzionario dal nome veramente fantasioso: BitTorrent Sync (fantasia), abbreviato BTSync, per gli amici Sync. Alcuni (io) l’hanno definito il cloud senza il cloud, ma per dirla in parole spicce è il peer to peer della sincronizzazione. BTSync permette di sincronizzare (o fare il backup) di file e cartelle tra più dispositivi attraverso l’interweb (o una rete locale)senza bisogno di un server remoto e senza necessità di creare account o altro. Il top della privacy (forse). BTSync è disponibile per i principali OS desktop (Mac, Linux, Windows) e mobili (iOS, Android, Windows), incluse le varianti per NAS, e la sua installazione e gestione è abbastanza semplice. Se avete sottomano un computer con una distribuzione Debian-based, tipo un Raspberry Pi con Raspbian, il modo più semplice per installarlo e configurarlo è utilizzare questo pacchetto precompilato. La gestione, in questo caso, si fa tramite interfaccia web e il servizio funziona come un “demone” che parte all’avvio e la configurazione iniziale è facilitata da una procedura guidata, mentre per gli altri casi è disponibile anche un’applicazione grafica.

Indice dei contenuti [

hide]

[h=1]Come si usa[/h]Non entro nei dettagli tecnici, è inutile e peraltro difficile, anche perché il protocollo è proprietario e per nulla documentato. Sta di fatto che funziona più o meno così: avete più dispositivi su cui volete avere una o più cartelle sincronizzate o duplicate. Ad esempio, avete una cartella piena di file della più svariata natura sul vostro Raspberry Pi e volete che l’intera cartella con sottocartelle sia ricopiata pari pari su un iPhone 5s e un Nexus 7 (per dire due a caso). Attraverso l’interfaccia web della sessione BTSync installata sul RaspPi scegliete la cartella da sincronizzare e generate la chiave segreta. Esistono 2 tipi di chiave segreta, quella per accedere alla cartella in sola lettura o quella per avere anche i privilegi di scrittura. La chiave è una stringa di testo da 20-byte, generatacasualmente e associata alla cartella e va condivisa con i dispositivi che volete sincronizzare. Su questi, aprite la versione di BTSync installata e aggiungete la chiave, che può arrivare sotto forma di link mandato via mail, copia/incolla della chiave o scansione diun codice QR associato (la cosa più comoda). Fatto ciò, la storia è finita e comincerà il caricamento diretto dei file ai vari dispositivi, senza passare da server di terzi. Una volta completata la prima sincronizzazione ogni dispositivo diventa un nodo in una rete a maglia, pronto a mettere a disposizione pezzettini di file. Il sistema è molto efficacie e, tra le altre cose, riconosce ad esempio se ci sono dueo più dispositivi all’interno della stessa LAN massimizzando la velocità di trasferimento. I dati trasferiti tra i dispositivi sono criptati con una chiave AES a 128 bit, inoltre è disponibile un sistema di autorizzazioni per verificare quale dispositivo vuole accedere ai dati. Se volete una spiegazione semplice ed illustrata, la trovate qui.

Tecnologie come l’UPnP, NAT, fanno ovviamente parte del pacchetto, e nelle versioni mobili è da poco disponibile la funzionalità “backup della fotocamera”, una versione a prova di privacy (forse) dello streaming su iCloud, GDrive o quel che è.

In realtà esistono casi in cui i file, sempre critpati, vengono deviati su un server remotonon vostro: è il caso di peer irraggiungibili perché separati da firewall molto ostici (leggi aziendali), e quindi in caso di peer mancante viene creato un nuovo nodo intermedio. Questa opzione è abilitata di default per ogni condivisione, ma può essere disabilitata e (soprattutto) è raro che venga usata. Se siete maniaci della privacy va disattivato anche il server tracker che, in parole povere, è la lista degli ID dei dispositivi associati agli indirizzi IP. Volendo ci sono allo studio soluzioni opensource alternative per il server tracker.

[h=1]Perché usarlo[/h]Svariate ragioni. Per esempio è comodo, facile e gratuito per uso personale. Sicuramente rappresenta un passo avanti per quel che riguarda la gestione privata dei propri dati e, allo stesso tempo, la possibilità di sfruttare le connessioni mobili e la sincronizzazione remota. Fantastica la possibilità di mantenere sincronizzate intere cartelle e avere disponibili i file offline su dispositivi mobili. Altre applicazioni “cloud”, come Dropbox o anche ownCloud, danno la possibilità di scaricare sulla memoria e mantenere aggiornati i file dentro le cartelle, ma non un’intera cartella con un numero variabile di file. Non c’è alcun limite alla varietà, quantità e dimensione dei file. Tutto, dalla musica, ai video, foto, modelli CAD, quello che vi pare può essere sincronizzato a e dal vostro iPad, iPhone, Android, NAS quello che vi pare. Molto molto comodo. I trasferimenti sono molto veloci, soprattutto all’interno della LAN, meglio che un trasferimento tra volumi di rete (o almeno, così è nella mia esperienza).

Qualche uso “simpatico”: abilitando il backup della fotocamera su iOS o su Android e inviando questi file su un server domestico su cui sia installato un server DLNA, è possibile poi accedervi direttamente dalla TV (se dotata di clien DLNA) per rivedrle. Io lo utilizzo anche per trasferire i fumetti dal RasPi al Nexus 7, in questo modo riesco anche a fare una gestione remota dei file, cancellando quelli letti la cancellazione viene propagata.

[h=1]Perché no[/h]Perché è scomodo: se volete condividere le foto della vostra festa di compleanno con un amico/familiare/boh potete farlo a patto che il destinatario installi BTSync, mentre ormai tutti i maggiori servizi di cloud mettono a disposizione link a cui raggiungere il file/cartella anche senza installare il software. Una possibile soluzione è quella di installare ownCloud sul vostro NAS/server domestico/RasPi, collegare le cartelle condivise su BTSync come “archiviazione esterna” su ownCloud e condividere da lì. Semplice e pulito, ma forse viene un po’ meno il concetto di “cloud senza il cloud” icon_smile.gif

L’altro grave motivo per cui NON utilizzare BTSync è che il protocollo è completamente proprietario e veramente poco documentato. Cosa significa? Significa che ci potrebbero essere bug utilizzabili per violare il sistema e nessuno ne saprebbe nulla, fino a che il bug non viene utilizzato per scopi malevoli. Significa che fare un “auditing” della sicurezza del protocollo diventa difficile se non impossibile, che è difficile sviluppare applicazioni che utilizzano il servizio (sono disponibili delle API, con documentazione molto carente), che in generale non sappiamo bene come venganogestiti i pochi (forse) dati raccolti. In particolare, leggendo un paio di discussioni sul forum ufficiale (questa e questa), per ora si sa che BitTorrent ha accesso ai seguenti dati:

  • il “segreto” (non la chiave) condiviso con i peer: informazione che “transita” ma non viene conservata (dicono)
  • volume di dati trasferito, acquisito a scopi statistici (dicono)
  • indirizzo IP pubblico degli utenti (se viene usato il tracker server), come parte della richiesta HTTP (pacifico)

i dati che transitano sui server relay, se e quando lo fanno, non sono accessibili da BitTorrent (dicono) perché criptati. L’obiezione è che quelli di BT ricevono il segreto (o una parte, boh!) e con un molta forza bruta dei malintenzionati che abbiano accesso ai server BT potrebbero riuscire a sbloccare i file. Ok, forse siamo a livelli di paranoia, ma è bene conoscere la situazione nel suo complesso, che secondo lo staff di BTSync è questa:

There are 3 points of contact with BitTorrent infrastructure: tracker, relay, check for update service (listed above HTTP request). If you don’t use any of it – we will not get any information about you.

As for brute force – a lot of things in cryptography is based on a fact that there is no other way to decrypt data besides brute force attack (e.g. you can not recover private key from public). We believe 160 bit random secret is strong enough here.

[h=1]Alternative?[/h]Detto ciò, esistono alternative opensource a BTSync? Sì. No. Nì. La più in voga ora come ora è Syncthing. Sembra la soluzione giusta ma… non ha un’app per iOS e probabilmente non ce l’avrà mai (per ragioni di linguaggio di sviluppo VS politiche dell’App Store), ergo ha le gambe tagliate già in partenza. Inoltre è ancora ben lungi dall’essere un prodotto pronto per essere utilizzato dall’utente medio o abbastanza affidabile per essere utilizzato da aziende. Peccato, speriamo che in futuro qualcosa cambi. Poi c’è ClearSkyes, ancora in fase molto embrionale, un giorno darà vita ad una libreria completamente scritta in C++ e quindi disponibile per le più svariate piattaforme e a prova di regolamento dell’App Store.

BT sta "sperimentando" la versione per uso personale, è possibile che presto producano una versione a pagamento con più opzioni di configurazione per uso aziendale

Mazda MX-5 20th anniversary "barbone edition" - Tutto quello che scrivo è IMHO

k21x8z.png

Link al commento
Condividi su altri Social

Crea un account o accedi per lasciare un commento

Devi essere iscritto per commentare e visualizzare le sezioni protette!

Crea un account

Iscriviti nella nostra community. È facile!

Registra un nuovo account

Accedi

Sei già registrato? Accedi qui.

Accedi Ora
×
×
  • Crea Nuovo...

 

Stiamo sperimentando dei banner pubblicitari a minima invasività: fai una prova e poi facci sapere come va!

Per accedere al forum, disabilita l'AdBlock per questo sito e poi clicca su accetta: ci sarai di grande aiuto! Grazie!

Se non sai come si fa, puoi pensarci più avanti, cliccando su "ci penso" per continuare temporaneamente a navigare. Periodicamente ricomparità questo avviso come promemoria.