15 proxy.docx

45
12-12-2014 PROXY Institutos Tecnológicos de México Departamento De Seguridad en TIC’S PROFESOR: Eduardo De La Cruz Gámez Bibiano Cortés Claudia Cecilia Moreyra Álvarez Miguel Ángel Terán Manzanarez José Luis Torres Salinas Sergio Antonio

Upload: randy-eastman

Post on 24-Sep-2015

217 views

Category:

Documents


3 download

TRANSCRIPT

Institutos Tecnolgicos de Mxico

Institutos Tecnolgicos de Mxico | Seguridad en TICS

PROXY

Contenido

Introduccin2Objetivo General3Objetivos Especficos3Condiciones de la prctica3Teora4Qu es un servidor proxy?4Ventajas del Proxy5Desventajas del Proxy5Proxy Cach6Garantas7Ventajas7Squid8Squit 2.510Desarrollo11

Introduccin

Los servidores proxy estn presentes en muchas redes particulares y sobre todo empresariales. Hacen de intermediarios. Esto significa que el cliente y el servidor (t y un sitio web, por ejemplo) no se conectan de forma directa, sino a travs del proxy. Una de las funciones primordiales de un proxy es servir como sistema de seguridad y filtrado.Un servidor proxy puede actuar como un firewall, capaz de filtrar ataques o contenidos indeseados desde el servidor. Tambin es capaz deesconder tu IP para navegar annimamente.Permitir compartir recursos.En especial la conexin a Internet. Con un proxy pueden conectarse varios PCs sin necesidad de tener cada uno su propio acceso directo a Internet.Mejorar la experiencia del usuario.Por ejemplo guardando una copia (cach) de sitios web visitados. Eso hace ms rpido el acceso a sus pginas, las disponibiliza aunque la conexin no funcione y ahorra ancho de banda.Es algo muy parecido a lo que hace Explorer con sus archivos temporales de Internet. Ellos y el historial de navegacin tienen ciertos riesgos.

Objetivo General

Implementar un servidor proxy para compartir recursos en la red empresarial, tambin se debe de implementar un software de monitoreo de los servicios prestados.Objetivos Especficos

Realizar el estudio sobre la teora de funcionamiento de los servidores Proxy Cache http.Analizar el concepto NAT.Realizar una investigacin sobre la instalacin y configuracin del proxy Squid.Implementar ambos sistemas como una solucin empresarial.Burlar la seguridad ofrecida por el proxy usando una aplicacin como ultrafurf.

Condiciones de la prctica

Los nodos clientes (LAN) se conectan a travs del proxy server cache a los servicios ofrecidos en la red WAN (e.g. ftp, http, telnet).El proxy server debe ser configurado para aceptar sesiones autenticadas, va nombre usuario y direccin IP y direccin MAC. (3 formas simultaneas)Cada usuario debe de tener un perfil nico, entonces ser posible limitar el ancho de banda por usuario, ejemplo: el usuario Maseosare tendr un mximo ancho de banda permitido de 50KB para descarga ftp y 10 KB para http. Tambin es deseable implementar controles como asociar la MAC y la IP a un puerto fsico de la red y a un usuario en particular.

Teora

Qu es un servidor proxy?

Un servidor proxy es un equipo intermediario situado entre el sistema del usuario e Internet. Puede utilizarse para registrar el uso de Internet y tambin para bloquear el acceso a una sede Web. El servidor de seguridad del servidor proxy bloquea algunas sedes o pginas Web por diversas razones.Su finalidad ms habitual es la deservidor proxy, que consiste en interceptar las conexiones de red que un cliente hace a un servidor de destino, por varios motivos posibles como seguridad, rendimiento, anonimato, etc. Esta funcin deservidor proxypuede ser realizada por un programa o dispositivo.La palabra en inglsproxysignificaintermediarioen espaol.El uso ms comn es el deservidor proxy, que es un ordenador que intercepta las conexiones de red que un cliente hace a un servidor de destino.De ellos, el ms famoso es elservidor proxy web(comnmente conocido solamente como proxy). Intercepta la navegacin de los clientes por pginas web, por varios motivos posibles: seguridad, rendimiento, anonimato, etc.Tambin existen proxy para otros protocolos, como elproxy de FTP.Elproxy ARPpuede hacer de enrutador en una red, ya que hace de intermediario Como se ve,proxytiene un significado muy general, aunque siempre es sinnimo deintermediario. Cuando un equipo de la red desea acceder a una informacin o recurso, es realmente el proxy quien realiza la comunicacin y a continuacin traslada el resultado al equipo que la solicit.Hay dos tipos de proxys atendiendo a quien es el que quiere implementar la poltica del proxy:Proxy local: En este caso el que quiere implementar la poltica es el mismo que hace la peticin. Por eso se le llama local. Suelen estar en la misma mquina que el cliente que hace las peticiones.

Proxy externo: El que quiere implementar la poltica del proxy es una entidad externa. Por eso se le llama externo. Se suelen usar para implementar cacheos, bloquear contenidos, control del trfico, compartir IP, etc.Ventajas del Proxy

En general (no slo en informtica), los proxies hacen posible:Control: slo el intermediario hace el trabajo real, por tanto se pueden limitar y restringir los derechos de los usuarios, y dar permisos slo al proxy.Ahorro. Slounode los usuarios (el proxy) ha de estar preparado para hacer el trabajo real. Con estarpreparadoqueremos decir que es el nico que necesita los recursos necesarios para hacer esa funcionalidad. Ejemplos de recursos necesarios para hacer la funcin pueden ser la capacidad y lgica de cmputo o la direccin de red externa (IP).Velocidad. Si varios clientes van a pedir el mismo recurso, el proxy puede hacercach: guardar la respuesta de una peticin para darla directamente cuando otro usuario la pida. As no tiene que volver a contactar con el destino, y acaba ms rpido.Filtrado. El proxy puede negarse a responder algunas peticiones si detecta que estn prohibidas.Modificacin. Como intermediario que es, un proxy puede falsificar informacin, o modificarla siguiendo un algoritmo.Desventajas del Proxy

En general (no slo en informtica), el uso de un intermediario puede provocar:Anonimato. Si todos los usuarios se identifican como uno slo, es difcil que el recurso accedido pueda diferenciarlos. Pero esto puede ser malo, por ejemplo cuando hay que hacer necesariamente la identificacin.Abuso. Al estar dispuesto a recibir peticiones de muchosusuariosy responderlas, es posible que haga algn trabajo que no toque. Por tanto, ha de controlar quin tiene acceso y quin no a sus servicios, cosa que normalmente es muy difcil.Carga. Un proxy ha de hacer el trabajo demuchosusuarios.Intromisin. Es un paso ms entre origen y destino, y algunos usuarios pueden no querer pasar por el proxy. Y menos si hace decachy guarda copias de los datos.Incoherencia. Si hace de cach, es posible que se equivoque y d una respuesta antigua cuando hay una ms reciente en el recurso de destino. En realidad este problema no existe con losservidoresproxy actuales, ya que se conectan con el servidor remoto para comprobar que la versin que tiene en cach sigue siendo la misma que la existente en el servidor remoto.Irregularidad. El hecho de que el proxy represente a ms de un usuario da problemas en muchos escenarios, en concreto los que presuponen una comunicacin directa entre 1 emisor y 1 receptor (comoTCP/IP).Proxy Cach

Un servicio proxy-cach permite incrementar la velocidad de acceso a Internet al mantener localmente las pginas ms consultadas por los usuarios de una organizacin, evitando las conexiones directas con los servidores remotos.Conserva el contenido solicitado por el usuario para acelerar la respuesta en futuras peticiones de la misma informacin de la misma mquina u otras. Habitualmente se trata de proxys HTTP/HTTPSaccediendo a contenido web.

Los usuarios configuran su navegador web para dirigir sus accesos al servicio proxy-cach en vez de ir directamente al destino final. El servidor proxy-cach se encarga de proporcionarle la pgina pedida bien obtenindola de su cach o accediendo al documento original; al dar servicio a muchos usuarios la cach contendr muchos documentos beneficindose toda la organizacin de ello.Se evitan transferencias innecesarias y con ello se aumenta la velocidad en la carga de las pginas, ya que no es necesario pedir una pgina cuando ya est almacenada en la cach (porque otro la haba pedido antes).Cualquier navegador que usemos, podemos configurarlo de modo que todas las solicitudes HTTP se dirijan primero al cach web para obtener ms rpidamente los objetos, sin necesidad de salir a internet.Garantas

La cach sigue un sofisticado mecanismo de refresco de documentos mediante el cual antes de servirle un documento comprueba su validez en base a parmetros cmo la ltima modificacin del documento, el tiempo que lleva en la cach y otros. Muchas veces antes de servirle un documento lanza al sitio original una peticin para que coteje si el documento no ha sido modificado desde que la cach lo obtuvo, caso contrario procede a acceder directamente al original.Ventajas

Al acceder a la WWW a travs de una cachse obtieneun acceso ms rpido a los documentos en un gran porcentaje de los accesos. Una cach puede llegar a dar porcentajes de acierto cercanos e incluso superiores al 50%. El porcentaje de aciertos viene dado por el nmero total de documentos que la cach puede servir sin realizar consultas al original frente al nmero total de accesos.Como efecto lateral tambin se logra que los accesos por las lneas internacionales a un mismo documento se reduzcan a un slo acceso cada cierto tiempo logrando as un uso ms eficiente de las lneas con la consecuente mejora de rendimiento de las comunicaciones.

Ejemplo de Proxy CacheSquid

Squides un servidorproxyparawebconcach. Es una de lasaplicacionesms populares y de referencia para esta funcin,software libre publicado bajo licenciaGPL. Entre sus utilidades est la de mejorar el rendimiento de las conexiones de empresas y particulares aInternet guardando encachpeticiones recurrentes aservidores webyDNS, acelerar el acceso a unservidor webdeterminado o aadir seguridad realizando filtrados de trfico.

Aunque orientado principalmente aHTTPyHTTPSsoporta tambin otros protocolos comoFTPe inclusoGopher. Implementa cifradoSSL/TLS tanto en la conexin al servidor web como a los navegadores y cualquier cliente web que lo soporte.Squid es una aplicacin muy consolidada en Internet. En desarrollo desde losaos 1990, se le considera muy completo y robusto y es el software de referencia como servidor proxy-cach de web. Como muchas aplicaciones de software libre est incluido en distribucionesGNU/Linux pero se puede ejecutar tambin en entornos tipoUnixy hay algunas versiones paraMS Windows.Squid posee las siguientes caractersticas:Proxy con cach de HTTP, FTP, y otros protocolos de InternetSquid proporciona un servicio de proxy que soporta peticiones HTTP, HTTPS y FTP a equipos que necesitan acceder a Internet y a su vez provee la funcionalidad de cach especializado en el cual almacena de forma local las pginas consultadas recientemente por los usuarios. De esta forma, incrementa la rapidez de acceso a los servidores de informacin Web y FTP que se encuentran fuera de la red interna.Proxy para SSLSquid tambin es compatible con SSL (Secure Socket Layer) con lo que tambin acelera las transacciones cifradas, y es capaz de ser configurado con amplios controles de acceso sobre las peticiones de usuarios.Jerarquas de cachSquid puede formar parte de una jerarqua de cachs. Diversos servidores trabajan conjuntamente atendiendo las peticiones. Un navegador solicita siempre las pginas a un solo proxy y si este no tiene la pgina en su cach consulta a sus hermanos, que a su vez tambin podran consultar con sus padres antes de finalmente ir al servidor web si fuera necesario. Estas peticiones entre cachs se pueden hacer mediante dos protocolos: ICP y HTCP.ICP, HTCP, CARP,cach digestsSquid sigue los protocolosICP,HTCP,CARPycach digestsque tienen como objetivo permitir a un proxy preguntarle a otros cachs si tienen almacenado un recurso determinado.Entre otras cosas,Squidpuede funcionar comoServidor Intermediarioycach de contenido de Redpara los protocolos HTTP,FTP,GOPHERyWAIS, Proxy deSSL, cach transparente,WWCP, aceleracinHTTP, cach de consultas DNS y otras muchas ms como filtracin de contenido y control de acceso por IP y por usuario.

Squit 2.5

La versin de Squid 2.5, contiene muchas mejoras de servicio de Windows.Las caractersticas actuales:Basado en la ltima versin estable Squid 2.5Ejecutar como un servicio de Windows nativoEntornos de compilacin soportados actualmente:Microsoft Visual C + + 6.0 Service Pack 6MSYS + MinGWCygwinCompleto soporte de lnea de comandos cuando se ejecuta como un servicioRearranque automtico despus de un fallo de servicio Squid en Windows 2000/XP/2003Utilice PSAPI.DLL por completo getrusageDNS interno se ve en el registro de DNS configurado, resolv.conf no ms necesarioSoporte multiproceso para ayudantes externos calamar estndar o redirectores (emisor de ultrasonidos, unlinkd, dnsserver)Todos los interruptores squid-k (comprobar, depurar, interrumpir, destruir, analizar, reconfigurar, rotar, apagado) ObrasBasic, NTLM y el esquema de autenticacin implcitaNativo de Windows bsico y NTLM Authenticators con el apoyo NTLMv2Interfaz CGI cachemgr apoyo Microsoft IIS y Apache Web ServerSNMPRevisado awin32 async E / SACL externa ayudante grupo nativo para Windows Dominios cheque pertenencia al grupoOpenSSL Soporte (paquete binario experimental disponible)Soporte ARP acl (experimental)

Desarrollo

Paso 1 Descargar el paquete de Internethttp://squid.acmeconsulting.it/download/squid-2.7.STABLE8-bin.zip=>Squid sin SquidGuard solo vlido para la autentificacinhttp://www.mediafire.com/?jommuyh3hm2=>Proxy 3 in 1 con SquidGuard Instalar en C:\Tambin podemos localizar el instalador en \\server\utilidades\Proxy Squid\Proxy 3 in 1 installer.exe => viene con todos los archivos de configuracin ya remaquetados seguir los pasos para hacer una buena instalacin.Paso 2 Extraer los archivos en C:\squid

Paso 3 Archivos de configuracin Proxy squid se configura a travs de archivos de texto plano que editaremos con el Notepad o bloc de notas.

Al extraer los archivos en C:\squidCarpeta Etc C:\squid\etc\

Los archivos squid.conf.default , mime.conf.default y cachemeg.conf.default renombrarlos por squid.conf, mime.conf y cachemeg.conf

Paso 4 Iniciar Configuracion de Archivo Squid.conf

Editamos squid.conf con el bloq de notas Cntrl + B y aadimos acl all apareceremos en la parte de configuracin de las Acls donde aadiremos nuestra red interna nombraremos como acl red_interna src 192.168.0.0/24

squid08

Cntrl + B y indicaremos http_access all para llegar a las http_access tendr que salirnos la siguiente http_access deny all encima de esta regla aadiremoshttp_access allow red_interna

Paso 5 Iniciar el Servicio Squid Ejecutar una shell de Windows desde el men de inicio.

Para iniciar el servicio squid, primero es acceder a C:\squid\sbin\ insertar la orden squid -z

Despus insertar la orden squid -i para aadir squid a Windows NT como servicio.

Por ltimo para tener el servicio arrancado iremos a inicio y en ejecutar pondremosservices.msc habr un servicio Squid que habr que iniciar. Ya tendremos Squid corriendo en nuestra mquina Windows Server.

Paso 6 Configurar como proxy InversoPara ello hay que acceder al equipo cliente y acceder al navegador del equipo.

Ir a firefox en nuestro caso => opciones => Avanzado => Red => Configuracin => el boton Configuracin manual de proxyAadir la direccin IP de la maquina que tiene el servicio Squid y el puerto 3128 (por defecto) => El que est definido en la directiva http_port del archivo squid.conf

Accederemos a internet www.google.es y sin hacer ms nos dejara acceder a internet PD Tiene que estar bien configurada la red.

Ahora despus de haber configurado la acl siguiente: (squid.conf) acl red_interna 192.168.0.0/24 (Ejemplo de configuracion de red interna) http_access deny red_internaSe nos bloquear el acceso a internet

Paso 7 Confiuracion de las reglas acl y http_accessIremos al fichero de configuracin squid.confTipos de reglasFiltrar por Dominioacl marca url_regex dstdomain marca.comFiltrar por palabrasacl palabras_prohibidas url_regex -i sexo drogas pornFiltrar por extensionesacl extesiones urlpath_regex -i .avi .pdf .exePD tambin se puede filtrar indicando una ruta entre comillas donde tengamos los Dominios palabras o las Extensionesacl palabras url_regex C:\squid\palabras.txtCada regla acl ir acompaada de su correspondiente http_access Permitiendo(allow) o Denegando(deny) el acceso.acl extensiones urlpath_regex C:\squid\extensiones.txthttp_access deny extensionesVista de ACLS

Vista de http_access (Primero las reglas de Bloqueo Deny y despus la de Permitir (PONER http_access deny all al final de todas))

Paso 8 Reinicio del ServicioCada vez que se aada una nueva regla habr que hacer un reinicio del serivicio y ver que se a arrancado bien si no es as tendremos un problema de sintaxis en el archivo squid.conf, habr que mirar bien las acl y http_access si coinciden sus nombre o si hay alguna ruta parametro o acl http_access mal metida.Inicio => ejecutar => Services.msc (Srv2003) (Versiones Posteriores poner Servicios) bucamos el servicio Squid y lo reiniciamos.

Paso 9 Configuracin Avanzada.Nombre del servidorvisible_hostname: Nombre del servidor.cache_mgr: Direccin de correo del administrador.Configuracin de la cach:cache_dir ufs /var/spool/squid100 16 256 Localizacin, nmero de subdirectorios, sistema de archivos utilizado, y tamao en el disco duro.cache_mem: Cantidad de RAM dedicada para los objetos frecuentemente utilizados. (256 MB): cantidad de memoria utilizada para la cachRegistro del Proxycache_access_log: Direccin donde se almacenan las peticiones hechas al Proxy.cache_store_log: Direccin donde se almacena informacin acerca de lagestin.cache_log: Direccin donde se almacena informacin generalerr_directory /usr/share/squid3/errors/Spanish: Mensajes de error en espaol.

Paso 10 Autentificacin por Directorio ActivoAadir la mquina con Proxy Squid al Dominio ya existente Promover la mquina que est haciendo de Proxy a Controlador de Dominio.Una vez tenemos la mquina dentro de un Dominio tendremos que ver que nuestro Proxy Squid se Cuentan con los siguientes Archivos en el directorioC:\squid\libexec se encuentran los archivos:1. mswin_auth.exe2. mswin_check_ad_group.exe

Prueba de Autentificacin de usuario del DominioEjecutamos una shell de windows Ejecutar => cmd; y desde aqu aadimos la ruta donde est el mswin_auth;cd C:\squid\libexec\mswin_auth -O nombre del Dominio le damos a Ejecutar y debajo Aadimos Usuario Contrasea El nombre del dominio ser el correspondiente al de la autentificacin en el inicio de sesin de windows es decir dominio/usuario ese es el nombre del dominio para chequear las autentificacin.

Tendr que darnos el mensaje de OK.Esto significa que la autentificacin por Active Directory de squid est funcionando.Probar la autentificacin por gruposDebemos utilizar el programa mswin_check_ad_group.exe, para ello abriremos una consola; => inicio => ejecutar => cmd => cd C:\squid\libexec\

Una vez estamos en la ruta nombramos al programa mswin_check_ad_group que tiene una serie de parmetros que aqu nombramos.-h => muestra la ayuda del programa, con los parmetros que se le pueden pasar.-D dominio =>indica frente a que dominio se va ha pedir los usuarios y grupos de Active Directory-G =>Habilitar el modo de grupo global de Active Directory (Los grupos de Active Directory deben ser de mbito Global)-c => Solo valdr para la autentificacin local.-d => muestra los pasos que se siguen a la hora de ejecutar la autentificacin con el programa mswin_check_ad_group.exeSe aconseja aadir el parmetro (-d) a la hora de comprobar la autentificacin por grupos.Si se realizan cambios en el Directorio Activo se deber reiniciar el Servicio SquidNT para que surtan efecto los cambios del Directorio Activo sobre el SquidNT.Nota: en el nombre del dominio hay que aadir el nombre del dominio que se usa al realizar el acceso al dominio en el inicio de sistema es decir dominio/usuario, si utilizamos el nombre del dominio dominio.es no nos funcionar la autentificacin por grupos aunque haya funcionado en ms_auth.exeAhora hay que agregar las ACLS y AUTH_PARAM correspondientes en el squid.confauth_param basic program c:/squid/libexec/mswin_auth.exe -O NOMBREDOMINIO (nombre del dominio que se utiliza en la autentificacin inicial del sistema dominio/usuario) => (Indica que se quiere realizar la autentificacin por Dominio de Active Directory)external_acl_type AD_global_group %LOGINc:/squid/libexec/mswin_check_ad_group.exe -D NOMBREDOMINIO -G (nombre del dominio que se utiliza en la autentificacin inicial del sistema dominio/usuario)=>(Indica que se va a realizar la Autentificacin por grupo de Dominio)

acl usuarios external AD_global_group DOMINIO\GRUPO => (Grupo que llamamos usuarios que vamos a permitirle la entrada a Internet el nombre del dominio tiene que ser el que se utiliza en la autentificacin del sistema).acl password proxy_auth REQUIRED #src 192.168.1.0/24 => (INDICAMOS LA RED DONDE ES NECESARIA LA AUTENTIFICACIN)acl Mortales external AD_global_group DOMINIO\Usuarios => (Grupo del Dominio)acl Administradores external AD_global_group DOMINIO\Usuarios => (Grupo del Dominio)

http_access deny password Usuarioshttp_access allow NuestraRedpasswordVista de Parmetros para la Autorizacin

Paso 11 Autentificacin local.Despus de haber instalado y configurado SQUID sobre Windows estamos en condiciones de crear las cuentas de usuarios para conocer qui&ecaute;n naveg, a qu hora, y de que ip se accedi. El primer paso es abrir con un editor de textos (notepad preferentemente) el fichero de configuracin squid.conf e ir a las lneas de autenticacin y agregar estas:auth_param basic program c:/squid/libexec/ncsa_auth.exe c:/squid/etc/passwdauth_param basic realm Autorizacin para Navegar por InternetFjese que el fichero squid.pass ser el que contendr la informacin de los usuarios. Luego el siguiente paso es declarar la siguiente acl:acl password proxy_auth REQUIREDla mayoria de las veces, esta acl viene comentada (un # al comenzar la lnea), en ese caso, solo debemos eliminar ese caracter. Y finalmente en las lneas de acceso http_access, cuando le damos acceso a las IP de las computadoras, le agregamos al final la palabra password, un ejemplo sera el siguiente: http_access_allow_mi_red_passwordReiniciarmos el servidor squid, y todo listo! Hemos concluido un buen por ciento de nuestro trabajo, ahora solo falta crear las cuentas de los usuarios. Esto se logra con un fichero llamado htpasswd.exe que viene dentro de la instalacin del Servidor Apache para Windows dentro del directorio sbin, ese fichero debe copiarse dentro de c:/squid/sbin y luego abrir cmd e ir a la ruta especificada y escribir el siguiente comando:htpasswd -c clave.pass prueba Les aparecer escribir la contrasea dos veces y el usuario pepito est listo para navegar. Para crear el siguiente usuario omitimos el parmetro -c, ya que ste te crea nuevo el fichero squid.pass y corremos el riesgo de perder los dems usuarios ya creados anteriormente, quedara as:htpasswd clave.pass pruebaSe entra dos veces la contrasea de prueba y ya esta listo para navegar.Paso 12 Registro C:\squid\var\logs\access.log => llevar como se dijo anteriormente las peticiones hechas por el proxy, al activar la Autentificacin debera de decir con que usuario se ha hecho la peticin al proxy.

Archivo de Configuracin Permitir el Acceso a una red por Autentificacin Local paraCopiar y pegar en el Archivo squid.conf Y cambiar los parmetros de Red a nuestra red

#Parmetros de Autentificacin En Localauth_param basic program c:/squid/libexec/ncsa_auth.exe c:/squid/etc/passwdauth_param basic realm Autorizacin para la salida a internetauth_param basic children 5auth_param basic credentialsttl 2 hoursauth_param basic casesensitive on#ACLSacl all src allacl password proxy_auth REQUIRED #src 192.168.1.0/24acl manager proto cache_objectacl localhost src 127.0.0.1/32acl to_localhost dst 127.0.0.0/8 0.0.0.0/32#Http_accesshttp_access allow passwordhttp_access deny !passwordhttp_access deny allArchivo de Configuracion Autentificacin por Directorio Activo#Parmetros de Autentificacin En Directorio Activo:auth_param basic program c:/squid/libexec/mswin_auth.exe -O NOMBREDOMINIOauth_param basic realm Autorizacin para la salida a internetauth_param basic children 5auth_param basic credentialsttl 2 hoursauth_param basic casesensitive on#ACLS:acl all src allacl password proxy_auth REQUIRED #src 192.168.1.0/24acl manager proto cache_objectacl localhost src 127.0.0.1/32acl to_localhost dst 127.0.0.0/8 0.0.0.0/32#Http_access:http_access allow passwordhttp_access deny !passwordhttp_access deny all

Archivo de Configuracin Autentificacin por Directorio Activo por Grupos:(Grupo sin acceso a Internet)#authenication with Windows serverauth_param basic program c:/squid/libexec/mswin_auth.exe -O solucionesauth_param ntlm children 5external_acl_type AD_global_group %LOGIN c:/squid/libexec/mswin_check_ad_group.exe -D soluciones -Gacl usuarios external AD_global_group soluciones\Usersacl password proxy_auth REQUIRED #src 192.168.1.0/24acl all src 0.0.0.0/0.0.0.0acl localhost src 127.0.0.1/255.255.255.255acl localnet src 10.0.0.0/255.0.0.0acl localnet src 192.168.0.0/255.255.0.0#acl localnet proxy_auth REQUIRED src 10.0.0.0/255.0.0.0#acl localnet proxy_auth REQUIRED src 192.168.0.0/255.255.0.0#ACL to define ports allowed to passthrough Squidacl Safe_ports port 80 443 21acl SSL_ports port 443acl CONNECT method CONNECThttp_access deny password usuarioshttp_access deny !Safe_portshttp_access deny CONNECT !SSL_portshttp_access allow localhosthttp_access allow localnethttp_access deny all

Paso 13 Configuracin de Actualizacin Automtica de la lista negra de SquidGuard (sgupdate)Una vez hemos Instalado el SquidNT hemos configurado las opciones bsica, opciones avanzadas, hemos realizado una autentificacin ya sea local o por Directorio Activo queda realizar las actualizaciones automticas de SquidGuard de su base de datos para ello, nos dirigimos a la carpeta C:\usr\local\SquidGuard\

En esta ruta encontraremos todo lo relacionado con SquidGuard los ficheros .log en el directorio \log , la base de datos en el directorio db\ el ejecutable del SquidGuard el fichero por lotes para la actualizacin de la base de datos y un manual para realizar blacklist manualmente por nosotros mismos. Nosotros lo primero que vamos ha hacer es modificar el fichero por lotes para la actualizacin automtica de la base de datos ya que al ejecutar el fichero por lotes lo primero que har ser borrar el archivo Squid.conf y reconfigurarlo por el que vino con la instalacin. Con lo que es muy importante no realizar ninguna actualizacin de la base de datos de squidGuard hasta que no hayamos editado este archivo. Abrimos el archivo sgupdate.cmd.Este sera el archivo antes de modificar y sealadas las partes que debemos cambiar antes de realizar la actualizacin la marcada con color es la URI que nos indica que base de datos vamos a descargar podremos cambiarla por la base de datos que nosotros queramos y encontremos en Internet nosotros vamos a modificarla para ver como podriamos elegir cualquier base de datos que fuera para SquidGuard.Archivo antes de modificar. Las marcadas en negras sern borradas completamente. Y las marcadas en rojo tendrn que ser modificadas a la base de datos que descarguemos.

Este sera el archivo ya modificado con la base de datos descargada bigblacklist.(No ejecutar el fichero por lotes todava)

Esta est descargada dehttp://sourceforge.net/projects/phpdansadmin/?source=dlppero se aconseja descargar la bigblacklist oficial que es una lista negra comercial y solo deja descargar una vez al da pero est ms actualizada esta es la pagina de descarga que habr que poner de la siguiente manera en el sgupdate;wget1102http://urlblacklist.com/cgi-bin/commercialdownload.pl?type=download&file=bigblacklist => (Con las comillas).Una vez tenemos realizada la configuracin del fichero por lotes realizaremos una tarea programada de Windows para que ejecute el fichero por lotes un da a la semana a una hora que est el Sistema Operativo encendido. Iremos a Herramientas administrativas => Tareas programadas y configuraremos para que se ejecute una vez a la semana el fichero por lotes sgupdate.

Por ltimo Reconfiguramos manualmente el archivo SquidGuard.conf para que utilice la base de datos que hemos descargado dehttp://urlblacklist.com/cgi-bin/commercialdownload.pl?type=download&file=bigblacklistpara ellohabrque aadir las nuevascategorasmirando los directorios de la base de datos nueva de bigblacklist anidada en /db/blacklist hay que cambiar el directorio de la categora por la de blacklist de bl => blacklist y agregar las categoras nuevas a las acls.Ejemplo! As se configura una lista y la ACL correspondiente a la categora esto es lo que habra que hacer en nuestro archivo SquidGuard.conf nosotros nicamente vamos a bloquear las urls y dominios deInternetque contengan Software malicioso, para ello en la base de datos Blacklists aadiremos en el squidGuard.conf las categoras Malware virusinfected Spyware hacking para bloquear estas categoras. El SquidGuard.conf quedara de la siguiente manera.Bloqueando todas las urls dominios y direcciones IP de la base de datos de la categora.SQUIDGUARD.CONFdbhome c:/usr/local/SquidGuard/dblogdir c:/usr/local/SquidGuard/logdest spyware {domainlist blacklists/spyware/domainslog spyware.log}dest malware {domainlist blacklists/malware/domainsurllist blacklists/malware/urlsexpressionlistblacklists/malware/expressionslog malware.log}dest hacking {domainlist blacklists/hacking/domainsurllist blacklists/hacking/urlslog hacking.log}dest virusinfected {domainlist blacklists/virusinfected/domainsurllist blacklists/virusinfected/urlslog virusinfected.log}acl {default {pass !spyware !hacking !virusinfected !malware !in-addr allredirect http://localhost/block.html}}Nosotros deberemos hacer lo mismo usando como plantilla el archivo SquidGuard.conf que viene en el instalador que es ms completo y ya vienen muchas categoras definidas. Teniendo en cuenta nuestros directorios que han cambiado de bl a blacklist y agregar las nuevas categoras.Paso 14 Listas de MalwareUna vez hemos elegido la base de datos de SquidGuard vamos a aadir una lista especifica de Malware, para tener una Navegacin por Internet ms fiable.Nos meteremos en la pagina web de Malware Patrol http://www.malware.com.br/iremos a blocklist y descargaremos la Blacklist para SquidGuard.http://www.malware.com.br/cgi/submit?action=list_sguardcopiaremos la lista y la pegaremos en un fichero de texto que crearemos en el Sistema nos quedar algo parecido a esto:

Iremos al archivo Squid.conf y configuraremos la siguiente acl dandole como condicin la lista que hemos guardado en el fichero de texto malware.txtacl malware url_regex -i C:\squid\malware.txthttp_access deny malware => (Esta http_access deber ser nuestra primera http_access en nuestro archivo de configuracin Squid.conf(IMPORTANTE!!))Ahora vamos a aadir otro archivo pero esta es de dominios, iremos a =>http://www.squidblacklist.org/downloads.htmly descargaremos la squid-malicious.tar.gz la descomprimiremos con el winrar y la abrimos con el Notepad o una aplicacin parecida. Nos saldr la siguiente lista de Dominios. la meteremos con el archivo de malware.txt como domains.txt

Ahorare configuraremosel archivo Squid.conf con la siguiente linea.acl dominios url_regex dstdomain C:/squid/squid-malicious.txthttp_access deny dominios => (Aadiremos despus de la de malware).Paso 15 Actualizacin de las listas de MalwareFichero por lotes que realiza la tarea de actualizacin de las listas de Software malicioso automticamente esta es su sintaxis.Deber ser copiada en un fichero con extension .cmdcd C:\usr\local\SquidGuard\tempwget1102 http://www.malware.com.br/cgi/submit?action=list_sguardtype sub* > C:\squid\malware.txtwget1102 http://www.squidblacklist.org/downloads/squidblacklists/squid-malicious.tar.gzecho Uncompressing block list7za x squid-malicious.tar.gz7za x squid-malicious.tar -ytype squid-malicious.acl > C:\squid\squid-malicious.txtdel c:\usr\local\squidguard\temp\* /QRealizar programacin de tarea para el fichero por lotes para que actualice automticamente las listas de malware. Inicio=> Panel de control=> TareasProgramadasPaso 16 (Opcional) Delays PoolsDelay pools es la respuesta de Squid frente al control de ancho de banda y el traffic shaping (catalogacin de trfico). Esto se realiza limitando el rate que el Squid retorna los datos desde su cache.Los delay pools son en esencia cubos de ancho de banda (bandwidth buckets). La solicitud a una respuesta es demorada hasta que cierta cantidad de ancho de banda est disponible desde un cubo. Squid llena con cierta cantidad de trfico los cubos por cada segundo y los clientes del Cache consumen los datos llenados desde esos cubos.El tamao de un cubo determina cunto lmite de ancho de banda est disponible en un cliente. Si un cubo se encuentra lleno, un cliente puede descargar a mxima velocidad de la conexin disponible(sin limitacin de rate) hasta que ste se vace. Despus que se vace recibir el lmite de trfico asignado.Se requiere varios conceptos que Squid usa para el control de Delay Pools: Listas de control de acceso (Access rules) Clases de Delay Pools (Delay pool classes) Tipo de cubos (buckets)

Secuencia lgica:Squid verifica en qu delay_access te encuentrasSi concuerda con una, esta apunta hacia un delay pool especficoCada delay pool tiene una clase: 1 , 2 , 3.La clase determina que tipo de cubo ests usando. Squid tiene 3 tipos: Global (agregate), individual , red (network)La clase 1 tiene un nico cubo Global (agregate)La clase 2 tiene un cubo Global (agregate) y 256 cubos IndividualLa clase 3 tiene un cubo Global (agregate) y 256 cubos de Red y 65536 cubos Individual.Puede uno desactivar cubos que no van a ser utilizados, por ejemplo en la clase 2 puede uno desactivar el cubo global y solo utilizar los cubos Individual.Por razones obvias se toma siempre el ancho de banda menor. Por ejemplo, considere la posibilidad de una clase 3 cubos agregate, network e Individual. Si tiene en Individual 20 KB, En network 30 KB, pero el agregate tiene 2 KB, el cliente recibir slo 2-KB.

Directivas: delay_pools: Define cuantos delay pools se van a utilizarEjemplo:delay_pool 5: Define 5 Delay pools que sern configurados posteriormente.delay_class: Define la clase del delay pool. Para evitar complicaciones es recomendable tener siempre un delay_class para cada delay pool definido.Ejemplo:delay_class 1 3 ( Define el delay pool 1 que sea de tipo 3).delay_class 5 2 (Define el delay pool 5 que sea de tipo 2).delay_parameters: Este es el parmetro crtico en el cual se limita el ancho de banda. Para cada Delay Pool se debe definir: el fill rate (trfico de llenado) y el tamao mximo de cada cubo.delay_parameters N rate/size [rate/size [rate/size]]

El valor del rate est definido en bytes por segundo y size en total de bytes.Si se divide el size entre el rate, Dispondrs el tiempo en segundos que el cubo se llenar si el cliente no est consumiendo.Una Pool de clase 1 que dispone de un solo cubo sera definido como sigue:delay_class 2 1delay_parameters 2 2000/8000Para un Pools de clase 2, El primer cubo es aggregate y el segundo es un grupo de cubos individuales:delay_class 4 2delay_parameters 4 7000/15000 3000/4000De esta forma la red toda la red dispondr en los primeros 15 Kb (tamao del cubo) descarga a velocidad mxima sin restriccin, despues de haber descargado los primeros 15Kb (se vaci el cubo), descargar a 7KB. Igualmente cada cliente solo podr descargar rpidamente los primeros 4Kb , despus descargar establemente siempre a 3 Kb.delay_initial_bucket_level: Dice que tan lleno estar el cada cubo al iniciar el Squid. Se indica en porcentajesdelay_initial_bucket_level 75%delay_access: permite relacionarlo a una ACL especfica. Es similar a las reglas de acceso de Squid , pero es necesario definir el nmero de Pool antes del allow o deny.delay_access 1 deny gerentesdelay_access 1 allow mi_reddelay_access 5 allow mime_extensionesSquid define una lista de acceso separada para cada Delay Pool. Puede disponer de un allow o un deny. Si es allow utiliza esa regla y no sigue buscando en las siguientes de ese Pool. Si es deny, automticamente cancela la bsqueda en ese Pool, pero seguir buscando en las listas de acceso de los otros pools.

Ejemplos:Limita a todo el mundo a 64 KBytes y mantiene 1 MB en reserva si Squid est inactivo:delay_pools 1delay_class 1 1delay_parameters 1 65536/1048576acl All src 0/0delay_access 1 allow All

No se va a utilizar los cubos de Red. Nuestro ancho de banda Global es de 64 KB/s, pero se limitar a cada uno de los 65536 posibles clientes en 16 Kbit/s.delay_pools 1delay_class 1 3delay_parameters 1 65536/1048576 -1/-1 16384/262144acl All src 0/0delay_access 1 allow All# -1 significa ilimitadoPor clase de servicio. Usamos las acl gerentes, con 65 KB y los dems con 10 KB. Adicionalmente se limita la descarga por mime a 5Kb pero no a los gerentes.delay_pools 3delay_class 1 1delay_class 2 1delay_class 3 1delay_parameters 1 65536/1048576delay_parameters 2 10000/50000delay_parameters 3 5000/30000acl Gerentes src 192.168.8.0/22acl Todos src 0/0acl extensiones rep_mime_type /etc/squid/mis_tipos_mimedelay_access 1 allow Gerentesdelay_access 2 allow Todosdelay_access 3 deny gerentesdelay_access 3 allow extensiones

Ya tenemos nuestro Proxy HTTP con Squid montado en la red.

pg. 31