一、准备工作:安装Sniffer工具
在Linux系统中,常用的Sniffer工具包括命令行的tcpdump(轻量级、易操作)和图形化的Wireshark(功能全面、可视化强)。安装步骤因发行版而异:
sudo apt-get update && sudo apt-get install tcpdump wireshark -y即可完成tcpdump和Wireshark的安装。sudo yum install tcpdump wireshark -y进行安装。netsniff等项目源码,通过make和sudo make install编译安装(需提前安装依赖库,如build-essential、libncurses5-dev等)。二、启动Sniffer并捕获流量
ifconfig(旧版)或ip a(新版)命令查看网络接口(如eth0、wlan0),确认要监控的接口名称。tcpdump,指定接口即可开始捕获流量,例如sudo tcpdump -i eth0。该命令会实时显示经过eth0接口的所有数据包。capture.pcap),命令为sudo tcpdump -i eth0 -w /path/to/capture.pcap。后续可使用Wireshark打开该文件进行详细分析。三、过滤流量:聚焦关键信息
直接捕获所有流量会导致数据量过大,需通过过滤表达式缩小范围,常见场景如下:
sudo tcpdump -i eth0 port 80;捕获HTTPS流量(端口443),命令为sudo tcpdump -i eth0 port 443。192.168.1.100),命令为sudo tcpdump -i eth0 host 192.168.1.100;监控与某主机的通信(如192.168.1.100与192.168.1.200之间的流量),命令为sudo tcpdump -i eth0 host 192.168.1.100 and host 192.168.1.200。sudo tcpdump -i eth0 port 22。四、分析流量:识别安全威胁
tcpdump的内置选项快速查看流量特征,例如sudo tcpdump -i eth0 -n count可统计每个IP的连接数,帮助发现异常高频连接的IP。pcap文件导入Wireshark(通过wireshark /path/to/capture.pcap命令),通过其可视化界面查看数据包的详细信息(如源/目的IP、端口、协议、 payload)。重点关注以下异常:
Wireshark中“Statistics > Conversations”显示某IP的流量占比过高)。SELECT * FROM、UNION SELECT等SQL关键字(可通过Wireshark的“Filter > http.request.method == POST`筛选POST请求,查看payload)。<script>、onerror=等恶意脚本标签(通过Wireshark的“Filter > http.response.body`筛选响应内容)。五、结合其他工具:强化监控能力
sudo apt-get install iftop(Debian/Ubuntu)或sudo yum install iftop(CentOS/RHEL)安装,运行sudo iftop -i eth0即可查看各连接的带宽使用情况,快速定位占用高带宽的进程或IP。sudo apt-get install nethogs(Debian/Ubuntu)或sudo yum install nethogs(CentOS/RHEL),运行sudo nethogs eth0可查看每个进程的网络流量,识别异常进程(如未知进程占用大量上传带宽)。六、安全注意事项
pcap文件),避免泄露。使用完毕后及时删除不必要的捕获文件。