
Um Relay de Domain-Fronting que roteia tráfego através do GAS (Google Apps Script) e o encaminha para o Cloudflare Workers. Projetado para contornar DPI.
| Inglês | Persa |
|---|
Cliente -> Relay Local -> Google/CDN Front -> GAS (Google Apps Script) Relay -> Cloudflare Worker -> Saída
|
+-> Mostra www.google.com para o filtro DPI da rede
Cliente -> Relay Local -> Google/CDN Front -> GAS (Google Apps Script) Relay -> Cloudflare Worker -> Self-Hosted Upstream Forwarder -> Saída
|
+-> Mostra www.google.com para o filtro DPI da rede
No uso normal, o navegador envia o tráfego para o proxy em execução no seu computador.
O proxy envia esse tráfego através da infraestrutura do Google, de modo que a rede veja apenas um domínio permitido, como www.google.com.
Seu relay implantado então busca o site real através do cloudflare worker e envia a resposta de volta pelo mesmo caminho.
Isso significa que o filtro vê tráfego normal do Google, enquanto o destino real permanece oculto dentro da requisição do relay.
git clone https://github.com/denuitt1/mhr-cfw.git
cd mhr-cfw
pip install -r requirements.txt
Não consegue acessar o PyPI diretamente? Use este espelho:
pip install -r requirements.txt -i https://mirror-pypi.runflare.com/simple/ --trusted-host mirror-pypi.runflare.com
worker.js deste projeto (em deploy/), copie tudo e cole no editor do Apps Script.const WORKER_URL = "myworker.workers.dev";
Code.gs deste projeto (em deploy/), copie tudo e cole no editor do Apps Script.const AUTH_KEY = "sua-senha-secreta-aqui";
const WORKER_URL = "https://myworker.workers.dev";
⚠️ Lembre-se da senha que você definiu na etapa 3. Você usará a mesma senha no arquivo de configuração abaixo.
Execute o arquivo run.bat (no Windows) ou run.sh (no Linux) para iniciar o relay.
Se estiver executando pela primeira vez, será exibido um assistente de configuração onde você deve inserir o AUTH_KEY e o Deployment ID do Google Apps Script.
Você deverá ver uma mensagem dizendo que o proxy HTTP está rodando em 127.0.0.1:8085
Recomendamos usar o cliente v2rayN e configurar um proxy socks5.
Você também pode usar a extensão Chrome do FoxyProxy ou a extensão Firefox para usar este proxy no seu navegador.
Acesse ipleak.net no seu navegador. Você deverá ver seu endereço IP definido como o do cloudflare.
Quando você executa uma máquina virtual (VM), ela opera em um ambiente de rede isolado, separado do host. Por padrão, a VM não pode acessar diretamente serviços rodando em localhost da máquina host — incluindo este proxy.
Para corrigir isso, você precisa encontrar o IP do gateway que seu hipervisor atribui ao host e usá-lo no lugar de localhost ao configurar o proxy dentro da VM.
Exemplo: VirtualBox (modo NAT)
O host está sempre acessível de dentro da VM em 10.0.2.2. Configure o proxy:
export http_proxy="http://10.0.2.2:8085"
export https_proxy="http://10.0.2.2:8085"
export all_proxy="socks5://10.0.2.2:8085"
Para tornar isso permanente, adicione as linhas acima ao ~/.bashrc e execute source ~/.bashrc.
Como este proxy realiza inspeção SSL, você pode ver erros de certificado. Instale o ca.crt incluído para corrigi-los:
sudo cp ca.crt /usr/local/share/ca-certificates/ && sudo update-ca-certificates
Você pode usar este proxy no seu celular ou em qualquer outro dispositivo na mesma rede — sem software adicional.
1. Encontre o IP do seu host
# Windows
ipconfig
# Linux / macOS
ip addr
Procure o IP do adaptador conectado ao seu roteador (ex.: 192.168.1.8).
2. Redirecione a porta (apenas Windows, se o serviço estiver vinculado ao localhost)
Execute o CMD como Administrador:
netsh interface portproxy add v4tov4 listenaddress=192.168.1.8 listenport=8085 connectaddress=127.0.0.1 connectport=8085
netsh advfirewall firewall add rule name="Proxy 8085" dir=in action=allow protocol=TCP localport=8085
3. Configure o proxy no seu celular
Conecte seu celular ao mesmo Wi-Fi e defina o proxy manualmente:
192.168.1.8)8085No Android: Configurações → Wi-Fi → Modificar → Proxy → Manual No iPhone: Ajustes → Wi-Fi → (rede) → Proxy HTTP → Manual
4. Instale o certificado CA
Transfira o ca.crt para o seu celular e então:
CAPTCHAs (Cloudflare Turnstile/desafio bot, reCAPTCHA, hCaptcha) vinculam tokens
ao IP que resolveu o desafio. Os Cloudflare Workers saem por diferentes
IPs de borda a cada requisição, então a verificação no site alvo falha mesmo quando você
resolve o desafio. Este complemento opcional permite que o Worker encaminhe todas as chamadas fetch()
através de um pequeno servidor Node que você executa em um VPS com IP estável — fornecendo
ao site alvo um endereço de saída consistente.
cf_clearance).Se você não enfrenta esses problemas, deixe desconfigurado — o Worker se comporta exatamente como antes.