Wyszukiwanie w witrynie

Arpwatch - Monitoruj aktywność Ethernet w systemie Linux


Arpwatch to program komputerowy typu open source, który pomaga monitorować aktywność w ruchu Ethernet (np. Zmiana adresu IP i adresu MAC) w Twojej sieci i utrzymuje bazę danych parowania adresów Ethernet/IP.

Tworzy dziennik zauważonych par informacji o adresach IP i MAC wraz ze znacznikiem czasu, dzięki czemu można uważnie obserwować, kiedy w sieci pojawiła się aktywność parowania. Posiada również opcję wysyłania raportów e-mailem do administratora sieci w przypadku dodania lub zmiany parowania.

Narzędzie Arpwatch jest szczególnie przydatne dla administratorów sieci do monitorowania aktywności ARP w celu wykrycia podszywania się pod ARP lub nieoczekiwanych Modyfikacje adresu IP/MAC.

Instalowanie Arpwatcha w systemie Linux

Narzędzie Arpwatch nie jest instalowane w dystrybucjach Linuksa. Musisz użyć domyślnego menedżera pakietów, aby zainstalować je z repozytoriów systemowych, jak pokazano.

sudo apt install arpwatch             [On Debian, Ubuntu and Mint]
sudo yum install arpwatch             [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a net-analyzer/arpwatch  [On Gentoo Linux]
sudo apk add arpwatch                 [On Alpine Linux]
sudo pacman -S arpwatch               [On Arch Linux]
sudo zypper install arpwatch          [On OpenSUSE]    

Po zainstalowaniu możesz przeglądać najważniejsze pliki arpwatch. Lokalizacje plików różnią się nieco w zależności od systemu operacyjnego.

  • /usr/lib/systemd/system/arpwatch – Usługa arpwatch służąca do uruchamiania i zatrzymywania demona.
  • /etc/sysconfig/arpwatch – Jest to główny plik konfiguracyjny arpwatch.
  • /usr/sbin/arpwatch – Komenda binarna do uruchamiania i zatrzymywania narzędzia za pośrednictwem terminala.
  • /var/lib/arpwatch/arp.dat – Jest to główny plik bazy danych, w którym zapisywane są adresy IP/MAC.
  • /var/log/messages – plik dziennika, w którym arpwatch zapisuje wszelkie zmiany lub nietypową aktywność na adresach IP/MAC.

Teraz uruchom następujące polecenie, aby uruchomić usługę arpwatch.

systemctl enable arpwatch
systemctl start arpwatch
systemctl status arpwatch

Jak korzystać z poleceń Arpwatch w systemie Linux

Aby obejrzeć określony interfejs, wpisz następujące polecenie z -i i nazwą urządzenia.

arpwatch -i eth0

Tak więc, za każdym razem, gdy podłączony jest nowy adres MAC lub konkretny adres IP zmienia swój adres MAC w sieci, zauważysz wpisy syslog w „/var/log/syslog” lub „/ var/log/message” za pomocą polecenia tail.

tail -f /var/log/messages
Przykładowe wyjście
Apr 15 12:45:17 tecmint arpwatch: new station 172.16.16.64 d0:67:e5:c:9:67
Apr 15 12:45:19 tecmint arpwatch: new station 172.16.25.86 0:d0:b7:23:72:45
Apr 15 12:45:19 tecmint arpwatch: new station 172.16.25.86 0:d0:b7:23:72:45
Apr 15 12:45:19 tecmint arpwatch: new station 172.16.25.86 0:d0:b7:23:72:45
Apr 15 12:45:19 tecmint arpwatch: new station 172.16.25.86 0:d0:b7:23:72:45

Powyższe dane wyjściowe wyświetlają nową stację roboczą. Jeśli zostaną wprowadzone jakiekolwiek zmiany, otrzymasz następujące dane wyjściowe.

Apr 15 12:45:17 tecmint arpwatch: changed station 172.16.16.64 0:f0:b8:26:82:56 (d0:67:e5:c:9:67)
Apr 15 12:45:19 tecmint arpwatch: changed station 172.16.25.86 0:f0:b8:26:82:56 (0:d0:b7:23:72:45)
Apr 15 12:45:19 tecmint arpwatch: changed station 172.16.25.86 0:f0:b8:26:82:56 (0:d0:b7:23:72:45)
Apr 15 12:45:19 tecmint arpwatch: changed station 172.16.25.86 0:f0:b8:26:82:56 (0:d0:b7:23:72:45)
Apr 15 12:45:19 tecmint arpwatch: changed station 172.16.25.86 0:f0:b8:26:82:56 (0:d0:b7:23:72:45)

Możesz także sprawdzić aktualną tabelę ARP, używając poniższego polecenia.

arp -a
Przykładowe wyjście
linux-console.net (172.16.16.94) at 00:14:5e:67:26:1d [ether] on eth0
? (172.16.25.125) at b8:ac:6f:2e:57:b3 [ether] on eth0

Jeśli chcesz wysyłać alerty na swój niestandardowy identyfikator e-mail, otwórz główny plik konfiguracyjny „/etc/sysconfig/arpwatch” i dodaj adres e-mail, jak pokazano poniżej.

-u <username> : defines with what user id arpwatch should run
-e <email>    : the <email> where to send the reports
-s <from>     : the <from>-address
OPTIONS="-u arpwatch -e [email  -s 'root (Arpwatch)'"

Oto przykład raportu e-mailowego, gdy podłączony jest nowy MAC.

        hostname: centos
      ip address: 172.16.16.25
       interface: eth0
ethernet address: 00:24:1d:76:e4:1d
 ethernet vendor: GIGA-BYTE TECHNOLOGY CO.,LTD.
       timestamp: Monday, April 15, 2022 15:32:29

Oto przykład raportu e-mailowego, w którym IP zmienia swój adres MAC.

            hostname: centos
          ip address: 172.16.16.25
           interface: eth0
    ethernet address: 00:56:1d:36:e6:fd
     ethernet vendor: GIGA-BYTE TECHNOLOGY CO.,LTD.
old ethernet address: 00:24:1d:76:e4:1d
           timestamp: Monday, April 15, 2022 15:43:45
  previous timestamp: Monday, April 15, 2022 15:32:29 
               delta: 9 minutes

Jak widać powyżej, rejestruje nazwę hosta, adres IP, adres MAC, nazwę dostawcy i znaczniki czasu.

Aby uzyskać więcej informacji, odwiedź stronę podręcznika arpwatch, naciskając „man arpwatch” na terminalu.

man arpwatch