Si tengo varios hosts configurados en una máquina ( Virtual Hosts de la apache), ¿cómo puedo hacer una búsqueda en la IP y encontrar todos los dominios configurados para llegar a ella?
Por ejemplo, tengo varios dominios web y de correo electrónico conectados a mi servidor. ¿Cómo puedo encontrar todos los dominios que apuntan a él?
¿Es posible?
Tengo entradas DNS A para todos los dominios que poseo, además sé que los dominios de algunos amigos apuntan a mi servidor. Lo que me gustaría ver es si las personas que no conozco también están señalando allí. (O si alguien ha cambiado su dominio a otro lugar, y puedo eliminar su sitio web 'antiguo' de mi servidor).
fuente
No es posible hacerlo con el protocolo DNS en sí, porque normalmente solo hay un
PTR
registro para cada dirección IP, aunque puede haber muchosA
registros apuntando a esa dirección IP.Sin embargo, algunas compañías (por ejemplo, http://www.ip-adress.com/ ) han logrado compilar bases de datos que contienen lo que busca almacenando los resultados de una gran cantidad de búsquedas de DNS y luego ofreciendo una consulta inversa en sus propias bases de datos
Sin embargo, esas bases de datos no pueden ser definitivas, no pueden garantizar conocer todos los dominios posibles que podrían apuntar a esa IP; solo pueden registrar los detalles de DNS para los nombres de dominio que realmente han buscado.
fuente
La única forma de hacerlo es tener datos de contenido del nombre de dominio que desea inspeccionar.
Con este contenido, puede desarrollar una secuencia de comandos recursiva para buscar el nombre de host en relación con su IP (recursiva debido a la eventual comprobación de CNAME).
Para obtener datos de algún socio de nombre de dominio, puede solicitar ser secundario y obtener DATOS con un dig -t axfr.
fuente
Creo que vienes a esto desde la dirección equivocada. Además de a) consultar todos los servidores DNS existentes para cada nombre de dominio posible y luego almacenar el resultado ob) obtener transferencias de zona de los servidores DNS que le interesan, no hay forma de hacerlo con DNS.
Bueno, si está ejecutando vhosts basados en nombres de Apache, ya tiene una lista de dominios que llegarán a su servidor. Además del vhost predeterminado, un vhost basado en el nombre solo responderá por su 'nombre. Entonces, si apunto foobar.com a mi casilla, y no tengo un vhost foobar.com, será atendido por defecto o no recibirá respuesta (si no tiene un servidor predeterminado).
Apache tiene algunas características de registro muy potentes. No debería ser un problema definir un formato de registro personalizado con las líneas de solicitud que desee. Además, siempre está el campo de referencia.
El correo, por otro lado, es un poco más doloroso. Lo mejor que se me ocurre es elegir lo que pueda de los registros del servidor y, si realmente necesita saber , configurar una captura de paquetes para SMTP.
fuente
LogFormat %{Host}i hostnamelog
, luegoCustomLog /path/to/log hostnamelog
en su VHost predeterminado, asegurándose de que esté separado de cualquiera de sus VHosts "reales". Luego, ocasionalmente,sort /path/to/log | uniq -c | sort -n
para tener una idea de lo que te está golpeando.Debes comprobar si RobTex no es el mejor diseño web, ¡pero es muy útil! Puede encontrar todos los DNS asociados a una IP.
Por supuesto, como explicó Alnitak,
Eso significa que este sitio web es solo una enorme base de datos de la mayoría de los servidores DNS / IP. Eso es bastante eficiente pero no 100% exhaustivo.
fuente