ネットワークインターフェイスからのHTTPリクエストをリアルタイムで監視しますか?

ネットワークインターフェイスからのHTTPリクエストをリアルタイムで監視しますか?

デバッグのために、ネットワークインタフェースでhttpリクエストを監視したいと思います。

単純なtcpdumpコマンドラインを使用すると、低レベルの情報があまりにも多く得られ、必要な情報がはっきりと表現されません。

トラフィックをtcpdumpファイルにダンプした後に使用する場合の欠点wiresharkは、すぐには発生しないことです。

私は次のツールの使用法を想像しています。

$ monitorhttp -ieth0 --only-get --just-urls
2011-01-23 20:00:01 GET http://foo.example.org/blah.js
2011-01-23 20:03:01 GET http://foo.example.org/bar.html
...

私はLinuxを使用しています。

答え1

努力するtcpflow

tcpflow -p -c -i eth0 port 80 | grep -oE '(GET|POST|HEAD) .* HTTP/1.[01]|Host: .*'

出力は次のとおりです。

GET /search?q=stack+exchange&btnI=I%27m+Feeling+Lucky HTTP/1.1
Host: www.google.com

明らかに、grepステートメントに別のHTTPメソッドを追加し、を使用してsedこれらの2行を完全なURLに結合することができます。

答え2

あなたはそれを使用することができますhttpryまたはジャスティニファーこれができるはずです。

httpryたとえば、Fedora パッケージリポジトリから使用できます。

通貨例:

# httpry -i em1

em1ネットワークインタフェース名を示す)

出力例:

2013-09-30 21:35:20    192.168.0.1     198.252.206.16    >    POST    unix.stackexchange.com    /posts/6281/editor-heartbeat/edit    HTTP/1.1
2013-09-30 21:35:20    198.252.206.16  192.168.0.1       < HTTP/1.1   200    OK
2013-09-30 21:35:49    192.168.0.1     198.252.206.16    >    POST    unix.stackexchange.com    /posts/validate-body                 HTTP/1.1
2013-09-30 21:35:49    198.252.206.16  192.168.0.1       < HTTP/1.1   200    OK
2013-09-30 21:33:33    192.168.0.1      92.197.129.26    >    GET     cdn4.spiegel.de    /images/image-551203-breitwandaufmacher-fgoe.jpg    HTTP/1.1

(出力が少し短くなりました)

答え3

似たようなものを探していて、それが機能する必要がある要件を添付しました。httpsまた。

pcapベースのツールtcpflow httpry urlsnarfなどtcpdump カンフーこれはhttpではうまく機能しますが、セキュリティ要求にはあまり幸運ではありません。

私はそれを知っていますURLダンプ、小さなパッケージです。ミートプロシー
iptablesトラフィックをプロキシにリダイレクトして動作を透過的にするために使用されます。

$ sudo urldump   
http://docs.mitmproxy.org/en/stable/certinstall.html
http://docs.mitmproxy.org/en/stable/_static/js/modernizr.min.js
https://media.readthedocs.org/css/sphinx_rtd_theme.css
https://media.readthedocs.org/css/readthedocs-doc-embed.css
https://media.readthedocs.org/javascript/readthedocs-doc-embed.js
...

バラより閲覧ファイルより多くの情報を知りたいです。

答え4

もう一つの良いオプションは次のとおりです。インターネット豚

Fedoraではコアパッケージにあり、Centosではepel repoから入手できます。

関連情報