디버깅을 위해 네트워크 인터페이스에서 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
...
저는 리눅스를 사용하고 있습니다.
답변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
사용하여 이 두 줄을 완전한 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를 통해 얻을 수 있습니다.