Apriamo le macchine alla rete



Rimane l'ultimo problema: come possiamo far raggiungere guest_web dall'Internet?

Poniamo che il router esegua il NAT tra l'indirizzo IP pubblico statico 80.80.80.24:80 e l'indirizzo IP locale di host (DMZ: 192.168.0.24:80), ovvero, a seguito dell'immissione da browser remoto di http://80.80.80.24 (o URL corrispondente, quale ad esempio http://www.mioserverhost.com, se vi è corrispondenza nome-IP), risponde il nostro host (una volta che vi sia stato installato Apache).

Ho espressamente indicato che il NAT, cioè, come abbiamo capito, la traslazione degli indirizzi IP, viene abilitato per il server Web solamente per la porta 80, dacché normalmente così avviene, essendo le rimanenti porte chiuse a livello di firewall.

Ok, ma come fare per raggiungere, invece, guest_web? Semplice: mediante host stesso che funge da proxy di livello applicativo (reverse proxy).

In tal modo client e guest_web sono divisi da una ulteriore entità che si incarica di gestire lo scambio delle informazioni; quest'entità è Apache dell'host stesso. In sintesi, il browser remoto si connette al reverse proxy (Apache di host), il quale rindirizza la comunicazione HTTP (TCP su porta 80) verso un altro Apache, quello che gli verrà indicato nel suo file di configurazione, virtual host per virtual host. Per il browser è come se il web server di origine fosse l'Apache di host, anche se così non è.

Tale soluzione aumenta ulteriormente la sicurezza dell'insieme, in quanto dall'Internet si avrà accesso diretto al solo sistema host, e non a server_web. Di conseguenza, in caso di exploit, l'aggressore potrebbe (nel caso sfruttasse vulnerabilità di Apache) trovarsi su server host e non sul computer d'interesse. Vediamo come fare ad impostare Apache come reverse proxy.

Configurare l'Apache di host come reverse proxy

Affinchè Apache si occupi di rindirizzare (tutte) le connessioni HTTP come sopra spiegato è necessario abilitare i moduli opportuni (facenti già comunque parte dell'installazione standard) e modificare il file di configurazione relativo al virtual host di default.

Per abilitare i moduli di proxy per Apache, digitiamo da shell come utente root:

a2enmod proxy
a2enmod proxy_http

Configuriamo ora Apache affinché le connessioni HTTP in arrivo a 192.168.0.24 siano rindirizzate verso 192.168.0.202, modificando appunto il file 000-default:

mc -e /etc/apache2/sites-enabled/000-default

All'interno del file dovremmo includere le seguenti istruzioni:

<VirtualHost 192.168.0.24>
      # No forward proxy
        ProxyRequests Off

      # Chi può accedere alla funzionalità di proxy
<proxy>
                Order deny,allow
                Allow from all
</proxy>

        ProxyPass / http://192.168.0.202/
        ProxyPassReverse / http://192.168.0.202/
        ProxyPreserveHost On
</VirtualHost>

La direttiva ProxyPreserveHost è stata inserita per rendere il proxy davvero invisibile, agli occhi di browser e server agli estremi, di modo da non comportare possibili problemi di compatibilità dovuti alla sostituzione degli header HTTP da parte del proxy. Riavviando Apache il cerchio si chiude e potremmo usare, finalmente, la nostra configurazione sicura.

Ultimi articoli Sicurezza

Forensics: NBTempo una GUI per le timeline

Usiamo NBTempo, una GUI che consente di creare delle timeline dei...

Nmap: tecniche per evadere un firewall

Vediamo come sfuggire ai controlli di un firewall utilizzando Nmap.

Sfruttare vulnerabilità XSS con BeEF

Usiamo BeEF per automatizzare lo sfruttamento di vulnerabilità Cross...

Trojan Flashback: rimuoverlo da Mac OS X

Individuiamo e rimuoviamo il trojan Flashback da Mac OS X

Individuare vulnerabilità in Joomla con JoomScan

Usiamo JoomScan per verificare la sicurezza di Joomla e la presenza...

Altri articoli

Guide Sicurezza

Guida SQL Injection con Sqlmap

Scopriamo se le nostre applicazioni web sono vulnerabili alle SQL...

Guida sicurezza applicazioni Web

Le tecniche di attacco più comuni, i metodi per verificare la...

Guida rimozione malware

Un malware è un qualsiasi software nocivo per il computer. Questa...

Altre guide

Newsletter @Sicurezza

Ogni lunedì, direttamente nella tua e-mail: approfondimenti e bollettini su virus, vulnerabilità e sicurezza informatica.

Iscriviti alla newsletter

Altre newsletter

Corsi in aula

Amministratore di Reti Windows Server 2008

11 Giugno 2012 a Milano
Disponibilità: 5 Posti

Nessun corso previsto