Cómo solucionar el error 407 Proxy Authentication Required

Actualizado:

Un error 407 es mejor noticia de lo que parece: tu dispositivo se conectó con el proxy y la ruta de red está abierta. El proxy solo indica que no recibió un usuario y contraseña válidos. Por eso, casi todos los errores 407 se resuelven en las credenciales, no en tu router ni en tu firewall.

Proxies privados con credenciales claras

Causas del error 407, de más a menos probables

  • Usuario o contraseña incorrectos o ausentes. Un carácter mal escrito o un espacio final copiado junto con la contraseña. Esto explica la mayoría de los casos de 407.
  • Campos pegados en las casillas equivocadas. La línea completa ip:port:user:pass termina en la casilla Host, o el usuario en la de la contraseña. Algunas herramientas separan los cuatro campos automáticamente; otras no.
  • La aplicación nunca envía las credenciales. La configuración de proxy del sistema operativo solo guarda la dirección y el puerto. Las aplicaciones que no pueden solicitar una contraseña se conectan sin el encabezado de autenticación y reciben un 407.
  • Caracteres especiales en la URL del proxy. En el formato http://user:pass@host:port, los caracteres como @, : o # en la contraseña deben codificarse con porcentaje (@ pasa a ser %40); de lo contrario, la cadena se divide en el lugar equivocado.

Cómo se ve realmente un error 407

Reprodujimos el error en un proxy de prueba, mostrado aquí con la dirección de documentación 203.0.113.10:8080 y unas credenciales deliberadamente incorrectas user123:pass456. Al probar contra un sitio HTTPS, curl -x http://user123:[email protected]:8080 https://example.com devuelve curl: (56) CONNECT tunnel failed, response 407. Contra un sitio HTTP normal con -w %{http_code}, curl imprime únicamente 407.

Añade -v para comprobar si se enviaron las credenciales. La traza muestra > CONNECT example.com:443 HTTP/1.1, luego > Proxy-Authorization: Basic ... y solo después el 407. Si falta la línea Proxy-Authorization, tu cliente nunca envió los datos de acceso.

El proxy checker de VinaProxy reporta este mismo caso como auth failed (407). Chrome en modo headless, al no tener cuadro de diálogo de inicio de sesión, lo muestra como ERR_TUNNEL_CONNECTION_FAILED; consulta la página del error de túnel.

Soluciones según el entorno

  • Windows y Chrome: Chrome utiliza la configuración de proxy de Windows (Configuración > Red e Internet > Proxy), que solo admite dirección y puerto. Al cargar la primera página, Chrome abre un cuadro de diálogo para ingresar el usuario y la contraseña del proxy. Si los escribiste mal y la ventana no vuelve a aparecer, cierra todas las ventanas de Chrome y vuelve a abrirlo.
  • Navegadores antidetect (AdsPower, GoLogin, GenLogin): mantén Host, Port, Username y Password en campos separados. Borra el campo de contraseña por completo y pégalo de nuevo en lugar de editarlo. Encontrarás ayuda campo por campo en la guía de configuración de GoLogin.
  • Teléfonos móviles: iPhone tiene un interruptor de Autenticación en Ajustes > Wi-Fi > (i) > Configurar proxy; si lo dejas desactivado, se produce un 407. Android suele admitir únicamente host y puerto, por lo que las aplicaciones que requieren autenticación pueden mostrar un error genérico de conexión en su lugar.
  • curl: pasa -U "user:pass" por separado en lugar de incluirlo dentro de la URL, lo que evita problemas con caracteres especiales.
  • Python requests: define http://user:pass@host:port para las claves http y https del diccionario proxies, y codifica las contraseñas complejas con urllib.parse.quote.

Las credenciales son correctas pero el error 407 persiste

A continuación, verifica los protocolos. VinaProxy ofrece proxies HTTP(S) con autenticación user:pass y también SOCKS5, así que selecciona el protocolo que aparece en tu pedido en el panel de control. Si el verificador responde not socks5, ese puerto utiliza HTTP y no debe configurarse como SOCKS5.

Paso a paso

  1. 1

    Copia la línea del proxy desde el panel de control

    Abre el pedido en tu panel de control de VinaProxy y copia la línea completa en lugar de escribirla manualmente.

  2. 2

    Pásala por el verificador de proxies

    Pégala en el proxy checker. El resultado auth failed (407) confirma que se trata de un problema de credenciales y no de red.

  3. 3

    Vuelve a introducir el usuario y la contraseña sin espacios

    Limpia ambos campos en tu aplicación y pégalos de nuevo sin espacios al principio ni al final.

  4. 4

    Haz coincidir el protocolo con el de tu pedido

    Configura el tipo de proxy como HTTP o SOCKS5 exactamente como se indica en el pedido y guarda los cambios.

  5. 5

    Rastrea la conexión con curl -v si el error persiste

    Ejecuta curl -v con tus valores reales y verifica que aparezca la línea Proxy-Authorization antes del 407.

Preguntas frecuentes

¿El error 407 se debe a que mi proveedor de internet bloquea el proxy?

No. El 407 lo envía el propio proxy, por lo que la conexión se completó. Un bloqueo en la red suele mostrarse como tiempo de espera agotado o conexión rechazada; consulta tiempo de espera del proxy.

¿Por qué Chrome sigue pidiendo los datos de acceso al proxy una y otra vez?

Cada intento incorrecto genera otro 407 y Chrome vuelve a solicitar las credenciales. Comprueba el bloqueo de mayúsculas y asegúrate de que ningún método de entrada agregue tildes o acentos a la contraseña.

¿Cómo incluyo una contraseña con @ en la URL de un proxy?

Codifícala: @ como %40, : como %3A y # como %23. En curl, el parámetro -U evita la codificación por completo.

¿Selenium o Puppeteer muestran un error de túnel en lugar del 407? ¿Es el mismo problema?

Por lo general, sí. Headless Chrome no puede mostrar un cuadro de diálogo de inicio de sesión, por lo que el 407 se manifiesta como ERR_TUNNEL_CONNECTION_FAILED. Proporciona las credenciales mediante el mecanismo de autenticación de la biblioteca, tal como se explica en la guía de Selenium.

Proxies privados con credenciales claras

Cada pedido de VinaProxy incluye una línea ip:port:user:pass lista para copiar una vez y pegar donde quieras.

Ver precios de proxies

Artículos relacionados

Errores de proxy
Cómo solucionar ERR_TUNNEL_CONNECTION_FAILED con un proxy
ERR_TUNNEL_CONNECTION_FAILED significa que Chrome llegó al proxy pero no se abrió el túnel HTTPS. Cómo interpretar el código de CONNECT y solucionarlo en Chrome, Puppeteer y Android.
Herramientas gratuitas
Comprobador de proxies: verifica tus proxies online
Comprobador de proxies gratis: pega hasta 100 proxies como ip:port:user:pass y verifica online su estado, IP de salida y latencia. Entiende qué significa cada error.
Configuración de proxy
Cómo configurar un proxy en Google Chrome
Configure proxies HTTP(S) de VinaProxy en Google Chrome sin cambiar la IP de todo el sistema mediante extensiones, flags --proxy-server o perfiles aislados.
Configuración de proxy
Cómo usar un proxy con cURL (sintaxis de consola y depuración)
Aprende a usar curl con proxies HTTP(S) autenticados (-x http://user:pass@ip:port y -U) en Linux, macOS y Windows.
Configuración de proxy
Cómo usar un proxy en Python Requests (HTTP/HTTPS y Session pooling)
Configure proxies HTTP(S) con autenticación en Python requests y requests.Session(). Gestione excepciones 407 ProxyError y rote pools de IP estáticas.
Configuración de proxy
Cómo configurar un proxy en GoLogin (navegador Orbita)
Guía paso a paso para añadir proxies HTTP ip:port:user:pass en GoLogin. Configura WebRTC, zona horaria e importación masiva en Orbita.
Configuración de proxy
Cómo configurar un proxy en Windows 10 y Windows 11
Configure proxies HTTP(S) de VinaProxy en Windows 10 y Windows 11 utilizando la Configuración del Sistema WinINET, variables de entorno de PowerShell o netsh winhttp.
Configuración de proxy
Cómo configurar un proxy en GenLogin (perfil individual e importación masiva)
Configura proxies HTTP ip:port:user:pass en el navegador antidetect GenLogin. Sincroniza zona horaria, WebRTC y resuelve errores de conexión.