답변:
Apache 대신 원하는 것이 패킷 스니퍼라고도 하는 패킷 분석기 일 수 있다고 생각합니다 . 가장 인기있는 것 중 두 가지는 TCPDump 와 Wireshark 일 것입니다. 둘 다 무료이며 Windows 및 * nix 운영 체제 용 버전이 있습니다. 여기에는 Apache가 보는 것뿐만 아니라 인터페이스에서 들어오는 모든 트래픽이 표시됩니다. 그러나 필터를 사용하여 http의 경우 80과 같은 지정된 포트로 제한 할 수 있습니다.
tcpdump :
서버에서 다음 명령을 실행하면 포트 80으로 향하는 모든 패킷이 표시됩니다.
sudo tcpdump -s 0 -X 'tcp dst port 80'
대문자 X 스위치는 페이로드를 16 진 및 ASCII로 덤프합니다. s 스위치가 0이면 전체 패킷을 얻는다는 의미입니다. 'tcp dst port 80'은 tcp 헤더에서 포트 80으로 향하는 패킷 만 필터링하고 표시하는 것을 의미합니다.
Wireshark :
보다 사용자 친화적 인 버전의 경우 GUI를 실행중인 경우 wireshark (공식적으로 미묘한)를 고려하십시오.
-A
텍스트 전용 (16 진수 덤프 없음) :sudo tcpdump -A -s 0 'tcp dst port 80'
쿠키 덤핑 ? 그렇지 않으면 -mod_dumpio 를 보십시오 .
기본 패킷 스니핑은 ngrep과 tcpdump 및 grep의 하이브리드를 사용하면 쉽습니다. 특정 시나리오에서 웹 브라우저가 웹 서버와 통신하는 방법을보고 HTTP 헤더를 검사하려는 경우.
이 예제에서는 다음과 같이 웹 서버에서 ngrep을 실행하십시오.
$ ngrep port 80
다음과 같이 http 요청을 "GET /"요청으로 포트 80으로 필터링하도록 선택할 수도 있습니다.
$ ngrep -q '^GET .* HTTP/1.[01]'
클라이언트 측에는 Tamper Data라는 유용한 도구가 있습니다.이 도구는 나가는 HTTP 요청을보고 기록하고 수정할 수있는 기능을 제공하는 Firefox 확장입니다.
자세한 내용은 여기를 참조 하십시오
tcpdump 또는 wireshark를 사용하는 대신 tcpflow를 사용하십시오. tcpdump의 대체품이지만 모든 연결의 각 측면에 파일을 생성하므로 스트림을 직접 디코딩하지 않아도됩니다.