您的位置:首页 > 理论基础 > 计算机网络

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

2014-08-22 10:13 225 查看
通常我们在调试Web应用、RESTFUL服务或者排错PAC (proxy auto config) 以及检查是否有恶意访问等会去通过错误日志日志或者嗅探数据包的方式去排错;常见的嗅探数据包软件有tcpdump、wireshark;但是针对HTTP需要对数据包进行过滤,显示格式也更不容易读,Httpry工具就能更方便易读的嗅探HTTP流量安装httpry基于Debian(Ubuntu or Linux Mint),基础库并没有httpry包,我们用源码来安装
$ 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安装
$ sudo yum install httpry
也可以通过源码安装
$ git clone https://github.com/jbittel/httpry.git $ cd httpry
$ make
$ sudo make install
httpry的基本使用httpry通过监听网卡接口来实时嗅探HTTP的请求和响应
$ sudo httpry -i <network-interface>



将HTTP 数据包保存为二进制文件
$ sudo httpry -i eth0 -b output.dump
重放HTTP数据包

$ sudo httpry -r output.dump
将HTTP 数据包保存为文本文件
$ sudo httpry -i eth0 -o output.txt
httpry的高级应用监控特定的HTTP请求方式(GET,POST,PUT,HEAD,CONNECT等),使用-m参数


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

find_proxies:探测web代理

search_terms:查找在搜索服务里面的搜索词.

content_analysis: 发现uri包含特定的关键词

xml_output: 转换为XML格式输出

log_summary: 生成日志汇总

db_dump: 日志文件数据转储到一个数据库中

$ cd httpry/scripts
$ perl parse_log.pl -d ./plugins <httpry-output-file>
执行之后httpry/scripts目录下生成txt/xml文件,例如log_summary.txt

相关工具 : 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/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  linux ngxtop httpry