如何在Linux上从命令行嗅探HTTP流量假设你出于某个原因而想嗅探网络上的实时HTTP Web流量(比如HTTP请求和回应) 。比如说,你可能在测试网站服务器的试验性功能,或者在调试Web应用程序或充分利用REST的服务,抑或是你想要为PAC(代理自动配置)排查故障,或检查从某个网站偷偷下载的任何恶意软件文件 。不管出于什么原因,嗅探HTTP流量大都有帮助,对系统管理员、开发人员、甚至最终用户来说都是如此 。
虽然tcpdump等数据包嗅探工具广泛用于实时的数据包转储 , 你还是需要建立合理的过滤机制,以便只捕获HTTP流量;即使那样,通常无法很容易地在HTTP协议层面解读它们的原始输出 。ngxtop等实时网站服务器日志分析工具提供了人类可读的实时网站流量痕迹 , 但只有在完全访问实时网站服务器日志的情况下才适用 。
虽然拥有tcpdump之类的嗅探工具不错 , 但只针对HTTP流量 。实际上,httpry正是我们所需的一款HTTP数据包嗅探工具 。httpry可捕获网络上的实时HTTP数据包,并且以一种人类可读的格式,显示HTTP协议层面的内容 。我们在本教程中将看看如何使用httpry来嗅探HTTP流量 。
linux命令界面中查看网络连接使用什么命令linux查看网络链接状况命令
netstat 参数如下linux命令如何抓网络:
-a 显示所有socketlinux命令如何抓网络,包括正在监听的 。
-c 每隔1秒就重新显示一遍,直到用户中断它 。
-i 显示所有网络接口的信息,格式同“ifconfig -e” 。
-n 以网络IP地址代替名称,显示出网络连接情形 。
-r 显示核心路由表,格式同“route -e” 。
-t 显示TCP协议的连接情况 。
-u 显示UDP协议的连接情况 。
-v 显示正在进行的工作 。
1. netstat -an | grep LISTEN
0.0.0.0的就是每个IP都有的服务,写明哪个IP的就是绑定那个IP的服务 。
2. netstat -tln
用来查看linux的端口使用情况
3. /etc/init.d/vsftp start
是用来启动ftp端口~!
4. netstat
查看已经连接的服务端口(ESTABLISHED)
5. netstat -a
查看所有的服务端口(LISTEN,ESTABLISHED)
6. sudo netstat -ap
查看所有的服务端口并显示对应的服务程序名
7. nmap <扫描类型><扫描参数>
例如:
nmap localhost
nmap -p 1024-65535 localhost
nmap -PT 192.168.1.127-245
当我们使用 netstat -apn 查看网络连接的时候 , 会发现很多类似下面的内容:
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 52 218.104.81.152:7710 211.100.39.250:29488 ESTABLISHED 6111/1
显示这台服务器开放了7710端口,那么这个端口属于哪个程序呢? 我们可以使用 lsof -i :7710 命令来查询:
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
sshd 1990 root 3u IPv4 4836 TCP *:7710 (LISTEN) 54com.cn
这样,我们就知道了7710端口是属于sshd程序的 。
=================================================
下面这个语句是一个非常好的查看TCP连接状态的语句:
netstat -n | awk '/^tcp/ {S[$NF]} END {for(a in S) print a, S[a]}’
返回结果示例:
LAST_ACK 5
SYN_RECV 30
ESTABLISHED 1597
FIN_WAIT1 51
FIN_WAIT2 504
TIME_WAIT 1057
以下是各种状态的描述
CLOSED:无连接是活动的或正在进行
ESTABLISED:已建立连线的状态linux命令如何抓网络;
SYN_SENT:发出主动连线 (SYN 标志) 的连线封包;
SYN_RECV:接收到一个要求连线的主动连线封包;
FIN_WAIT1:该插槽服务(socket)已中 断 , 该连线正在断线当中;
FIN_WAIT2:该连线已挂断,但正在等待对方主机回应断线确认的封包;
【linux命令如何抓网络 linux网络抓包分析工具】TIME_WAIT:该连线已 挂断,但 socket 还在网路上等待结束;
LISTEN:通常用在服务的监听 port !可使用『 -l 』参数查阅 。
CLOSING: 两边同时尝试关闭
TIME_WAIT:另一边已初始化一个释放
LAST_ACK:等待所有分组死掉
Linux下如何抓指定IP的包linux下有命令可直接执行抓包的,命令如下:
1、tcpdump -vv -i ethN -s 10240 -w /root/abc.cap host ip
2、上述命令中,ethN,是你要抓的本机网卡 , 一般是eth0,可使用ifconfig查看使用的哪个网卡
-s 指定的是抓包数量-w指定的是抓到的包写到哪个位置host ip即为抓取哪个ip 的包
查看一下《linux就该这么学》
在linux命令行环境下如何抓取网络数据包? ? 众所周知,在Windows下开发运行环境下,在调试网络环境时,可以可以很方便的借助wireshark等软件进行抓包分析;并且在linux或者Ubuntu等桌面版里也可以进行安装抓包工具进行抓包分析,但总有一些情况,无法直接运用工具(比如一些没有界面的linux环境系统中),则此时我们就需要使用到最简单的tcpdump命令进行网络抓包 。
? 一般的 , linux下抓包时,抓取特定的网络数据包到当前文件夹下的文件中 , 再把文件拷贝出来利用Windows下的wireshark软件进行分析 。
tcpdump命令详解:(简单举例)
? 1、抓取到的文件为filename.cap,然后将此文件拷贝到Windows下 , 使用wireshar打开后,即可对此文件进行分析 。
? 2、eth0 是主机的网络适配器名称,具体的参数值可以在linux命令行窗口中通过ifconfig指令查询 。
关于linux命令如何抓网络和linux网络抓包分析工具的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息 , 记得收藏关注本站 。
推荐阅读
- python中iloc,python中iloc函数
- sqlserver部署完,运行sqlserver
- linux命令开计算器,linux 计算命令
- C语言函数前面是void c语言void函数
- flutter支付集成,flutter 支付插件
- 鸿蒙腾讯视频自动切换网络,腾讯视频移动网络看自动退出
- sqlserversql语句描述,的sql语句
- c转go语言快速 go语言 c语言
- python中编辑xml的简单介绍