Arpwatch 工具:監控 Linux 中的乙太網活動
作為系統管理員,密切關注網路活動以確保安全並檢測任何異常至關重要。在 Linux 中,一個用於監控乙太網活動的實用工具是 Arpwatch。在本文中,我們將探討 Arpwatch 是什麼,它是如何工作的,以及如何有效地使用它。
什麼是 Arpwatch?
Arpwatch 是一種監控網路上乙太網活動的工具。它旨在跟蹤乙太網/IP 地址配對(ARP 活動)並在發生任何更改時提醒系統管理員。ARP(地址解析協議)是一種用於在本地網路上將 IP 地址對映到 MAC 地址的協議。
Arpwatch 特別適用於檢測潛在的網路攻擊,例如 ARP 欺騙或 MAC 地址欺騙,這些攻擊可用於攔截網路流量或發起中間人攻擊。
Arpwatch 的工作原理
Arpwatch 監聽網路上的乙太網流量,並記錄其觀察到的所有 IP/MAC 地址配對。它將此資訊儲存在資料庫中,然後可以使用它來與收到的任何新的 ARP 請求進行比較。如果它檢測到任何更改,例如新的 IP 地址對映到不同的 MAC 地址,它將向系統管理員傳送警報。
Arpwatch 可以配置為以守護程序的方式執行,這意味著它將持續在後臺監控網路活動,並在檢測到任何更改時提醒管理員。
安裝 Arpwatch
Arpwatch 可以使用包管理器安裝在大多數 Linux 發行版上。在基於 Debian 的系統上,您可以使用以下命令安裝它:
sudo apt-get install arpwatchre
在基於 Red Hat 的系統上,您可以使用以下命令安裝它:
sudo yum install arpwatch
配置 Arpwatch
安裝 Arpwatch 後,需要對其進行配置才能開始監控網路活動。Arpwatch 的配置檔案位於 /etc/arpwatch.conf。
這是一個配置檔案示例:
# arpwatch.conf # Interface to monitor DEVICE=eth0 # Email address to send alerts to #EMAIL_ADDRESS=root # File to store ARP database #ARP_FILE=/var/lib/arpwatch/arp.dat # Run as daemon #RUN_DAEMON=yes
要啟動 Arpwatch,請取消註釋 RUN_DAEMON=yes 行並儲存檔案。然後,使用以下命令啟動 Arpwatch 服務:
sudo service arpwatch start
Arpwatch 現在將開始監控指定網路介面上的乙太網活動。
檢視 Arpwatch 警報
當 Arpwatch 檢測到 ARP 活動發生變化時,它將向配置檔案中指定的電子郵件地址傳送警報。警報將包括有關新的 IP/MAC 地址配對以及先前配對的資訊。
這是一個警報示例:
This is arpwatch program, also known as etherwatch. There was a change in status for ethernet address 00:11:22:33:44:55 on network interface eth0: Previous status: 192.168.1.100 00:11:22:33:44:55 New status: 192.168.1.101 00:11:22:33:44:55
除了電子郵件警報外,Arpwatch 還可以將 ARP 活動記錄到檔案中。ARP 資料庫檔案的預設位置是 /var/lib/arpwatch/arp.dat。可以使用文字編輯器開啟此檔案,或使用 arpwatch 命令檢視:
sudo arpwatch /var/lib/arpwatch/arp.dat
這將顯示 Arpwatch 檢測並記錄的所有 IP/MAC 地址配對的列表。
Arpwatch 選項
Arpwatch 有幾個選項可用於自定義其行為。以下是一些有用的選項:
-n − 不解析主機名。
-r − 以只讀模式執行(不寫入 ARP 資料庫)。
-f − 指定 ARP 資料庫檔案的備用位置。
-a − 附加到 ARP 資料庫檔案而不是覆蓋它。
-d − 增加除錯輸出。
例如,要以只讀模式執行 Arpwatch 並顯示除錯輸出,可以使用以下命令:
sudo arpwatch -r -d
Arpwatch 的高階用法
雖然 Arpwatch 的基本用法很簡單,但有一些更高階的功能可用於增強其功能。
MAC 地址白名單
預設情況下,Arpwatch 會提醒您網路上 MAC 地址到 IP 地址對映的任何更改。但是,如果您的網路上有經常更改 MAC 地址的裝置(例如智慧手機或筆記型電腦),這可能會導致大量錯誤警報。為防止這種情況,您可以將允許更改的 MAC 地址列入白名單。這可以透過將 MAC 地址新增到與 Arpwatch 日誌位於同一目錄下的 arp.dat 檔案中來完成。每個 MAC 地址應位於單獨的一行,格式如下:
xx:xx:xx:xx:xx:xx ignore
在此示例中,xx:xx:xx:xx:xx:xx 應替換為您要列入白名單的 MAC 地址。
DHCP 嗅探
如果您的網路使用 DHCP 為裝置分配 IP 地址,則可以在 Arpwatch 中啟用 DHCP 嗅探。這將允許 Arpwatch 將 MAC 地址與其分配的 IP 地址相關聯,並在其日誌和警報中提供更詳細的資訊。要啟用 DHCP 嗅探,請在 Arpwatch 配置檔案中新增以下行:
dhcp-snooping
DNS 解析
預設情況下,Arpwatch 僅在其日誌和警報中記錄 IP 地址。但是,如果您希望看到主機名而不是 IP 地址,則可以在 Arpwatch 中啟用 DNS 解析。要啟用 DNS 解析,請在 Arpwatch 配置檔案中新增以下行:
resolve
這將導致 Arpwatch 對其看到的每個 IP 地址執行反向 DNS 查詢,並在其日誌和警報中包含主機名。
結論
Arpwatch 是一個強大的工具,用於監控網路上的乙太網活動。透過跟蹤 ARP 活動並提醒系統管理員任何更改,它可以幫助檢測潛在的網路攻擊並確保網路安全。憑藉其簡單的安裝和配置過程,Arpwatch 是任何 Linux 管理員工具箱中的一款很棒的工具。