Bagaimana cara mencatat semua permintaan DNS saya?


18

Bagaimana saya bisa membuat log dari setiap permintaan DNS yang dibuat komputer saya bersama dengan tanggapan yang didapatnya?

logs  dns 

Jawaban:


14

Anda dapat memiliki tcpdumplog semua aktivitas port 53 UDP dan TCP.


6
Ada detail tentang bagaimana?
e-sushi

Ini adalah jawaban terbaik karena kami tidak dapat memastikan OP (atau pembaca lain) memiliki akses ke server DNS - hanya mesin lokal mereka. Untuk menjawab pertanyaan @ e-sushi, ambil tcpdump menggunakan utilitas (lihat halaman manual atau primer yang bagus dengan contoh ). Taruhan terbaik Anda adalah membuang ke file dan kemudian menarik data itu ke wireshark untuk ditinjau & dianalisis.
James Shewey

1
github.com/gamelinux/passivedns tampaknya melakukan hal itu, lihat./doc/How-it-works.txt
mxmlnkn

5
tcpdump udp port 53
Brannon

1
Mungkin tidak memilih antarmuka jaringan keluar secara default, jadi Anda perlu lebih banyak: tcpdump --list-interfaces, tcpdump udp port 53 --interface (pickone). Juga pertimbangkan verbositas:-vv
nobar

9

Cara termudah adalah menginstal Bind secara lokal. Sebagian besar distro instalasi default dari Bind akan menjadi caching non-autoritatif saja.

Cukup tambahkan logging {}blok konfigurasi (seperti yang dijelaskan dalam Referensi Konfigurasi Bind 9 ) kemudian atur sistem Anda untuk menggunakan 127.0.0.1atau ::1sebagai resolver DNS.


2
Mengingat seberapa besar ikatannya dan catatan keamanannya yang kurang bagus, saya pikir banyak orang akan ragu untuk menginstal sesuatu seperti itu hanya untuk tujuan logging.
jw013

tidak mengikat memiliki masalah bahwa nameserver di /etc/resolv.conf tidak digunakan tetapi nameserver harus dicantumkan secara eksplisit di konfigurasi bind?
Bananguin

Tidak. /etc/resolv.confAdalah daftar pemecah masalah sistem. Konfigurasi default Bind adalah untuk mencari server nama resmi dan bertanya kepada mereka. Anda dapat meneruskan semua permintaan ke server tertentu (atau set, seperti ISP Anda, OpenDNS atau Google Public DNS) tetapi tidak diharuskan untuk melakukannya di konfigurasi. Saya melakukan ini sepanjang waktu. Saya bahkan tidak bisa menghitung berapa kali saya telah mengatur caching hanya server nama.
bahamat

6

dnsmasq jauh lebih mudah untuk dikonfigurasikan sebagai DNS aggregator / caching daemon daripada BIND, dan untuk tujuan itu, kinerjanya mungkin lebih baik. Jika Anda mengaktifkan logging ke "debug", semua pertanyaan dan jawaban muncul di apa pun yang syslogtelah dikonfigurasi untuk pesan debug.

Dnsmasq juga membuatnya mudah untuk menyingkirkan pengiklan yang kasar dan privasi dirtbag yang menyerang "analitik" merayap dengan mengubah seluruh domain menjadi 127.0.0.1


1

Jika saya ingat dengan benar, Snort secara selektif dapat memonitor lalu lintas berdasarkan aturan yang ditentukan pengguna. Namun, Snort tidak akan membuat log untuk permintaan DNS ketika komputer Anda, yaitu resolvernya, dapat menjawab pertanyaan dari cache-nya.


1

Untuk menampilkan dan menyimpan untuk mengajukan semua Apermintaan DNS, jalankan ini:

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

Contoh output:

google.com.
wikipedia.org.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.