温馨提示×

ubuntu sniffer怎样配置

小樊
38
2026-10-21 01:51:22
栏目: 智能运维

在 Ubuntu 上配置“sniffer(抓包工具)”通常有几种常见场景。下面按最常用、最实用的方式给你讲,从简单到进阶。


一、使用 tcpdump(最基础 sniffer)

1. 安装

sudo apt update
sudo apt install tcpdump

2. 基本用法

sudo tcpdump -i eth0
  • eth0:网卡名(用 ip a 查看)
  • 抓取所有流量

3. 常用参数

sudo tcpdump -i any -n
sudo tcpdump -i eth0 port 80
sudo tcpdump -i eth0 host 192.168.1.1
sudo tcpdump -w capture.pcap   # 保存文件
sudo tcpdump -r capture.pcap   # 读取

二、使用 Wireshark(图形界面 sniffer)

1. 安装

sudo apt install wireshark

安装时会问:

Should non-superusers be able to capture packets? 选 Yes

2. 允许普通用户抓包

sudo usermod -aG wireshark $USER

然后注销重登录

3. 启动

wireshark

三、Python 写简单 sniffer(scapy)

1. 安装

sudo apt install python3-pip
pip3 install scapy

2. 示例

from scapy.all import sniff

def callback(pkt):
    print(pkt.summary())

sniff(iface="eth0", prn=callback, count=10)

四、开启网卡混杂模式(promiscuous)

有些环境需要:

sudo ip link set eth0 promisc on

关闭:

sudo ip link set eth0 promisc off

五、常见问题

1. 虚拟机抓不到包?

  • 网卡模式改为 桥接(Bridge)
  • 不要用 NAT

2. 云服务器抓不到别人流量?

  • 正常,交换机隔离
  • 只能抓自己进出流量

3. 权限问题?

  • 必须 sudo
  • 或加入 wireshark 组

六、你具体想做什么?

我可以直接给你对应配置,比如:

  • 抓 HTTP 密码
  • 抓 DNS
  • 监控某个 IP
  • 无线 WiFi 抓包
  • docker 内抓包

告诉我你的使用场景即可。

0 踩