溫馨提示×

Ubuntu Sniffer使用教程

小樊
48
2025-09-22 14:12:51
欄目: 智能運維

Ubuntu Sniffer使用教程:從基礎到進階

網絡嗅探(Sniffing)是網絡診斷、安全分析的重要手段,Ubuntu系統提供了多種工具滿足不同場景需求。以下是常用Sniffer工具的使用指南,涵蓋命令行與圖形化方案,幫助你快速上手。

一、準備工作:安裝必要工具

1. 安裝依賴庫

多數Sniffer工具需要編譯或運行依賴,首先安裝基礎庫:

sudo apt-get update
sudo apt-get install build-essential libncurses5-dev zlib1g-dev gawk flex quilt git-lfs libssl-dev xz-utils -y

2. 常用Sniffer工具選擇

  • tcpdump:命令行輕量級工具,適合快速捕獲和分析數據包;
  • Wireshark:圖形化協議分析器,功能全面,適合深入分析;
  • aircrack-ng:針對無線網絡的嗅探套件,需配合監控模式使用;
  • nethogs:進程級流量監控工具,直觀顯示每個進程的帶寬占用。

二、命令行Sniffer:tcpdump詳解

tcpdump是Ubuntu默認安裝的工具(若未安裝,可通過sudo apt install tcpdump獲?。?,適合快速捕獲和過濾數據包。

1. 基本捕獲

捕獲所有接口的流量(需root權限):

sudo tcpdump

Ctrl+C停止捕獲。

2. 指定接口

若系統有多個接口(如eth0、wlan0),可通過-i指定:

sudo tcpdump -i eth0  # 捕獲以太網接口流量
sudo tcpdump -i wlan0 # 捕獲無線接口流量

3. 保存到文件

將捕獲的數據包保存為.pcap文件(后續可用Wireshark分析):

sudo tcpdump -i eth0 -w capture.pcap

讀取已保存的文件:

tcpdump -r capture.pcap

4. 過濾流量

通過**Berkely Packet Filter (BPF)**語法過濾,減少無關數據:

  • 按協議過濾tcp(TCP流量)、udp(UDP流量)、icmp(ICMP流量);
  • 按端口過濾port 80(HTTP)、port 443(HTTPS);
  • 按IP過濾src 192.168.1.100(源IP)、dst 192.168.1.1(目標IP);
  • 組合過濾tcp and port 80(TCP且端口為80的流量)。

示例:

sudo tcpdump -i eth0 tcp port 80 -w http.pcap  # 捕獲eth0接口的HTTP流量
sudo tcpdump -i wlan0 icmp -c 10              # 捕獲wlan0接口的10個ICMP包(ping)

三、圖形化Sniffer:Wireshark詳解

Wireshark提供直觀的圖形界面,支持協議解碼、統計分析等功能,適合復雜場景。

1. 安裝Wireshark

sudo add-apt-repository ppa:wireshark-dev/stable  # 添加官方PPA
sudo apt update
sudo apt install wireshark

安裝過程中,系統會提示“是否允許非超級用戶捕獲數據包”,選擇Yes(方便普通用戶使用)。

2. 啟動與選擇接口

  • 打開Wireshark:wireshark;
  • 選擇要捕獲的接口(如eth0、wlan0),點擊Start(開始捕獲)。

3. 實時過濾

在頂部過濾欄輸入BPF語法,實時顯示符合條件的流量:

  • http:僅顯示HTTP流量;
  • tcp.flags.syn==1:顯示TCP SYN包(連接請求);
  • ip.addr==192.168.1.100:顯示與指定IP相關的流量。

4. 分析數據包

  • 點擊單個數據包,右側面板顯示協議分層(如Ethernet、IP、TCP、HTTP);
  • 展開各層,查看源/目標地址、端口、數據內容(如HTTP請求頭、Payload)。

5. 保存與導出

  • 停止捕獲:點擊CaptureStop;
  • 保存捕獲文件:FileSave As(選擇.pcap格式);
  • 導出特定數據:FileExport Specified Packets(如僅導出HTTP流量)。

四、無線網絡Sniffer:aircrack-ng套裝

若需嗅探無線網絡(如WiFi),需使用aircrack-ng工具集,需先將無線接口設置為監控模式(Monitor Mode)。

1. 安裝aircrack-ng

sudo apt install aircrack-ng

2. 開啟監控模式

  • 查看無線接口名稱(如wlp0s20f3):
    ip link show
    
  • 開啟監控模式(以wlan0為例):
    sudo airmon-ng start wlan0
    
    成功后,會生成一個mon0接口(用于捕獲)。

3. 捕獲無線流量

使用Wireshark捕獲監控接口的流量:

sudo wireshark -i mon0

或使用tcpdump:

sudo tcpdump -i mon0 -w wireless.pcap

4. 停止監控模式

捕獲完成后,關閉監控接口:

sudo airmon-ng stop mon0

五、進程級流量監控:nethogs

若需了解每個進程的網絡帶寬占用(如哪個應用在下載),可使用nethogs。

1. 安裝nethogs

sudo apt install nethogs

2. 使用nethogs

  • 監控指定接口(如eth0):
    sudo nethogs eth0
    
  • 輸出結果:顯示進程ID、進程名、發送/接收的帶寬(KB/s)。

注意事項

nethogs需root權限,且不適用于捕獲數據包,僅用于監控進程級流量。

六、合法性提醒

使用Sniffer工具時,需遵守法律法規網絡安全政策

  • 僅在你有權限的網絡(如自己的局域網)中使用;
  • 不得捕獲或分析他人的私人通信(如未經授權的WiFi流量);
  • 捕獲的敏感數據需妥善保管,避免泄露。

以上教程覆蓋了Ubuntu系統下命令行圖形化Sniffer工具的基本使用,根據需求選擇合適的工具即可。如需深入學習,建議參考工具官方文檔(如Wireshark的User Guide)。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女