#http #proxy #debugging #traffic
#http #прокси #отладка #трафик
Вопрос:
Итак, когда я отлаживаю свои веб-приложения и тому подобное, я использую веб-прокси Charles и отладчик, и мне это нравится. Так приятно видеть, что отправляется и принимается через порты 80 и 443. Я могу видеть загрузку всех ресурсов, не только, скажем, из «браузера», но и из flash-приложений. Я также могу видеть, как выполняются вызовы, и их довольно легко восстановить. Это отличный инструмент для отладки, и я люблю его.
Итак, мне интересно две вещи:
Во-первых, мне интересно, есть ли что-то подобное, что я мог бы использовать для просмотра трафика, который может поступать через другие порты. Я предполагаю, что некоторые настольные приложения будут использовать Интернет, но не обязательно через http / https запросы. Я помню, как несколько лет назад я рассматривал некоторые инструменты безопасности — существует множество инструментов безопасности, таких как kismet / EtherCAP, ethershark и т.д. — Есть ли какой-нибудь, который делает то, что я описываю простым и интуитивно понятным способом?
Кроме того, мне интересно, если я использую свое устройство iPhone / iPad / Android, как я могу настроить прокси через свой компьютер, чтобы я мог просматривать запросы http / https, которые делает устройство?
Нашел ответ на этот вопрос здесь: http://www.ravelrumba.com/blog/ipad-http-debugging
Я в основном использую Mac, поэтому все, что подходит для Mac, было бы особенно полезно.
Спасибо!
Ответ №1:
Я полагаю, вы ищете Wireshark. Это позволяет вам отслеживать сетевой интерфейс на вашем компьютере и иметь возможность сообщать вам об отправленных / полученных пакетах, а также об их протоколах. Он также имеет декодер протокола, который можно использовать для получения информации уровня 7 об IP-потоке. Вы также можете выполнить «Отслеживание потока TCP», который позволяет вам просматривать весь диалог по этому соединению. Он основан на libpcap (захват пакетов), который также использует встроенный tcpdump.
Единственным недостатком для вас, веб-разработчиков, является то, что если вы используете сеансы шифрования SSL, вы не можете их расшифровать. Конечные точки сеанса SSL находятся «выше» (используя модель OSI) уровня, на котором работает wireshark (и подобные инструменты).
Комментарии:
1. Стоит ли настраивать прокси типа «Человек посередине», чтобы иметь возможность видеть данные SSL? Знаете какие-нибудь инструменты для этого? Или, возможно, я бы сделал это, а затем использовал Wireshark? На самом деле это для целей веб-разработки 🙂
2. Для этого вы должны уметь использовать stunnel . Он зашифрует / расшифрует туннель, а затем сделает с ним что-то еще. Вы, вероятно, захотите зашифровать от клиента к веб-серверу, а затем перевести соединение на незашифрованный порт, тогда вы могли бы использовать wireshark на нем.
Ответ №2:
Вот хороший список http://sectools.org/sniffers.html . Я использовал Wireshark еще тогда, когда он был Ethereal. В то время он работал под управлением X11, похоже, что это изменилось.