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.

Proteggi Mysql con GreenSQL

SQL Injection

SQL Injection

Mysql DB, GreenSQL FW e le SQL injection

Nel corso degli anni i Database hanno conosciuto un’evoluzione repentina, a questa ha fatto seguito, data l’importanza dei dati contenuti, un’escalation dei problemi inerenti la sicurezza. Le vulnerabilita’ che colpiscono i DB sono ormai molte e differenziate e gli “exploit” di tipo SQL injection sono quasi all’ordine del giorno, tra i piu’ colpiti c’e’ proprio Mysql che in pochi anni e’ diventato il default DB di moltissime applicazioni web; ecco perche’ bisogna fare molta attenzione e sapere come correre ai ripari.

Come ben noto ai web master le SQL Injection sono un problema comune di molte applicazioni web li dove le piu’ banali cause possono venire arginate da un sitemista scrupoloso e attento ad un buon hardening di sistema, possono sempre insorgere altri “bachi” non voluti, negli algoritmi di arginazione.

Una soluzione efficiente e ben strutturata la propone GreenSQL, un software Open Source che si presenta sotto l’aspetto di un proxy/firewall, al quale ci si interfaccia come una comunissima connessione ai database e gestisce le connessione con il database filtrando eventuali codici “illegali”.

Come funziona

In pratica la query inviata alla web application viene esaminata da GreenSQL, che intercetta il traffico diretto al DB, e nel qual caso la query sia ritenuta rischiosa non viene inoltrata al database e il risultato restituito sara’ nullo.
Viceversa se l’interrogazione risulta conforme alle specifiche verrà inoltrata al database e il risultato reso disponibile all’applicazione.

Il software può lavorare in tre modalità:

  • Simulation Mode (IDS)
  • Blocking Suspicious Commands (Database IPS)
  • Learning Mode
  • Active protection da query sconosciute (DB Firewall)

Come agiscono
Se l’applicazione è impostata in Simulation Mode funziona sostanzialmente come un sistema IDS (Intrusion Detection System). Tutte le query ritenute dannose vengono semplicemente loggate e poi notificate all’amministratore che può consultarle attraverso la console d’amministazione.

In modalità Blocking Suspicious Commands il sistema invece funziona come un IPS (Intrusion Prevention System). In questa modalità le query che non sono all’interno della white list del programma vengono automaticamente bloccate e, il programma, restituisce un risultato nullo all’applicazione web. Altrimenti, se la query è considerata non maligna, viene eseguita. Durante questa modalità però possono essere generati falsi positivi o falsi negativi.
Per evitare i problemi dovuti alle due modalità sopra citate è stata sviluppata la modalità Learning mode durante la quale il programma impara tutte le query che l’applicazione web può inviare e le aggiunge alla white list. Una volta finita la modalità d’apprendimento si deve ripassare ad una delle due modalità citate in precedenza, in modo da avere un livello di protezione piu’ adeguato.
Si può inoltre attivare la protezione dalle query sconosciute, questa opzione permette di bloccare in automatico i comandi sconosciuti che giungono GreenSQL. Per poter calcolare se un comando è illegale o meno si avvale di un motore di pattern matching che lavora in due modalità. La prima controlla che la query inviata non vada ad eseguire comandi amministrativi (ad esempio GRANT o REVOKE, o comandi che vanno a modificare la struttura del database). L’altra invece calcola il rischio di una query basandosi su dei metodi euristici, se il rischio è sufficientemente alto la query viene bloccata in automatico.

Calcolare il rischio delle query
GreenSQL puo’ calcolare il rischio di ogni query ; essenzialmente, questo è un sottosistema di rilevamento delle anomalie. Dopo che il rischio è calcolato, GreenSQL è in grado di bloccare la query o semplicemente creare un messaggio di avviso (questo dipende dalla modalità attivata). Ci sono una serie di operazioni euristiche che GreenSQL utilizza per il calcolo del rischio. Per esempio, il rischio di query è aumentato da:

  • L’accesso alle tabelle sensibili (gli utenti, gli account, le informazioni di credito)
  • Commenti all’interno di comandi SQL
  • Una stringa password vuota
  • Una ‘OR’ all’interno di una query
  • Un’espressione SQL che restituisce sempre vero

Per trovare anomalie, GreenSQL usa il proprio lexer ( o analizzatore lessicale ) cercando SQL tokens (costituiti da identificatori, costanti e parole chiave).

Per maggiori chiarimenti e per avere una guida ufficiale non esitate ad andare sul sito ufficiale di GreenSQL FW

 

Un sito Web chiavi in mano

bitnami_web_appsBitNami Stack :  a ognuno il suo

Oggi giorno molti, moltissimi, hanno sentito nominare parole come WordPress, Joomla, CMS ecc…, ma pochi associano questi nomi ai software necessari per il loro funzionamento.
Tra le diverse figure professionali coinvolte possiamo senza dubbio evidenziare :

  • il semplice utilizzatore, ignaro di come funzioni Internet ma che vuole crearsi un Blog
  • il web designer, che magari non conosce linguaggi di programmazione, ma e’ un dio nell’art design
  • lo sviluppatore che ama creare nuovi software ma non e’ molto competente come sistemista

Seppure la piattaforma “standard de facto” LAMP (Linux+Apache+Mysql+PHP) sia ancora quella piu’ diffusa, molte altre nuove soluzioni sono nate, con l’intento di colmare le carenze pre esistenti sui vecchi sistemi e di migliorare l’esperienza lavorativa dell’utente finale.

BitNami Stack e’ una soluzione pronta all’uso; il concetto alla base del progetto e’ che ognuno, competente o non, ha il diritto di poter utilizzare qualunque applicazione web senza dover essere necessariamente un genio dell’informatica. Ad oggi sono gia circa un centinaio le applicazioni web chiavi in mano fornite sul portale, e la lista dei coming soon e’ altrettanto lunga.

L’installazione classica e’ un’operazione molto semplice, bastera’ andare sul sito da questo link , scegliere l’applicazione web di nostro interesse, selezionare il tipo di pacchetto e scaricarlo in locale; successivamente dare i permessi di esecuzione al pacchetto e lanciarlo, le poche domande che verranno fatte serviranno semplicemente a configurare l’utenza di utilizzo dell’applicazione, la porta di connessione al DB e, se si desidera, un account mail (tramite SMTP protocol) per l’invio delle mail di notifica della App.

chmod +x bitnami-owncloud-7.0.1-0-linux-installer.run
sudo ./bitnami-owncloud-7.0.1-0-linux-installer.run

Esistono anche altre due modalita’ : Live & Cloud

Live : per tutti coloro che non intendono utilizzare direttamente le applicazioni sul proprio pc/server esiste la possibilita’ di scaricare le immagini per VMWare e, volendo, utilizzando VMWare vCenter Converter Tool, sara’ possibile utilizzarle anche con VirtualBox o Kvm.

Cloud : per chi preferisce le soluzioni Cloud, BitNami offre un servizio Cloud dedicato per l’installazione del software; in alternativa si trovano a disposizione gli script per Amazon, bastera’ scaricare il template e caricarlo successivamente su Amazon.

Con una tale facilita’ di utilizzo non mi rimane che dirvi : “testate gente, testate” !!!!

Per maggior info consiglio anche di leggere “BitNami: CMS impacchettati per tutti

Lavorare a Berlino

berlin-jobPerche’ Berlino ???

Iniziamo con il dire che Berlino offre a tutti coloro che si sentono in grado di lasciare l’Italia, ma soprattutto a tutti coloro che non amano la mentalita’ italiana del tipo “mammà mi stiri la camicia”, di trovare una citta’ difficile (non è il paese della cuccagna come molti stanno raccontando), ma affascinante e stimolante per tutti questi motivi:

  • Ottimo rapporto costo della vita / servizi (seppur gli affitti continuino a crescere costantemente)
  • Berlino ha un humus ed un approccio lavorativo perfetto per chi ha un’idea da Startup (tutto ciò implica naturalmente di doversi comunque tirare su le maniche per trovare la propria strada con le proprie forze)
  • Una scena musicale incredibile che spazia e si espande in tante direzioni. Talentuosissimi artisti di strada arricchiscono le vie e le piazze di questa città, intrattenendo e diffondendo arte spesso di grande valore.  Concerti di ogni tipo e genere  sono all’ordine del giorno, ed una vita notturna senza paragoni fanno di questa città un luogo incredibile per i giovani di tutte le età!
  • Una metropoli contemporanea ricca di natura alla portata di tutti nel quotidiano, fatta di parchi, laghi e fiumi balneabili.
  • Una Storia lunga, spesso dura, che ha creato una mentalità amichevole e di tolleranza.
    La storia qui si accavalla ad ogni angolo. A Berlino potremo ancora trovare edifici abbandonati oppure che pian piano trovano nuovi modi di essere vissuti.
  • L’ottima posizione geografica che permette di viaggiare ovunque con ottimi collegamenti ed in poco tempo (Olanda, Svezia, Inghilterra…)

Tornando al discorso lavorativo la prima cosa da segnalare e’ che l’alto numero di professionisti del settore informatico, arrivati da ogni parte del mondo (e’ il caso proprio di sottolinearlo) rende necessario un livello di conoscenza dell’inglese davvero alto; quindi fate bene i conti con questo primo possibile ostacolo.
Inoltre proprio dato l’alto numero e livello della concorrenza negli ultimi 2 anni inizia ad essere richiesto anche un buon livello di tedesco;  questo anche perche’ molte delle posizioni ricercate, che ruotano attorno alle aziende web 3.0, sono legate a ruoli quali

  • Marketing Manager
  • Country Marketing Manager
  • Advertising Sales Manager

…ecc , per i quali si presume una certa spiccata dote comunicativa ed una dialettica (inglese/tedesco/francese) di livello alto.

Ora per entrare piu’ addentro agli aspetti tecnologici va fatto notare che proprio per la quantita’ di start-up presenti ed il basso costo della vita, i ruoli piu’ ricercati a Berlino sono quelli inerenti il settore di sviluppo (programmazione) nei tanti e vari ambiti informatici, che siano essi di sviluppato in ambito Web (Php, Java, Javascript, Html5, Python, Ruby…) oppure , altrettanto richiesti, in ambiti Smartphone OS (Android, Apple ….).

Uno dei siti che mi sento di consigliare, perche’ puo’ darvi meglio il polso delle competenze piu’ richieste, e’ quello di BerlinStartupJobs.
Per coloro che preferiscono intraprendere sin da subito una carriera da freelencer consiglio anche la piattaforma Twago.

Per l’ambito sistemistico il discorso e’ leggermente diverso perche’ sappiamo già che percentualmente sono richiesti meno sistemisti rispetto agli sviluppatori, ed in piu’ ho osservato che molte startup o aziende già avviate usano avere i “sistemi” ( e di conseguenza i sistemisti) li dove hanno il loro “core” finanziario (Inghilterra, U.S.A., Canada ecc….. , oppure lì quando la scelta è quella di abbassare ulteriormente i costi di gestione in paesi quali per es.:  Filippine, Malesia, India ecc….)

Berlino è fantastica, ma anche selettiva. Se siete audaci e sapete cosa volete è la città che fa per voi.

Hipster a Berlino

Hipster StyleHipster è un neologismo nato negli anni quaranta negli Stati Uniti per descrivere gli appassionati di jazz e in particolare di bebop. Si trattava in genere di ragazzi bianchi della classe media, che emulavano lo stile di vita dei jazzisti afroamericani.

Ragazzi con barbe ottocentesche e curatissime. Fanciulle con acconciature meticolosamente stropicciate. Tutti sono diversamente abbigliati: un patchwork di colori ed epoche differenti. Accessori rigorosamente vintage.

Ormai il concetto di hipster e tutto ciò che vi ruota attorno è stato sdoganato, ed e’ ormai parte del tessuto sociale delle grandi metropoli, perche’ fa parte della moda, della musica, insomma una lista piuttosto infinita di “parte” che lo hanno trasformato da hype per pochi eletti a trend accessibile a tutti. Sembra bastare l’avere gusti discutibili nello scegliere i vestiti, possedere un intestino piuttosto resistente al latte di soia ed alla dieta vegana che il gioco e’ fatto, il biglietto per il fantastico mondo degli hipster è bello che staccato!  ;-P

In tutto questo “Berlino la fa da padrona”; gia’, e non a caso sono circa tre anni che “l’hipsteria” viene celebrata con una sorta di Olimpiade del tutto particolare, il mitico Hipster Cup Festival (2014).

E Berlino pare esserne la capitale europea: insomma, che hipster sei, se non vivi qui?

Sei un perfetto hipster berlinese se…..

  • Sai sempre quale’ il quartiere piu’ COOL di Berlino
  • Ti faresti togliere tutto, ma non la tua “Tote Bag”
  • Lavori gratis almeno per 3 Start-Up
  • Non parli una parola di Tedesco
  • Ti appropri di tutte le Reti Wi-Fi che trovi
  • Se ti tagli, sanguini Club Mate (non è una bevanda, è uno stile di vita)
  • Scegli gli amici come sceglieresti un OutFit
  • Indossi giganteschi occhiali retro’
  • Lavori per rovesciare il SISTEMA
  • Hai almeno 12 tatuaggi
  • Hai almeno 3 device Apple

…la strada da seguire e’ questa e, se e’ lo stile di vita che piu’ vi si addice, sapete dove venire…!