¿Todos los subdominios a una IP en el archivo de hosts?

8

Tengo una VM VirtualBox ejecutándose con redes solo de host. Esta VM está ejecutando Apache, y quiero configurar un grupo de hosts virtuales basados ​​en nombres a los que se puede acceder desde el navegador web en la máquina host.

La cuestión es que cada vez que agrego un nuevo subdominio para un host virtual, tengo que agregarlo al archivo de hosts. En este momento tengo algo como esto:

192.168.56.3 vm site1.vm site2.vm site3.vm site4.vm ...

Quiero lograr el mismo efecto que esto

192.168.56.3 vm *.vm

Sé que * no funciona como comodín en un archivo de hosts. ¿Hay alguna otra manera de lograr el resultado deseado antes de ejecutar un servidor DNS real? ¿Debo absorberlo y seguir agregando a mi archivo de hosts manualmente?

Apreche
fuente

Respuestas:

8

No hay una forma comodín de hacerlo: debe implementar un servidor DNS o seguir agregando entradas a su archivo de hosts.

Si tienes que ir con la instalación de un servidor DNS, que no es necesario instalar bind- se puede instalar un simple servidor de almacenamiento en caché de DNS como totd, dnsmasqo maradns.

Independientemente de lo que haga, deberá asegurarse de que resolv.confcontiene el nuevo servidor DNS, y la siguiente entrada debe aparecer allí (en este ejemplo, el servidor DNS está instalado en localhost) ...

nameserver 127.0.0.1
Jerjes
fuente
Esto es algo interesante En la actualidad, esta parece ser la respuesta correcta, por lo que la marcaré como tal. Sin embargo, en realidad no resuelve mi problema, tal vez porque no es solucionable. Solo algo para pensar.
Apreche
Otra nota. Pude usar dnsmasq para hacer que esto funcione. Sin embargo, en Ubuntu tuve que modificar la configuración del cliente dhcp de la máquina host para anteponer 127.0.0.1 al resolv.conf.
Apreche 01 de
Sí, resolv.conf es la única forma de definir servidores DNS, lo agregaré a la publicación para que se complete.
Xerxes
2

Puede usar dnsmasqpara eso, solo agregue el archivo de configuración:

dirección = /. vm / 192.168.56.3
Drybjed
fuente
0

Esta es una pregunta interesante. El archivo host en sí mismo no admite comodines, como usted mencionó. Sería bastante fácil configurar bind en la máquina apache y hacer que sea el servidor de autenticación dns y apunte * .vm correctamente, pero eso es una solución (incluso si es la solución "correcta").

Tiene que haber una manera de engañarlo, pero aún no lo he descubierto. Dame más tiempo y actualizaré esta respuesta

Editar

Bien, su mejor opción, sin recurrir a la simple tarea de llenar su archivo de host con una inmensa cantidad de hosts virtuales, o la tarea un poco más compleja de configurar el enlace para la autenticación para ese dominio, es utilizar esta vulnerabilidad para envenenar el caché nscd : http://linuxgazette.net/154/misc/lg/conspire_dns_vulnerability_details.html

Al menos, eso es todo lo que voy a llegar hoy. Tal vez si me aburro más tarde, verifique la fuente de nscd y descubra cómo inyectar directamente la información.

Matt Simmons
fuente
44
En serio, no recomendaría explotar una vulnerabilidad para lograr un objetivo. Quiero decir, ¿qué pasa si dependes de él y la vulnerabilidad se soluciona? ... entre otras 100 cosas que puedo ver que están mal con eso. Pero aparte de eso, parece divertido jugar con patadas :).
Jerjes
2
jeje "... mi característica favorita en el software se arregló en la última revisión ..." ;-)
Matt Simmons