Howto Instalar Squid en Windows

Logo de Squid

Logo de Squid

Por: Leonel Rubio (leo_on)

Nota: Este manual es para Squid 2.7 para Windows

Las versiones de Windows Compatibles con esta compilación de Squid son:

  • Windows NT 4.0 Workstation y Server SP4 y superiores
  • Windows 2000 Professional y Server
  • Windows XP Professional (x86 y x64)
  • Windows 2003 Server (x86 y x64)
  • Windows Vista (x86 y x64)
  • Windows 2008 Server (x86 y x64)

Limitaciones

1.- Squid es un Proxy, es decir un Servidor Intermediario para los protocolos HTTP, FTP, GOPHER y WAIS.

Es decir, si deseas usar alguna aplicación que NO use estos protocolos no te servirá, ejemplos más comunes; SMTP, POP3 (Outlook), TELNET, SSH.

2.- En squid sobre Windows no es posible hacer que funcione de modo transparente, ya que hace falta una aplicacion que redirija los paquetes hacia squid, en linux esto se hace facilmente por medio de iptables, pero Windows no tiene una herramienta que lo haga.

Prerrequisitos

  • Una Pc con alguno de las versiones de Windows de la lista anterior.
  • Que esa PC tenga conexión a Internet mediante una conexión pppoe, ethernet (LAN) o dial up (telefónica).
  • Que la PC este libre de virus, spyware y alimañas semejantes.
  • Un Antivirus actualizado.
  • Un firewall (con el de Windows es suficiente… de momento).
  • Evita usar un antivirus o un firewall que no sepas configurar.

1.- Descarga Squid NT 2.7, cuando se hizo este manual se uso la compilación 2.7.STABLE5, en toco caso descarga la ultima compilación pero asegurare que sea 2.7.

http://squid.acmeconsulting.it/download/dl-squid.html

2.- Extrae el contenido del archivo descargado en la carpeta c:\squid, te debe quedar así.

3.- A continuación accede a la carpeta c\:squid\etc y renombra los archivos que encontraras allí squid.conf.default, mime.conf.default y cachemgr.conf.default, borrando .default de cada archivo, deja un respaldo de los mismos para futuras referencias. Te deben de quedar así…

4.- Con el notepad o el editor de textos de tu preferencia abre el archivo squid.conf, busca la siguiente línea y realiza las modificaciones siguientes.

#Recommended minimum configuration:

De momento bastara con que agregues la siguiente línea abajo de la anterior.

acl localnet src ipdetured/24 # RFC1918 possible internal network

Donde ipdetured será el segmento de tu red, por ejemplo si la ip de tu servidor es 192.168.50.1 el segmento será 192.168.50.0 y si la ip de tu servidor es 192.168.10.1 el segmento será 192.168.10.0.

Nota: Si no haces esto las PCs clientes no podrán usar squid para navegar por Internet.

5.- Por medio de consola corre los siguientes comando.

c:\>cd squid
c:\squid>cd sbin
c:\squid\sbin> squid –z

Este comando genera las carpetas para la cache de navegación de squid.

Si no marca errores significa que as echo todo bien.

Ejecutamos ahora el siguiente comando.

c:\squid\sbin> squid –i

Este instala el servicio de Proxy en la lista de servicios de Windows NT.

Ahora reinicias el servicio de squid, esto lo puedes hacer de dos formas, reiniciando tu PC o yendo a panel de control>herramientas administrativas>servicios, allí buscas uno que se llame squid y le das reiniciar.

squidservicelist_0.jpg

Después de esto ya tienes funcionando tu servidor Squid en tu Red.

NOTAS importantes:

1.- Para que tus Pcs clientes usen Squid para navegar debes de configurarlo en sus respectivos navegadores, aquí explico como…

2.- Si te marca el error parseConfigFile: squid.conf:1unrecognized:’´(caracter desconocido)’, donde carácter desconocido puede ser ∩╗┐o cualquier carácter desconocido, significa que tu notepad esta metiendo caracteres extraños a squid.conf, deberás usar un editor de texto que no lo haga, si no tienes algún favorito te recomiendo Notepad2.

Básicamente solo necesitas borrar el squid.conf que hayas modificado, sacar el original del archivo zip y modificarlo nuevamente pero usando el notepad2.

3.- Si tienes dudas sobre como conectar la PC con squid a tu red lan puedes revisar como se hace en Topologias de RED.

Nota: Si tu instalación de squid se cae inesperadamente y tienes que estarla reiniciando para que funcione, revisa el uso de memoria, CPU en tu PC, mas aun si no supera las 70 conexiones, instalaste algún otro programa para ayudarte en tu red (ciertos tipos de antivirus y firewall producen este error) o si esa PC tiene otro uso además de servir de Proxy.

PARA Ayudarte con problemas que puedas tener.

Si tienes problemas es indispensable que revises los siguientes puntos para poder solucionar cualquier error.

1.- Los resultados de squid -z, si tienes problemas en la semántica de tu archivo squid.conf allí te dará un informe.

2.- Los resultados del los logs, específicamente cache.log y squid.exe.log, si están vacíos solo coméntalo no trates de enviarlo por correo.

3.- Si tienes algún problema copia el resultado de squid -z si no te manda algún resultado se supone que por ese lado esta bien el squid.conf.

4.- Copia y pega junto con la descripción de tu error las ultimas líneas de tus logs, típicamente empieza con Starting Squid Cache version 2.7 etc…., es decir, cuida que esto no aparezca mas de una vez, no necesitamos ver los logs de tus últimos 15 intentos sino solo el ultimo.

Fuentes:

http://squid.acmeconsulting.it/SquidNT27.html
http://www.squid-cache.org/Versions/v2/2.7/RELEASENOTES.html

590 Respuestas a “Howto Instalar Squid en Windows”
  1. JAvier dice:

    Buenas tardes;
    mi consulta es, tengo el squid en un servidor 2003 server funciona todo ok. el squid guarda un LOg que pesa caso 580 MB ya no me sirve lo que es muy antiguo en todo caso hay alguna manera de hacer que solo me separe las fechas que yo desee
    por ejemplo de la fecha 1dejulio a 31dejulio
    ycomo hacer que el archivo LOG de squid pese menos

    ya tengo sarg instalado y funciona bien pero quiero algo mas especifico como lo comentado arriba

    gracias

  2. CHR dice:

    Hola a todos !!!, les o le comento que estoy con inconvenientes con un Squid 2.7 Estable que está instalado sobre un Windows 32 Bits . Le comento que quiero habilitar telnet desde varios equipo internos y la verdad estoy leyendo la ayuda y tadavío no encuentro la forma de habilitarlo. Por favor Podría alguien darme una mano con ello.

    Muchísimas gracias
    CHR !

  3. Leo_on dice:

    Teoricamente solo deberias abrir el puerto que usa tu servidor Telnet, tipicamente el 23 tanto en el firewall como en la respectiva acl de squid y configurar tu cliente telnet para que use el proxy en lugar de conexion directa.

  4. julio dice:

    cuando abro la terminal y pongo la linea ¨c:\>cd squid¨ me dice ¨c:\¨no se reconoce como un comando interno o externo..

    si me podrias ayudar.. gracias

  5. Mario dice:

    como se hace cache a los videos de youtube y demas ? alguien lo a conseguido?

  6. edwar dice:

    lla lo instale pero como las peticones delos cliente pasan por el squid si la pc solo esta conectada al swict como todo los clientes

  7. Carlos dice:

    Hola, existe una forma de poner varios dns para q cuando uno cae se use automaticamente el otro , por ejemplo pongo los dns de mi proveedor pero cuando se caigan que use los opendns es decir poner 2 pares de dns (4 direcciones ip) , asi trabaja o se podria trabajar ?

  8. Leo_on dice:

    Hola Carlos.. Si puedes poner varios DNSs.

  9. Estera dice:

    Hola, hay alguna forma de limitar el atube catcher ? o programas parecidos y si funciona ?

  10. betto dice:

    hola mira el hacer el 5 paso del tutorial me aparece que squid-z no se reconoce como un comando interno o externo o programa o archivo por lotes ejecutable. que hago por fa que alquien me ayude

  11. browsons dice:

    Betto, el comando va asi.

    C:\squid\sbin>squid.exe -z

  12. Rigol dice:

    Excelente tutorial, te lo agradezco mucho porque me sacaste de un apuro. Mil gracias :D

  13. Jazz dice:

    Al intentar iniciar squid, sale este error: ERROR 1067: THE PROCESS TERMINATED

  14. Juliopb dice:

    En realidad si existen varias herramientas de terceros para Windows que permiten redirigir puertos, yo uso “Softperfect Bandwidth Manager” y ya tengo mi proxy transparente con el único defecto que no me funciona con https así que no se pueden entrar a ciertas paginas como facebook o hotmail. Se que un proxy es una idea descabellada para HTTPS pero me gustaría saber si hay forma de que HTTPS (puerto 443) entre directo sin pasar por el proxy, si lo configuro normal no hay problema pero si es transparente si. Alguien sabe como resolverlo?.

  15. pepefe dice:

    Se puede hacer cache de facebook ???

  16. Leo_on dice:

    Aqui viene una explicacion de como hacerlo, cuestion de hacer pruebas.

  17. Marcos Ariel dice:

    Buenas, tengo un problema con el squid en windows, necesito limitar el ancho de banda de unos usuarios, a ver me explico, necesito limitar el ancho de banda a un grupo de usuarios y a otros dejarla a full, he leido que se hace implementando las delay pools pero de todo lo que he leido no entiendo muchop,
    saludos

  18. Leo_on dice:

    En cuanto pueda hago un tutorial de Delaypools.

  19. pepefe dice:

    Facebook trabaja con contenido dinamico ?

  20. sandy343 dice:

    disculpa pero tengo dudas acerca de la configuracion de ip del proxy podrias darme un enlace de algun tutorial porque cinceramente no lo encuentro y gracias por este turorial me ha servido de mucho

  21. sandy1025 dice:

    hola quisiera saber si me pudieras a yudar a configurar las ip de las tarjetas ..como hago para colocarle ip a cad una no se como si me puedes ayudar muchas gracias…

  22. Luis dice:

    Aque se debe esto

    c:/squid/sbin/squid -z
    2012/06/06 14:06:40 | Creating Swap Directories

    c:/squid/sbin/squid -i
    CreateService failed

  23. Leo_on dice:

    Publica el log, alli debe venir alguna respuesta a tu pregunta.

  24. Dieler dice:

    Holas Bueno espero me puedan ayudar yo logre hacer correr el squid y todo bla bla bla
    pero lo que ahora quiero hacer es filtrar paginas web y/o palabras concretas como porn redtube adult xxx etc etc
    eh visto que lo hacen con las acl mas o menos con este formato

    acl palabrasnopermitidas url_regex “c:/squid/etc/nopermitidas.txt”

    ———–y indicando que no permita esas palabras guardadas en un archivo .txt en este caso llamado nopermitidas.txt mediante la regla de acceso——–

    http_access deny palabrasnopermitidas

    lo configuro, reinicio el servicio de squid, boy al navegador configurado con el proxy escribo porn y no me deniega
    el acceso ayudenmeeeeeeeeeeeee no logro hacer esto por mas que lo intento:D!!!!!

  25. Dieler dice:

    al parecer encontre la respuesta a mi problema
    lo que estaba haciendo mal era colocar los http_access en un sitio errado y creo que muchos hacen lo mismo :D

    1.- acl

    acl mired src 192.168.3.0/24
    acl nopermitidos url_regex porno xxx petardas

    aqui estaba mi error———————————————————————————–

    #Default:
    # http_access deny all
    #
    #Recommended minimum configuration:
    #
    # Only allow cachemgr access from localhost
    http_access allow manager localhost
    http_access deny manager

    colocaba aqui las http_acces (======================================

    # Deny requests to unknown ports
    http_access deny !Safe_ports
    # Deny CONNECT to other than SSL ports
    http_access deny CONNECT !SSL_ports
    #
    # We strongly recommend the following be uncommented to protect innocent
    # web applications running on the proxy server who think the only
    # one who can access services on “localhost” is a local user
    #http_access deny to_localhost
    #
    # INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS

    http_access deny !mired (=================cuando en realidad deberia haber colocado las http_acces aqui
    http_access deny nopermitidos

    # Example rule allowing access from your local networks.
    # Adapt localnet in the ACL section to list your (internal) IP networks
    # from where browsing should be allowed
    http_access allow localnet

    espero esta info sea de gran ayuda ya que vi todos los comentarios con la misma pregunta y ninguna respuesta saludos!!!!

  26. Leo_on dice:

    Que tienes antes y despues de: http_access deny palabrasnopermitidas ?

  27. Dieler dice:

    ya esta solucionado no te preocupes, pero no se si me podrias confirmar si en estos momentos se puede hacer cache de contenido dinamico por que segun me informe por ahora no es posible es cierto esto?????????

  28. Leo_on dice:

    En principio no se puede, existen varios trucos, la verdad no he implementado ninguno de ellos hasta ahora.

  29. pedro dice:

    Es compatible con la nueva version de java (java 7 ) ? en el tema de cache , trabaja igual con esta nueva version ? sabes si facebook usa java ?

  30. Leo_on dice:

    Que yo sepa facebook no usa jaba (applets de jaba) que por cierto actualmente estan casi en desuso. sobre si trabaja internamente con jaba no sabria decirte, lo que entiendo es que esta echo en php.

  31. pedro dice:

    Algo me he dado cuenta entrando a la pagina de squid para descargar la version para windows, el squid 2.7 stable 7 y el squid 2.6 stable 23 tienen la misma fecha de lanzamiento , porque ? y el squid 2.6 stable 23 tiene la etiqueta de new (en rojo), pero no es una version antigua ? porque tiene la version new ? ya se q por logica se debe usar la mayor, pero supongo que esta 2.6 stable debe tener algo diferente pero que es actualizado ( por algo le han puesto new), sabes algo sobre esto ?

  32. conrra dice:

    ya configure todo tal y como esta solo que al conectar a la red en tipologia basica, no se como hacerlo si solo con una tarjeta de red o utilizando las dos como seria, lleva la misma configuracion? como saver si esta trabajando correctamente el squid?

  33. pedro dice:

    yo tengo el squid y hace cache normal , pero quisiera saber como poner una regla para que no cachee ciertos sitios web , por ejemplo por decir wikipedia , si no quiero que cachee todo pero cualquier articulo de wikipedia NO LO CACHEE , entonces que regla deberia poner para que se alte cualquier pagina de la wikipedia?

  34. pedro dice:

    es decir quiero que cachee todo excepto paginas web de un sitio determinado, en este caso el ejemplo es wikipedia, que el cache salte cualquier pagina de wikipedia , es posible esto ?

  35. pepe dice:

    hola, no entendi bien eso de los delay pools, me puedes explicar bien en castellano para niños que significado tiene estas 2 lineas y que hacen ?

    delay_class 1 2
    delay_parameters 1 65536/65536 20480/20480

    por favor !! gracias .

  36. jerry dice:

    hola, tu sabes a que se refiere el error “1063: El servicio SQUID ha finalizado inesperadamente.” ??

  37. Jose Luis Camacho Tastaca dice:

    bueno yo solo tengo un problema al poner
    squid -z
    me sale que ya creo los directorios pero cuando pongo
    squid -i
    me sale si no me equivoco este mensaje: OPENCSMANAGERFAILED

  38. Jose Luis Camacho Tastaca dice:

    bueno yo solo tengo un problema al poner
    squid -z
    me sale que ya creo los directorios pero cuando pongo
    squid -i
    me sale si no me equivoco este mensaje: OPENCSMANAGERFAILED
    por favor necesito ayuda por fa respondan

  39.  
Deja una Respuesta

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>