Cosa devo fare per garantire che un server Web (Apache) in esecuzione su una macchina non sia accessibile al mondo esterno?

StackOverflow https://stackoverflow.com/questions/116905

  •  02-07-2019
  •  | 
  •  

Domanda

Vorrei usare il mio laptop come macchina per lo sviluppo web (PHP, Python, ecc.), ma esito a farlo a meno che non possa assicurarmi che non possa accedervi dal mondo esterno.

Suppongo che sia necessario qualcosa di più di un firewall, come le configurazioni dei file di configurazione di Apache, ma non sono sicuro di cos'altro avrei bisogno per essere sicuro al 100% che sia bloccato saldamente.

È stato utile?

Soluzione

Devi configurare il demone del server in modo che si associ solo a localhost usando la direttiva Listen in questo modo:

Listen 127.0.0.1

Un'alternativa è configurare il controllo di accesso per il server principale in questo modo

<Directory "/var/www/localhost/htdocs">
AllowOverride None
Deny from all
Allow from 127.0.0.1/255.0.0.0
</Directory>

Ricorda di inserire la directory principale del tuo server nella Direttiva Directory.

Altri suggerimenti

nel file di configurazione, modifica la direttiva LISTEN per ascoltare solo l'indirizzo di loop back:

Ascolta 127.0.0.1

Installa un firewall e chiudi tutte le porte esterne tranne quelle che desideri utilizzare. Se stai usando Linux, ci sono dei bei frontend per iptables come firestarter, se usi OS X c'è un firewall integrato e anche Windows ne ha uno. :)

Ma sì, il Firewall è la strada da percorrere. (Oppure puoi dire ad Apache di ascoltare solo su 127.0.0.1:80 )

Un firewall dovrebbe essere sufficiente. Assicurati solo di eseguire apache in una porta non standard (in genere 8080) e assicurati che il tuo firewall blocchi l'accesso esterno a quella porta.

Il firewall dovrebbe essere sufficiente. Ma puoi usare anche la Listen .

Un firewall andrà bene. Ma se non ti accontenti solo di un firewall, puoi configurare apache per ascoltare solo sul tuo dispositivo di loopback o dirgli di accettare connessioni da un set di indirizzi sulla tua lan. Il primo metodo è più semplice, ma in questo modo è possibile accedere alle pagine Web solo dalla macchina su cui è in esecuzione Apache.

Metti un router tra te e Internet e non inoltrare alcuna porta al tuo laptop. In questo modo chiunque provi ad accedere al laptop colpisce il router e non può andare oltre.

Puoi inoltrare le porte alla tua macchina principale (o semplicemente mettere la macchina principale nella DMZ) se ne hai bisogno per essere disponibile per le connessioni in entrata.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top