目标

实现抓取远程服务器的数据包在wireshark中展示,不需要频繁使用tcpdump抓包后保存为cap数据包,在进行从服务器下载进行解析;

工具

1.ssh

win10默认没有开启ssh服务端的,打开方式:搜索-->可选功能-->添加功能-->openSSH服务器-->安装即可

2.wireshark抓包工具

官网下载:Wireshark · Download

本人提供的阿里云盘下载链接:https://www.aliyundrive.com/s/XDHMTb835TU

3.tcpdump命令

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

使用

1.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 与或非

2.wireshark

简单使用

1.抓取本地的包,看到我wifi网卡有数据传输,双击即可他即可进行抓包

2.右键指定的数据行-》追踪流-》tcp流 http流 等,就可以看到对应的数据包了

3.常用的筛选命令
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”

3.ssh+wireshark+tcpdump(重点)

这里将介绍如何进行抓取远程的服务器数据包

1.进入到wireshark的安装目录,在目录栏输入cmd
2.输入命令:ssh root@192.168.1.10 -p 22 "tcpdump -i eth0 -n tcp port 8080 -s 0 -l -w -" | "wireshark.exe" -k -i -
注意:192.168.1.10为自己的服务器地址,eth0为指定网卡,8080为指定抓取的端口,这些自己根据实际情况调整参数,如果抓不到包,指定网卡,或者查看自己的过滤条件
3.回车会弹出wireshark,返回到cmd界面,输入yes,然后提示输入服务器密码,然后输入密码

4.大功告成,这样不仅免去了使用tcpdump在服务器抓包保存后,再使用wireshark进行解析繁琐操作,直接配合wireshark过滤实时观察解析服务器的数据包,大大提高平时开发过程中的效率

感谢各位小伙伴阅读到最后,如有错误,敬请指正。

Java高效开发-SSH+Wireshark+tcpdump组合拳的更多相关文章

  1. Java高效开发-远程debug

    1.前言 "这怎么回事?在本地还好好,放到服务器就不行了.这该怎么排查,日志也看不出来啥呀",日常开发中经常会出现这种问题,这时候就可以尝试idea远程debug的模式试试 2.使 ...

  2. Java高效开发-常用idea插件

    这里推荐几个常用的idea插件,可以大大提高开发的效率 所使用的idea版本为 2021.2.3 1.Jrebel and Xrebel for IntelliJ Jrebel用于热部署,避免频繁重启 ...

  3. Java高效开发IntelliJ IDEA 2019.1 新特性

    1. 重构类.文件.符号,Action 搜索 IntelliJ IDEA(以下简称 IDEA) 中的搜索可以分为以下几类 类搜索,比如 Java,Groovy,Scala 等类文件 文件搜索,类文件之 ...

  4. Java高效开发-fiddler抓包工具

    1.简介 Fiddler是最常用的抓包工具之一,只要打开之后就能够实现数据包抓取,关闭之后会自动取消代理,非常方便本地调试 2.下载 阿里云盘地址:https://www.aliyundrive.co ...

  5. SSH学习之路(一).Net开发与Java Web开发

    摘要:一直再使用.net mvc5开发,期间学习过java web相关的知识,现如今想要进阶一下便开始学习ssh框架. 1..net web开发 对于微软的东西,开发者考虑的东西不需要太多,你新建一个 ...

  6. Java自学开发编程路线图(文中有资源福利)

    Java 语言入门 免费视频资源<毕向东Java基础教程>:http://yun.itheima.com/course/7.html JavaEE 学习大纲 所处阶段 主讲内容 技术要点 ...

  7. java 软件开发面试宝典

    一. Java 基础部分........................................................................................ ...

  8. Struts2、Spring、Hibernate 高效开发的最佳实践(转载)

    Struts2.Spring.Hibernate 高效开发的最佳实践 Struts2.Spring.Hibernate(SSH)是最常用的 Java EE Web 组件层的开发技术搭配,网络中和许多 ...

  9. Java避坑宝典《Java业务开发常见错误100例》上线了

    写这个专栏的缘起 之前我写过一篇博客:<朱晔的互联网架构实践心得S2E2:写业务代码最容易掉的10种坑>,引起的关注还是挺多的.后来和极客时间的编辑一拍即合决定以这个为题写一个专栏.其实所 ...

随机推荐

  1. 转Android service 启动篇之 startForegroundService

    本文转自:https://blog.csdn.net/shift_wwx/article/details/82496447 前言: 在官方文档 Android 8.0 行为变更 中有这样一段话: An ...

  2. Docker 生产环境之配置容器 - 自动启动容器

    原文地址 Docker 提供了重启策略,以控制容器在退出时是否自动启动,或在 Docker 重新启动时自动启动.重启策略可确保链接的容器以正确的顺序启动.Docker 建议使用重启策略,并避免使用流程 ...

  3. CURD系统怎么做出技术含量惊艳面试官

    在<CURD系统怎么做出技术含量--怎样引导面试>有朋友开玩笑说都用上了领域驱动了,就不叫CURD系统了吧.这里我解释一下,怕大家对DDD领域驱动设计有什么误解. DDD是为解决软件复杂性 ...

  4. vue文件上传及压缩(canvas实现压缩)

    // 读取文件结果 afterRead(files) { let that = this; let file = files.file; if (file === undefined) { retur ...

  5. Google earth engine 中的投影、重采样、尺度

    本文主要翻译自下述GEE官方帮助 https://developers.google.com/earth-engine/guides/scale https://developers.google.c ...

  6. CF1070K Video Posts 题解

    Content 有 \(n\) 个数 \(a_1,a_2,a_3,...,a_n\),要求分成 \(k\) 段,每一段的数的总和相等.输出这些段的长度,或者不可能满足要求. 数据范围:\(1\leqs ...

  7. CF1433A Boring Apartments 题解

    Content 我们把仅由一个或多个相同的数位组成的数字叫作"无聊的数字".我们把 \(\leqslant 10000\) 的这种数字按照以下规则排列: 首先,将仅由 \(1\) ...

  8. LuoguP7398 [COCI2020-2021#5] Šifra 题解

    Content 给定一个长度 \(n\) 的只包含小写字母和 \(0\sim9\) 的字符串(字符串中的字母可视为分隔符).求字符串中包含多少个不同的数字. 数据范围:\(1\leqslant n\l ...

  9. Linux 输入指令显示 command not found(未找到命令)解决办法

    问题摘要:当我在linux中安装了一个Nginx,最后需要检查是否安装成功的时候,输入了Nginx -v 提示未找到命令(服务器中英文提示为 command not found) 其他软件命令未找到问 ...

  10. 系统丢包net.netfilter.nf_conntrack_max 超限查看

    sysctl  net.netfilter.nf_conntrack_max  查看限制 sysctl net.netfilter.nf_conntrack_count 查看当前是否超限 echo n ...