Generare uman password con PHP

1 luglio 2010 - Fonte: http://ideafactory.it

Gia immagino le facce dubbiose di chi sta leggendo questo post. Concordo che la password debba essere complessa al fine di evitare o quanto meno rallentare un brute force, ma spesso se la password è troppo ostica da ricordare viene scritta su un post-it e messa in bella mostra sul monitor! :)

Ecco il codice di una bella funzione PHP che genera delle comode human password:

function humanPass($length = 8) {
$password = '';
$conso=array('b','c','d','f','g','h','j','k','l','m','n','p','q','r','s','t','v','w','x','y','z');
$vocal=array('a','e','i','o','u');...

Leggi il seguito »

mysqltuner: migliorare le performance di MySQL

22 giugno 2010 - Fonte: http://ideafactory.it

MySQLTuner è uno script Perl che in analizza il server MySQL e suggerisce le impostazioni migliori basandosi sulle statistiche di utilizzo del server.

Premesso che MySQLTuner non fa miracoli ma semplici ottimizzazioni, vediamo come installarlo:

apt-get install mysqltuner

Adesso con un semplice mysqltuner lanciamo il nuovo tool:

>> MySQLTuner 0.9.0 - Major Hayden
>> Bug reports, feature requests, and downloads at http://mysqltuner.com/
>> Run with '--help' for additional...

Leggi il seguito »

Java 6 su Ubuntu 10.4 Lucid Lynx

4 maggio 2010 - Fonte: http://ideafactory.it

Proprio ieri ho aggiornano la mia workstation linux based ad Ubuntu 10.4 ed oggi Eclipse lamentava l’assenza di Java! :(

Ecco la soluzione:

sudo add-apt-repository "deb http://archive.canonical.com/ lucid partner"
sudo apt-get update

Finito! Adesso scegliamo il package più adatto tra sun-java6-jdk e sun-java6-jre.
Io ho optato per un secco:

sudo apt-get install sun-java6-bin

Bye bye

...

Leggi il seguito »

ZRM for MySQL: la soluzione definitiva per il backup di MySQL

25 marzo 2010 - Fonte: http://ideafactory.it

La maggior parte delle applicazioni (specie quelle web) utilizzano come backend un database.

Il database più diffuso in ambito opensource è MySQL forse perché fa parte del mitico quartetto LAMP o semplicemente perché all’epoca era il dbms più veloce della storia… Chissà quale sarà il futuro di MySQL, ma in questo post è meglio parlare del presente.

Di solito chi ha a che fare con MySQL e vuole salvare i preziosi dati contenuti al suo interno, effettua un backup del database (o dei databases) e salva il dump da qualche parte.
Nulla da eccipere a questo modus operandi.
Ma se il db è grande quanto spazio occupa un backup? Quanto tempo ci si impiega a fare un dump?
Mi è capitato che durante un backup di MySQL l’utilizzo delle...

Leggi il seguito »

Gestire il failover della connessione

25 febbraio 2010 - Fonte: http://ideafactory.it

Dopo l’intervento al ginocchio, eccomi di nuovo a scrivere su IdeaFactory e voglio iniziare scusandomi con tutti quelli che mi hanno scritto o contattato via Facebook e non hanno ancora ricevuto risposta.

Purtroppo non è facile stare seduti davanti ad un PC (anche se è un bel iMac) dopo un intervento al ginocchio.

Ma veniamo all’articolo. Forse il titolo non rende l’idea ma l’argomento di oggi risponde a questa domanda: avendo due connessioni ad Internet collegate alla mia Linux box che funge da router, come faccio a gestire il fail di una delle connessioni inoltrando...

Leggi il seguito »

Cambiare l’editor di default in Debian Lenny

10 gennaio 2010 - Fonte: http://www.ideafactory.it

L’editor di default di Debian Lenny è Nano. Io non ho niente contro Nano ma preferisco Vi, quindi, quando il mio server utilizza un editor, ad esempio quando viene richiamato un crontab -e, voglio il mio editor prferito.

Ci sono due strade percorribili, una è la Debian Way l’altra è quella maccheronica. Descriverò quella alla Debian Way e lascio ai commenti l’opportunità di descrivere quella maccheronica!:)

Con il comando update-alternatives –config editor vien fuori:

Ci sono 5 alternative che forniscono `editor'.
Selezione Alternativa
-----------------------------------------------
1 /bin/ed
+ 2...

Leggi il seguito »

ServerSignature di Apache

9 gennaio 2010 - Fonte: http://www.ideafactory.it

In un precedente articolo ho descritto come Modificare l’header di Apache, in questo articolo  vediamo come non mostrarlo affatto.

Molto probabilmente richiamando una URL inesistente o non gestita dall’applicazione che risiede sul nostro server, viene fuori qualcosa del genere:

ServerSignature di Apache

In base a quanto descritto nell’articolo ...

Leggi il seguito »

Sessioni SSH che cadono? Risolviamo!

4 gennaio 2010 - Fonte: http://www.ideafactory.it

Spero che tutti quelli che leggono IdeaFactory fanno uso di SSH per la connessione remota ai server. Non usate ASSOLUTAMENTE telnet o simili! I motivi sono ovvi…

Fatta la breve ma doverosa premessa veniamo al dunque.

Può capitare di ritrovare la propria sessione SSH terminata a causa di timeout per mancato utilizzo, come si risolve tutto ciò? Basta editare il file /etc/ssh/ssh_config (su sistemi Debian based) ed inserire questi parametri:

TCPKeepAlive yes
ServerAliveInterval 5
ServerAliveCountMax 60

Così facendo il client SSH terrà viva la connessione al server e quindi noi possiamo andarci a fare un meritato bagno caldo.

...

Leggi il seguito »

My traceroute: ping+traceroute=mtr

31 dicembre 2009 - Fonte: http://www.ideafactory.it

Ieri per purissimo caso ho scoperto l’ennesimo utilissimo comando da linea di comando: mtr.

Usiamo molto spesso traceroute e quotidianamente ping, con mtr li abbiamo entrambi e l’utilità è di facile spiegazione.

Spesso capita che il nostro adorato server dedicato non è raggiungibile per problemi di rete dovuti ai molteplici router intermedi, con mtr possiamo monitorare tutti gli hop intermedi e verificare ciò che accade quando li si attraversa.

Visto che è di certo l’ultimo post del 2009, vi aguro un felice anno nuovo!

p.s.: un ringraziamento a Iuri per avermi fatto notare mtr.

...

Leggi il seguito »

Limitare il numero di connessioni in ingresso

30 dicembre 2009 - Fonte: http://www.ideafactory.it

Il vostro adorato server vuole andare in ferie? Troppe richieste in arrivo? Bene limitiamole con iptables:

iptables -N rate-limit
iptables -A rate-limit -p tcp -m conntrack --ctstate NEW -m limit --limit 3/min --limit-burst 3 -j RETURN
iptables -A rate-limit -j DROP
iptables -I INPUT 1 -p tcp --dport 80 -j rate-limit

Cosa fa tutto ciò? Vediamolo in dettaglio…

Con “iptables -N rate-limit“, viene creata una nuova catena nella tabella di default che è quella “filter“.

Attraverso il connection tracking (modulo conntrack), diciamo a netfilter di limitare il numero di connessioni della catena “rate-limit”...

Leggi il seguito »