Odpowiedzi:
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:
Na Ubuntu:
Odniesienie: nixCraft
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ą avahi
narzędzia (można zainstalować z Synaptic
).
Po uruchomieniu w terminalu avahi-browse -rat
automatycznie 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
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.v4
pliku:
-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 .
-n
pokazuje adres IP zamiast nazw DNS , a nie adres MAC. Więc uruchamiając z -n unikaj (potencjalnie powolnego) odwrotnego zapytania DNS