Conecta con nosotros

Prácticos

Cómo modificar el fichero de hosts en Windows

Publicado

el

Fichero /etc/hosts en Windows

¿Sabías que el fichero ‘/etc/hosts’ también está presente en Windows? Este archivo, que mucha gente asocia a Linux y los sistemas operativos Unix y tipo Unix, es en realidad un viejo compañero de viaje que permite asignar nombres de host a direcciones IP.

El fichero de hosts o ‘/etc/hosts’ (si bien esa no es la única ubicación en la que se puede encontrar, ya que eso depende del sistema operativo) se llamaba originalmente HOSTS.TXT y fue en un principio puesto a disposición a través del uso compartido de archivos por parte del Instituto de Investigación de Stanford para los miembros de ARPANET, la primera red de computadoras creada por encargo del Departamento de Defensa de Estados Unidos. Básicamente lo que contenía y sigue conteniendo son nombres de hosts con sus direcciones IP para resolver nombres de dominio.

La red, debido a su constante crecimiento, empezó a ser demasiado grande para su mantenimiento manual, así que entre 1983 y 1984 apareció DNS (Domain Name System) para proporcionar un marco de resolución instantánea y dinámica de los nombres de hosts.

A pesar de que DNS ha reducido mucho el uso del fichero de hosts, este todavía tiene utilidad para tareas como redirigir dominios locales para probar páginas, bloquear contenidos de Internet e impedir el contacto con los servidores de activación en ciertos procesos de pirateo de aplicaciones.

Fichero /etc/hosts en Linux

Fichero ‘/etc/hosts’ en Linux

Sin embargo, el fichero de hosts también puede ser un vector de ataque para el software malicioso. En esta circunstancia el malware podría modificar el fichero de hosts para que redirija el tráfico hacia servidores que alojan contenido malicioso o indeseado. Por ejemplo, es posible que el usuario infectado acabe viendo publicidad extraña o minando alguna criptodivisa a través de su navegador web, siendo esos escenarios aparentemente más probables que ver su computadora inutilizada (si bien eso nunca se puede descartar). Los actores maliciosos muchas veces prefieren que su malware pase inadvertido para así evitar ser detectados.

Pese a los inconvenientes que arrastra, el fichero de hosts puede ser empleado, además de lo ya mencionado, para configurar un pequeño entorno de pruebas dentro de una red local (LAN). Ese es el escenario que vamos a cubrir en esta entrada para enseñar a configurar de forma básica el fichero de hosts en Windows.

¿Dónde se ubica el fichero ‘/etc/hosts’ en Windows?

Sin más dilación, la ruta a seguir con el explorador de Windows es la siguiente: “Este equipo” > C: > Windows > System32 > drivers > etc > hosts (el último elemento de la ruta es el fichero).

Ruta del fichero /etc/hosts en Windows

La ruta sin el archivo es la siguiente si se quiere copiar y pegar su ubicación en el explorador de archivos (antes hay que pulsar ‘Ctrl+L’):

C:\Windows\System32\drivers\etc

Y esta la ubicación concreta del fichero ‘/etc/hosts’ en Windows (recordamos que al sistema de Microsoft le da igual la dirección de las barras ‘/’ y ‘\’):

C:\Windows\System32\drivers\etc\hosts

Cómo modificar el archivo de hosts en Windows

Las sucesivas versiones de Windows han ido introduciendo limitaciones en los directorios críticos del sistema con el propósito de evitar que el usuario los modifique o elimine (al menos con la configuración predeterminada del sistema operativo). En caso de querer modificar algún contenido dentro de System32 es necesario recurrir a la cuenta de Administrador del sistema, ya que la común, a pesar de estar definida como administrador por defecto, no cuenta con permisos para escribir ahí.

Para modificar el archivo de hosts en Windows, en primer lugar hay que abrir el Bloc de notas como Administrador. Para ello hay que abrir el menú de Inicio del sistema, escribir “Bloc de notas” en el buscador, hacer clic con el botón secundario del ratón sobre la entrada de la aplicación que queremos abrir y seleccionar “Ejecutar como administrador”. El sistema preguntará al usuario si quiere que la aplicación haga cambios en el dispositivo, a lo que obviamente hay que responder que sí.

Ejecutar el Bloc de notas como administrador en Windows 10

Confirmar que se quiere abrir el Bloc de notas como Administrador para modificar el fichero de los hosts en Windows

Una vez abierto el Bloc de notas como Administrador, hay que dirigirse al menú Archivo > Abrir para proceder a abrir, valga la redundancia, el ficheros de hosts de Windows.

Abrir el fichero de los hosts en Windows con el Bloc de notas

Recordamos que la ruta para hallar el fichero de los hosts en Windows es “Este equipo” > C: > Windows > System32 > drivers > etc. Sin embargo, al llegar ahí uno descubre que la carpeta está aparentemente en blanco debido a que el Bloc de notas no encuentra ningún archivo con extensión ‘.txt’. Esto se soluciona seleccionando “Todos los archivos” en el desplegable de la esquina inferior derecha del diálogo.

Mostrar todos los ficheros en el bloc de Notas

Seleccionar el fichero /etc/hosts en Windows dentro de System32

De manera alternativa, una vez abierto el diálogo de “Abrir” en el Bloc de notas, se puede pulsar la combinación de teclas “ctrl+L” y luego copiar y pegar lo siguiente en la ruta de direcciones. Esto dará como resultado la apertura directa del fichero:

C:\Windows\System32\drivers\etc\hosts

Una vez abierto el fichero de hosts en Windows, este es el aspecto que presenta en la aplicación:

Fichero /etc/hosts en Windows 10

En este caso tenemos una instancia de Windows 10 ejecutada en una máquina virtual de GNOME Boxes, así que hemos introducido la IP de la máquina anfitriona junto al nombre de host (asus-silver). Todas las líneas que tienen una almohadilla (#) delante son comentarios y por lo tanto son ignoradas a nivel de configuración, pero pueden venir bien para introducir descripciones de lo que hace el fichero o una línea específica.

Introduciendo un host de la red local en el fichero /etc/hosts de Windows

Tras introducir las modificaciones pertinentes en el archivo, se guarda como de costumbre, yendo al menú Archivo y pulsando sobre Guardar.

Guardar modificaciones en el fichero /etc/hosts en Windows con el Bloc de notas

Con los cambios introducidos en el fichero, hemos probado con intentar acceder a un servidor HTTP (nginx) ejecutado en la máquina anfitriona a través de un contenedor Docker con Podman. En lugar de poner la IP, que es un número que puede llegar a ser difícil de recordar, hemos puesto el nombre del equipo, y por lo que se puede ver en la siguiente imagen, el fichero de hosts de Windows hace correctamente su trabajo para mostrar el contenido servido por la máquina anfitriona través del servidor HTTP.

Fichero de hosts trabajando correctamente en Windows despues de modificarlo

Ubicación del fichero de hosts en otros sistemas operativos

El fichero de hosts cumple en esencia la misma función en todos los sistemas operativos, así que vamos a mencionar su ubicación a través de diversos ejemplos en los que mencionaremos varios sistemas operativos que pueden ser populares o no. Avisamos que no hemos tenido en cuenta si el usuario tiene permisos, aunque sea de forma indirecta, para modificarlo.

Ubicación en Android:

/etc/hosts # Que es un enlace simbólico hacia /system/etc/hosts

Ubicación en iOS y macOS:

/etc/hosts # Que es un enlace simbólico hacia /private/etc/hosts

Ubicación en Haiku:

/system/settings/network/hosts

Ubicación en Linux, Unix, Unix-like y POSIX:

/etc/hosts

Conclusión

Aunque su uso ha caído bastante con el paso de las décadas, el fichero de hosts todavía es útil para ciertos contextos, y como hemos ido viendo a través de este artículo, no solo para la creación de un pequeño entorno de pruebas a través de una red local, sino también para propósitos defensivos o acceder de manera restringida a ciertos recursos.

Eso sí, recordamos que hay que manipularlo con mucho cuidado. Como consejo básico, recomendamos no introducir ninguna IP pública en él salvo que se tenga muy claro lo que se está haciendo. Si se quiere juguetear con él, lo mejor es solo introducir direcciones IP de la red local.

Apasionado del software en general y de Linux en particular. El Open Source, la multiplataforma y la seguridad son mis especialidades.

Lo más leído