407 Proxy Authentication Required; utiliza apt-get tras un proxy ISA con ntlmaps

El escenario es el siguiente; situado tras tu flamante nueva red corporativa, habiendote sido proporcionada la dirección IP de un proxy, más el correspondiente identificador de usuario y contraseña para poder utilizarlo para acceder a Internet, la navegación es posible utilizando tanto Internet Explorer como Mozilla Firefox. Si embargo, intentando instalar Debian en tu ordenador, no te es posible hacerlo aún especificando proxy, usuario y contraseña durante la instalación. Lo consigues utilizando un CD completo que no requiera acceso a la red para completarla, pero aún así no es posible obtener ningún nuevo paquete utilizando apt-get. Esto sucede aún si la variable de entorno http_proxy ha sido correctamente definida incluyendo el identificador de usuario y la contraseña proporcionados. Éste es el mensaje de error devuelto:

  procyon:/home/ismael# export http_proxy=http://ivalladolid:KAFung88@publico2:80/
  procyon:/home/ismael# apt-get update
  (...)
  Err http://www.debian-multimedia.org unstable/main Packages
  407 Proxy Authentication Required ( El servidor ISA requiere autorización para completar la petición. Acceso denegado al servicio de proxy web.  )
  

La causa de este problema es la implantación en la red corporativa de un tipo de proxy muy distinto al squid al que los usuarios de sistemas UNIX llevamos tantos años acostumbrados; un proxy ISA de Microsoft. De la Wikipedia:

«Microsoft Internet Security and Acceleration Server (ISA Server) es un firewall de stateful packet inspection (es decir, analiza el encabezado de los paquetes IP) y de application layer (analizan la trama de datos en busca de tráfico sospechoso). Adicionalmente, ISA Server es un firewall de red, VPN y web cache.

Actualmente, ISA Server 2006 es la última versión, manteniendo siempre el esquema de ediciones estándar y enterprise, y los appliances de distintos fabricantes de hardware.

A partir de febrero de 2007, Microsoft liberó una edición especial de ISA Server llamada Intelligent Application Gateway 2007. IAG 2007 es un servicio de VPN por medio de SSL, además de incorporar políticas de seguridad como zonas de cuarentena, chequeos de seguridad en las conexiones entrantes, y definición de perfiles de uso de las aplicaciones publicadas. IAG 2007 es el producto de la adquisición que realizó Microsoft de la empresa Whale Communications en Junio de 2006. Microsoft IAG 2007 solamente está disponible por medio de appliances

Aún con lo espectacular de la definición, probablemente el único criterio adoptado por la mayor parte de las empresas para el despliegue de este tipo de proxy sea la ventaja asociada a que la autentificación de salida se realice con los mismos identificadores de usuario y contraseña que permiten el inicio de sesiones en el dominio NT.

¿Por qué entonces sí es posible la navegación utilizando Firefox? Sencillo. El proxy ISA utiliza el protocolo propietario de autentificación NTLM, y Firefox sabe cómo identificarse utilizando ese protocolo, probablemente desde tiempos de Netscape. Sin embargo, apt-get no sabe nada sobre esto. La solución es ntlmaps. Funciona como proxy autónomo, y autentifica a sus clientes HTTP contra los servidores web utilizando el método NTLM. Es capaz de cambiar valores arbitrarios en la cabecera de la petición que llega del cliente, de forma que parezca que dicha petición ha sido creada por un cliente Internet Explorer. Ha sido escrito en Python.

Así pues, para conseguir que apt-get tenga acceso a Internet para descargar paquetes, instala ntlmaps. Ya sé, ¿cómo instalarlo, si apt-get install ntlmaps va a fallar? Descárgalo de aquí e instálalo mediante dpkg -i como root.

Juega ahora con las opciones en /etc/ntlmaps/server.cfg. En mi instalación he tenido que configurar explícitamente las siguientes líneas.

  PARENT_PROXY: publico2
  

—Este es el nombre de red del proxy ISA.—

  PARENT_PROXY_PORT: 80
  NT_HOSTNAME: PROCYON
  NT_DOMAIN: POLAR1
  USER: ivalladolid
  PASSWORD: KAFung88
  

Inicia ntlmaps y comprueba que hay un servidor a la escucha en el puerto 5865. Si no lo hay, probablemente has configurado algo mal.

procyon:~# /etc/init.d/ntlmaps restart
Starting ntlmaps: ntlmaps.
procyon:~# telnet localhost 5865
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
  

Configura ahora http://localhost:5865/ como http_proxy, y apt-get volverá a ser capaz de descargar paquetes.

  procyon:~# export http_proxy=http://localhost:5865/
  procyon:~# apt-get update
  Des:1 http://www.debian-multimedia.org unstable Release.gpg [197B]
  Des:2 http://www.debian-multimedia.org unstable/main Translation-es [14B]
  (...)
  Descargados 628kB en 4min10s (2506B/s)
  Leyendo lista de paquetes... Hecho
  

Si te queda cualquier duda deja un comentario.

¿Te pareció interesante? Sé tan amable de menear este artículo.

Debian isa Linux Microsoft ntlmaps proxy

Bookmark and Share votar

5 Respuestas to “407 Proxy Authentication Required; utiliza apt-get tras un proxy ISA con ntlmaps”

  1. Yo usaba ntlmaps desde hacía tiempo y hace poco me he cambiado a cntlm. Te recomiendo que le eches un ojo, es algo más estable y no te obliga a poner tu password en texto claro en el fichero de configuración.

  2. Demonios, ¡muchas gracias!

  3. Información Bitacoras.com…

    Si lo deseas, puedes hacer click para valorar este post en Bitacoras.com. Gracias….

  4. ¿Hay información sobre este tema en otras idiomas

  5. Estimado:

    estoy tratando de hacer funcionar esto en una maquina virtual en mi PC para poder tener salida pero no funciona, tampoco he podido bajar nada desde el debian con el apt-get me dice “fallo la conexcion IP 127.0.0.1 5865″

    saludos y gracias!!

Deja una Respuesta

El enlace de tu firma no es válido para los buscadores. Cualquier intento por tu parte de hacer spam no tendrá el resultado esperado. Haz un comentario interesante y contribuye a la discusión.