在 Debian 系统中,“sniffer”通常指网络嗅探工具(用于抓包、分析网络流量)。常见的工具有 tcpdump、Wireshark、tshark 等。下面从学习路径、工具安装、基础用法、实战示例、学习资源几个方面给你一个系统指南。
一、先明确你要学什么
- ✅ 网络抓包原理(TCP/IP、网卡混杂模式)
- ✅ 使用命令行 sniffer(tcpdump)
- ✅ 使用图形化 sniffer(Wireshark)
- ✅ 分析 HTTP / DNS / TCP 问题
- ❌ 不用于非法监听他人流量(违法)
二、Debian 环境准备
1. 更新系统
sudo apt update
sudo apt upgrade
2. 安装常用 sniffer 工具
sudo apt install tcpdump
sudo apt install wireshark
sudo apt install tshark
Wireshark 图形界面需要桌面环境
若只使用命令行:tshark 是 Wireshark 的 CLI 版本
三、从 tcpdump 开始(最推荐入门)
1. 基本抓包
sudo tcpdump -i eth0
2. 抓特定端口
sudo tcpdump -i eth0 port 80
3. 抓某个 IP
sudo tcpdump host 192.168.1.10
4. 保存为文件(供 Wireshark 分析)
sudo tcpdump -i eth0 -w capture.pcap
四、Wireshark / tshark 学习
1. 用 tshark 命令行抓包
sudo tshark -i eth0
2. 过滤 HTTP
tshark -Y "http"
3. Wireshark 图形分析
- 打开
capture.pcap
- 使用过滤器:
ip.addr == 192.168.1.10
tcp.port == 443
dns
五、理解关键概念(必须学)
- 混杂模式(Promiscuous Mode)
- TCP 三次握手
- 数据包结构(Ethernet / IP / TCP / UDP)
- 常见协议:DNS、HTTP、ARP、ICMP
六、推荐学习路线
初级阶段
- 学会 tcpdump 基本命令
- 抓自己的网络请求
- 看 Wireshark 图形化结果
中级阶段
- 分析网络故障
- 排查 DNS 解析慢
- 看 TCP 重传、丢包
高级阶段
- 写过滤表达式
- 用 Python + scapy 构造包
- 安全审计(IDS 思路)
七、学习资源推荐
文档
man tcpdump
- Wireshark 官方文档:https://www.wireshark.org/docs/
书籍
- 《Wireshark网络分析就这么简单》
- 《TCP/IP详解 卷1》
视频
- B 站搜索:tcpdump 教程 / Wireshark 教程
如果你愿意,可以告诉我:
- 你是 开发 / 运维 / 安全 方向?
- 用的是 服务器还是桌面 Debian?
- 想解决什么具体问题?
我可以直接给你定制学习方案或实战练习。