⚡ 59 инструментов разработчика, всегда актуальны — новые выпуски появляются в apt в течение нескольких часов. Присоединиться к Discord

📅 С для доступа к apt-зеркалу потребуется подписка. Посмотреть цены · 🆓 Есть вечно бесплатное зеркало

🕵️ Установка последней версии mitmproxy в Ubuntu

Интерактивный перехватывающий HTTP-прокси с поддержкой TLS

Последняя версия: 12.2.3 · обновлено 2026-09-29
ИсточникВерсия
deb.griffo.io12.2.3 ✅
Официальный Ubuntu8.1.1 🛑
← Вернуться на главную
📌 Устанавливаете на конкретный выпуск? Ubuntu 22.04 (jammy) · Ubuntu 24.04 (noble) · Ubuntu 25.10 (questing) · Ubuntu 26.04 (resolute)

Что такое mitmproxy?

mitmproxy — это интерактивный перехватывающий HTTP-прокси с поддержкой TLS для пентестеров и разработчиков. Направьте на него браузер, телефон, консольную утилиту или целый контейнер, и каждый запрос и ответ пройдёт через место, где его видно: заголовки, тела, тайминги, детали TLS. Запрос можно остановить на лету, отредактировать и отпустить дальше, повторить сотню раз или переписывать трафик автоматически несколькими строками на Python. Он понимает HTTP/1, HTTP/2, HTTP/3, WebSocket и «голый» TLS и работает как обычный, прозрачный, обратный, вышестоящий, SOCKS5-, WireGuard-прокси или в режиме локального захвата. Один пакет даёт три интерфейса: mitmproxy — интерактивный консольный UI, mitmweb — то же самое в браузере, и mitmdump — версия для командной строки, tcpdump для HTTP.

🚀 Почему важна последняя версия: mitmproxy в официальных архивах — это 8.1.1, выпуск 2022 года, а из trixie Debian его вообще убрал. Всего, что появилось с тех пор, там нет: режима WireGuard, нескольких режимов прокси в одном экземпляре, режима локального захвата, полноценного HTTP/3, импорта и экспорта HAR и нескольких лет исправлений для TLS-стеков и причуд HTTP/2 реальных серверов. Перехватывающий прокси полезен лишь тогда, когда понимает, на чём говорят нынешние клиенты, а аддоны, написанные по сегодняшней документации, ждут сегодняшнего API.

⚡ Ключевые возможности mitmproxy

🔓 Видит, что внутри TLS

При первом запуске mitmproxy создаёт собственный удостоверяющий центр в ~/.mitmproxy/ и на лету выпускает сертификаты для каждого хоста, который вы посещаете. Один раз доверьтесь этому CA на клиенте, и его HTTPS-трафик становится читаемым, запрос за запросом.

✋ Перехват и правка

Нажмите i в консоли, задайте фильтр вроде ~d api.example.com, и подходящие запросы замирают на месте. e правит метод, URL, заголовки или тело, a отправляет запрос дальше.

🔁 Повтор чего угодно

r повторяет отдельный запрос прямо из консоли. Сохраните сессию через -w и проиграйте клиентскую сторону с --client-replay или отвечайте клиенту записанными ответами с --server-replay.

🐍 Аддоны на Python

Загрузите скрипт через -s script.py и цепляйтесь к каждому запросу, ответу, сообщению WebSocket или рукопожатию TLS. Переписывать заголовки, подменять эндпоинты, вырезать трекинг, писать в лог: API аддонов — тот же, на котором построены функции самого mitmproxy.

🧭 Любой режим прокси

Обычный, прозрачный, обратный (--mode reverse:https://example.com), вышестоящий, SOCKS5, WireGuard для телефонов и виртуальных машин и локальный захват одного приложения. Укажите --mode несколько раз, чтобы запустить несколько режимов одновременно.

🌐 Консоль, веб или без интерфейса

Консоль с управлением с клавиатуры для терминала или SSH-сессии, mitmweb на http://127.0.0.1:8081 для списка потоков мышкой и mitmdump для скриптов, CI-задач и долгих захватов без присмотра.

🚀 Всегда впереди официальных архивов: Debian и Ubuntu замораживают версии пакетов при выпуске релиза — этот репозиторий публикует новые версии обычно в течение нескольких часов. Простое apt upgrade держит вас на последней версии.

📦 Установка из deb.griffo.io

Запуск команд

Шаг 1: Добавить репозиторий

sudo install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | sudo gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(lsb_release -sc 2>/dev/null) main" | sudo tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null
sudo apt update
install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(lsb_release -sc 2>/dev/null) main" | tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null
apt update

🆓 Есть вечно бесплатное зеркало. deb-free.griffo.io раздаёт пакеты бесплатно навсегда — без аккаунта, без подписки, не более 2 месяцев позади upstream, исправления безопасности сразу. Сейчас там cliamp, Ghostty, lazydocker, Oh My Posh, Uncloud и Zed; mitmproxy среди них нет, поэтому репозиторий выше — единственный способ установить его сегодня; попросите, и его можно добавить.

Как работает бесплатное зеркало →

Шаг 2: Установить mitmproxy

# Установить последнюю версию mitmproxy
sudo apt install mitmproxy

# Один пакет, три команды: mitmproxy, mitmweb и mitmdump.
# Внутри свой Python и OpenSSL, так что больше ничего не тянется

# Проверить установку
mitmproxy --version
mitmdump --version
# Установить последнюю версию mitmproxy
apt install mitmproxy

# Один пакет, три команды: mitmproxy, mitmweb и mitmdump.
# Внутри свой Python и OpenSSL, так что больше ничего не тянется

# Проверить установку
mitmproxy --version
mitmdump --version

Шаг 3: Первый запуск

# Запустить консольный UI, слушает порт 8080
mitmproxy

# Или веб-интерфейс, он открывает http://127.0.0.1:8081
mitmweb

# В другом терминале отправить через него запрос
curl -x http://127.0.0.1:8080 http://example.com

# Первый запуск создал CA в ~/.mitmproxy/. С клиента, идущего через
# прокси, откройте http://mitm.it, чтобы установить его на этот клиент,
# или доверьтесь ему во всей системе на этой машине
sudo cp ~/.mitmproxy/mitmproxy-ca-cert.pem /usr/local/share/ca-certificates/mitmproxy.crt
sudo update-ca-certificates
# Запустить консольный UI, слушает порт 8080
mitmproxy

# Или веб-интерфейс, он открывает http://127.0.0.1:8081
mitmweb

# В другом терминале отправить через него запрос
curl -x http://127.0.0.1:8080 http://example.com

# Первый запуск создал CA в ~/.mitmproxy/. С клиента, идущего через
# прокси, откройте http://mitm.it, чтобы установить его на этот клиент,
# или доверьтесь ему во всей системе на этой машине
cp ~/.mitmproxy/mitmproxy-ca-cert.pem /usr/local/share/ca-certificates/mitmproxy.crt
update-ca-certificates

🎯 Базовые примеры использования

Захват трафика:

# Слушать другой порт
mitmproxy --listen-port 9090

# Пропустить через него одну команду
HTTPS_PROXY=http://127.0.0.1:8080 curl https://example.com

# Записывать всё в файл без интерфейса
mitmdump -w session.mitm

# Показывать только запросы к одному хосту
mitmdump "~d api.example.com"

# Сохранить HAR-файл для инструментов разработчика или отчёта об ошибке
mitmdump --set hardump=./session.har

Повтор и разбор:

# Открыть сохранённую сессию в консоли
mitmproxy -r session.mitm

# Вывести из неё POST-запросы, не запуская прокси
mitmdump -n -r session.mitm "~m POST"

# Отправить записанные запросы ещё раз
mitmdump -n --client-replay session.mitm

# Отвечать клиентам записанными ответами вместо настоящего сервера
mitmdump --server-replay session.mitm

Режимы прокси и аддоны:

# Обратный прокси перед одним сервером
mitmproxy --mode reverse:https://example.com --listen-port 8443

# SOCKS5 и обычный прокси из одного экземпляра
mitmdump --mode socks5 --mode regular

# WireGuard: отсканируйте QR-код в mitmweb приложением WireGuard на телефоне
mitmweb --mode wireguard

# Переписывать трафик аддоном на Python, например addon.py с содержимым:
#   def response(flow):
#       flow.response.headers["x-seen-by"] = "mitmproxy"
mitmdump -s addon.py

🔧 Интеграции

mitmproxy встаёт между инструментами, которыми вы уже пользуетесь, и сетью, с которой они говорят:

  • curl, wget и большинство CLI: всё, что уважает HTTP_PROXY и HTTPS_PROXY, идёт через mitmproxy с одной переменной окружения, а curl -x делает это для отдельной команды
  • Браузеры и телефоны: укажите прокси на порту 8080, откройте http://mitm.it и установите CA для своей платформы, или используйте режим WireGuard на Android и iOS вообще без настроек прокси
  • Инструменты разработчика в браузере: hardump пишет HAR-файл, а mitmproxy читает HAR-файлы обратно через -r, так что захват ходит между ним и Chrome или Firefox в обе стороны
  • Аддоны на Python: скрипты, загруженные через -s, выполняются во встроенном Python mitmproxy, поэтому могут импортировать стандартную библиотеку и то, что поставляется с mitmproxy, но не пакеты, установленные для системного python3
  • Наборы тестов и CI: mitmdump с --server-replay отдаёт записанные ответы, и нестабильные сторонние API в интеграционных тестах становятся воспроизводимыми

🚀 Почему стоит выбрать deb.griffo.io?

📊 Сравнение репозиториев:
  • Официальная Ubuntu: 8.1.1 2022 года в universe на noble, questing и resolute, а на jammy и вовсе ещё более старая 6.0.2
  • pipx или pip: свежо, но привязано к тому системному Python, что у вас стоит, и невидимо для apt
  • Архив от разработчика: та же автономная сборка, что и в этом пакете, только распакованная и обновляемая вручную
  • deb.griffo.io: последняя версия с автоматическими обновлениями

📦 Репозиторий сборки пакета

Пакеты для Ubuntu собираются и поддерживаются автоматически в этом репозитории GitHub:

🔗 Похожие пакеты

Также доступны в deb.griffo.io:

🎯 Отлично подходит для того, чтобы: видеть, что именно мобильное приложение или консольная утилита отправляет на свой бэкенд, отлаживать редиректы OAuth и куки, проверять, как клиент ведёт себя с медленным или сломанным API, проводить пентест веб-приложений и превращать разовую ручную проверку в повторяемый скрипт на Python.

📦 Последние релизы этого репозитория

❓ Часто задаваемые вопросы

Есть ли mitmproxy в официальных репозиториях Ubuntu?

Да, но официальный архив Ubuntu поставляет mitmproxy 8.1.1, тогда как этот репозиторий предлагает mitmproxy 12.2.3, пересобирается через несколько часов после каждого релиза.

Как установить последнюю версию mitmproxy в Ubuntu?

Добавьте репозиторий deb.griffo.io один раз по инструкции выше, затем выполните: sudo apt install mitmproxy. Новые версии приходят через обычный sudo apt upgrade.

Подписаны ли пакеты и как они собираются?

Каждый пакет подписан GPG-ключом репозитория (EA0F721D231FDD3A0A17B9AC7808B4DD62C41256) и собирается из релизов upstream в публичных репозиториях GitHub, которые может проверить любой.

Какие версии Ubuntu поддерживаются?

Ubuntu 22.04 Jammy, 24.04 Noble, 25.10 Questing и 26.04 Resolute.