如何在Linux下使用命令行嗅探HTTP流量

    一般咱们在调试Web应用、RESTFUL服务或者排错PAC (proxy auto config) 以及检查是否有恶意访问等会去经过错误日志日志或者嗅探数据包的方式去排错;常见的嗅探数据包软件有tcpdump、wireshark;可是针对HTTP须要对数据包进行过滤,显示格式也更不容易读,Httpry工具就能更方便易读的嗅探HTTP流量 html

安装httpry

基于Debian(Ubuntu or Linux Mint),基础库并无httpry包,咱们用源码来安装 linux

1
2
3
4
5
$ sudo apt - get install gcc make git libpcap0 . 8 - dev
$ git clone https : //github.com/jbittel/httpry.git
$ cd httpry
$ make
$ sudo make install

基于Fedora,CentOS or RHEL能够使用EPEL来yum安装 nginx

1
$ sudo yum install httpry

也能够经过源码安装 git

1
2
3
4
5
$ sudo yum install gcc make git libpcap - devel
$ git clone https : //github.com/jbittel/httpry.git
$ cd httpry
$ make
$ sudo make instal
httpry的基本使用

httpry经过监听网卡接口来实时嗅探HTTP的请求和响应 github

1
$ sudo httpry - i < network - interface >

ryeth0
将HTTP 数据包保存为二进制文件 web

1
$ sudo httpry - i eth0 - b output . dump

重放HTTP数据包 数据库

1
$ sudo httpry - r output . dump

将HTTP 数据包保存为文本文件 tcp

1
$ sudo httpry - i eth0 - o output . txt
httpry的高级应用

监控特定的HTTP请求方式(GET,POST,PUT,HEAD,CONNECT等),使用-m参数 工具

get
若是你httpry下载的源代码,你会发现有一组Perl脚本的源代码,帮助分析httpry的输出
这些脚本httpry /scripts/plugins目录中找到。若是你想编写一个自定义解析器httpry的输出,这些脚本是很好的例子.他们的一些功能: spa

  • hostnames: 显示主机名列表.
  • find_proxies:探测web代理
  • search_terms:查找在搜索服务里面的搜索词.
  • content_analysis: 发现uri包含特定的关键词
  • xml_output: 转换为XML格式输出
  • log_summary: 生成日志汇总
  • db_dump: 日志文件数据转储到一个数据库中
1
2
$ cd httpry / scripts
$ perl parse_log . pl - d . / plugins < httpry - output - file >

执行以后httpry/scripts目录下生成txt/xml文件,例如log_summary.txt

summary

相关工具 : ngxtop
参考文档:
http://xmodulo.com/2014/06/monitor-nginx-web-server-command-line-real-time.html
http://dumpsterventures.com/jason/httpry/
http://www.ttlsa.com/nginx/nginx-modules-ngxtop-ttlsa/

相关文章
相关标签/搜索