TRABAJO DE TELEPROCESOS TEMA: CONFIGURACIN DE UN SERVIDOR PROXY UTILIZANDO SQUID Realiza! "!#: A$#%& Ja#a J'a$ Pi$(a! Ma#)el! Se##a$! Ra*l Ulla'#i A$+el J')a C'#&!: Q'i$(! Ci)l! ,B- Se#.i!# P#!/0 Los servidores Proxy son computadoras que aceleran su navegacin almacenando copias locales de los sitios web que Ud. visita frecuentemente. Esto significa que despues que Ud. accede a un sitio por primera vez, no tendr que esperar otra vez que la pgina se cargue desde un servidor web muy lento o muy le!ano. En lugar de esto, los sitios web que ya "a visitado se cargan rpidamente desde el Proxy local. El servidor Proxy tambi#n actualiza las pginas cada vez que Ud. vuelve a visitar un sitio, asegurndose que Ud. ver la $ltima versin 1P!#2'% '&a# '$ &e#.i!# "#!/03 Vel!)ia4 La mayor venta!a de usar un proxy es que a"orra tiempo y anc"o de banda. Se+'#ia4 %tra venta!a es el aumento en la seguridad. &a que el trfico que va a su computadora pasa por el servidor Proxy, es ms dif'cil para los "ac(ers encontrar su verdadera ubicacin. Esto protege a su computadora de ataques, y tambi#n "ace ms dif'cil que alguien observe su comportamiento con el propsito de obtener su perfil o enviarle propaganda. S2'i es el software para servidor Proxy ms popular y extendido entre los sistemas operativos basados sobre U)*+,. Es muy confiable, robusto y verstil. -l ser software libre, adems de estar disponible el cdigo fuente, est libre del pago de costosas licencias por uso o con restriccin a un uso con determinado n$mero de usuarios. .u misin es compartir una sola conexin a internet entre los ordenadores de la red local. Los ordenadores de la red realizan sus peticiones al servidor Proxy #ste se conecta con el sitio especificado, y los datos devueltos por internet, los env'a al ordenador de la red que "izo la peticin. .quid es un proxy que permite compartir un solo acceso a internet con la red local y ofrece una cac"# que acelera el acceso a las pginas web y arc"ivos ftp, su inconveniente es que slo ofrece servicios "ttp, ftp y gop"er. E!emplo/
red 012.034.56.7 88898888888888888898888888889888 : : : %rdenador - %rdenador ; pinero 888proxy8*Pmasquerade8modem 8888888*nternet 012.034.56.2 012.034.56.< 012.034.56.0 002.<2.14.= >*P asignada por el *.P, proveedor de servicios internet? Los ordenadores de la red "acen sus peticiones a pinero, #ste a internet, y los datos devueltos, pinero los env'a al ordenador que los "a solicitado Los ordenadores clientes deben configurarse para poder conectarse al servidor Proxy., en O")i!$e& e I$(e#$e( elegimos C!$e/i!$e& y luego en la seccin del Proxy elegir C!$5i+'#a)i6$44 aqu' indicamos la direccion *P a la cual accedera el cliente que debe ser la misma que el servidor. SQUID C!$5i+'#a)i6$ 78&i)a4 .quid utiliza el fic"ero de configuracin localizado en /etc/squid/squid.conf, y podr traba!ar sobre este utilizando su editor de texto preferido. Existen un gran n$mero de parmetros, de los cuales recomendamos configurar los siguientes/ "ttp@port cac"e@mem ftp@user ftp@passive cac"e@dir -l menos una Lista de Control de Acceso -l menos una Regla de Control de Acceso "ttpd@accel@"ost "ttpd@accel@port "ttpd@accel@wit"@proxy Pa#89e(#! :((";"!#(: 1Q'e "'e#(! '(iliza# "a#a S2'i3 .quid por defecto utilizar el puerto <024 para atender peticiones, sin embargo se puede especificar que lo "aga en cualquier otro puerto o bien que lo "aga en varios puertos a la vez. En el caso de un Proxy Transparente, se utilizar el puerto 47 y se valdr del re8 direccionamiento de peticiones de modo tal que no "abr necesidad alguna de modificar la configuracin de los navegadores Aeb para utilizar el servidor Proxy, bastar con utilizar como puerta de enlace al servidor. Es importante recordar que los servidores Aeb, como -pac"e, tambi#n utilizan dic"o puerto, por lo que ser necesario reconfigurar el servidor Aeb para utilizar otro puerto disponible, o bien desinstalar o des"abilitar el servidor Aeb. )o es del todo prctico utilizar un Proxy Transparente, siendo uno de los principales problemas con los que lidian los administradores el mal uso yBo abuso del acceso a *nternet por parte del personal. Es por esto que puede resultar ms conveniente configurar un servidor Proxy con restricciones por contraseCa, lo cual no puede "acerse con un Proxy Transparente, debido a que se requiere un dilogo de nombre de usuario y contraseCa. Degularmente algunos programas utilizados com$nmente por los usuarios suelen traer por defecto el puerto 4747 -servicio de caceo !!!- para utilizarse al configurar que servidor proxy utilizar. .i queremos aprovec"ar esto en nuestro favor y a"orrarnos el tener que dar explicaciones innecesarias al usuario, podemos especificar que .quid escuc"e peticiones en dic"o puerto tambi#n. .iendo as' localice la seccin de definicin de ttp"port, y especifique/ E E &ou may specify multiple soc(et addresses on multiple lines. E E Fefault/ "ttp@port <024 "ttp@port <024 "ttp@port 4747 Pa#89e(#! )a):e;9e9 El parmetro cac"e@mem establece la cantidad ideal de memoria para/ %b!etos en trnsito. %b!etos Got. %b!etos negativamente almacenados en el cac"#. Los datos de estos ob!etos se almacenan en bloques de 5 Hb. El parmetro cac"e@mem especifica un l'mite mximo en el tamaCo total de bloques acomodados, donde los ob!etos en trnsito tienen mayor prioridad. .in embargo los ob!etos #ot y aquellos negativamente almacenados en el cac"# podrn utilizar la memoria no utilizada "asta que esta sea requerida. Fe ser necesario, si un ob!eto en trnsito es mayor a la cantidad de memoria especificada, .quid exceder lo que sea necesario para satisfacer la peticin. Por defecto se establecen 4 I;. Puede especificarse una cantidad mayor si as' se considera necesario. .i se posee un servidor con al menos 024 I; de D-I, establezca 03 I; como valor para este parmetro/ cac"e@mem 03 I; Pa#89e(#! )a):e;i#: 1C'a$(! e&ea al9a)e$a# e I$(e#$e( e$ el i&)! '#!3 Es cuanto tamaCo se desea que tenga el cac"e en el disco duro para .quid, es decir $Cuanto desea al%acenar de &nternet en el disco duro' Por defecto .quid utilizar un cac"e de 077 I;, de modo tal que encontrar la siguiente l'nea/ cac"e@dir ufs BvarBspoolBsquid <== 03 2=3 .e puede incrementar el tamaCo del cac"e "asta donde lo desee el administrador. Iientras ms grande el cac"e, ms ob!etos de almacenarn en #ste. y por lo tanto se utilizar menos el anc"o de banda. La siguiente l'nea establece un cac"e de 677 I;/ cac"e@dir ufs BvarBspoolBsquid >== 03 2=3 Los n$meros () y *+) significan que el directorio del cac"e contendr 03 subdirectorios con 2=3 niveles cada uno. )o modifique esto n$meros, no "ay necesidad de "acerlo. Es muy importante considerar que si se especifica un determinado tamaCo de cac"e y este excede al espacio real disponible en el disco duro, .quid se bloquear inevitablemente. .ea cauteloso con el tamaCo de cac"e especificado. Pa#89e(#! 5(";'&e# -l acceder a un servidor JKP de manera annima, por defecto .quid enviar como contraseCa ,quid-. .i se desea que el acceso annimo a los servidores JKP sea ms informativo, o bien si se desea acceder a servidores JKP que validan la autenticidad de la direccin de correo especificada como contraseCa, puede especificarse la direccin de correo electrnico que uno considere. ftp@user proxyLsu8dominio.net Pa#89e(#! 5(";"a&&i.e .i se tiene un muro contrafuegos que no permite acceder a servidores JKP ms que de modo pasivo, debe "abilitarse ftp"passive con el valor on. ftp@passive on C!$(#!le& e a))e&!4 Es necesario establecer Listas de Control de Acceso que definan una red o bien ciertas maquinas en particular. - cada lista se le asignar una Regla de Control de Acceso que permitir o denegar el acceso a .quid. Procedamos a entender como definir unas y otras. Li&(a& e )!$(#!l e a))e&!4 Degularmente una lista de control de acceso se establece siguiendo la siguiente sintaxis/ acl Mnombre de la listaN src Mlo que compone a la listaN .i uno desea establecer una lista de control de acceso que defina sin mayor traba!o adicional a toda la red local definiendo la *P que corresponde a la red y la mscara de la sub8red. Por e!emplo, si se tienen una red donde las mquinas tienen direcciones *P 012.034.0.n con mscara de sub8red 2==.2==.2==.7, podemos utilizar lo siguiente/ acl miredlocal src 012.034.0.7B2==.2==.2==.7 Kambi#n puede definirse una Lista de Control de Acceso invocando un fic"ero localizado en cualquier parte del disco duro, y en el cual se encuentra una lista de direcciones *P. E!emplo/ acl permitidos OBetcBsquidBpermitidosO El fic"ero /etc/squid/per%itidos contendr'a algo como siguiente/ 012.034.0.0 012.034.0.2 012.034.0.< 012.034.0.0= 012.034.0.03 012.034.0.27 012.034.0.57 Lo anterior estar'a definiendo que la Lista de Control de Acceso denominada per%itidos estar'a compuesta por las direcciones *P incluidas en el fic"ero /etc/squid/per%itidos. Re+la& e C!$(#!l e A))e&! Estas definen si se permite o no el acceso a .quid. .e aplican a las Listas de Control de Acceso. Feben colocarse en la seccin de reglas de control de acceso definidas por el administrador, es decir, a partir de donde se localiza la siguiente leyenda/ E E *).EDK &%UD %A) DULE>.? GEDE K% -LL%A -PPE.. JD%I &%UD PL*E)K. E La sintaxis bsica es la siguiente/ "ttp@access Mdeny o allowN Mlista de control de accesoN En el siguiente e!emplo consideramos una regla que establece acceso permitido a .quid a la Lista de Control de Acceso denominada per%itidos/ "ttp@access allow permitidos Kambi#n pueden definirse reglas vali#ndose de la expresin ?, la cual significa excepci.n. Pueden definirse, por e!emplo, dos listas de control de acceso, una denominada lista( y otra denominada lista*, en la misma regla de control de acceso, en donde se asigna una expresin a una de estas. La siguiente establece que se permite el acceso a .quid a lo que comprenda lista( excepto aquello que comprenda lista*/ "ttp@access allow lista0 Qlista2 Este tipo de reglas son $tiles cuando se tiene un gran grupo de *P dentro de un rango de red al que se debe "e#9i(i# acceso, y otro grupo dentro de la misma red al que se debe e$e+a# el acceso. Ca):e )!$ a)ele#a)i6$4 Puando un usuario "ace peticin "acia un ob!eto en *nternet, este es almacenado en el cac"e de .quid. .i otro usuario "ace peticin "acia el mismo ob!eto, y este no "a sufrido modificacin alguna desde que lo accedi el usuario anterior, .quid mostrar el que ya se encuentra en el cac"e en lugar de volver a descargarlo desde *nternet. Esta funcin permite navegar rpidamente cuando los ob!etos ya estn en el cac"e de .quid y adems optimiza enormemente la utilizacin del anc"o de banda. En la seccin #TTP/-ACC0L0RAT1R 1PT&12, deben "abilitarse los siguientes parmetros/ P#!/0 A)ele#a!: O")i!$e& "a#a P#!/0 C!$.e$)i!$al4 "ttpd@accel@"ost virtual "ttpd@accel@port 7 Gttpd@accel@wit"@proxy on .i se trata de un Proxy transparente -,quid escucando peticiones en el puerto 34-, debe "acerse con las siguientes opciones/ P#!/0 A)ele#a!: O")i!$e& "a#a P#!/0 T#a$&"a#e$(e4 "ttpd@accel@"ost virtual "ttpd@accel@port 47 "ttpd@accel@wit"@proxy on "ttpd@accel@uses@"ost@"eader on Por defecto el parmetro ttpd"accel"wit"proxy viene con el valor off, es importante no olvidar cambiar este valor por on. I$i)ia$!@ #ei$i)ia$! 0 aAaie$! el &e#.i)i! al a##a$2'e el &i&(e9a4 Una vez terminada la configuracin, e!ecute el siguiente comando para iniciar por primera vez .quid/ BetcBrc.dBinit.dBsquid start .i necesita reiniciar para probar cambios "ec"os en la configuracin, e!ecute lo siguiente/ BetcBrc.dBinit.dBsquid restart .i desea que .quid inicie de manera automtica la prxima vez que inicie el sistema, e!ecute lo siguiente/ BsbinBc"(config 88level <5= squid on Lo anterior "abilitar a .quid en los niveles de corrida <, 5 y =. RESTRICCIN DE ACCESO A DETERMINADOS SITIOS Fenegar el acceso a ciertos sitos Aeb permite "acer un uso ms racional del anc"o de banda con el que se dispone. El funcionamiento es verdaderamente simple, y consiste en denegar el acceso a nombres de dominio o direcciones Aeb que contengan patrones en com$n. De5i$ie$! "a(#!$e& )!9'$e&4 Lo primero ser generar una lista la cual contendr direcciones Aeb y palabras usualmente utilizadas en nombres de ciertos dominios. E!emplos/ www.sitioporno.com www.otrositioporno.com sitioindeseable.com otrositioindeseable.com napster sex porn mp< xxx adult warez Esta lista, la cual deber ser completada con todas las palabras >muc"as de est son palabras obscenas en distintos idiomas? y direcciones Aeb que el administrador considere pertinentes, la guardaremos como /etc/squid/sitios-denegados. Pa#89e(#!& e$ Be()B&2'iB&2'i4)!$5 Febemos definir una Lista de Control de Acceso que as u vez defina al fic"ero /etc/squid/sitios-denegados. Esta lista la denominaremos como denegados. Fe modo tal, la l'nea correspondiente quedar'a del siguiente modo/ acl negados url@regex OBetcBsquidBsitios8denegadosO Gabiendo "ec"o lo anterior, deberemos tener en la seccin de Listas de Control de Acceso algo como lo siguiente/ E E Decommended minimum configuration/ acl all src 7.7.7.7B7.7.7.7 acl manager proto cac"e@ob!ect acl local"ost src 026.7.7.0B2==.2==.2==.2== acl redlocal src 012.034.0.7B2==.2==.2==.7 acl password proxy@aut" DERU*DEF a)l $e+a!& '#l;#e+e/ CBe()B&2'iB&i(i!&De$e+a!&C - continuacin especificaremos una regla de control de acceso para dic"a Lista de Control de Acceso/ "ttp@access deny negados )ote que esta debe ir antes de cualquier otra regla que permita el acceso a cualquier otra lista. E!emplo/ Re+la& e )!$(#!l e a))e&!: e$e+a)i6$ e &i(i!&4 E E *).EDK &%UD %A) DULE>.? GEDE K% -LL%A -PPE.. JD%I &%UD PL*E)K. E :((";a))e&& e$0 $e+a!& "ttp@access allow local"ost "ttp@access allow redlocal password "ttp@access deny all .i por e!emplo el incluir una palabra en particular afecta el acceso a un sitio Aeb, puede generarse una lista de dominios o palabras que contengan un patrn pero que consideraremos como apropiados. Pomo e!emplo/ vamos a suponer que en la lista de sitios denegados est la palabra sex. Esta denegar'a el acceso a cualquier nombre de dominio que incluya dic"a cadena de caracteres, como extremesex.com. .in embargo tambi#n estar'a bloqueando a sitios como sexualidad!ovel.cl, el cual no tiene que ver en lo absoluto con pornograf'a, sino orientacin sexual para la !uventud. Podemos aCadir este nombre de dominio en un fic"eros que denominaremos /etc/squid/sitios-inocentes. Este fic"ero ser definido en una Lista de Pontrol de -cceso del mismo modo en que se "izo anteriormente con el fic"ero que contiene dominios y palabras denegadas. acl inocentes url@regex OBetcBsquidBsitios8inocentesO Para "acer uso de el fic"ero, solo bastar utilizar la expresin ? en la misma l'nea utilizada para la Regla de Control de Acceso establecida para denegar el mismo. "ttp@access deny negados Qinocentes La regla anterior especifica que se denegar el acceso a todo lo que comprenda la Lista de Control de Acceso denominada denegados e/)e"(! lo que comprenda la Lista de Control de Acceso denominada inocentes. Es decir, se podr acceder sin dificultad a www.sexualidad!oven.cl manteniendo la restriccin para la cadena de caracteres sex. Jinalmente, solo bastar reiniciar .quid para que tomen efecto los cambios y podamos "acer pruebas. BetcBrc.dBinit.dBsquid restart