c'e' solo un modo di fare le cose: farle bene
L’Abruzzo è la mia regione, all’Aquila ho vissuto per 4 anni ai tempi dell’università, le immagini del terremoto scorrono su tutti i media. Io sono qui a chiedervi un contributo per le vittime.
L’iniziativa è nata su Bucchianico.net ed ho creduto giusto esportarla anche sul mio sito.
Dona qualcosa a chi non ha più niente.
Dopo la spettacolare settimana passata a Madonna di Campiglio eccomi di nuovo a casa e al lavoro pronto per aggiornare il sito.
Il comando più immediato e veloce per vedere tutte le porta aperte sulle nostra Linux box è questo:
netstat -lnp
L’output è bello corposo ma di facilissima comprensione.
Se volessimo vedere tutte le connessioni attive:
netstat -nat
Tutto troppo facile!:)
Se con il nostro port-scanner preferito (nmap nel mio caso) vediamo che abbiamo una porta aperta ma non sappiamo chi abbia compiuto un gesto così irrespondabile possiamo usare il comodissimo comando fuser che va eseguito con i privilegi di root:
fuser -v -n (tcp | udp)
Facciamo una prova su un server che ha Apache in esecuzione:
fuser -v -n tcp 80
Ecco l’output:
USER PID ACCESS COMMAND
80/tcp: root 19375 F.... apache2
www-data 23223 F.... apache2
www-data 24155 F.... apache2
www-data 26253 F.... apache2
www-data 26271 F.... apache2
www-data 26272 F.... apache2
www-data 26273 F.... apache2
www-data 26274 F.... apache2
www-data 26275 F.... apache2
www-data 26277 F.... apache2
www-data 26282 F.... apache2
Questo tool è utilissimo quando ci accorgiamo che c’è qualche porta non aperta da noi in ascolto, ed è quindi possibile risalire al processo in esecuzione che crea tale anomalia.
Quando si scrive un qualsiasi tipo di software capita spesso di imbattersi nelle espressioni regolari al fine di vigilare sull’input dell’utente o per estrapolarne dei dati.
Ho deciso di raccogliere le espressioni regolari per PHP più comuni, quelle che ho utilizzato di più nella mia “giovane” carriera da programmattore.
$email = "test@ideafactory.it";
if (preg_match('/^[^0-9][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[@][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[.][a-zA-Z]{2,4}$/',$email)) {
echo "OK";
} else {
echo "KO";
}
E’ importante ricordare che con le espressioni regolati si verifica solo la sintassi e non la semantica, quindi un indirizzo e-mail può essere ben scritto ma inesistente!.
$username = "user_name12";
if (preg_match('/^[a-z\d_]{5,20}$/i', $username)) {
echo "OK";
} else {
echo "KO";
}
La username, nel mio caso, deve essere composta da un minimo 5 ad un massimo di 20 caratteri e può contenere solo lettere, numeri e underscore “_”.
$IP = "198.168.1.7";
if (preg_match('/^(([1-9]?[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]).){3}([1-9]?[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$/',$IP)) {
echo "OK";
} else {
echo "KO";
}
$url = "http://www.ideafactory.it/";
if (preg_match('/^(http|https):\/\/([A-Z0-9][A-Z0-9_-]*(?:\.[A-Z0-9][A-Z0-9_-]*)+):?(\d+)?\/?/i', $url)) {
echo "OK";
} else {
echo "KO";
}
Un’ottima guida sulle espressioni regolari in PHP è quella fornita da HTML.IT presente qui.
Come la pubblicità di Maxbon ci ha insegnato, sappiamo che “two is meglio che one” quindi perché avere una sola scheda ethernet all’interno del nostro server se con due possiamo avere un ottima ridondanza di rete e/o un ottimo bilanciamento del carico? Vediamo di mettere sù un ethernet bonding, un sistema che la ho lo scopo di unire due flussi ethernet al fine di formare un unico canale.
Prima di procedere all’installazione del software necessario, vediamo le modalità operative del channel bonding:
Domenica la mia Xbox 360 ha smesso di funzionare.
L’ho accesa ed a caratteri cubitali ed in tantissime lingue, c’era scritto di contattare l’assistenza tecnica per via dell’errore E74.
Cerco su Google, provo varie soluzioni ma alla fine rassegnato mi decido a contattare l’assistenza Microsoft.
Numero verde, premo il tasto 1 e mi risponde una persona vera! Era domenica! Mi dice che devo spedire la mia console e di preparare un pacco neutro (niente scatola originale) perché UPS sarebbe passato il giorno dopo per il ritiro.
Incredibilmente così è stato! Lunedì è passato il corriere, mi ha dato l’etichetta da attaccare sul pacco, ho firmato la ricevuta e via…ieri il pacco è arrivato in Germania ed oggi la Microsoft mi ha scritto dicendomi che stanno lavorando sulla mia Xbox.
Che dire?! Voto 10 (fin ora) al customer care di Bill Gates.
18 lune e tante stelle... La #Neve è tutto! http://t.co/Zwg5fhky [gianlucagentile]
@AngelikaCoco presto capirai anche tu perché ne vale sempre sempre sempre la pena! Snowboard4Me? It's my life... [gianlucagentile]
Eh poi capisci che cos'è la felicità. #Neve [gianlucagentile]
Powered by Lifestream.
| L | M | M | G | V | S | D |
|---|---|---|---|---|---|---|
| « nov | ||||||
| 1 | 2 | 3 | 4 | 5 | ||
| 6 | 7 | 8 | 9 | 10 | 11 | 12 |
| 13 | 14 | 15 | 16 | 17 | 18 | 19 |
| 20 | 21 | 22 | 23 | 24 | 25 | 26 |
| 27 | 28 | 29 | ||||