Category Archives: Open source

Htaccess: limitare l’azione di bot, spider ed exploit

Pubblicato da

5G-Blacklist

Uno dei modi più semplici per attaccare un sito realizzato con un linguaggio dinamico (ASP.NET, PHP, ecc.) è quello di scrivere URL malformati o di inoltrare molteplici richieste contemporanee.
Anche l’azione troppo “invadente” di certi spider automatici può causare problemi di accessibilità ad un sito.
I server come Apache hanno la possibilità di configurare l’accesso ad una directory tramite il file .htaccess .
Sfruttando questa caratteristica si possono impostare una serie di regole per filtrare gli accessi.

5G Blacklist è un progetto condiviso per la realizzazione di un .htaccess “definitivo” in cui siano contemplati tutti i casi per limitare l’azione di bot, spider automatici e hacker alle prime armi.
Il nome deriva dal fatto che è la quinta generazione di questo file che è un po’ come una blacklist di un firewall.
Non si tratta della soluzione contro tutti i mali ma permette di risparmiare molta banda e rintuzza gli attacchi più classici.
Il file è strutturato molto bene permettendo di personalizzare, ad esempio, l’elenco degli IP bloccati (o consentiti) oppure quello degli User-Agent (i software che manifestano la propria identità) non consentiti.
Bisogna  dire che entrambi i metodi sono soggetti a raggiro: uno spider può avere diversi IP e un User-Agent può essere simulato.

C’è poi tutta una sezione che “cura” le query string (quelle URL che al loro interno passano valori e parametri).
Il lungo lavoro della community è stato quello di filtrare le URL formate in maniera anomala facendo passare quelle corrette.
Nonostante qualche limite la validità di 5G Blacklist rimane. E’ un metodo semplice e alla portata di tutti per aumentare la sicurezza delle proprie applicazioni web.

Funziona perfettamente con WordPress.

Link: 5G Blacklist (qui la versione beta della 6G)

Moodle: problemi installazione

Pubblicato da

moodle-logo

L’installazione di Moodle, la nota piattaforma open source per l’ e-learning, è stata resa molto semplice tramite una procedura guidata.
Dopo aver uploadato tutti i file sul proprio host, ed aver creato preventivamente il database che ospiterà la piattaforma, basta collegarsi via web al dominio e la procedura parte in automatico.
Spesso, però, si incontrano problemi dovuti alla cartella dove devono risiedere i file inviati dagli utenti.
La cartella, che di default si chiama “moodledata”, deve essere creata al di fuori di quelle raggiungibili via web e deve avere permessi di lettura/scrittura.
Se non sono rispettate queste due condizioni la procedura guidata non va avanti.
I messaggi di errore più comuni informano che la cartella che contiene “moodledata” non ha i permessi di lettura e scrittura, oppure che la cartella stessa si trova in posizione non sicura

La posizione della Cartella dei dati non è sicura

Se per forza dobbiamo creare la cartella all’interno di quelle accessibili via web possiamo renderla non accessibile tramite la creazione di un file .htaccess da inserire all’interno di “moodledata” con queste istruzioni

order deny,allow
deny from all

Sfortunatamente la procedura d’installazione di Moodle non riconosce questa azione di “messa in sicurezza” della cartella e non ci fa andare avanti comunque.
L’unica alternativa che ho trovato è quella di modificare manualmente il file di configurazione.
Si trova nella root della cartella dove abbiamo messo i file di Moodle e si chiama config-dist.php .
Sostanzialmente dobbiamo solo inserire i dati riguardanti la connessione al db (tipo di db, nome del db, user del db e password)

$CFG->dbtype = ‘mysqli’; // ‘pgsql’, ‘mysqli’, ‘mssql’, ‘sqlsrv’ o ‘oci’ (quasi sempre mysqli)
$CFG->dblibrary = ‘native’; // ‘native’ only at the moment
$CFG->dbhost = ‘localhost’; // quasi sempre localhost
$CFG->dbname = ‘moodle’; // nome del database
$CFG->dbuser = ‘username’; // username del database
$CFG->dbpass = ‘password’;//password del database

poi decommentiamo (leviamo le //) l’istruzione riguardante la password SALT e inseriamo una trentina di caratteri casuali tra gli apici

$CFG->passwordsaltmain = ’34yt5734nd34y9y4yd34n9935&!!&%hrTH%$y@6&*1′;

infine indichiamo l’url dell’installazione Moodle e il percorso assoluto della famigerata cartella dati

$CFG->wwwroot   = ‘http://www.miodominio.it/moodle’;
$CFG->dataroot  = ‘/home/miodominio.it/moodledata’;

Il resto possiamo lasciarlo uguale.
Rinominiamo il file da config-dist.php a config.php e riaccediamo al dominio.
Vedremo che avremo saltato la fase dell’installazione su cui ci eravamo fermati e saremo passati a quella della prima configurazione.

Link: altre info sull’installazione di Moodle 2.4

Zurmo, il CRM Open Source che vive di community

Pubblicato da

Zurmo è un CRM open source scritto in PHP che utilizza JQuery, Yii, e RedBeanPHP .
La caratteristica principale che vuole raggiungere Zurmo è quella di una solida community che supporti, sviluppi e diffonda la piattaforma.
Sul sito, infatti, oltre ad essere dispobili tutorial, screencast e wiki per aiutare ad utilizzarlo nei suoi vari aspetti, viene data molta importanza al forum e alla live chat tra utenti.

Ad una prima occhiata sono presenti tutte le principali caratteristiche che si possano cercare in un CRM

  • gestione contatti
  • gestione attività
  • tracciamento progetti
  • gestione di utenti e gruppi
  • personalizzazione di campi e dati da inserire
  • traduzione in altre lingue (purtroppo manca l’italiano)
  • layout responsive per adattarsi anche ai dispositivi mobili

E’ presente anche una sezione in cui gestire la gamification per la “gratificazione” dei vari utenti. Ad esempio si può prevedere lo sblocco di un badge per il raggiungimento di determinati obiettivi di vendita per un agente.

Manca un catalogo prodotti impostabile dall’amministratore ma è una funzionalità prevista per l’ultima release del 2012. Per il resto, sempre nell’ambito di questa prima veloce occhiata, mi sembra un prodotto promettente che può affrancarci da soluzioni più costose. Sempre che non si abbiamo eccessive esigenze.

Link: Zurmo

Software gratuito di modellazione 3D

Pubblicato da

Seamless 3D è un software di modellazione 3D gratuito e open source.
Il software può essere utilizzato come un mesh editor e per produrre animazioni ma la sua caratteristica è la build node technology.
In sostanza questa tecnologia permette di eseguire operazioni complesse in tempo reale spostando i nodi di una struttura nella finestra 3D.
Altra particolarità è la chat integrata nel programma che fa interagire con gli altri utenti di Seamless 3D.
Si tratta di un vero e proprio mondo virtuale (tipo Second Life ma molto più semplice) in cui sono presenti gli avatar creati col programma. Interessante è la caratteristica che  gli altri utenti possono “parlare” grazie alla tecnologia TTS (Text-To-Speech) di Microsoft (necessita di .NET 3.5) che permette di leggere con voci elettroniche le chat.
In conclusione: non siamo ai livelli dei più celebri software commerciali di modellazione 3D ma l’utilizzo di Seamless 3D può rivelarsi una buona scuola prima di affrontare prodotti più sofisticati.

Link: Seamless 3D

Confrontare documenti e cartelle

Pubblicato da

WinMerge è uno di quei software che possono essere estremamente utili in determinate occasioni a far risparmiare molto tempo sul lavoro.
Spesso si ha la necessità di dover confrontare due documenti per capirne le differenze (può capitare quando ci sono più persone che lavorano ad un progetto e c’è poca organizzazione).
WinMerge confronta automaticamente i documenti evidenziandone le differenze tramite colori e grafica.
La modalità di visualizzazione a finestre parallele facilita questo lavoro, inoltre ci sono tool di inserimento automatico di brani da un documento all’altro e unione dell’uno nell’altro.
E’ possibile anche confrontare due cartelle. In questo caso vengono evidenziati i file che sono stati modificati.
WinMerge è un tool maturo ed efficiente anche se, purtroppo, non sembra essere più sviluppato dal 2009.
Non è disponibile in italiano.

Link: WinMerge

FocusWriter: l’editor di testo minimalista

Pubblicato da

Gli editor di testo si sono evoluti nel tempo per venire incontro alle esigenze sempre più avanzate degli utenti.
Microsoft Word ed OpenOffice.org Writer sono strumenti avanzatissimi per la scrittura. Spesso, però, la maggior parte delle funzionalità non vengono mai utilizzate.
Chi cerca un ambiente di lavoro molto più semplice,  a tutto schermo e magari con un bel paesaggio di sfondo può pensare di utilizzare FocusWriter.
Come dice stesso il nome, si tratta di un programma di scritttura focalizzato solo sul testo.
Disponibile per Linux, Windows e MAC OS X ha le seguenti caratteristiche:

  • salvataggio in TXT, RTF, ODT
  • Timer e allarmi
  • Obiettivi giornalieri
  • Temi completamente personalizzabili
  • Suoni battitura testo (optional)
  • Auto-salvataggio (optional)
  • Statistiche (optional)
  • Controllo ortografia (optional)
  • Supporto multidocumento
  • Sessioni di lavoro
  • Portabilità (optional)

Link: FocusWriter

 

Clonare il proprio hard disk con Clonezilla

Pubblicato da

Clonezilla è l’alternativa free e open source di software commerciali come Norton Ghost .
Lo scopo principale di questi programmi è il backup del sistema operativo e dei file, infatti è come se si creasse una vera  e propria istantanea dello status quo del proprio pc.
Questo può servire sia in caso di disastri sia se dobbiamo trasferire il nostro ambiente di lavoro su un nuovo pc.
A differenza dei software commerciali, Clonezilla ha una grafica più spartana ma è altrettanto semplice da usare.
Basta seguire le istruzioni a video (disponibili anche in italiano).
I file system supportati sono tantissimi

ext2, ext3, ext4, reiserfs, reiser4, xfs, jfs of GNU/Linux, (2) FAT, NTFS of MS Windows, (3) HFS+ of Mac OS, (4) UFS of FreeBSD, NetBSD, and OpenBSD, and (5) VMFS3/4 of VMWare ESX

ma anche quelli non supportati possono essere copiati settore per settore.

Clonezilla può essere utilizzato nella sua versione unicast (ad esempio da una penna USB) per un pc o multicast (da server) per più pc connessi.

Link: Clonezilla

Fatti il tuo DropBox!

Pubblicato da

SparkleShare è un programma open source che ci permette di avere sincronizzati sui vari dispositivi documenti, file e intere cartelle.
La novità di un programma come SparkleShare rispetto a DropBox è quella di poter utilizzare cartelle remote collocate dove ci pare: una specie di nuvola personale.
Se abbiamo sempre avuto qualche dubbio a lasciare dati sensibili su DropBox anche a causa di qualche falla di sicurezza che può emergere, possiamo pensare di utilizzare il nostro server come cartella remota per la sincronizzazione. O Github o Gitorous o The GNOME Project.
Attualmente SparkleShare funziona su Linux, Mac e Android ma a breve ci saranno le versioni per Windows e iOS.
Un progetto veramente interessante.

Link: SparkleShare

Gestire FTP, SFTP, Amazon S3, Google Storage, Windows Azure, Google Docs con un unico programma

Pubblicato da

Cyberduck è un programma gratuito e opensource che ci permette di avere un’unica interfaccia per gestire trasferimenti di file attraverso protocolli e sistemi diversi.
Più precisamente si può operare con FTP (File Transfer Protocol), SFTP (SSH Secure File Transfer), WebDAV (Web-based Distributed Authoring and Versioning), Amazon S3, Google Storage, Windows Azure, Rackspace Cloud Files e anche Google Docs.
Il vantaggio maggiore di Cyberduck è quello di sostituire i diversi programmi che normalmente si devono usare per accedere alle diverse risorse e di racchiudere tutto in una piacevole interfaccia.
Inoltre è possibile: scegliere quale editor di default utilizzare per la modifica dei file, compattare e scompattare da remoto, crittare con password.
Un prodotto molto interessante.

Link: Cyberduck

Giocare a Doom online

Pubblicato da

So perfettamente che la maggior parte di voi ha fatto ponte e quindi questo post è dedicato a chi è costretto a rimanere in ufficio.
Vi ricordate il padre di tutti i FPS? Sto parlando, ovviamente, di Doom. Personalmente non sono mai stato un grande fan di questo tipo di giochi e delle sue evoluzioni ma questa è una chicca che va oltre il gioco in sé.
Infatti ne è stata fatta un trasposizione web. Dal codice originale in C si è arrivati a JavaScript usando Emscripten e Clang e poi ottimizzato usando Closure Compiler.
Il risultato è un canvas HTML giocabile con i soliti tasti di Doom.
Funziona perfettamente su Firefox e Safari, maluccio su Opera e Chrome (immagino malissimo su IE).

Link: Doom on the Web