Мониторинг http/https из терминала с интерфейсом, похожим на top

Вопрос или проблема

Я ищу монитор сети с интерфейсом в стиле top, но я хотел бы иметь возможность просматривать все запросы / ответы, а не только IP-адреса, к которым происходит подключение. Я нашел несколько инструментов [1], которые, похоже, подходят под то, что я ищу, причем iptraf кажется наиболее близким по интерфейсу, а httpry – по функциональности.

Проблема с httpry (помимо интерфейса) заключается в том, что он может показывать только http запросы, а не https — что интуитивно понятно, потому что s в https означает защиту. Но, например, в моем браузере я могу отслеживать все запросы и их ответы, независимо от того, являются ли они https или нет. По всей видимости, это потому, что браузер является владельцем ключа, используемого в запросе, поэтому он может расшифровывать сообщения, в то время как вне браузера это сделать нельзя. Но по крайней мере теоретически, с доступом root на моем компьютере, я должен иметь возможность делать это и вне браузера, по очевидным причинам. Является ли единственной причиной, по которой другие инструменты не могут этого сделать, то, что они не знают местоположение ключей, используемых браузером в случае ответов, и что они не видят запрос до его шифрования и отправки в случае запросов? То есть это прагматическая проблема.

Моя интуиция подсказывает, что я мог бы настроить прокси на своем компьютере, который предоставляет единственный ключ для шифрования запросов, сделанных к прокси с моего компьютера, затем может расшифровывать запрос, предоставлять его мне для чтения, повторно шифровать и передавать на фактический целевой сервер, а затем делать примерно то же самое в обратном порядке. Существует ли что-то подобное, что можно было бы мониторить из TUI и что не представляет собой явную уязвимость безопасности?

Если инструмент также сможет отслеживать все типы трафика на интерфейсе и представлять его в каком-либо читаемом / удобном формате, это будет плюсом — что-то вроде ssh bob@bobserver | ip 123.456.789.101 | port 22 | proc 12345 | user bob | 2024-01-01 12:24:46.

[1] nethogs jnettop chitose iftop iptstate nagios iptraf httpry

Ответ или решение

Мониторинг HTTP/HTTPS Трафика с Интерфейсом Похожие на Top

С учетом поставленной задачи по созданию инструмента для мониторинга HTTP и HTTPS трафика с интерфейсом, аналогичным top, необходимо рассмотреть существующие решения и предложить возможные подходы. Также важно учесть ограничения, связанные с шифрованием HTTPS, и возможности разработки прокси-сервера для достижения желаемого результата.

Существующие Инструменты

Среди инструментов, перечисленных в вашем запросе, действительно есть несколько полезных решений:

  1. Iptraf — этот инструмент предоставляет информацию о сетевом трафике, но, как вы правильно заметили, он не способен показывать конкретные запросы и ответы HTTP/HTTPS.
  2. Httpry — это приложение ориентировано на захват и анализ HTTP-запросов, однако не поддерживает HTTPS из-за его защищенности.

Таким образом, ни одно из этих решений не удовлетворяет в полной мере вашим требованиям.

Проблема Шифрования HTTPS

Как вы уже указали, основная причина, по которой инструменты не могут легко декодировать HTTPS-трафик, заключается в том, что запросы и ответы защищены шифрованием TLS/SSL. Браузеры имеют доступ к ключам шифрования, что позволяет им расшифровывать и отображать содержимое. Вне браузера, без соответствующих ключей, сделать это невозможно.

Однако с root-доступом к вашему устройству можно использовать некоторые подходы для мониторинга HTTPS-трафика. Наиболее распространенным методом является использование прокси-сервера.

Настройка Прокси-Сервера для Мониторинга Трафика

Вот подробный план действий, который поможет вам настроить прокси-сервер для мониторинга HTTP и HTTPS трафика с графическим интерфейсом:

  1. Установка Прокси-Сервера:

    • Вы можете использовать такие инструменты, как Mitmproxy или Fiddler, которые позволяют перехватывать HTTP и HTTPS трафик. Эти инструменты могут работать как прокси-сервер, принимая запросы от вашего устройства, расшифровывая их и затем пересылая на целевой сервер.
  2. Настройка SSL/TLS Сертификата:

    • Для перехвата HTTPS-запросов вам нужно создать собственный сертификат и установить его на вашем устройстве. Это позволит вашему прокси-серверу расшифровывать трафик, как это делает браузер.
    • Прокси-сервер должен быть настроен на использование этого сертификата для завершения шифрования.
  3. Использование TUI Интерфейса:

    • Некоторые из прокси-инструментов поддерживают интерфейс командной строки (CLI), которые можно адаптировать под TUI. Например, Mitmproxy имеет текстовый интерфейс, который можно использовать для анализа HTTP/HTTPS трафика.
    • Вы можете настроить его для отображения запросов и ответов в читаемом формате.
  4. Мониторинг Дополнительного Трафика:

    • Для мониторинга всего сетевого трафика, включая выходные и входные соединения, рассмотрите использование таких инструментов, как iftop или nethogs, которые могут работать в комбинации с вашим прокси-сервером.

Безопасность и Продуктивность

Одной из основных забот при использовании прокси-сервера является безопасность. Убедитесь, что доступ к вашему прокси ограничен, а ваши конфиденциальные данные защищены. Используйте его только на локальной машине и никогда для перехвата данных от других пользователей без их ведома.

Заключение

Подводя итоги, создание TUI-инструмента для мониторинга HTTP и HTTPS трафика возможно с помощью настройки прокси-сервера, такого как Mitmproxy, с поддержкой собственных SSL-сертификатов. В сочетании с инструментами для мониторинга сетевого трафика вы сможете получить полное представление о запросах и ответах.

Данное решение обеспечит удобство в мониторинге, сочетающее в себе необходимые функции и безопасность, что делает его идеальным инструментом для анализа трафика.

Оцените материал
Добавить комментарий

Капча загружается...