Server Proxy e Reverse – Proxy

Proxy

Un server proxy( detto anche «server mandatario») è all’origine un terminale che svolge la funzione di intermediario tra i computer di unarete locale(che usa talvolta dei protocolli diversi dal protocollo TCP/IP) e internet.

La maggior parte delle volte il server proxy è usato per ilweb, si tratta allora di un proxyHTTP. Tuttavia possono esistere dei server proxy per ogni protocollo applicativo (FTP,…).

schéma d\'un intranet avec proxy

Il principio di funzionamento di un proxy

Il principio di funzionamento basico di un server proxy è abbastanza semplice: si tratta di un server “mandato” da un’applicazione per effettuare una richiesta su internet al suo posto. Così, quando un utente si connette a internet tramite un’applicazione client configurata per usare un server proxy, questa si connetterà in primo luogo al server proxy e gli darà la sua richiesta. Il server proxy si connetterà allora al server che l’applicazione client cerca di raggiungere e gli trasmetterà la sua richiesta. Il server risponderà in seguito al proxy, che a sua volta trasmetterà la risposta all’applicazione client.

fonctionnement d\'un serveur proxy

Le funzionalità di un server proxy

Ormai, con l’uso delTCP/IP nelle reti locali, il ruolo di collegamento del server proxy è direttamente assicurato dalle passerelle e dai router. Ciò nonostante, i server proxy sono sempre attuali grazie ad altre funzionalità presenti.

La funzione di cache

La maggior parte dei proxy assicura anche una funzione di cache (in inglesecaching), cioè la capacità di mantenere in memoria (in“cache”) le pagine visitate più di frequente dagli utenti della rete locale per poterle fornire il più rapidamente possibile. In effetti, in informatica, il termine “cache” designa uno spazio di stoccaggio temporaneo dei dati (il termine “tampone” è ugualmente usato).

Un server proxy capace di mettere nella memoria cache le informazioni è generalmente detto “serverproxy-cache“.

Questa funzionalità implementata in alcuni server proxy permette da una parte di ridurre l’uso della banda passante verso internet e dall’altra di ridurre i tempi di accesso per gli utenti ai documenti.

Tuttavia, per arrivare a questo risultato, è necessario che il proxy paragoni regolarmente i dati stoccati nella memoria cache con quelli remoti per assicurarsi che i dati in cache siano sempre validi.

Il filtraggio

D’altra parte, grazie all’utilizzo di un proxy, è possibile assicurare il controllo delle connessioni (in ingleseloggingtracking) mediante la costituzione di file di log logs che registrano sistematicamente le richieste degli utenti ad una loro richiesta di connessione a internet.

E’ quindi possibile filtrare le connessioni internet analizzando da una parte le richieste dei client, e dall’altra le risposte dei server. Quando il filtraggio è realizzato paragonando la richiesta del client ad una lista di richieste autorizzate, si parla di lista bianca, se invece si tratta di una lista di siti vietati si parla allora di lista nera. Infine l’analisi delle risposte dei server seguendo una lista di criteri (parole chiave,…) è dettafiltraggio di contenuto.

L’autenticazione

Dato che il proxy è l’intermediario indispensabile degli utenti della rete interna per accedere a delle risorse esterne, è a volte possibile usarlo per autentificare gli utenti, cioè di chiedere loro di identificarsi mediante un nome utente e una password ad esempio. Sarà quindi facile dare l’accesso alle risorse esterne solo alle persone autorizzate a farlo e di poter registrare nei file di log degli accessi identificati.

Questo tipo di meccanismo, una volta realizzato, pone ovviamente numerosi problemi relativi alle libertà individuali e ai diritti delle persone…

I reverse-proxy

Viene detto reverse-proxyun server proxy-cache “montato al contrario”, cioè un server proxy che permette non agli utenti di accedere alla rete internet ma bensì agli utenti di internet di accedere indirettamente ad alcuni server interni.

schéma de principe d\'un relais inverse (reverse proxy)

Il reverse-proxy serve anche da collegamento per gli utenti internet che desiderano accedere ad un sito web interno trasmettendogli indirettamente le richieste. Grazie al reverse-proxy, il server web è protetto dagli attacchi diretti dall’esterno, cosa che rinforza la sicurezza della rete interna. D’altra parte, la funzione di cache del reverse-proxy può alleggerire il carico del server per cui è previsto, ed è la ragione per cui un server simile è talvolta detto » acceleratore « (server accelerator).

Infine, grazie a degli algoritmi perfezionati, il reverse-proxy può servire per ripartire il carico reindirizzando le richieste verso diversi server equivalenti; si parla allora di ripartizione del carico(in ingleseload balancing).

Realizzazione di un server proxy

Il proxy più diffuso è senza dubbio Squid, un software libero disponibile su numerose piattaforme tra cuiWindows eLinux.

Su Windows esistono più software che permettono di realizzare un server proxy ad un costo minore per la sua rete locale :

  • Wingate è la soluzione più diffusa (ma non gratuita)
  • la configurazione di un proxy con Jana server diventa sempre più di uso corrente
  • Windows 2000 integra Microsoft Proxy Server (MSP), completata da Microsoft Proxy Client, che permette di realizzare questa operazione

Incubo di una notte di mezza prescrizione

Ieri notte ho avuto un incubo. Uno di quelli che sembrano più veri del vero, di quelli che ti svegli tutto sudato nel cuore della notte.

Ho sognato il 2006 e la Juventus sotto processo. Ho sognato l’angoscia di quei momenti, il senso di stupore, che diventava depressione e poi dubbio. Ho sognato di interisti con la bava a bordo mento e ho visto le aule processuali assaltate come il forno delle grucce. Ho sognato titoli di giornali, salotti televisivi, ipotesi/speranze di condanna. Poi, pensate cosa ho sognato, ho sognato la sentenza: Juventus, Milan, Lazio e Fiorentina penalizzate di 20 punti. 20 punti e morta lì.
Ho sognato l’indignazione nerazzurra, lo stupore dei giornalisti, ho visto urlatori televisivi mordersi la lingua, ho letto venefici editoriali gazzettati, ho ascoltato furenti controcampi e l’esplodere dei soliti sospetti su quella Triade che la fa sempre franca.
Bla bla bla, parlate pure quanto volete. Volevate la B, maledetti corvacci.

Poi però ho sognato la parte peggiore: l’Inter vinceva il campionato post-scandalo (come lo chiamavano loro…) e anche quello successivo. D’altra parte, con quelle penalizzazioni è stato difficile fare mercato. Ho sognato la glorificazione interista come unica squadra incorruttibile del globo terracqueo. Mi son visto Moratti medagliato come un Montecuccoli, magnificato in patria e ossequiato all’estero come emblema del calcio pulito. Era dappertutto: idolo dei giapponesi per l’irresistibile fascino con cui pronunciava la parola “antipatico” (vocabolo che avrebbe col tempo sostituito kawai nella lingua del Sol Levante) e novello ceghevara per i pobres sudamericani, che ammiravano in lui il trionfo della virtù in barba all’arroganza dei potenti. Ho anche sognato giornalisti stilare agiografie e sperticarsi in paragoni: dal Conte di Carmagnola a Calimero, passando per Paperino (nel senso buono, di eroe positivo) e Maria Goretti.
E ho sognato, per questo, di essere incazzato, tremendamente incazzato. La nostra storia sporcata e quelli là, inattaccabili, a godere di ogni gloria e riverenza. Al bar un incubo: persino juventini a dirmi che, alla fine, era andata bene così e che bisognava voltare pagina. Per me, come per alcuni altri, invece era stata un’ingiustizia. Ci avevano fatto pagare colpe mai commesse sulla base di intercettazioni interpretabili, incomplete e fuori contesto. Mi sono sognato mentre spulciavo i libri neri del calcio, quei due Necronomicon pieni di numeri, virgolette e puntini di sospensione. Ho sognato che alcuni tifosi particolarmente rancorosi mi contattavano per mettere in piedi un sito dove rivendicare le nostre ragioni e far sentire la nostra, seppur piccola, voce. Qualche folle, addirittura, aveva avuto l’idea di interpellare un illustre avvocato per proporre un ricorso contro le decisioni della giustizia sportiva.
Ma tutto poi era finito in niente: troppo lavoro, troppa fatica. Anche la Triade aveva subito il colpo e alla fine aveva mollato: le continue pressioni e gli incessanti riferimenti a quella o quell’altra telefonata avevano spinto Moggi, Giraudo e Bettega ad andarsene per altri lidi. Al processo penale avevano puntato tutto sulla prescrizione e, dopo molti anni di tiritere e lungaggini burocratiche (culminate con l’assai poco onorevole tentativo di ricusare il giudice), l’avevano ottenuta.
Il calcio giocato era un’attrattiva troppo forte e il baraccone si era rimesso in moto.
Era finita: la Juve rubava. E se l’era pure cavata con poco.

Dannazione, mi sentivo soffocare. Non poteva essere. Sarebbe andata avanti per anni. Peggio del gol di Turone e dei guanti di Aldair. Non era un incubo, era molto peggio. Perché non c’era via d’uscita.
Come avrei raccontato ai miei figli di questa magnifica passione? Avrei potuto dar loro qualsiasi interpretazione, ma la carta avrebbe pur sempre cantato più forte di me: c’era una sentenza che parlava chiaro e tonnellate di articoli, elzeviri e servizi televisivi a far da triste contorno.
Giuro, avrei preferito piuttosto scendere in serie B. Mi sarebbe stata meno dolorosa la revoca di uno (o due) scudetti. Che Iddio mi fulmini, avrei preferito persino una proprietà che si autoaccusasse. Per rendere evidente l’ingiustizia e avere la possibilità di scoprire la verità su quanto accaduto. Il popolo juventino si sarebbe mobilitato, avremmo potuto farci sentire, rompere le scatole. Avremmo potuto unirci, incontrarci, conoscerci e riaffermare la nostra indistruttibile juventinità. Sarebbe stato bello conoscere altri come me…

Poi, improvvisamente, mi sono svegliato.
Era un maledettissimo incubo!
Ancora mezzo addormentato accendo il computer e mi collego ad internet. Colto da un angosciante dubbio, voglio controllare. Voglio essere sicuro di essere sveglio e che tutto è assolutamente reale. Nessuna voce amica però. La notizia – se è vera – sarà dappertutto. Da un forum interista leggo:

Facchetti è stato AMMAZZATO da Palazzi.
Lo ha giudicato colpevole di violazione del ARTICOLO 6.
Moggi invece condannato PER SOMMA DI ART. 1.
Quindi Facchetti era peggio di Moggi.
Un’infamia totale. Una vergogna senza limiti.

Se lo dicono loro, allora è vero. Caspita, la realtà certe volte è molto meglio dei sogni

Come sembrare un hacker

inet Come sembrare un vero hacker

Si vedono di solito nei film e sono i classici hacker che battono sulla tastiera alla velocità della luce scrivendo del codice. Il sito hackertyper vi permette di fare un simpatico scherzo a qualche amico. Apritelo con il vostro browser, magari nascondendo la palette e gli strumenti tipici del browser, e chiamate il vostro amico. Non appena questo arriva alle vostre spalle, iniziate a battere a caso sulla tastiera e guardate il risultato!

 

VirusTotal

Fonte: http://www.bybab.com/sicurezza-online/1020/effettuare-scansione-antivirus-online-con-virustotal/

 

Il sito VirusTotal, ora tradotto anche in italiano, ci offre questo servizio a titolo gratuito. Oltre al controllo on-line, è possibile inviare un file via e-mail della grandezza massima di 10 MB.

Premete Sfoglia e selezionate il file che volete far analizzare. Quindi premete Invia File.

Vt1.jpg

Attendete qualche momento, a seconda delle dimensioni del file da caricare.

Vt2.jpg

In certi momenti della giornata, l’attesa potrebbe essere molto lunga; in questo caso, potete inviare il file via e-mail o riprovare più tardi.

Sebbene vi avvisino che potrebbero anche sbagliare, il grado di identificazione dei virus è molto alto e quindi il servizio offerto è più che affidabile.

Vt3.jpg

A questo punto, vi viene fornito il risultato dell’analisi.

Come potete vedere, quello che segue è il risultato finale: il virus è stato riconosciuto quasi da tutti gli antivirus, magari con un nome diverso, ma avete la certezza che quel file è infetto.

Vt4.jpg

Talvolta, nelle foto potete vedere nomi diversi per lo stesso virus. Ciò accade perché ogni casa utilizza il proprio “alias“, cioè stesso virus, ma con nome differente.

Premendo il pulsante Formattato, potrete passare ad un formato pagina più compatto.

Vt5.jpg

Questo servizio non elimina il virus, se presente, ma almeno vi dà la certezza che avete un problema, identificando il vostro “nemico”.

È possibile integrare nel menu Invia a un piccolo eseguibile, che permette di inviare direttamente i file sospetti al controllo di VirusTotal, senza neanche dover aprire il browser.

Il file è scaricabile da questa pagina. Questo, invece, è il link diretto al file.

Una volta installato, basterà selezionare il file, cliccarvi sopra con il tasto destro del mouse, aprire il collegamento ad Internet, selezionare Invia a e scegliere VirusTotal.

Upvt1.jpg

Si avvierà l’upload del file.

Upvt2.jpg

A questo punto, basterà attendere il risultato della verifica per sapere se il nostro file sia o meno infetto.

 

 

Monitorare performance di Apache con mod_status

E’ possibile monitorare il funzionamento di Apache con diversi strumenti.

Log di Apache
Sono il primo posto dove indagare in caso di problemi. Generalmente vengono scritti in una directory tipo /var/log/httpd, comunque nel file di configurazione la loro posizione è definita con le direttiveAccessLogErrorLog.
Con la direttiva LogLevel è possibile modificare il livello di logging.

Opzioni di invocazione
httpd -V Mostra i parametri usati in fase di configurazione
httpd -l Mostra i moduli compilati direttamente nel file httpd.
httpd -L Mostra le direttive che possono essere usate con i moduli direttamente compilati.
httpd -t Esegue un test sulla configurazione di Apache.

Server-status e Server-info
Sono container speciali che permettono di visualizzare direttamente via web informazioni:
http://www.sito.com/server-status/ – Mostra lo stato del server.
http://www.sito.com/server-info/ – Mostra informazioni sulla configurazione usata e i moduli presenti.

Comandi di Sistema
ps -adef | grep httpd – Elenco dei processi Apache in esecuzione
netstat -natup – Elenco delle connessioni di rete in ascolto e attive.
ldd /usr/sbin/httpd – Mostra le librerie condivise usate dal binario indicato.
strace -p PID – Traccia le system call del processo indicato.
lsof | grep httpd –  Visualizza tutti i file aperti dal processo http

Sono disponibili vari strumenti per monitorare e capire il funzionamento di Apache, il suo stato e quello che sta facendo.

Log di Apache
I log di Apache sono il primo posto dove cercare la soluzione di problemi (oltre che, ovviamente, analizzare il traffico Web sul sito). Di default sono in/usr/local/apache/logs ma se si è installato Apache tramite un RPM li si potranno trovare in /var/log/httpd o comunque dove specificato nel file di configurazione principale (verificare la direttiva ErrorLog e definire la verbosità dei log con LogLevel (per diagnostica mettere LogLevel debug per il massimo della verbosità, in condizioni normali lasciare LogLevel warn).

Server-status e Server-info
Apache fornisce due moduli che permettono all’amministratore di visualizzare informazioni utili in tempo reale.
Server-status mostra info sulle connessioni esistenti, l’uptime del server, il traffico generato, la CPU impegnata, la versione di Apache. E’ possibile avere lo status sia in modalità normale che in modalità estesa, dove per ogni connessione si vedono maggiori informazioni. Di default, se abilitato, si trova suhttp://www.sito.com/server-status/
Server-info fornisce dettagliate informazioni sulla configurazione di Apache e sulle direttive relative ad ogni singolo modulo. Di default, se abilitato, si trova suhttp://www.sito.com/server-info/

Opzioni di invocazione
Anche le opzioni che possono essere passate ad Apache, eseguendo httpd danno informazioni utili:
httpd -V Mostra il numero di versione, e i parametri usati in fase di configurazione
httpd -l Mostra i moduli compilati direttamente nel file httpd.
httpd -L Mostra tutte le direttive che possono essere usate con i moduli direttamente compilati (vengono escluse tutte quelle che sono fornite dai moduli caricabili dinamicamente).
httpd -t Esegue un test sulla configurazione di Apache e segnala eventuali errori di sintassi.

Variabili d’ambiente
Apache setta ed utilizza una serie di variabili d’ambiente che possono essere utilizzate da script CGI, PHP, Perl o trattate in sede di configurazione per gestire il comportamento del server sulla base dell’ambiente generale e delle singole connessioni. Per visualizzarle esistono vari metodi indiretti, per esempio uno è quello di utilizzare PHP all’interno di pagine HTML: <?php echo $REMOTE_ADDR ?> visualizza l’IP del client remoto.

Apache fornisce la possibilità di monitorare in tempo reale, direttamente via web, il suo stato, l’uptime, il tempo di CPU occupato, le connessioni che sta gestendo, i processi child in esecuzione e altre informazioni utili.

Questa funzionalità è fornita dal modulo mod_status che prevede delle specifiche direttive utilizzabili con una configurazione simile:
<Location /server-status>
SetHandler server-status
Order deny,allow
Deny from all
Allow from .dominio.it
</Location>

Con questo esempio viene definita una Location accessibile all’url: http://www.dominio.it/server-status/ in cui vengono visualizzate informazioni varie sullo stato del server Web. In questo caso l’accesso è consentito solo da host nel dominio.it. Lasciando solo la riga SetHandler server-status si lascia accessibile a tutto il mondo la location server-status (opzione generalmente non consigliabile, in quando vengono visualizzate informazioni utili anche a potenziali intrusori).
Se si specifica, nella configurazione la direttiva ExtendedStatus On le informazioni fornite sono molto più dettagliate (per ogni connessione vengono indicati IP e porta del client, PID del child che la gestisce e altre info).
Su server in produzione ad alto traffico è consigliabile NON usare l’ExtendedStatus che appesantisce e rallenta il sistema.
E’ possibile aggiornare automaticamente la visualizzazione dello status di un server digitando sul browser un ULR tipo:
http://openskills.info/server-status?refresh=3 (la pagina viene aggiornata ogni 3 secondi).
E’ anche possibile visualizzare lo status da shell Unix, con: apachectl status (si deve aver installato il browser testuale Lynx sul server o, se si ha solo Linksavere un link simbolico di /usr/bin/lynx che punta a /usr/bin/links).

Apache può fornire molte informazioni sui moduli utilizzati e le direttive supportate.

Tramite il modulo mod_info è possibile abilitare la funzionalità server-info e visualizzarne le informazioni del caso in un URL tipo http://www.dominio.it/server-info con queste righe nella configurazione generale:
<Location /server-info>
SetHandler server-info
</Location>

All’URL indicato si possono visualizzare molte informazioni utili sulla configurazione di Apache al momento in cui è stato eseguito. In particolare è interessante la possibilità di vedere quali direttive sono utilizzate nella configurazione e quali sono i moduli che le forniscono.
Anche in questo caso le informazioni visibili sono piuttosto sensibili dal punto di vista della sicurezza, per cui è fortemente consigliato limitare l’accesso all’URL server-info da IP trusted.
<Location /server-info>
SetHandler server-info
Order deny,allow
Deny from all
Allow from 192.168.5.1 192.168.5.2
</Location>

Clonare una macchina VirtualBox

image

Copiare semplicemente la cartella del server non basta perchè non si possono avere due macchine con lo stesso UUID

Cannot register the hard disk ‘PATH’ with UUID {id goes here} because a hard disk ‘PATH2’ with UUID {same id goes here} already exists in the media registry (‘PATH to XML file’).

C’è un comando da CLI che ci permette di clonare un disco senza problemi :

VBoxManage clonehd “Disk1.vdi” “Disk1_Copy.vdi”

VBoxManage lo trovate all’interno dela cartella di installazione di VirtualBox

Nel caso remoto in cui il problema persista forzare il cambio di UUID con questo comando :

VBoxManage internalcommands setvdiuuid “MyCopy.vdi

Ubuntu 10.04 php version da 5.3 a 5.2

L’ultima versione LTS del sistema operativo in uso in azienda prevede nei repository ufficiale l’uso del php versione 5.3.
Purtroppo, in azienda abbiamo dei software che hanno bisogno ancora della versione del php 5.2.

Ecco una rapida soluzione per forzare l’installazione del php dalla 5.3 alla 5.2 utilizzando i reposittory di Karmic :

#!/bin/sh

# Script to install PHP 5.2 from 9.10 on 10.04
# And pin it so it does not get updated

PKGS=`dpkg -l | grep php | awk '{print $2}'`

apt-get remove $PKGS

sed s/lucid/karmic/g /etc/apt/sources.list | 
  tee /etc/apt/sources.list.d/karmic.list

mkdir -p /etc/apt/preferences.d/

for PACKAGE in $PKGS
do
  echo "Package: $PACKAGE
Pin: release a=karmic
Pin-Priority: 991
" | tee -a /etc/apt/preferences.d/php
done

apt-get update

apt-get install $PKGS

WhatWeb

WhatWeb è uno strumento per la riga di comando che serve a prendere in brevissimo tempo molte informazioni sull’host interessato.

Gli elementi monitorabili spaziano da semplici aspetti come il server Web fino ad arrivare a quale versione del CMS o quale strumento Javascript di uso comune viene rilevato.
Un utile strumento per verificare quali informazioni esponiamo all’esterno.

L’output del comando è per gli amanti della shell: ecco un esempio :

Vediamo come installarlo su ubuntu e provarlo su qualche sito.
La prima cosa da fare, è scarica il pacchetto da qui
Ed installiamo le librerie :

tar xvfz what*
cd ./wh*
sudo apt-get install ruby
sudo apt-get install libxslt-ruby
sudo apt-get install libxslt1-dev
sudo apt-get install rubygems
sudo apt-get install libopenssl-ruby
sudo apt-get install ruby1.8-dev
sudo gem install anemone