首页主机资讯CentOS Sniffer能否自定义过滤规则

CentOS Sniffer能否自定义过滤规则

时间2025-11-26 14:25:04发布访客分类主机资讯浏览1197
导读:结论与工具选择 可以,CentOS 上的嗅探工具支持自定义过滤规则。常见工具包括: tcpdump:命令行抓包,使用 BPF(Berkeley Packet Filter) 语法在“捕获阶段”过滤,减少无关流量进入。 Wireshark/...

结论与工具选择 可以,CentOS 上的嗅探工具支持自定义过滤规则。常见工具包括:

  • tcpdump:命令行抓包,使用 BPF(Berkeley Packet Filter) 语法在“捕获阶段”过滤,减少无关流量进入。
  • Wireshark/tshark:图形化或命令行抓包与分析,提供“捕获过滤器”(BPF,抓前过滤)与“显示过滤器”(抓后过滤,语法不同、更灵活)。

tcpdump 自定义过滤示例

  • 基本语法:sudo tcpdump -i 接口 ‘过滤表达式’(表达式需用引号,接口如 eth0)。常用关键字:host、src、dst、port、net、tcp、udp、icmp、and、or、not。示例:
    • 抓取 eth0HTTP/HTTPS:sudo tcpdump -i eth0 port 80 or port 443
    • 抓取来自 192.168.1.100HTTP:sudo tcpdump -i eth0 host 192.168.1.100 and port 80
    • 抓取 TCP SYN 或 FIN:sudo tcpdump -i eth0 ‘tcp[tcpflags] & (tcp-syn|tcp-fin) != 0’
    • 抓取 ICMP 响应(类型 0):sudo tcpdump -i eth0 ‘icmp[icmptype] == icmp-echoreply’
    • 抓取 SMTP 会话中首部含 “MAIL”(十六进制 0x4d41494c):sudo tcpdump ‘tcp port 25 and (tcp[20:4] = 0x4d41494c)’
    • 只抓 100 个包并保存到文件:sudo tcpdump -i eth0 -c 100 -w capture.pcap 提示:表达式中的协议与方向关键字(如 src/dst host、port、tcp/udp)可自由组合,复杂条件用 and/or/not 连接。

Wireshark 与 tshark 的过滤

  • 捕获过滤器(抓前,BPF):在启动抓包前填写,语法与 tcpdump 一致。示例:
    • 仅抓取 80/443:port 80 or port 443
    • 仅抓取 192.168.1.0/24 到本机的 TCP:dst host 192.168.1.10 and tcp
  • 显示过滤器(抓后,Wireshark 语法):抓到包后再筛选,语法不同于 BPF。示例:
    • http.host contains “example.com”
    • ip.addr == 192.168.1.100 & & tcp.port == 80
  • 命令行 tshark 示例:tshark -i eth0 -f “port 80” -Y “http.host contains ‘example.com’” 要点:捕获过滤器减少磁盘与内存占用;显示过滤器更强大,适合精细化分析。

实用建议与合规

  • 优先在“捕获阶段”用 BPF 过滤(如 tcpdump -f/-w),可显著降低资源占用;需要复杂关联与统计再用显示过滤器。
  • 常用优化参数:
    • -s 0/-s 65535:抓取完整报文;默认只抓前 68 字节易丢负载。
    • -n/-nn:不解析主机名/端口名,提升速度并避免 DNS 依赖。
    • -w file:先落盘后分析,配合 Wireshark 更高效。
  • 合规提醒:抓包可能触及隐私与合规要求,务必在取得授权的网络与主机上操作。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: CentOS Sniffer能否自定义过滤规则
本文地址: https://pptw.com/jishu/756695.html
CentOS Sniffer如何设置抓包时长 CentOS环境下Golang日志如何进行分布式部署

游客 回复需填写必要信息