CentOS Sniffer使用中有哪些技巧
导读:CentOS 环境下 Sniffer 使用技巧 一 工具选型与安装 常用工具与场景 tcpdump:命令行抓包、自动化脚本、性能敏感场景,依赖 libpcap。 Wireshark:图形界面、协议解析丰富,适合深度分析。 Tshark:...
CentOS 环境下 Sniffer 使用技巧
一 工具选型与安装
- 常用工具与场景
- tcpdump:命令行抓包、自动化脚本、性能敏感场景,依赖 libpcap。
- Wireshark:图形界面、协议解析丰富,适合深度分析。
- Tshark:Wireshark 的命令行版,便于远程/批量分析。
- dumpcap:Wireshark 套件的抓包引擎,适合长时间稳定捕获。
- ngrep:基于正则表达式的内容匹配,快速定位字符串/URI。
- 快速安装
- CentOS 7/8 常见做法:sudo yum install -y tcpdump;sudo yum install -y wireshark wireshark-cli(含 tshark/dumpcap);sudo yum install -y ngrep。
二 捕获效率与丢包控制
- 选对接口与模式
- 明确监控对象(如 eth0/ens33/any),必要时开启混杂模式以看到经过接口的所有流量。
- 用好 BPF 过滤器
- 先过滤再抓包,显著降低 CPU/磁盘压力,例如:仅抓 TCP 80 且来源为 192.168.1.100 的流量:sudo tcpdump -i eth0 ‘tcp and src host 192.168.1.100 and port 80’。
- 提升内核与网卡缓冲
- 增大网卡 ring buffer:ethtool -G ens33 rx 2048 tx 1024。
- 增大内核 backlog:echo “net.core.netdev_max_backlog=16384” > > /etc/sysctl.d/99-sysctl.conf & & sysctl -p。
- 控制文件滚动与分段
- 长时间抓包建议按时间/大小分段:sudo dumpcap -i any -b filesize=100 -b files=10 -w session.pcap(每文件 100MB、最多 10 个文件)。
- 降低开销的小技巧
- 仅抓取报文头部:tcpdump -i eth0 -s 68 -w small.pcap;需要更完整内容时再增大 snaplen(如 0 表示全量)。
- 远程分析优先用 Tshark/dumpcap 在目标机本地落盘,再通过 SSH/SFTP 传回小样本做深度解析。
三 精准定位与协议分析
- 按主机/端口/协议快速过滤
- 源/目的 IP:host 10.0.0.10;端口:port 443;协议:icmp、tcp、udp;组合:‘tcp port 80 and host 192.168.1.1’。
- 内容级检索
- 用 ngrep 抓含特定字符串的流量:sudo ngrep -d eth0 ‘GET /’。
- 只写文件,后析更稳
- 先抓取再分析:tcpdump -i eth0 -w http.pcap ‘tcp port 80’;随后用 Wireshark/Tshark 打开分析。
- 协议专用嗅探
- 数据库场景可用 MySQL Sniffer 观察查询与性能特征(需单独安装与部署)。
四 自动化与长期运行
- 无人值守抓包
- 按时间切分:sudo dumpcap -i any -G 10 -W 10 -w cap_ -%m%d%H%M%S.pcap(每 10 秒一个文件,最多 10 个,自动滚动)。
- 按包数限制:sudo dumpcap -i any -c 100000 -w big.pcap。
- 远程批量与自动化
- 在远端用 Tshark/dumpcap 落盘,配合 cron/脚本轮转与集中采集,避免在高负载设备上做复杂解析。
- 资源监控与策略联动
- 抓包同时观察 iftop/htop 等资源,出现丢包或 CPU 飙升时及时调整过滤策略、接口或缓冲参数。
五 合规与安全提示
- 仅在授权的网络与主机上抓包,避免收集敏感信息;对 pcap 文件设置最小权限并妥善保管。
- 抓包可能影响性能与占用存储,生产环境建议选择低峰时段、限定时间/大小、并提前评估磁盘与 I/O 能力。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: CentOS Sniffer使用中有哪些技巧
本文地址: https://pptw.com/jishu/787770.html
