Guía completa para configurar un Upstream Proxy para depuración y geo-testing
Charles Proxy — es una verdadera multiherramienta en el arsenal de cualquier persona que trabaje con tráfico web. Es un potente proxy de depuración (debugging proxy) que se instala en tu ordenador y permite interceptar, inspeccionar, modificar y reproducir todo el tráfico HTTP/HTTPS entre tu dispositivo e Internet. Pero, ¿qué pasa si para la depuración necesitas que el propio Charles acceda a la red no desde tu IP, sino desde una dirección IP situada, por ejemplo, en Estados Unidos o Brasil?
Precisamente para esto existe en Charles la función External Proxy Settings. Esta permite configurar lo que se conoce como un Upstream Proxy (proxy ascendente o puerta de enlace), a través del cual pasará todo el tráfico interceptado por Charles.
¿Por qué es necesario para un profesional?
- Pruebas geo-específicas: Verificar cómo tu sitio web o aplicación móvil muestra el contenido, los precios y la publicidad para usuarios de un país concreto.
- Emulación de usuarios reales: Ver qué servidores CDN y endpoints de API se utilizan al acceder desde diferentes geolocalizaciones.
- Pruebas de configuración de red: Evaluar el comportamiento de la aplicación en entornos donde el acceso a Internet se enruta a través de puertas de enlace estrictamente definidas.
- Validación de control de acceso: Comprobar las respuestas de la aplicación y las reglas de control de acceso utilizando diversas direcciones IP regionales.
En esta guía analizaremos paso a paso cómo configurar Charles para trabajar a través de un servidor proxy externo, para tomar el control total no solo del tráfico en sí, sino también de su origen.
Parte 1: Configuración paso a paso del proxy externo en Charles
El proceso de configuración es lógico y no llevará mucho tiempo. Necesitarás los datos de tu servidor proxy: dirección IP, puerto, protocolo (HTTP o SOCKS) y, si es necesario, usuario y contraseña.
Paso 1: Obtención de credenciales del proxy
El primer paso y el más importante es asegurarse de tener el conjunto completo de datos para la autorización. Estas «llaves» permitirán que tu aplicación o navegador se conecten al servidor proxy y dirijan el tráfico a través de él.
Asegúrate de preparar los siguientes datos:
- Dirección IP (servidor host)
- Puerto de conexión
- Usuario y contraseña para la autorización
- Tipo de protocolo (HTTP o SOCKS5)
Fig. 1. Esta captura de pantalla muestra dónde se encuentran todos los campos necesarios para conectarse al servidor proxy en el área personal de CyberYozh App.
Paso 2: Acceso a la configuración de proxies externos
Primero es necesario abrir la ventana de configuración correspondiente en Charles.
Fig. 2. Esta captura de pantalla muestra la interfaz principal de Charles Proxy antes de comenzar la configuración, mostrando el panel de sesiones y la ventana con los detalles de la solicitud.
- En el menú superior del programa, ve a la sección «Proxy».
Fig. 3. Esta captura de pantalla muestra el primer paso para acceder a la configuración, donde se resalta la opción «Proxy» en el menú superior del programa.
- En la lista desplegable, selecciona la opción «External Proxy Settings...».
Fig. 4. Esta captura de pantalla muestra el menú desplegable «Proxy», donde se debe seleccionar «External Proxy Settings...» para pasar a la configuración de la puerta de enlace externa.
Paso 3: Activación y selección del protocolo
En la ventana «External proxies settings» que se abre, verás las opciones para diferentes protocolos.
- Marca la casilla «Use external proxy servers» para activar la función.
Fig. 5. Esta captura de pantalla muestra la ventana «External proxies settings», donde se debe marcar la casilla «Use external proxy servers» para activar la función.
- Selecciona el protocolo que vas a utilizar. Charles permite configurar diferentes proxies para distintos protocolos simultáneamente.
- Web Proxy (HTTP): Para tráfico HTTP estándar.
- Secure Web Proxy (HTTPS): Para tráfico HTTPS seguro.
- SOCKS Proxy: Un protocolo universal que es preferible para muchas tareas. Recomendamos usar este si tu proveedor de proxy lo soporta.
Fig. 6. Esta captura de pantalla muestra el proceso de configuración del proxy HTTPS: se ha seleccionado el protocolo «Secure Web Proxy (HTTPS)», se han introducido los datos del servidor y se ha activado la casilla «Proxy server requires a password».
Paso 4: Introducción de los datos del servidor proxy
Ahora introduce los datos de tu proxy. Veremos la configuración con el ejemplo de SOCKS Proxy, por ser la opción más universal.
- Activa la casilla «SOCKS Proxy».
- En los campos correspondientes, introduce la dirección IP y el puerto de tu servidor.
- Si tu proxy requiere autorización (y los proxies de calidad siempre la requieren), marca la casilla «Proxy server requires a password».
- Completa los campos «Username» (Usuario) y «Password» (Contraseña).
Fig. 7. Esta captura de pantalla muestra una configuración alternativa utilizando el protocolo SOCKS: se ha seleccionado «SOCKS Proxy» y se han rellenado los campos de autorización correspondientes.
- Tras completar todos los campos, haz clic en «Done».
Fig. 8. Esta captura de pantalla muestra la etapa final para guardar la configuración, donde tras introducir todos los datos es necesario pulsar el botón «Done».
Parte 2: Verificación del correcto funcionamiento
La configuración ha terminado. Ahora es necesario asegurarse de que Charles realmente está dirigiendo el tráfico a través de la puerta de enlace que has especificado.
Paso 5: Análisis de tráfico en Charles
- Asegúrate de que la grabación de tráfico en Charles esté activa (botón con el círculo rojo en la barra de herramientas).
- Abre cualquier sitio web en el navegador. En la parte izquierda de la interfaz de Charles verás cómo aparecen nuevos hosts.
- Busca en la lista cualquier solicitud, por ejemplo, a
app.cyberyozh.com. En la pestaña «Overview» verás información técnica sobre la conexión. Esto demuestra que Charles está interceptando el tráfico.
Fig. 9. Esta captura de pantalla muestra la interfaz de Charles tras la configuración, donde se ve tráfico activo en la lista de sesiones, confirmando que el programa intercepta las solicitudes de red.
Paso 6: Comprobación final de la dirección IP externa
La forma más fiable de asegurarse de que estás saliendo a Internet con la IP del proxy es comprobarla en un servicio externo.
- Abre en el navegador (cuyo tráfico pasa por Charles) cualquier sitio para comprobar la IP, por ejemplo,
browserleaks.com/ip. - Deberías ver la dirección IP y la geolocalización que pertenecen a tu servidor proxy, no a tu proveedor de Internet.
Fig. 10. Esta captura de pantalla muestra el resultado de una configuración exitosa. En el navegador, cuyo tráfico pasa a través de Charles, el sitio browserleaks.com muestra la dirección IP y la geolocalización del servidor proxy externo.
¡Listo! Has configurado con éxito Charles para trabajar a través de un proxy externo.
Matiz importante: Desencriptación de tráfico HTTPS
Por defecto, Charles no desencripta el contenido de las solicitudes HTTPS, solo las redirige (solo verás solicitudes CONNECT). Para ver el contenido (encabezados, JSON, HTML), es necesario:
- Ir a «Proxy» -> «SSL Proxying Settings...».
Fig. 11. Esta captura de pantalla muestra cómo encontrar y seleccionar «SSL Proxying Settings...» en el menú «Proxy» para pasar a la configuración de desencriptación de tráfico HTTPS.
- Activar «Enable SSL Proxying» y añadir los hosts que quieras desencriptar (por ejemplo,
*:443para todos).
Fig. 12. En la ventana «SSL Proxying Settings» que se abre, lo primero es activar la función marcando la casilla «Enable SSL proxying», como se resalta en la imagen.
Fig. 13. Para añadir una nueva regla de desencriptación de tráfico, en este paso es necesario pulsar el botón «+» (Add), situado bajo el campo «Include».
Fig. 14. Aquí se muestra la etapa final de configuración del host: se ha añadido la dirección universal *:443 para interceptar todo el tráfico HTTPS. Tras esto, solo queda pulsar el botón «Done» para guardar los cambios.
- Instalar el certificado raíz de Charles en tu sistema operativo y navegador, siguiendo las instrucciones en el menú «Help» -> «SSL Proxying» -> «Install Charles Root Certificate».
Fig. 15. En el menú desplegable «Help», debes situar el cursor sobre «SSL Proxying» y luego seleccionar la opción «Install Charles Root Certificate» para iniciar la instalación del certificado raíz en el sistema operativo.
Conclusión
La combinación de Charles y un proxy externo es una herramienta poderosísima en manos de un profesional. Permite realizar análisis profundos y depuración de aplicaciones en condiciones lo más cercanas posible a las reales de los usuarios de cualquier parte del mundo. Este enfoque es indispensable para pruebas geo-dependientes, análisis de tráfico publicitario y mantenimiento de un entorno aislado y seguro durante el proceso de investigación de interacciones de red.
👉 ¿Necesitas proxies fiables para Charles? Nuestros proxies SOCKS5 residenciales y móviles garantizan la máxima compatibilidad, estabilidad y direcciones IP de alta confianza desde cualquier geolocalización, lo que los convierte en la elección ideal para depuración y pruebas profesionales.
