Checker de proxies para Windows em PowerShell com RBL e checagem de sites

O remcheck.ps1 checa uma lista de proxies em centenas de threads direto no seu PC ou servidor Windows: quais respondem, com que velocidade e com qual IP saem. Outros dois modos cruzam os IPs de saída com 17 listas de spam e contam quantos proxies o Google, o LinkedIn, o Avito e outros sites deixam passar.

  • PowerShell e curl.exe, sem instalar nada
  • até 1000 threads
  • modos connect, rbl e target
  • grátis

Versão 1.3 · 46.0 KBSHA-256 35a92bd2cde5d8c06a1d719569a718083724bf9e612280ff5bb538ae40832d66

Um terminal checa centenas de proxies: linhas azuis levam a nós da rede, luzes verdes e vermelhas mostram as respostas

Rodando em um minuto

Não precisa instalar nada: PowerShell e curl.exe já vêm no Windows 10 e 11. O script roda no Windows PowerShell 5.1, que vem com o sistema, e no PowerShell 7.

  1. Baixe o script

    Abra o PowerShell (Iniciar, digite PowerShell, Enter) e rode o comando: ele cria a pasta C:\remcheck e baixa o script nela.

    mkdir C:\remcheck -Force; cd C:\remcheck; curl.exe -fsSLO https://remproxy.com/files/remcheck.ps1
  2. Libere a execução

    Uma vez em cada janela nova. A permissão vale até fechar a janela e não muda as configurações do Windows.

    Set-ExecutionPolicy -Scope Process Bypass -Force
  3. Cheque uma lista

    Passe o ID da assinatura do painel; your_proxy_id é diferente em cada assinatura. Os resultados aparecem na pasta remcheck-DATA-HORA.

    .\remcheck.ps1 -P socks5 -f your_proxy_id
Se o PowerShell mostrar um erro

A mensagem «a execução de scripts foi desabilitada neste sistema» significa que o passo 2 ficou de fora: por padrão o Windows não roda scripts baixados. A mensagem «curl.exe not found» aparece em Windows anteriores ao 10: baixe o curl em curl.se e coloque o curl.exe numa pasta do PATH, por exemplo C:\Windows.

Três modos

connect: vivos e rápidos

O script abre por cada proxy uma página que devolve o IP e anota o tempo de resposta. Os vivos vão para alive.txt, os mais rápidos no topo.

.\remcheck.ps1 -n 100 -Timeout 8 -f your_proxy_id

rbl: vivos e limpos

Cada IP de saída é procurado em 17 listas de spam via DNS over HTTPS. Com uma assinatura RemProxy o script pega os endereços da coluna real_ip, então a consulta começa na hora, sem conectar pelos proxies. As outras listas passam antes pelo connect. Os limpos vão para clean.txt e os listados para listed.txt.

.\remcheck.ps1 -m rbl -f your_proxy_id

target: quantos proxies um site deixa entrar

O script abre o Google, o LinkedIn, o Avito e mais 13 serviços, ou o seu próprio endereço, por cada proxy com cabeçalhos de navegador. As respostas se dividem em funcionando, captcha, antibot, bloqueios e limites. Antes, cada site é aberto da própria máquina sem proxy: se o site recusa também ela, ele checa o programa e não o IP. Os proxies que funcionam em cada site vão para ok-site.txt.

.\remcheck.ps1 -m target -t google,linkedin,avito -S 300 -f your_proxy_id

Opções

-f LIST
Lista de proxies: ID da assinatura RemProxy ou link da lista. Um arquivo também serve.
-m MODE
Modo: connect (padrão), rbl ou target.
-t LIST
Modo target: serviços e endereços separados por vírgula, por exemplo -t google,linkedin,shop=https://example.com/, ou -t all para os 16.
-k TEXT
Modo target: uma página do seu endereço conta como funcionando só se tiver este texto.
-S NUM
Modos connect e target: checar uma amostra aleatória de NUM proxies.
-n NUM
Quantos proxies checar ao mesmo tempo, 64 por padrão, no máximo 1000. No modo rbl também define quantos IPs vão às listas de spam ao mesmo tempo: 128 sem -n, no máximo 256.
-Timeout SEC
Tempo limite por requisição em segundos, 10 por padrão. Escrito por extenso porque o PowerShell não diferencia -t de -T.
-r NUM
Tentativas por proxy no modo connect, 2 por padrão, no máximo 5. Cada nova tentativa vai para outra página de eco.
-P PROTO
Protocolo para linhas sem esquema: http (padrão), socks5 ou socks4.
-e URLS
Páginas que respondem com o IP, separadas por vírgula. Cinco por padrão: icanhazip, ipify, Amazon checkip, ifconfig.me e ipinfo.
-d DIR
Pasta dos resultados, remcheck-DATA-HORA por padrão.
-C
Modo rbl com uma assinatura RemProxy: conectar mesmo assim por cada proxy em vez de pegar os IPs da coluna real_ip.
-q
Sem linha de progresso. No Agendador de Tarefas ela não aparece mesmo.
Get-Help .\remcheck.ps1 -Full

Formatos da lista

O script lê notações diferentes no mesmo arquivo e pula repetições e linhas vazias. O CSV do painel da RemProxy também serve.

host:port
host:port:user:pass
user:pass@host:port
socks5://user:pass@host:port
ip;port;country;speed;uptime;real_ip

O que aparece na pasta

  • alive.txtProxies que funcionam, os mais rápidos no topo.
  • dead.txtProxies que não responderam.
  • results.tsvTabela: uma linha por proxy, no modo target por proxy e serviço, com o motivo de cada resposta.
  • clean.txtModo rbl: proxies vivos com IP de saída limpo.
  • listed.txtModo rbl: proxies vivos cujo IP está em listas de spam.
  • ok-NAME.txtModo target: proxies que abriram o serviço, os mais rápidos no topo.
  • summary.txtModo target: a tabela final por serviço.

Checando uma lista da RemProxy

Basta o ID da assinatura, o script baixa a lista CSV sozinho. No modo rbl o script pega os IPs de saída da coluna real_ip e não conecta pelos proxies. Cada linha da lista é checada separadamente, 128 ao mesmo tempo, então 1000 proxies levam menos de um minuto. O resumo mostra a quantidade e a porcentagem de proxies limpos e listados.

.\remcheck.ps1 -m rbl -f your_proxy_id

Mantenha o -n igual ou abaixo das threads do seu pacote, senão parte das checagens bate no limite e vai para os mortos.

Se o IP não está na lista branca

A lista só é entregue para IPs da lista branca da assinatura. Se esta máquina não estiver lá, o script para e mostra o IP dela: abra panel.remproxy.com/subscriptions, escolha a assinatura, na seção Acesso adicione este IP aos IPs permitidos e rode a checagem de novo. O código de saída nesse caso é 3.

remcheck: the list server rejected this machine, its IP is not in the subscription whitelist.
  IP of this machine:        203.0.113.7
  Allowed IPs of the plan:   198.51.100.20
Descobrir o IP desta máquina

Checagem agendada

O script não tem modo periódico: quem roda é o Agendador de Tarefas do Windows. O resultado mais recente fica sempre na mesma pasta.

  • Abra o Agendador de Tarefas e escolha Criar Tarefa Básica.
  • Disparador: Diariamente. Depois, nas propriedades da tarefa, aba Disparadores, ative a repetição a cada 30 minutos.
  • Ação: Iniciar um programa. O programa e os argumentos estão abaixo.
    Programa
    powershell.exe
    Argumentos
    -ExecutionPolicy Bypass -File C:\remcheck\remcheck.ps1 -P socks5 -f your_proxy_id -d C:\remcheck\latest -q
  • Salve a tarefa. Os resultados recentes ficarão em C:\remcheck\latest.

A opção -q tira a linha de progresso e -d mantém os resultados numa pasta só, de onde outro programa pode pegá-los.

Requisitos: Windows 10 ou 11 com PowerShell 5.1 e curl.exe embutidos. PowerShell 7 também serve. Em Windows mais antigos é preciso o curl.exe de curl.se numa pasta do PATH.

Perguntas e respostas

01Quantas threads usar no Windows?
Comece com -n 64, o padrão. Cada checagem abre o curl.exe, e no Windows abrir processos custa mais do que no Linux, então passar de 200 raramente ajuda. Com uma lista da RemProxy não passe do número de threads do seu pacote.
02Por que todos os proxies da minha lista da RemProxy aparecem mortos?
Se a lista vem pelo ID da assinatura, o script percebe a recusa e mostra o IP da máquina: adicione-o aos IPs permitidos da assinatura. Se você checa um arquivo, rode o script numa máquina da lista branca. O IP dela aparece na página Meu IP ou com o comando curl.exe -4 ifconfig.me.
03Por que Ozon, Wildberries e Yandex dão 0% no modo target?
Esses sites verificam se a requisição vem de um navegador de verdade e respondem a qualquer programa com uma verificação ou captcha, mesmo de um IP limpo. O script percebe isso na requisição de controle sem proxy, a coluna direct, e deixa uma nota abaixo da tabela. Cheque esses sites num navegador ou num antidetect.
04Qual a diferença entre a versão para Windows e a versão bash?
Modos, opções e arquivos de resultado são os mesmos, e as duas versões aceitam o tempo limite com -Timeout. No Windows não existe o -T curto porque o PowerShell não diferencia -t de -T. A ajuda completa sai com Get-Help .\remcheck.ps1 -Full.
05O script manda meus proxies para algum lugar?
Não. No modo connect cada proxy envia uma requisição para uma de cinco páginas que retornam o IP: icanhazip, ipify, Amazon checkip, ifconfig.me ou ipinfo. No modo rbl o script consulta os IPs de saída nos DNS do Google e da Cloudflare; no modo target abre só os sites de -t. Os resultados ficam numa pasta na sua máquina.

Precisa de um pool para checagens em massa?

Pools MIX de até 25.000 IPs, tráfego ilimitado, HTTP e SOCKS5 na mesma porta, acesso por IP. Uma hora de teste custa US$ 1.

Ver pacotes
ENTRAR/REGISTRAR-SE