Arpwatch - мониторинг соответствие между IP и MAC-адресами

Аватар пользователя ttys

Устанавливаем arpwatch

Из порта:

cd /usr/ports/net-mgmt/arpwatch && make install clean

Пакетом:
pkg_add -r arpwatch

после чего правим rc.conf для запуска arpwatch при загрузке системы:

vi /etc/rc.conf

arpwatch_enable="YES" #включаем arpwatch
arpwatch_interfaces="nfe0" #какие интерфейсы слушать
#arpwatch_interfaces="" #слушать все интерфейсы
#arpwatch_nfe0_options="-m admin@mydomain.ru" #отправлять лог себе на мыло

Ведение логов

для ведения логов лучше настроить для этого syslog.conf:

vi /etc/syslog.conf

!arpwatch
*.notice /var/log/arpwatch.log

Мониторинг

Таблица соответствия адресов находится в файле /usr/local/arpwatch/arp.<интерфейс>.dat и выглядит как обычный текстовый файл, с MAC-адресом, IP-адресом, временем попадения в таблицу, и именем интерфейса, через который пришёл исходный запрос.

cat /usr/local/arpwatch/arp.nfe0.dat
0:f:ea:63:e2:d7 192.168.1.31    1265370078      oksen
0:1:29:1b:35:7e 192.168.1.18    1265369952      narman
0:2:b3:b2:26:e4 192.168.1.254   1265370062      ns
0:1d:7d:a6:77:64        192.168.1.67    1265368627      r423-1
0:1d:7d:a6:70:80        192.168.1.84    1265370079      lib5
0:1d:7d:70:6f:28        192.168.1.43    1265370029      tender
0:1d:7d:a6:70:35        192.168.1.82    1265370064      lib3
0:c:76:97:51:e5 192.168.1.48    1265368690      jurist
0:b:6a:6d:fd:81 192.168.1.83    1265370048      lib4
0:e0:4d:2a:cd:68        192.168.1.35    1265369127      matbuh2
0:1d:7d:a6:6a:4b        192.168.1.86    1265370064      lib7
0:1a:4d:dc:db:46        192.168.1.65    1265370078      r421a
0:e:a6:27:5a:59 192.168.1.156   1265370034      lib2-ab1
0:2:44:5a:a4:3d 192.168.1.45    1265369568      ois3
0:f:ea:4f:20:89 192.168.1.24    1265370015      glbuh
0:1a:4d:fb:e:a4 192.168.1.152   1265370059      lib2-4z
0:2:b3:b8:8a:36 192.168.1.38    1265370059      serv3

arpwatch формирует события следующих типов:
Важные:

 new activity - Это Ethernet/IP был использован впервые за 6 месяцев.
 new station - Это Ethernet/IP был использована впервые
 flip flop - Замена адреса с одного на другой (оба были в списке).
 changed ethernet address - Замена на новый MAC адрес Ethernet.

Дополнительные:

ethernet broadcast - MAC-адрес хоста является широковещательным. 
ip broadcast - IP-адрес хоста является широковещательным. 
bogon - Адрес отправителя IP-пакета не входит в непосредственно подключённую
        сеть (directly connected network) для заданного интерфейса. 
ethernet broadcast - MAC-адрес отправителя состоит из одних нулей или одних 
                     единиц.
ethernet mismatch - MAC-адрес отправителя пакета не соответствует MAC-адресу, 
                    указанному внутри ARP-запроса. 
reused old ethernet address - Ethernet-адрес изменился с известного адреса на 
                              адрес, который был замечен ранее, но не только 
                              что. (Похоже на flip flop, но чуть-чуть другое.) 
suppressed DECnet flip flop - Сообщение "flip flop" подавлено в связи с тем, 
                              что как минимум один из двух адресов является 
                              адресом DECnet.  

если есть необходимость вести журнал всех событий (не только важных), то меняем (*.notice) на (*.*) в syslog.conf

после чего перезагружаем syslog

killall -HUP syslogd

выглядеть это будет примерно так:
cat /var/log/arpwatch.log
Feb  5 09:27:20 bsd-9 arpwatch: new station 192.168.1.169 0:13:8f:27:2f:6f
Feb  5 09:30:39 bsd-9 arpwatch: new station 192.168.1.29 0:13:8f:24:a3:a
Feb  5 09:35:39 bsd-9 arpwatch: new station 192.168.1.28 0:2:44:5a:69:65
Feb  5 09:53:28 bsd-9 arpwatch: new station 192.168.1.33 0:2:44:5a:69:6b
Feb  5 09:55:40 bsd-9 arpwatch: new station 192.168.1.8 0:1d:7d:a6:6a:73
Feb  5 10:17:35 bsd-9 arpwatch: new station 192.168.1.249 0:13:46:65:81:f5
Feb  5 10:17:36 bsd-9 arpwatch: changed ethernet address 192.168.1.249 0:11:95:b8:96:42 (0:13:46:65:81:f5)
Feb  5 10:41:15 bsd-9 arpwatch: new station 192.168.1.146 0:f:ea:63:f8:40
Feb  5 10:49:11 bsd-9 arpwatch: new station 192.168.1.164 0:19:5b:2f:99:b1
Feb  5 10:52:11 bsd-9 arpwatch: new station 192.168.1.124 0:f:ea:63:f8:32
Feb  5 11:00:57 bsd-9 arpwatch: new station 192.168.1.170 0:f:ea:4f:65:d7

по желанию можно настроить ротацию:

vi /etc/newsyslog.conf

/var/log/arpwatch.log                   644  3     100  *     JC

Установка в OpenBSD

Ставим:
Из порта:

cd /usr/ports/net/arpwatch && make install clean

Пакетом:
wget ftp://ftp.openbsd.org/pub/OpenBSD/4.6/packages/i386/arpwatch-2.1a15p0.tgz

pkg_add ./arpwatch-2.1a15p0.tgz

для запуска arpwatch редактируем rc.local
vi /etc/rc.local

if [ -x /usr/local/sbin/arpwatch -a -d /var/arpwatch ]; then
        /usr/local/sbin/arpwatch -i rl1 && echo -n ' arpwatch'
fi

С флагом "-i" указываем какой конкретно интерфейс слушать "-i rl1"

Ведение логов

Хотя в OpenBSD и так всё заносится в /var/log/messages но среди всего выискивать arpwatch мне не удобно я сделал так:
Редактируем syslog.conf:

vi /etc/syslog.conf

!arpwatch
*.notice;     /var/log/arpwatch

выглядеть это будет примерно так:
cat /var/log/arpwatch
Feb 15 10:32:24 openbsd-9 arpwatch: new station 192.168.1.164 0:19:5b:2f:99:b1
Feb 15 10:39:47 openbsd-9 arpwatch: new station 192.168.1.55 0:1a:4d:65:83:a9
Feb 15 10:41:42 openbsd-9 arpwatch: new station 192.168.1.76 0:1:29:1b:37:1a
Feb 15 11:08:46 openbsd-9 arpwatch: new station 192.168.1.102 0:f:ea:4f:24:1e
Feb 15 11:27:38 openbsd-9 arpwatch: new station 192.168.1.28 0:2:44:5a:69:65
Feb 15 11:28:58 openbsd-9 arpwatch: new station 192.168.1.153 0:13:8f:24:a4:ca
Feb 15 12:00:22 openbsd-9 arpwatch: new station 192.168.1.118 0:1f:d0:b0:bb:91
Feb 15 12:16:09 openbsd-9 arpwatch: new station 192.168.1.26 0:1d:7d:a6:74:b0
Feb 15 13:01:25 openbsd-9 arpwatch: new station 192.168.1.6 0:2:b3:9f:dc:a7
Feb 15 13:05:24 openbsd-9 arpwatch: new station 192.168.1.189 0:1:29:79:10:57
Feb 15 13:11:32 openbsd-9 arpwatch: new station 192.168.1.169 0:13:8f:27:2f:6f
Feb 15 13:27:49 openbsd-9 arpwatch: new station 192.168.1.188 0:24:1d:9d:c8:67
Feb 15 14:25:47 openbsd-9 arpwatch: new station 192.168.1.27 0:1d:7d:a6:70:4d
Feb 15 14:40:54 openbsd-9 arpwatch: new station 192.168.1.64 0:1d:7d:a6:70:76

по желанию можно настроить ротацию:
vi /etc/newsyslog.conf

/var/log/arpwatch                644  3     100  *     JC

Ваша оценка: Нет Средняя: 5 (6 голосов)

Последние статьи

Новые комментарии

Theme by Danetsoft and Danang Probo Sayekti inspired by Maksimer