Il file hosts: uno strumento potente per utenti e sviluppatori

Pubblicato: 2020-09-23

Potresti aver sentito parlare di un file hosts prima ma non sei sicuro di cosa sia o cosa faccia. In questo articolo chiariremo e spiegheremo esattamente cos'è un file host e come funziona. Vedremo anche alcuni esempi di cose che puoi ottenere con esso. Iniziamo!

Che cos'è un file host?

Un file hosts si trova sul tuo computer (indipendentemente dal fatto che sia un Mac o Windows, ne avrà uno). I file host sono ciò che è noto come "testo normale" e provengono da diversi decenni fa, quando erano originariamente utilizzati come una prima forma di "risoluzione dei nomi" in base alla quale le prime attività Internet venivano indirizzate ai server di destinazione da questi file. Questo uso è stato sostituito dall'invenzione del Domain Name System (o DNS) che è ancora in uso oggi.

Il traffico Internet di oggi si basa sul sistema DNS per "dire dove andare". Quando si digita l'indirizzo di un sito Web nel browser, il browser "cerca" la posizione del server che ospita questo sito Web utilizzando il sistema DNS.

Quella richiesta inizia nel file hosts del tuo computer locale. Se i dettagli richiesti (ovvero la posizione o l'indirizzo IP del server richiesto) non vengono trovati lì, la richiesta continua sui server DNS esterni fino a quando non viene trovato l'indirizzo. Ciò consente quindi al browser di connettersi al sito Web e visualizzare il contenuto che stavi cercando. Tutto questo accade in pochi millisecondi, il che è davvero notevole.

Dai una rapida occhiata al grafico sopra. Come puoi vedere, le richieste inviate dal tuo computer vengono prima instradate tramite il file hosts del tuo computer. Se il file hosts ha l'indirizzo IP del sito Web che hai richiesto salvato, invierà direttamente il tuo browser. In caso contrario, indirizzerà il tuo browser a un server DNS che dovrebbe avere le informazioni richieste.

Basandosi su questo, è logico concludere che modificando il file hosts possiamo bypassare il DNS e fare in modo che qualsiasi dominio si risolva su qualsiasi indirizzo IP durante l'utilizzo del nostro browser. La capacità di farlo può avere una serie di vantaggi e vedremo.

Nota: prima di esaminare ulteriormente il file hosts e come può essere modificato, vale la pena notare che il file hosts può essere bersaglio di attacchi dannosi. Per questo motivo vale la pena modificarne le proprietà in "sola lettura" una volta terminate le modifiche.

Modifica del file hosts

Modificare il file hosts sul tuo computer è semplicissimo da fare e a volte può essere incredibilmente utile. Diamo un'occhiata a come modificare facilmente il file hosts su Windows, Linux e Mac.

Come modificare il file hosts su Windows 10

Il file si trova in "C:\Windows\System32\drivers\etc"

Posizione del file Hosts - Windows

Quando apri il file hosts con un editor di testo come il blocco note vedrai qualcosa del genere (non dimenticare di "Esegui come amministratore" quando richiesto).

Contenuto del file host

Sotto il contenuto esistente (attorno alla riga 24 nel nostro esempio sopra) puoi digitare l'indirizzo IP di destinazione che desideri raggiungere, quindi uno spazio, quindi il nome di dominio. Questo sarà approssimativamente così:

Si noti che il simbolo "#" viene utilizzato per i commenti. Tutto ciò che è scritto dopo il "#" nella stessa riga verrà ignorato. Puoi usarlo come etichetta per etichettare le modifiche al tuo file hosts, ad esempio:

 # my router's alias 192.168.1.1 myrouter.com

Come modificare il file hosts su una distribuzione Linux

Su Ubuntu, ad esempio, il percorso completo del file hosts è /etc/hosts. Puoi aprire il file con il tuo editor (in questo esempio abbiamo usato l'editor Nano). Inserisci la tua password sudo quando richiesto.

Percorso file host - distribuzione Linux

Una volta fatto, puoi aggiungere righe come abbiamo fatto per Windows.

Come modificare il file hosts su MacOS

Su MacOS, il percorso completo del file è /etc/hosts. Dopo aver avviato una finestra di terminale, apri il file hosts usando il tuo editor di testo.

  1. Digita sudo nano /private/etc/hosts e premi Invio.
  2. Inserisci la password richiesta. Ora avrai il file hosts aperto nell'editor Nano.
  3. Passare sotto il contenuto originale nel file hosts e modificare il file come descritto per Windows e Linux. > indirizzo IP di destinazione > uno spazio > nome di dominio
  4. stampa Control-O per salvare il file.
  5. Se le modifiche non vengono visualizzate, svuota la cache con > dscacheutil -flushcache

Ora che abbiamo capito come modificare il file hosts sul tuo computer locale, diamo un'occhiata ad alcune cose utili che puoi fare con questo.

Principali motivi per modificare il file hosts

Ci sono molte ragioni per cui potresti voler modificare il tuo file hosts. Di seguito ne esamineremo alcuni.

Quando si testa lo sviluppo di un sito web

Supponiamo che tu sia uno sviluppatore WordPress che lavora su una nuova versione del sito Web del tuo cliente che è attualmente disponibile nel dominio "mycompany.com". Stai apportando modifiche a una versione locale del sito Web (che è stata salvata sul tuo computer).

Il problema che avrai è che qualsiasi riferimento nel codice al dominio "mycompany.com" vedrà il tuo browser portarti alla versione live del sito piuttosto che alla versione locale del sito, il che significa che è quasi impossibile testare il modifiche che hai apportato. In questo caso hai alcune opzioni:

  1. Acquista un dominio temporaneo e puntalo all'IP in cui si trova la versione in fase di sviluppo.
  2. Distribuire il sito live su un server di staging.
  3. Utilizzare il file hosts per puntare temporaneamente "mycompany.com" a un indirizzo IP/server diverso in locale.

Quindi, a meno che non ti piaccia buttare via soldi sui domini temporanei, un'ottima soluzione a questo problema è usare il file hosts e fare in modo che il dominio si risolva dove il tuo lavoro è in corso o sarà.

Per fare ciò tutto ciò che devi fare è inserire il nome di dominio e l'IP del server su cui stai lavorando (come abbiamo descritto in precedenza). Se ad esempio l'indirizzo IP è 138.201.141.25, dovresti modificare il file hosts per leggere:

Lo stesso vale se si desidera aggiungere il dominio www. Puoi farlo semplicemente aggiungendo una seconda riga come questa:

Oppure combinare entrambi nella stessa riga in questo modo:

Nota inoltre che l'utilizzo del file hosts per puntare ai tuoi file locali aumenterà leggermente anche la velocità della tua navigazione poiché il tuo computer può "chiedere" direttamente un file locale e saltare la richiesta dell'indirizzo IP da un server DNS e l'attesa sostenuta per ricevere la sua risposta.

La modifica del file hosts in questo modo è estremamente utile per gli sviluppatori per testare i loro siti Web in fase di sviluppo o intraprendere altri tipi di lavoro in cui è utile sovrascrivere i server DNS e, così facendo, controllare l'accesso ai siti Web e il traffico di rete.

Blocca un sito web

Ci sono MOLTI siti web là fuori, molti dei quali non sono particolarmente piacevoli. Pertanto, potresti voler bloccare l'accesso a questi (ad esempio se hai bambini che usano il tuo computer). Ciò può essere ottenuto indirizzando la richiesta di un sito Web specifico al tuo indirizzo IP localhost (che normalmente è 127.0.0.1).

Segnaliamo però che:

  • I siti HTTPS non verranno bloccati a meno che tu non includa www nel suo indirizzo.
  • Durante queste modifiche, tieni presente che dovrai svuotare la cache del browser per vedere che queste modifiche abbiano effetto.

Quindi, ad esempio, supponiamo che tu voglia bloccare l'accesso a un sito Web chiamato www.badwebsite.com. Per fare ciò, devi inserire quanto segue nel tuo file hosts:

 127.0.0.1 badwebsite.com www.badwebsite.com

Il risultato di ciò sarà che questo sito Web sarà inaccessibile dal tuo computer.

Puoi anche usare il file hosts per bloccare Spyware/Ad Networks. Per fare ciò, fai un elenco di tutti i siti Spyware e i nomi di dominio delle reti pubblicitarie che desideri bloccare e aggiungili al tuo file hosts, mappandoli all'indirizzo IP 127.0.0.1 che punterà sempre al tuo computer. In questo modo il tuo browser non sarà in grado di raggiungere questi domini.

Un vantaggio di questa operazione è che dopo aver bloccato tali siti indesiderati, la tua navigazione sarà più sicura poiché non sarai in grado di raggiungere siti dannosi noti. Può anche velocizzare la tua navigazione in quanto non devi più aspettare mentre scarichi gli annunci dai siti delle reti pubblicitarie.

Conclusione

In sintesi, la modifica del file hosts ti dà il controllo completo su quale dominio si risolve in quale indirizzo IP localmente sul tuo computer. Questo ha una serie di possibili usi e vantaggi. È sempre bello avere il controllo e sapere come aggirare i file host del tuo computer ti dà proprio questo... controllo. Davvero uno strumento potente!