c'e' solo un modo di fare le cose: farle bene
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.
Come avrete notato ho cambiato (di nuovo) veste al sito, questa volta però sono contento: il tema mi ricorda la mia tavola e quindi mi piace tantissimo!.
Sfogliavo Smashing Magazine e rovistando a fondo ho trovato la recensione di questo layout per WordPress, il tempo di caricarlo via FTP, aggiungerci qualche plug-in, come ad esempio quello necessario per il lifestream, ed ecco il mio nuovo sito!
Che ve ne pare?
p.s.: i colori non vi ricordano il logo Debian?
Stufi del Client FTP tradizionale ed in cerca di “qualcosa” che monti lo spazio FTP del nostro provider nella nostra Linux box?
La soluzione si chiama: CurlFtpFS.
Installiamolo:
apt-get install curlftpfs
E’ importante caricare il modulo di fuse:
modprobe fuse
Montiamo la partizione remota FTP:
curlftpfs -o allow_other ftp://<user>:<pass>@<host_ftp> <directory_di_mount>
Per per montare la partizione all’avvio impostiamo fstab aggiungendo questa riga:
curlftpfs#<user>:<pass>@<host_ftp> <directory_di_mount> fuse rw,uid=500,user,noauto 0 0
Fine!:)
Ecco le caratteristiche principali di CurlFtpFS:
Gianluca dai che domani è sabato!
Gianluca si lo ammetto sono razzista, odio le ex.L'unica razza per cui nemmeno l'Onu muoverebbe un dito in caso di estinzione. Esseri spregevoli e abietti senza eguali.
Gianluca le belle donne sono invisibili,vedi solo la bella facciata,ti blocca la barriera della bellezza. Ammagliati dall'aspetto esteriore non arriviamo mai al mondo interiore e se mai accade uno dei due rimane deluso.
Powered by Lifestream.
| L | M | M | G | V | S | D |
|---|---|---|---|---|---|---|
| « lug | ||||||
| 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 | 30 | |||