Bluecoat, proxy pacs

Los “proxy pacs” no son exclusivos del bluecoat, es una cosa que se “inventó” netscape allá por el 96 para configurar “que” sale por el proxy y “que” no. Es muy útil… pero también peligroso por la manía que tienen algunos de empezar a añadir urls cada vez que un anuncio tarda un poco mas en refrescar.

En la wikipedia tienen bastante información sobre ellos.
Básicamente es un fichero que se pone al navegador vía DHCP normalmente, con algo similar a esto:
– 252 http://x.x.x.x:8080/accelerated_pac_base.pac

Encontré un link donde lo explica todo con mas detalle.

Ya tenemos que un PC de un usuario coge su configuración de red mediante un servidor DCHP y este le pone también la configuración del proxy.

configuración proxy windows

¿Que es lo que se configura en el fichero proxy.pac?.

Esta es la pinta que tiene uno. Supongamos que tenemos 2 proxys que salen por dos lineas ADSL baratas y luego tenemos otra conexión a Internet mas decente (para que los jefes vean el marca). Nuestra configuración podría ser parecida a esta

function FindProxyForURL(url, host)
{
// variable strings to return
var proxy_uno = “PROXY x.x.x.x:8080”;
var proxy_dos = “PROXY x.x.x.x:8080”;
var proxy_no = “DIRECT”;

if ( shExpMatch(url,”10.10.1.**”)
||shExpMatch(url,”http://intranet*”) //Las direcciones locales sin proxy
{
return proxy_no; // vamos que si hace match en algo de lo de arriba no va por el proxy
}
else
{
if (isInNet(myIpAddress(),”10.0.121.0″, “255.255.255.0”) // Grupo de usuarios 1
{
return proxy_uno; // estos por el proxy 1
}
else
if (isInNet(myIpAddress(),”10.0.122.0″, “255.255.255.0”) // Grupo de usuarios 2
{
return proxy_dos; //estos por el proxy2
}
else
{
return proxy_no; //si no pasa por ninguna de las condiciones anteriores le dejamos salir a Internet directamente (aunque yo no lo haría, pero bueno)
}

Hay algunas opciones mas que se pueden poner en el fichero en cuestión. Ojo con empezar a poner exclusiones a lo loco, el fichero empezará a crecer y luego sera inmantenible (como se te vaya una llave estas jodido). yo no soy partidario de tener mil reglas. Eliges el proxy según el tipo de usuarios y excluyes todo lo que sea local. Con eso basta.

Si tienes usuarios que se cambian de ip… lo mismo, un proxy para cuando estén dentro de la oficina y el resto salida a internet directa. Mas facil esto que andar adivinando a donde se quieren conectar y ponerlo como exclusiones. Se que suena a cachondeo pero… he visto ficheros de mas de 100k (luego se quejan de que las cosas van lentas).

Una aplicación cojonuda para comprobar si tu fichero es correcto … Pacparser.

Otra cosa a tener en cuenta… dependiendo del navegador que uses, a veces el fichero resolverá los nombres y a veces no (cosas de M$). Aquí el que resuelve es el pc cliente, así que… ojo donde tienes los DNS’s. A veces se quejan de problemas de conexión y el problema es que el DNS tarda mas de lo normal en contestar.

El fichero tiene que estar accesible desde cualquier sitio, lo puedes poner en el propio bluecoat, en el servidor DHCP (que es mas logico, si tienes varios proxys) o en cualquier otro servidor web que tengas en la red.

Una URL con ejemplos: http://nscsysop.hypermart.net/proxypac.html

Otra URL con mas información: http://www.cisco.com/en/US/docs/security/web_security/connector/connector3000/PACAP.html#wp1015148

One Comment

  • Pingback
    […] by bjone   Tags:Bluecoat TweetSi puedo elegir, prefiero que los usuarios se descarguen el Proxy-pac de un servidor web externo al proxy en cuestión. Es mas cómodo de editar y de trastear con el. […]