alibek Posted June 22, 2019 · Report post Иногда нужно просмотреть взаимодействие между клиентом и сервером на уровне протокола, увидеть сырые передаваемые и принимаемые данные. Посоветуйте, чем это можно сделать? tcpdump подходит далеко не всегда — во-первых речь часто идет о vhost и не всегда интересующего клиента можно посадить на выделенный IP, а во-вторых порой нужно бывает посмотреть внутрь https. Проксирование тоже не так уж просто и удобно бывает использовать, особенно если нужно проксировать https. В Apache можно настроить логгирование: SetEnv flag-debug LogFormat "* %{%FT%T}t%{%z}t %Dus %h %H %f\n\t%m %U%q (len %I, \"%{Accept}i\")\n\tHost: %{Host}i\n\tReferer: %{Referer}i\n\tUA: %{User-Agent}i\n\tOther: MAC \"%{Mac-Address}i\"\n\tResponse: %X #%>s (len %O, \"%{Content-Type}o\")\n" debug CustomLog "${APACHE_VHOST_DIR}/log/debug.log" debug env=flag-debug В какой-то степени это помогает, но не всегда заранее известно, какие данные нужно логгировать. Идеальным для меня было бы сохранять в лог полный набор заголовков http-запроса (опционально с телом запроса) и полный набор заголовков http-ответа (также опционально с телом ответа). Еще в Apache есть модуль log_forensic. Он сохраняет полный набор заголовков, но только для запросов и в неудобном формате. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
naves Posted June 22, 2019 · Report post Если нет шифрования, можно использовать tshark в режиме сохранения в json-файл, который потом грузить в elasticsearch Либо переделывать https на отдельный прокси и перехватывать трафик между. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
alibek Posted June 22, 2019 · Report post А сам апач нельзя научить сохранять запросы/ответы как есть? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
pavel.odintsov Posted June 22, 2019 · Report post Nginx умеет сохранять много-много информации из запроса. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
snvoronkov Posted June 23, 2019 · Report post 10 часов назад, alibek сказал: А сам апач нельзя научить сохранять запросы/ответы как есть? Post-запросы сохранять? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
alibek Posted June 23, 2019 · Report post И сами запросы, и ответы, и их заголовки. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Ivan_83 Posted June 23, 2019 · Report post В 22.06.2019 в 13:29, alibek сказал: Иногда нужно просмотреть взаимодействие между клиентом и сервером на уровне протокола, увидеть сырые передаваемые и принимаемые данные. Консоль браузера тебе в помощь. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
alibek Posted June 23, 2019 · Report post А причем тут браузер? Вся сложность в том, когда клиентами являются устройства. И не всегда в контролируемой сети. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
ixi Posted June 24, 2019 · Report post modsecurity умеет сохранять запросы и ответы Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
alibek Posted June 24, 2019 · Report post Спасибо, почитаю. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...