Browsing Posts in Apache

Validazione email – Email validation:
^[_a-zA-Z0-9-]+(.[_a-zA-Z0-9-]+)*@[_a-zA-Z0-9-]+(.[_a-zA-Z0-9-]+)*(.[a-z]{2,3})$

Parsing file di log di Apache – Apache log parsing:
(\d+\.\d+\.\d+\.\d+) (-|\w*) (-|\w*) \[(\d+\/\w+\/\d+):(\d+:\d+:\d+) -(\d\d\d\d)\] "([^"]*)" (\d+) (-|\d+) "([^"]*)" "(.*)"\s*\Z

se utilizzate python è estremamente utile compilare l’espressione regolare che ho appena scritto in questo modo:
myregex = re.compile('(?P\d+\.\d+\.\d+\.\d+) (?P-|\w*) (?P-|\w*) \[(?P\d+\/\w+\/\d+):(?P

in questo modo utilizzando questo codice:

log = self.regex.match(row)
log_line = log.groupdict()

nella variabile log_line otterrete un dizionario contenente come chiavi i valori che avete inserito nella fase di compilazione come ?P e come valore la relativa sottostringa, ad esempio log_line['ip'] = valore ip .

Il furto di banda o hotlink è un problema che affligge tutti coloro i quali gestiscono almeno un sito web, e si tratta di quella esecrabile pratica adottata da utenti della rete e da altri webmaster di inserire nelle pagine dei loro siti, blog, forum e quant’altro le immagini del nostro sito linkandole direttamente senza scaricarle.

In questo modo praticamente ad ogni richiesta della loro pagina web viene consumata la nostra banda per scaricare le immagini rubate, si potrebbe considerare l’hotlinking come un vero e proprio furto, poiché la banda consumata dal ragazzaccio a noi proprietari di siti costa denaro (e molto!).

Per risolvere il problema esiste però una possibilità che ci è offerta dal mod_rewrite di Apache, in pratica questa tecnica consente di bloccare le richieste esterne al nostro sito delle immagini, o di cambiare le richieste con altre richieste scelte da noi (quest’ultima frase è volutamente criptica perché non vi voglio rovinare la sorpresa).

Passiamo alla fase pratica continue reading…

L’URL rewriting è quella tecnica che vi permette (server consentendo), attraverso l’uso di particolari istruzioni nei file .htaccess, di trasformare gli indirizzi dei vostri siti dinamici, umanamente illegibili ed ancor peggio inaffidabili per gli spider, in un formato utile all’indicizzazione nei motori e alla memorizzazione degli utenti.Per farvi capire cosa sono le pagine dinamiche, diciamo che voi avete il vostro bel forum nella barra degli indirizzi presenta l’url in un formato caratterizzato dalla presenza di molte variabili (sono tutte quelle voci che seguono il ?) che via via che vi aggirate nel sito cambiano in funzione del punto dove vi trovate.

Dal punto di vista di quei simpatici ragnetti dei motori di ricerca questi url sono la cosa pi� pericolosa che esista, difatti nulla assicura allo spider che seguendo questi indirizzi riuscirebbe ad indicizzare correttamente il sito ad esempio supponiamo che voi abbiate un sito con due sole pagine index.php e spidertrap.php, e che per qualche motivo index contenga un link a spidertrap utlizzando un indirizzo nel formato sito/spidertrap.php?SID=84duryreyey e spidertrap contenga un link a index sempre nel formato di prima, dove SID � la variabile che contiene l’id di sessione del vostro visitatore, quello che potrebbe succedere, ad ogni nuova visita degli spider, è che seguendo i link tra le due pagine, lo spider cadrebbe in un loop nel quale ad ogni nuovo accesso SID avrebbe un valore diverso da quello precedente, inducendo così lo spider a pensare di trovarsi difronte ad una pagina mai indicizzata, ottenendo così un’indicizzazione infinita.

La norma per gli spider è quindi quella di non considerare i parametri negli url, (o almeno tralasciarne buona parte) riducendo così la profondità di indicizzazione nei vostri siti.

Proprio in ragione di questo interviene l’url rewriting che consente di riscrivere gli indirizzi che contengono parametri in indirizzi nel formato: sito/param1/param2/param3/pippo.php o in quasi qualunque altra forma vi venga in mente, consentendo così agli spider di attraversare tutto il vostro sito, oltre che ai vostri utenti di rintracciare una pagina interna senza diventare matti.

Il post potrei dichiararlo concluso qui, non mi metterò a spiegare come vanno scritte le regole per l’url rewrite, ma se qualcuno fosse particolarmente interessato potrei pensare di scrivere un nuovo post.

Consiglio a tutti gli interessati di leggersi questo articolo se potete usare .htaccess sul vostro server:

http://pro.html.it/articoli/id_219/idcat_28/pag_3/pag.html

mentre quest’altro se non vi viene concesso:

http://freephp.html.it/articoli/view_articolo.asp?id=61

Originariamente questa testo è stato pubblicato da me sul forum del sito AlVerde.net, a questo indirizzo potrete leggere la versione originale:
http://www.alverde.net/forum/topic.asp?TOPIC_ID=6866&whichpage=1

Salve a tutti, questo che vi propongo è uno script in python, che ho scritto recentemente, in grado di analizzare i log prodotti dal web server apache (nel formato standard ip – - [data] – richiesta) e di estrarre da questi, per ciascun ip, l’intera storia delle sue richieste.

Impostando un valore soglia per il numero di richieste da analizzare, è possibile sfruttare questo tool per la ricerca di indirizzi ip che stanno tentando dos attack o che eseguono comunque un numero di richieste fuori dalla norma.

Lo script va eseguito passandogli come parametri il nome del file di log e il valore soglia, a questo punto dopo l’analisi creerà una cartella con all’interno tutti file di testo il cui nome sarà composto dal numero delle richieste e dall’indirizzo ip del richiedente, e che conterranno l’elenco dettagliato delle richieste fatte.

E’ importante notare che i file prodotti sono ancora fedeli allo standard dei log di apache, risultano quindi ulteriormente analizzabili con altri software più specifici come awstats.

Il codice dello script è il seguente (download):

Error: Could not open logAnalyzer.py