⚡ 59 ferramentas de desenvolvimento, sempre atualizadas — cada nova versão upstream chega ao apt em poucas horas. Entre no Discord

📅 A partir de , o mirror apt exigirá uma assinatura. Ver preços · 🆓 Existe um espelho grátis para sempre

🕵️ Instalar o mitmproxy mais recente no Debian

Um proxy HTTP interceptador interativo com suporte a TLS

Última versão: 12.2.3 · atualizado em 2026-09-29
FonteVersão
deb.griffo.io12.2.3 ✅
Debian oficial🚫 não empacotado
← Voltar ao início
📌 Instalando em uma versão específica? Debian 12 (bookworm) · Debian 13 (trixie) · Debian 14 (forky) · Debian Sid

O que é o mitmproxy?

O mitmproxy é um proxy HTTP interceptador, interativo e com suporte a TLS, para pentesters e desenvolvedores de software. Aponte um navegador, um celular, uma CLI ou um contêiner inteiro para ele e cada requisição e resposta passa por um lugar onde você pode vê-la: cabeçalhos, corpos, tempos, detalhes de TLS. Dá para pausar uma requisição no meio do caminho, editá-la e deixá-la seguir, reenviá-la cem vezes ou reescrever o tráfego automaticamente com algumas linhas de Python. Ele fala HTTP/1, HTTP/2, HTTP/3, WebSocket e TLS puro, e roda como proxy regular, transparente, reverso, upstream, SOCKS5, WireGuard ou de captura local. Um único pacote traz três interfaces: mitmproxy, a interface interativa de console, mitmweb, a mesma coisa no navegador, e mitmdump, a versão de linha de comando, um tcpdump para HTTP.

🚀 Por que a versão mais recente importa: O mitmproxy dos arquivos oficiais é o 8.1.1, um lançamento de 2022, e o Debian o tirou do trixie de vez. Tudo o que veio depois falta nele: o modo WireGuard, vários modos de proxy numa única instância, o modo de captura local, HTTP/3 completo, importação e exportação de HAR e anos de correções para as pilhas TLS e as esquisitices de HTTP/2 dos servidores reais. Um proxy interceptador só serve se entende o que os clientes atuais falam, e scripts de addon escritos com a documentação de hoje esperam a API de hoje.

⚡ Principais recursos do mitmproxy

🔓 Enxerga dentro do TLS

Na primeira execução o mitmproxy gera sua própria autoridade certificadora em ~/.mitmproxy/ e emite certificados na hora para cada host que você visita. Confie nessa CA uma vez num cliente e o tráfego HTTPS dele fica legível, requisição por requisição.

✋ Interceptar e editar

Aperte i no console, passe um filtro como ~d api.example.com, e as requisições que casam param onde estão. e edita o método, a URL, os cabeçalhos ou o corpo, a manda seguir.

🔁 Reenviar qualquer coisa

r reenvia uma requisição pelo console. Grave uma sessão com -w e reproduza o lado do cliente com --client-replay, ou responda a um cliente com respostas gravadas usando --server-replay.

🐍 Addons em Python

Carregue um script com -s script.py e intercepte cada requisição, resposta, mensagem WebSocket ou handshake TLS. Reescreva cabeçalhos, simule endpoints, remova rastreamento, grave em arquivo: a API de addons é a mesma sobre a qual os recursos do próprio mitmproxy são construídos.

🧭 Todos os modos de proxy

Regular, transparente, reverso (--mode reverse:https://example.com), upstream, SOCKS5, WireGuard para celulares e VMs e captura local de um único aplicativo. Passe --mode mais de uma vez para rodar vários ao mesmo tempo.

🌐 Console, web ou sem interface

O console guiado pelo teclado para um terminal ou uma sessão SSH, o mitmweb em http://127.0.0.1:8081 para uma lista de fluxos de apontar e clicar, e o mitmdump para scripts, jobs de CI e capturas longas sem supervisão.

🚀 Sempre à frente dos arquivos oficiais: Debian e Ubuntu congelam as versões dos pacotes quando lançam uma release — este repositório publica novas versões upstream normalmente em poucas horas. Um simples apt upgrade mantém você na versão mais recente.

📦 Instalação a partir do deb.griffo.io

Executar os comandos

Passo 1: Adicionar o repositório

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
sudo apt install extrepo
sudo extrepo enable griffo
sudo apt update

🆓 Existe um espelho grátis para sempre. deb-free.griffo.io distribui pacotes grátis para sempre — sem conta, sem assinatura, no máximo 2 meses atrás do upstream, correções de segurança imediatas. Hoje ele traz cliamp, Ghostty, lazydocker, Oh My Posh, Uncloud e Zed; mitmproxy não está entre elas, então o repositório acima é a única forma de instalar hoje — peça e ela pode ser adicionada.

Como funciona o espelho gratuito →

🧩 Sobre a opção extrepo. extrepo é a ferramenta do próprio Debian para repositórios externos: ela escreve o arquivo de sources e instala a chave de assinatura para você, conferindo a chave contra metadados assinados antes de usá-la. Este repositório está registrado nela como griffo, e o espelho gratuito para sempre como griffo-free, então no Debian (bookworm, trixie, forky e sid) os comandos acima são toda a configuração.

O extrepo configura apenas o arquivo de sources e a chave: as credenciais de uma assinatura continuam indo em /etc/apt/auth.conf.d/deb.griffo.io.conf. O Ubuntu não é coberto, porque o extrepo publica metadados só para as suítes do Debian: lá, use os comandos com sudo ou como root.

Passo 2: Instalar o mitmproxy

# Instalar o mitmproxy mais recente
sudo apt install mitmproxy

# Um pacote, três comandos: mitmproxy, mitmweb e mitmdump.
# Ele traz o próprio Python e o próprio OpenSSL, então nada mais é instalado

# Verificar a instalação
mitmproxy --version
mitmdump --version
# Instalar o mitmproxy mais recente
apt install mitmproxy

# Um pacote, três comandos: mitmproxy, mitmweb e mitmdump.
# Ele traz o próprio Python e o próprio OpenSSL, então nada mais é instalado

# Verificar a instalação
mitmproxy --version
mitmdump --version

Passo 3: Primeira execução

# Iniciar a interface de console, escutando na porta 8080
mitmproxy

# Ou a interface web, que abre http://127.0.0.1:8081
mitmweb

# Em outro terminal, mandar uma requisição através dele
curl -x http://127.0.0.1:8080 http://example.com

# A primeira execução gerou uma CA em ~/.mitmproxy/. Com um cliente
# passando pelo proxy, abra http://mitm.it para instalá-la nele,
# ou confie nela no sistema inteiro desta máquina
sudo cp ~/.mitmproxy/mitmproxy-ca-cert.pem /usr/local/share/ca-certificates/mitmproxy.crt
sudo update-ca-certificates
# Iniciar a interface de console, escutando na porta 8080
mitmproxy

# Ou a interface web, que abre http://127.0.0.1:8081
mitmweb

# Em outro terminal, mandar uma requisição através dele
curl -x http://127.0.0.1:8080 http://example.com

# A primeira execução gerou uma CA em ~/.mitmproxy/. Com um cliente
# passando pelo proxy, abra http://mitm.it para instalá-la nele,
# ou confie nela no sistema inteiro desta máquina
cp ~/.mitmproxy/mitmproxy-ca-cert.pem /usr/local/share/ca-certificates/mitmproxy.crt
update-ca-certificates

🎯 Exemplos básicos de uso

Capturando tráfego:

# Escutar em outra porta
mitmproxy --listen-port 9090

# Passar um único comando pelo proxy
HTTPS_PROXY=http://127.0.0.1:8080 curl https://example.com

# Gravar tudo num arquivo, sem interface
mitmdump -w session.mitm

# Mostrar só as requisições para um host
mitmdump "~d api.example.com"

# Salvar um arquivo HAR para as ferramentas do navegador ou um relatório de bug
mitmdump --set hardump=./session.har

Reenviando e inspecionando:

# Abrir uma sessão gravada no console
mitmproxy -r session.mitm

# Imprimir as requisições POST dela sem iniciar um proxy
mitmdump -n -r session.mitm "~m POST"

# Enviar de novo as requisições gravadas
mitmdump -n --client-replay session.mitm

# Responder aos clientes com respostas gravadas em vez do servidor real
mitmdump --server-replay session.mitm

Modos de proxy e addons:

# Proxy reverso na frente de um servidor
mitmproxy --mode reverse:https://example.com --listen-port 8443

# SOCKS5 e um proxy regular na mesma instância
mitmdump --mode socks5 --mode regular

# WireGuard: leia o QR code do mitmweb com o app WireGuard do celular
mitmweb --mode wireguard

# Reescrever o tráfego com um addon em Python, por exemplo addon.py com:
#   def response(flow):
#       flow.response.headers["x-seen-by"] = "mitmproxy"
mitmdump -s addon.py

🔧 Integrações

O mitmproxy fica entre as ferramentas que você já usa e a rede com que elas conversam:

  • curl, wget e a maioria das CLIs: tudo o que respeita HTTP_PROXY e HTTPS_PROXY passa pelo mitmproxy com uma variável de ambiente, e o curl -x faz isso por comando
  • Navegadores e celulares: configure o proxy na porta 8080, abra http://mitm.it e instale a CA para aquela plataforma, ou use o modo WireGuard no Android e no iOS sem nenhuma configuração de proxy
  • Ferramentas do navegador: o hardump grava um arquivo HAR, e o mitmproxy lê arquivos HAR de volta com -r, então uma captura circula entre ele e o Chrome ou o Firefox nos dois sentidos
  • Addons em Python: os scripts carregados com -s rodam dentro do Python embutido no mitmproxy, então podem importar a biblioteca padrão e o que o mitmproxy traz, mas não pacotes instalados para o python3 do sistema
  • Suítes de teste e CI: o mitmdump com --server-replay serve respostas gravadas, o que torna repetíveis nos testes de integração as APIs de terceiros instáveis

🚀 Por que escolher o deb.griffo.io?

📊 Comparativo de repositórios:
  • Debian oficial: o 8.1.1 de 2022 no bookworm, no forky e no sid — e nem existe no trixie, a stable atual
  • pipx ou pip: atual, mas preso ao Python do sistema que você tiver e invisível para o apt
  • O tarball upstream: a mesma build independente que este pacote entrega, descompactada à mão e atualizada à mão
  • deb.griffo.io: versão mais recente com atualizações automáticas

📦 Repositório de build do pacote

Os pacotes Debian são construídos e mantidos automaticamente neste repositório do GitHub:

🔗 Pacotes relacionados

Também disponíveis no deb.griffo.io:

🎯 Ideal para: ver exatamente o que um app de celular ou uma CLI manda para o backend, depurar redirecionamentos OAuth e cookies, testar como um cliente lida com uma API lenta ou quebrada, fazer pentest de aplicações web e transformar um teste manual avulso num script Python repetível.

📦 Últimos lançamentos deste repositório

❓ Perguntas frequentes

O mitmproxy está nos repositórios oficiais do Debian?

Não, mitmproxy não está empacotado nos arquivos oficiais do Debian. Este repositório é atualmente a única fonte apt, oferecendo mitmproxy 12.2.3.

Como instalo o mitmproxy mais recente no Debian?

Adicione o repositório deb.griffo.io uma única vez com as instruções acima e execute: sudo apt install mitmproxy. Novos lançamentos chegam pelo sudo apt upgrade normal.

Os pacotes são assinados e como são construídos?

Cada pacote é assinado com a chave GPG do repositório (EA0F721D231FDD3A0A17B9AC7808B4DD62C41256) e construído a partir de lançamentos upstream em repositórios públicos do GitHub que qualquer pessoa pode inspecionar.

Quais versões do Debian são suportadas?

Debian 12 Bookworm, Debian 13 Trixie, Forky e Sid.