¿Cómo registrar todas mis consultas DNS?

18

¿Cómo puedo crear registros de cada consulta DNS que hace mi computadora junto con las respuestas que recibe?


fuente

Respuestas:

14

Puede tcpdumpregistrar toda la actividad del puerto 53 UDP y TCP.

Aaron D. Marasco
fuente
66
¿Algún detalle sobre cómo?
e-sushi
Esta es la mejor respuesta, ya que no podemos estar seguros de que el OP (u otros lectores) tengan acceso al servidor DNS, solo a su máquina local. Para responder a la pregunta de @ e-sushi, tome un tcpdump usando la utilidad (consulte la página de manual o una buena cartilla con ejemplos ). Su mejor opción es volcar en un archivo y luego extraer esos datos en Wirehark para su revisión y análisis.
James Shewey
1
github.com/gamelinux/passivedns parece estar haciendo exactamente eso, mira./doc/How-it-works.txt
mxmlnkn
55
tcpdump udp port 53
Brannon
1
Es posible que no seleccione la interfaz de red de salida de forma predeterminada, por lo que necesita un poco más: tcpdump --list-interfaces, tcpdump udp port 53 --interface (pickone). Considere también la verbosidad:-vv
nobar
9

La forma más fácil es instalar Bind localmente. La instalación predeterminada de la mayoría de las distribuciones de Bind será solo de almacenamiento en caché no autoritativo.

Simplemente agregue un logging {}bloque de configuración (como se describe en la Referencia de configuración de Bind 9 ) y luego configure su sistema para usarlo 127.0.0.1o ::1como el solucionador DNS.

bahamat
fuente
2
Dado lo grande que es el enlace y su registro de seguridad mediocre, creo que muchas personas dudarían en instalar algo así con el único propósito de iniciar sesión.
jw013
¿No tiene el problema de que los servidores de nombres en /etc/resolv.conf no se usan pero los servidores de nombres deben estar listados explícitamente en la configuración de enlace?
Bananguin
No. /etc/resolv.confes la lista de resolución del sistema. La configuración predeterminada de Bind es buscar los servidores de nombres autorizados y preguntarles. Usted podría desviar todas las peticiones a un servidor específico (o conjunto, como su ISP, OpenDNS o Google Public DNS) pero no es necesario hacerlo en la configuración. Hago esto todo el tiempo. Ni siquiera puedo contar la cantidad de veces que configuré el almacenamiento en caché solo de servidores de nombres.
bahamat
6

dnsmasq es mucho más fácil de configurar como un agregador DNS / demonio de almacenamiento en caché que BIND, y para ese propósito, el rendimiento podría ser mejor. Si activa el inicio de sesión en "depuración", todas las preguntas y respuestas aparecen en lo que se sysloghaya configurado para los mensajes de depuración.

Dnsmasq también hace que sea fácil deshacerse de los anunciantes abusivos y la privacidad de la bolsa de basura que invade los escalofríos "analíticos" al alisar dominios enteros a 127.0.0.1

Bruce Ediger
fuente
1

Si recuerdo correctamente, Snort puede monitorear selectivamente el tráfico según las reglas definidas por el usuario. Sin embargo, Snort no creará registros para las solicitudes de DNS cuando su computadora, es decir, su solucionador, pueda responder la pregunta desde su caché.

Bananguin
fuente
1

Para mostrar y guardar para archivar todas las Asolicitudes de DNS, ejecute esto:

script -q -c "sudo tcpdump -l port 53 2>/dev/null | grep --line-buffered ' A? ' | cut -d' ' -f8" | tee dns.log

Salida de ejemplo:

google.com.
wikipedia.org.

Vanni
fuente