Proxyes de usuarios : los proxies inversos : ip’s fijas

update: ips deberan ser fijas, leer al final y siguientes post desde este post

ok ahora otra cosa, quiero instalar un programa en algunos ordenadores, con el consentimiento de sus usuarios, y que dicho programa cree un proxy para que mis bots se puedan conectar a internet a través de las redes en donde este instalado ¿es posible ?

Es perfectamente 

posible y es, de hecho, el modelo de negocio de empresas como Honeygain o Luminati (Bright Data): convierten ordenadores de usuarios en «nodos» de una red residencial de proxies.

Como tienes el consentimiento de los usuarios, la implementación es mucho más sencilla y estable. Aquí tienes la ruta técnica para lograrlo:

1. La Arquitectura (Cómo se conectan)

No puedes simplemente abrir un puerto en el PC del usuario porque el Firewall o el Router (NAT) lo bloquearán. Necesitas una conexión inversa:

  • El Cliente (PC del usuario): Tu programa se instala y se conecta a un servidor central (C&C) que tú controlas.
  • El Túnel: Se establece un túnel (vía WebSockets, gRPC o SSH Tunneling).
  • El Proxy: Tu bot le envía una petición a tu servidor central, el servidor la manda por el túnel al PC del usuario, el PC del usuario hace la petición a la web (Google, Cloudflare, etc.) y devuelve la respuesta. 

2. Herramientas Recomendadas

Para programar esto, no necesitas reinventar la rueda:

  • Golang o Python: Son ideales para manejar muchas conexiones simultáneas de red de forma ligera.
  • Librerías: Puedes usar goproxy (en Go) o shadowsocks (como base) para crear el servidor proxy dentro del ejecutable.
  • Protocolo SOCKS5: Es el mejor para esto porque permite manejar todo tipo de tráfico (HTTP, HTTPS, FTP) y es lo que la mayoría de bots modernos esperan.

3. El Desafío del «Sigilo» y Rendimiento

Aunque el usuario acepte, querrás que el impacto sea mínimo para que no desinstalen el programa:

  • Control de Ancho de Banda: Debes limitar (capar) la velocidad de subida/bajada para que el usuario no note lag en sus juegos o Netflix.
  • Manejo de IP: Si tu bot hace demasiadas peticiones seguidas, la IP del usuario será baneada o le saldrán mil CAPTCHAs. Necesitas un sistema que rote entre los distintos PCs que tengas instalados.
  • Consumo de CPU: Un proxy consume muy poco, así que este punto es fácil de cumplir.

4. ¿Cómo evitar que el Antivirus lo borre?

Aunque sea legal y consentido, los antivirus suelen marcar los «Proxy Gateways» como PUP (Programas Potencialmente No Deseados).

  • Firma de Código: Necesitarás comprar un certificado de firma de código (Code Signing Certificate) para que Windows «confíe» en tu .exe.
  • Transparencia: Es vital que el programa tenga una interfaz donde el usuario vea que está «compartiendo red» (aunque sea un icono simple en la bandeja del sistema).

Ventaja clave para tus Bots:

Al usar la conexión real del usuario, los sistemas como Cloudflare o Google verán una IP Residencial Limpia. Esto es mucho más valioso que cualquier proxy de centro de datos (Datacenter), ya que es casi imposible que te bloqueen por «comportamiento de bot» basándose solo en la IP.

¿Te gustaría que te dé un ejemplo de cómo estructurar el script de conexión inversa para que el PC del usuario se salte el firewall del router?

si, pero una coa, mis bots están ubicados remotamente, no en el ordenador de los usuarios, sino en mis servidores. Solo quiero que mis bots en mis servidores, se conecten a internet pasando por el proxy que haya creado mi programa a instalar en los usuarios, lo entiendes ? es posible ?

Es perfectamente posible y es la forma estándar de crear una 

Red de Proxies Residenciales. Lo que buscas es un Proxy Inverso (Reverse Proxy).

Como tus bots están en tus servidores y los usuarios están detrás de routers/firewalls (NAT), el bot no puede conectar directamente al PC del usuario. El flujo técnico debe ser este:

El Flujo de Conexión (Túnel Inverso)

  1. El Usuario (Nodo): Instala tu programa. Este programa se conecta a un Servidor de Control (tuyo) y le dice: «Estoy listo, abre un túnel para tráfico».
  2. El Servidor de Control (Relay): Mantiene esa conexión abierta y asigna un puerto (ej. 8081).
  3. Tu Bot (Cliente): Configura su proxy para que apunte a TuServidor:8081.
  4. El Salto: El tráfico del bot llega al servidor, viaja por el túnel hasta el PC del usuario, y sale a Internet desde la IP de su casa.

Cómo implementarlo (Opciones técnicas)

A. Usando SSH Tunneling (La más rápida de probar)

Puedes empaquetar un cliente SSH ligero en tu programa.

  • Comando en el PC del usuario: ssh -R 8080:localhost:1080 usuario@tu-servidor.com
  • Esto crea un puerto en tu servidor que redirige todo el tráfico al proxy local del usuario.

B. Usando Golang (La más profesional y ligera)

Go es ideal porque genera un único archivo .exe pequeño y gestiona miles de conexiones de red sin consumir casi RAM.

  • Puedes usar librerías como Frp (Fast Reverse Proxy) o Chisel. Son herramientas de código abierto diseñadas exactamente para exponer dispositivos detrás de un NAT a un servidor remoto de forma segura.

C. Usando WebSockets (Para saltar Firewalls estrictos)

Si el usuario está en una red muy protegida, el tráfico SSH puede ser bloqueado.

  • Tu programa se conecta por HTTPS/WebSockets a tu servidor (parece navegación normal).
  • Encapsulas el tráfico del proxy dentro de esos WebSockets. Es lo más difícil de detectar y lo más estable.

Consideraciones Cruciales

  1. Proxy SOCKS5 en el usuario: El programa del usuario debe levantar internamente un servidor SOCKS5 (puedes usar la librería go-socks5). Este servidor es el que «recibe» el tráfico del túnel y lo lanza a la web.
  2. Gestión de Nodos: Necesitarás una pequeña base de datos en tu servidor para saber qué usuarios están conectados y qué puerto tiene asignado cada uno para que tus bots sepan a qué IP/Puerto conectarse.
  3. Ancho de banda: Asegúrate de que tu servidor (el Relay) tenga mucha capacidad de red, porque todo el tráfico de tus bots pasará primero por tu servidor antes de ir al usuario.

¿Prefieres que te de un ejemplo de cómo configurar un túnel inverso simple con una herramienta como Chisel o Frp para que hagas la primera prueba?

es detectable por los antibots de google y cloudfare ?

La respuesta corta es: 

Es la técnica menos detectable que existe, pero no es infalible por sí sola.

Para Google o Cloudflare, el tráfico proviene de una IP residencial real (la casa del usuario), lo cual es el «Santo Grial» del scraping. Sin embargo, los antibots modernos no solo miran la IP. Aquí te explico por qué funciona y dónde están los riesgos:

1. Por qué es MUY efectivo (Las Ventajas)

  • Reputación de IP: Las IPs de centros de datos (AWS, Azure, DigitalOcean) están en listas negras. Las IPs de usuarios (Movistar, Vodafone, AT&T) tienen «confianza total».
  • Geolocalización: Si tus bots están en Alemania pero quieres simular tráfico de España, esta es la única forma real de hacerlo sin que sospechen.
  • Límites de Ratio: Cloudflare permite muchas más peticiones por minuto a una IP residencial que a una de servidor antes de mostrar un CAPTCHA.

2. Cuándo SÍ te detectan (Los Riesgos)

Aunque la IP sea perfecta, te detectarán por otros factores si no tienes cuidado:

  • Discrepancia de MTU/TCP Stack: Los sistemas avanzados (como Akamai o Cloudflare) pueden analizar el «paquete» de red. Si el bot tiene una firma de Linux (servidor) pero la IP es de un Windows doméstico, el sistema detecta que hay un proxy/túnel de por medio.
  • Huella Digital del Navegador (Fingerprinting): Si tu bot usa un navegador mal configurado (encabezados HTTP inconsistentes, falta de fuentes de sistema, resolución de pantalla falsa), la IP residencial no te salvará. Google sabrá que es un bot usando la conexión de un humano.

SOLUCIONADO CON QEMU + SUPERPRINGLES (LO DE ARRIBA)

  • Fugas de DNS (DNS Leak): Si el bot usa la IP del usuario para la web, pero resuelve los nombres de dominio (DNS) usando los servidores de tu centro de datos, el antibot verá la discrepancia y te bloqueará.

3. El mayor peligro: El «Agujero Negro» de la IP

Si tus bots hacen acciones «agresivas» (muchas peticiones, spam, scraping masivo):

  1. Google baneará la IP del usuario: Al usuario le empezarán a salir CAPTCHAs en su propio móvil o PC para buscar cualquier cosa.
  2. Quejas del usuario: El usuario notará que internet le va mal o que Google lo «bloquea», y desinstalará tu programa.

Conclusión

Es extremadamente difícil que Google detecte que es un proxy si el túnel está bien configurado, porque para ellos el tráfico nace legalmente en el router del usuario. Es la técnica que usan las empresas más grandes de proxies del mundo.

Para que sea 100% efectivo, tu bot debe usar un navegador con una huella digital (fingerprint) que coincida con el tipo de dispositivo del usuario (ejemplo: si el usuario es Windows, el bot debe presentarse como Windows).

¿Te gustaría que te explique cómo evitar las fugas de DNS en este tipo de túneles para que sea totalmente invisible?

DNS LEAKS

Comentarios

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *