Jak monitorować, kto mnie pinguje?

24

Czy istnieje sposób, aby dowiedzieć się, kto pinguje mój komputer w mojej sieci? Czy można monitorować wszystkie pakiety ICMP? Jak mogę to zrobić?

nux
źródło

Odpowiedzi:

33

Tak, jest to możliwe przy użyciu tcpdump, który jest najpotężniejszym i najszerzej wykorzystywanym snifferem pakietów poleceń lub narzędziem do analizowania pakietów dostępnym w systemie Linux.

W terminalu komputera, który chcesz monitorować:

sudo tcpdump -i ethX icmp and icmp[icmptype]=icmp-echo

Opcje:

-n avoid a (potentially slow) reverse DNS query
−i interface
icmp[icmptype]=icmp-echo    To print all ICMP packets that are echo requests/replies

Zacznie nasłuchiwać na ethX i czeka na nadchodzące pakiety.

Przykład: Mam 2 komputery Win7 10.1.1.8 , Ubuntu 10.1.1.57, które będą monitorować przychodzące pakiety:

wprowadź opis zdjęcia tutaj

Na Ubuntu:

wprowadź opis zdjęcia tutaj

Odniesienie: nixCraft

nux
źródło
1
Mała korekta: -npokazuje adres IP zamiast nazw DNS , a nie adres MAC. Więc uruchamiając z -n unikaj (potencjalnie powolnego) odwrotnego zapytania DNS
Rmano
Użyłem karty bezprzewodowej (wlan0), ale nie otrzymałem zwrotu za pomocą kodu Ubuntu.
Satya Prakash
6

Dobry trening @nux Podobało mi się.

Chciałbym również dodać moją sztuczkę, której używam, aby dowiedzieć się, kto pinguje mnie za pomocą avahinarzędzia (można zainstalować z Synaptic).

Po uruchomieniu w terminalu avahi-browse -ratautomatycznie kompiluje pełną listę połączeń, na przykład:

hostname = [xxx-xxx.local]
address = [xxx::x:xxx:xxx:xxx:xxx] physical
address = [xx.xx.xxx.xx] ipv4 or ipv6
port = [xxx]
txt = [xxx]

Na przykład zawsze widzę, kiedy mój dostawca Internetu pinguje mnie podczas sesji, kiedy uruchamiam to polecenie.

Aby zobaczyć wszystko, co może zrobić avahi, uruchom:

avahi-browse --help 
Żartowniś
źródło
Chciałbym prostych rozwiązań bez instalowania żadnego pakietu, ale jest w porządku
nux
tak, zgadzam się, że zależy to od pragnienia każdego, ale to narzędzie ma więcej funkcji, nie tylko pinguje, pozwala odkrywać usługi i hosty itp.
JoKeR
1

Ten pakiet musi być po prostu zainstalowany (jeśli go nie masz):

sudo apt-get install iptables-persistent

Następnie dodaj to polecenie do /etc/iptables/rules.v4pliku:

-A INPUT -p icmp --icmp-type echo-request -j LOG --log-prefix "LOG_IPTABLES_PING_REQUEST: "

Aby sprawdzić, kto cię pinguje, po prostu sprawdź plik dziennika:

grep 'LOG_IPTABLES_PING_REQUEST: ' /var/log/messages

Możesz także użyć aplikacji monitorujących, takich jak Wireshark .

Maythux
źródło
czy powinien to być / var / log / syslog?
entuzjastyczny