Seafile un Cloud privato

seafile_cloud… in pochi clic

L’incremento di velocita’ delle reti e di Internet ci ha portati a modificare le nostre abitudini per quanto riguarda la conservazione dei dati, che sono aumentati in modo esponenziale. In poco tempo sono nati diversi servizi online gratuiti (da DropBox, Ubuntu One, Google Drive, iCloud Box ecc…) che offrono spazio per lo storage di contenuti quali video, audio, foto, documenti ecc…,

Archiviazione e sincronizzazione dei dati sono i principali servizi messi a disposizione ma, negli ultimi tempi, si nota una nuova tendenza ad integrare anche strumenti di condivisione dei file con altri utenti. Cosa molto interessante, quest’ultima, utile anche a livello aziendale, e non solo, perche’ permette la creazione di gruppi di lavoro in cui ogni membro riceve automaticamente i file piu’ aggiornati , senza la seccatura di andare a controllare continuamente cosa e’ stato modificato.

In passato ho provato praticamente quasi tutti i servizi sopra citati, ma oggi esiste anche un’altra possibilita’ ed e’ data da Seafile
In pratica e’ un altro strumento open source di sincronizzazione, tipo Dropbox , che è stato progettato per essere più adatto al lavoro di squadra con alcune specifiche caratteristiche che sono orientate a questo obiettivo come ad esempio:

  • Gli utenti possono creare e partecipare a gruppi, quindi condividere i file al gruppo. Questo facilita il lavoro di squadra.
  • I file sono organizzati in librerie, ognuna sincronizzato in maniera selettiva con il client sul proprio computer. Le librerie possono essere sincronizzate con qualsiasi cartella locale.
  • Funzioni di collaborazione on-line per i file, come anteprima dei file PDF ed Office e la possibilità di lasciare commenti.

Seafile è quindi un servizio cloud storage che consente di condividere una libreria privata di file on the cloud con amici e colleghi. I file vengono sincronizzati con tutti gli utenti invitati, ciascuno dei quali ha la possibilità di editare un documento, il programma sincronizzerà automaticamente i cambiamenti così che gli altri utenti possano visualizzarli.
Il servizio assegna a ciascun membro del gruppo un server al quale nessun altro può avere accesso, aumentando così il livello di sicurezza. È possibile inoltre recuperare interamente la libreria di files grazie ai backup effettuati dal programma. Un alto livello di protezione è dato infine dal criptamento dei files protetti ciascuno da password, in maniera da renderli illeggibili ai non autorizzati. Seafile è un programma gratuito, scaricabile dal sito web ufficiale che mette a disposizione tutte le istruzioni e video per settare al meglio i propri gruppi di lavoro. Seafile è disponibile per Windows, Mac, Linux e per dispositivi mobili Android e iOS.

Caratteristiche

Seafile usa il modello di controllo di versione di GIT, ma semplificato per la sincronizzazione automatica, e non dipende da GIT. Ogni libreria è come un repository GIT. Ha la sua storia unica, che consiste in un elenco di commit. Un commit punta alla radice di uno snapshot del file system. Lo snapshot è composto da directory e file. I file sono ulteriormente suddivisi in blocchi per un trasferimento di rete ed utilizzo dello storage più efficiente

Differenze da git :

  • La sincronizzazione automatica
  • I client non conserva la cronologia dei file, evitando così il sovraccarico di memorizzazione dei dati due volte. GIT non è efficiente per file di grosse dimensioni (come le immagini)
  • I file sono ulteriormente suddivise in blocchi per il trasferimento in rete e l’utilizzo dello storage più efficiente
  • Il trasferimento dei file può essere ripreso
  • Supporta backend di memorizzazione differenti lato server
  • Supporta il download da server di più blocchi per accelerare il trasferimento di file
  • La gestione dei conflitti tra file è più user-friendly e simile a Dropbox (aggiunge nome dell’utente come suffisso al file in conflitto).

La nuova versione di Seafile (la 3.0), oltretutto, introduce delle novità sostanziali per quanto riguarda il server, mettendo sul piatto delle prestazioni notevolmente migliorate, insieme ad un sostanziale re-design della home page dell’applicazione, che adesso mostra molte più informazioni che riguardano il singolo file.

Tutto questo però comporta uno svantaggio: dato che sostanzialmente è cambiato il modello relativamente al quale il database viene strutturato, Seafile 2 e Seafile 3 non sono interoperabili: questo significa che un client Seafile 2.x non potrà scaricare nuove librerie create con il server 3.x, e viceversa un client 3.x non potrà creare librerie su un server con Seafile 2.x.

Personal Cloud Storage

cloud_syncHosting Personale

Oggi giorno tutti ci vogliamo affidare ai Mega Brand dell’informatica per gestire i nostri dati importanti. Spesso pero’ non ci rendiamo conto che questo significa che diamo in gestione importanti pezzi della nostra vita ad aziende che se ne prenderanno cura fino al giorno in cui questo dara’ loro un profitto. E’ il caso, ad esempio, di Ubuntu One che ha annunciato a tutti i suoi utenti che il 31 Luglio 2014 il servizio sarebbe stato chiuso e che da quel giorno nessuno sarebbe piu’ potuto entrare nella propria area per recuperare i propri dati. Quindi il consiglio e’ quello di usare ovviamente i servizi Web esterni ma di avere pur sempre un proprio backup casalingo, magari sincronizzandoli.

Proveremo ad analizzare i seguenti servizi : OwnCloud , SeaFile , BitTorrentSync

Tutti questi servizi non funzionano come le tradizionali applicazioni desktop.


* OwnCloud
La procedura d’installazione e’ minimale e possiede un file manager davvero ottimale, in grado di gestire i documenti nei formati piu’ diffusi. Offre anche un comodo set di applicazioni che rende OwnCloud davvero completo ed in termini di sicurezza si rimane soddisfatti dalla crittografia di base e dal controllo della versione dei file. L’applicazione per la gestione del versioning ci mette al riparo dal saturare lo spazio a disposizione, eliminando automaticamente le vecchie versioni dei files.
OwnCloud permette anche di utilizzare servizi Cloud esterni , come Google Drive, Amazon S3, Dropbox, e OpenStack Swift ed e’ capace di gestire i dati senza soluzione di continuita’ con il vostro Cloud privato. Supporta i protocolli CalDAV e CardDAV per la sincronizzazione dei calendari e delle rubriche.

Seguendo però le istruzioni date sul sito potremmo non riuscire a configurare il programma a causa di problemi con alcuni pacchetti.

Installiamo quindi le dipendenze mancanti di cui necessitiamo con i seguenti comandi:

sudo apt-get install apache2 php5 php5-json php5-gd php5-sqlite
sudo apt-get install curl libcurl3 libcurl3-dev php5-curl
sudo apt-get install php5-common php-xml-parser
sudo apt-get install sqlite

A questo punto andiamo sul sito ufficiale di ownCLOUD e scarichiamo l’ultima release disponibile (attualmente la 7.0.0) e scompattiamola:

wget https://download.owncloud.org/community/owncloud-7.0.0.tar.bz2
tar -xjf owncloud-7.0.0.tar.bz2

Creiamo una cartella sul nostro server web dedicata a ownCLOUD con il comando mkdir e copiamoci il contenuto di owncloud:

sudo mkdir /var/www/owncloud
sudo cp -r owncloud/* /var/www/owncloud
sudo chown -R www-data:www-data /var/www/owncloud

In questo modo abbiamo anche provveduto a dare i permessi di scrittura alla cartella del programma. Spesso non serve ma un bel riavvio del server apache fa sempre bene:

sudo service apache2 restart

A questo punto, con un browser, puntiamo su http://localhost/owncloud (sostituire localhost con l’indirizzo IP del server se si accede da un altro PC in rete). Se l’installazione è andata a buon fine troveremo la finestra di configurazione dell’account di amministratore: date un nome utente e una password all’amministratore di sistema di owncloud e cliccare su termina configurazione.

A questo punto possiamo iniziare ad operare via web oppure, in alternativa, con gli strumenti client che vengono messi a disposizione per tutte le piattaforme (android compreso).

Buon lavoro tra le nuvole…


* SeaFile
Questo servizio di Storage ha un processo d’installazione lineare e chiaro basato su script, che utilizza vari componenti operanti su diverse porte. Quando si verifica un problema, tuttavia, diventa complesso identificarlo. L’interfaccia Web, inoltre, e’ un tantino dispersiva ma SeaFile e’ un Cloud server dalle grandi possibilità.

## Installiamolo sul nostro computer!

Prima di tutto prepariamo il nostro Ubuntu installando le dipendenze di terze parti necessarie al perfetto funzionamento:

sudo apt-get install python2.7 python-setuptools python-simplejson python-imaging sqlite3

A questo punto scarichiamo dal sito del produttore la componente server di Seafile a 32bit o 64bit a seconda delle nostre esigenze. Salviamola nella nostra home directory.

Ora da una finestra del terminale digitiamo i seguenti comandi partendo dalla nostra home directory:

mkdir seafile
mv seafile-server-* seafile
cd seafile
tar zxvf seafile-server-*
mkdir installato
mv seafile-server-* installato

Ora eseguiamo la configurazione del programma digitando i seguenti comandi sempre nella solita finestra terminale:

cd seafile-server-*
./setup-seafile.sh

 

Rispondiamo alle domande che ci verranno poste a seconda della nostra configurazione: diamo un nome a piacere (senza spazi), l’indirizzo IP (privato della rete interna, pubblico se si vuole raggiungere il server dall’esterno o il nome host se tale indirizzo ip è associato ad un dominio) e per il resto diamo invio confermando i dati che vengono proposti in modo predefinito.

Al termine delle operazioni verrà chiesto anche un indirizzo e-mail ed una password per l’amministratore di seafile. Confermati tutti i dati inseriti possiamo provare ad attivare il server con i comandi:

./seafile.sh  start
./seahub.sh start

Se non vengono riscontrati errori sarà possibile raggiungere il proprio server seafile da http://indirizzo:8000 e loggarci con il proprio indirizzo e-mail e relativa password scelta al momento dell’installazione.

L’utente admin potrà aggiungere altri utenti, creare gruppi e fare tutta una serie di operazioni tramite la comoda interfaccia web.

Al server ci possiamo collegare anche da terminali mobili (esistono clients per Android e iOS) dando come indirizzo il proprio ip o il nome a dominio seguiti da “:8000″;

Nome utente e password sono sempre l’indirizzo e-mail e la relativa password scelta.

A questo punto non resta che automatizzare il caricamento all’avvio di ubuntu della parte server inserendo nel file /etc/rc.local le seguenti righe:

/bin/su -c “/home/nomeutente/seafile/seafile-server-versione/seafile.sh start &” nomeutente
/bin/su -c “/home/nomeutente/seafile/seafile-server-versione/seahub.sh start ” nomeutente

Naturalmente sostituendo i valori in neretto con quelli che sono appropriati per la propria installazione.

Divertitevi con Seafile!!


* BitTorrentSync
BitTorrent Inc., il nome dietro allo standard torrent che tanti usano per scaricare contenuti più o meno lecitamente, ha creato un’alternativa particolare agli altri sistemi di storage, proprio perché BitTorrent Sync non ha davvero nulla in comune con i servizi Cloud, anzi, si basa sul P2P per tenere i nostri file al sicuro senza mandarli a server sconosciuti.

Come funziona
Sync consente di conservare il controllo dei propri file; gli utenti sincronizzano i file tra i propri vari PC, e non si usa nessun server remoto per farlo. Non essendoci intermediari, non ci sono neppure limiti di alcun genere, neppure nella banda usata. BitTorrent Sync è molto più veloce della concorrenza.

Se vi serve condividere dei file, anche giganteschi, tra i vostri PC o con quelli di amici e parenti, è sufficiente scaricare l’app su ogni terminale. Sync è disponibile su Windows, OS X, Linux ed è persino accessibile ai NAS tramite un’interfaccia web. Sync usa lo standard di trasferimento BitTorrent, ma al contrario del solito, solo quelli che hanno la nostra chiave di accesso possono raggiungere le cartelle condivise.

Una volta installati i pacchetti sui vari PC non vi rimara’ altro che :

INIZIARE AD USARE BITTORRENT SYNC

  • Scegliere una cartella per la sincronizzazione e generate un secret, generando due chiavi, una di sola lettura e l\altra per l’accesso completo. Il secret è casuale ed unico, e funziona come una chiave che connette terminali multipli in un solo network
  • Sugli altri terminali deve essere scelta una cartella. Invece di generare un secret, inserite quello che avete creato nella prima
  • Mantenete acceso BitTorrent Sync fino al termine della sincronizzazione

Funzioni e feature

Le cartelle scelte per il sync possono essere gestite in qualsiasi momento dall’app oppure dall’interfaccia web.

  • Sync consente di scegliere quali file e cartelle desideriamo condividere, escludendo qualsiasi loro contenuto non vogliamo passare. Non conta il numero di cartelle, né la loro dimensione o quella dei file.
  • Sync consente la sincronizzazione a senso unico, ovvero possiamo selezionare un nostro file o cartella per l’invio, ma non permettere di sincronizzare nessuna modifica proveniente dal terminale a cui inviamo
  • Sync consente di creare un secret valido per una sola sincronizzazione, quindi non dovete lasciare le vostre “chiavi di casa” a nessuno

Il miglior servizio di condivisione di file con amici, parenti e colleghi.!