it-swarm-ru.tech

Как сбросить все HTTP-запросы с Apache

Можно ли сбросить целые HTTP-запросы с помощью Apache? Мне нужно отслеживать все HTTP-заголовки входящих запросов. Как это сделать?

27
Alex

Я думаю, что вместо Apache вам может понадобиться анализатор пакетов , также известный как анализатор пакетов. Двумя наиболее популярными из них являются, вероятно, TCPDump и Wireshark , которые являются бесплатными и имеют версии для операционных систем Windows и * nix. Они покажут вам весь трафик, поступающий через интерфейс, а не только то, что видит Apache. Но вы можете использовать фильтры для ограничения указанным портом, например, 80 для http.

ТСРйитр:
Следующая команда, запущенная с сервера, покажет вам все пакеты, предназначенные для порта 80:

Sudo tcpdump -s 0 -X 'tcp dst port 80'

Переключатель с большой буквы X выводит полезную нагрузку в шестнадцатеричном и ASCII-формате Переключатель s с 0 означает получение всего пакета. "tcp dst port 80" означает фильтровать и показывать только пакеты, предназначенные для порта 80, в заголовке tcp.

Wireshark:
Для более удобной версии, если у вас работает графический интерфейс, рассмотрите wireshark (формально известный как Ethereal).

30
Kyle Brandt

может быть сброс куки ? в противном случае - посмотрите на mod_dumpio .

12
pQd

Базовое прослушивание пакетов легко с ngrep, гибридом tcpdump и grep. В определенных сценариях, если вы хотите увидеть, как веб-браузеры взаимодействуют с веб-серверами, и проверить заголовки HTTP.
В этом примере запустите ngrep на веб-сервере следующим образом:

$ ngrep port 80

вы также можете отфильтровать запрос http к запросу "GET /" на порт 80:

$ ngrep -q '^GET .* HTTP/1.[01]'

На стороне клиента есть полезный инструмент, который называется Tamper Data. Это расширение Firefox, которое дает вам возможность просматривать, записывать и даже изменять исходящие HTTP-запросы.
Вы можете найти больше информации здесь

8
Ali Mezgani

Вместо использования tcpdump или wireshark используйте tcpflow. Это капля замены tcpdump, но создает файл для каждой стороны каждого соединения, поэтому вам не нужно пытаться декодировать поток самостоятельно.

7
David Pashley

Apache имеет эту встроенную функциональность; просто увеличьте уровень журнала до trace7 или trace8:

LogLevel trace8

Обратите внимание, что при этом будет сброшен лот данных. Вы были предупреждены.

0
Wouter Verhelst