实现抓取远程服务器的数据包在wireshark中展示,不需要频繁使用tcpdump抓包后保存为cap数据包,在进行从服务器下载进行解析;
win10默认没有开启ssh服务端的,打开方式:搜索–>可选功能–>添加功能–>openSSH服务器–>安装即可
官网下载:Wireshark · Download
本人提供的阿里云盘下载链接:https://www.aliyundrive.com/s/XDHMTb835TU
1.先查看目标服务器是否安装,tcpdump --version
,出现以下信息,则已安装
tcpdump version 4.9.2 libpcap version 1.5.3 OpenSSL 1.0.2k-fips 26 Jan 2017
2.如果没有安装,直接使用yum快速进行安装,不在介绍其他安装方式
yum install tcpdump
这里只做简单介绍,能够抓取到想要数据包即可
参数: -i: 需要抓包的网卡 -s: 设置数据包大小,设置为“0”时,使用默认数据包大小 -S 将tcp的序列号以绝对值形式输出,默认相对值 -l :(小写的 L )不缓存,直接输出 -w -:将原始数据包写入文件,“ - ”表示使用标准输出 -nn 不进行端口名称的转换,默认转换,比如22端口会显示ssh -w 存储抓到的包,一般.cap格式 -v 输出更详细的报文信息,可以多个v一起使用,如-vvvv src host 指定源ip dst host 指定目的ip src port 指定源端口 dst port 指定目的端口 or|and|nor 与或非
eq == 等于ne != 不等于gt > 比…大lt < 比…小 ge >= 大于等于le <= 小于等于 and || 且 or && 或 not ! 取反 过滤http请求的uri中含有/dll/test.htm?字段的请求信息 http.request.uri contains “/dll/test.htm?” 过滤包含81:60:03的udp数据包 udp contains 81:60:03 matches 匹配过滤条件中给定的正则表达式 http.request.uri matches "表达式" 过滤经过指定域名的http数据包 1.http.host==magentonotes.com 2.http.host contains magentonotes.com 过滤指定http响应状态码 http.response.code==200 过滤所有的http响应包 http.response==1 过滤所有的http请求包 http.request==1 过滤所有请求方式为POST的http请求包,注意POST为大写 http.request.method==POST 过滤请求的uri,取值是域名后的部分 http.request.uri=="/demo/test" 过滤http头中server字段含有nginx字符的数据包 http.server contains "nginx" 过滤content_type是text/html的http响应、post包,即根据文件类型过滤http数据包 http.content_type == “text/html”
这里将介绍如何进行抓取远程的服务器数据包
ssh root@192.168.1.10 -p 22 "tcpdump -i eth0 -n tcp port 8080 -s 0 -l -w -" | "wireshark.exe" -k -i -
感谢各位小伙伴阅读到最后,如有错误,敬请指正。