[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Squid




andres wrote:



Hola Lista..
Estoy teniedo un caso con el squid... el tema es que
lo estoy usando mediante una conexion dialup,, y
cuando inicia la PC y levanta el servicio me da error
en el resolv.conf,, ahi tengo el dns de mi ISP...
entonces cuando me conecto a Internet los usuarios no
pueden navegar haste que reinicie es el servicio
"Squid" ya dentro de internet no da el error y los
clientes pueden navegar si problemas....
Como puedo solucionar esto,, es decir que no tenga
que reiniciar el servicio recien dentro de internet..
Gracias de antemano.
PiSa


Hola: vos usas Squid por alguna razo'n en especial, te pregunto porque creo que podria's
inclinarte por enmascaramiento de IP y... no tendri'as tantos problemas.
Te pego aca' un ejemplo: a la vez es cuestio'n de probar dado que por ejemplo yo en casa tengo
conexio'n permanente a trave's de banda ancha, con lo cual la conexio'n entrante es por una
tarjeta de red y por otra la de la LAN interna y la salida hacia el mundo de la misma por otra
tarjeta de red (ambas en una misma maquina).c,

Andres, Gracias por toda tu informacion que me das... de verdad..
El tema de Squid lo estoy haciendo nada ma's y nada menos que para aprender... porque hasta ahora estoy haciendo como vos bien decis un enmascaramiento de ip con unas reglas de ipchains. Cuendo termine de ver bien es tema de squid, me voy a poner a ver el de un proxy transparente... pero vamos de apoco.. jeje

por lo tanto recorda que no uso dialup, pero bueno este ejemplo tal ve'z te sirva...

Bueno el cambio que noto hasta ahora solo es que yo si salgo por dialup, pero la red interna es muy parecida a la tuya... porque el servidor tiene una ip interna (192.168.0.1) y los Clientes que son 3 (192.168.0.x)
hasta ahi vamos bien..... jeje

Mucha suerte

andre's
-----------------------------------------------------------------------------------------------------

Hay que configurarlo desde un u'nico fichero, el /etc/squid.conf, que facilita mucho las cosas.

Lo tengo configurado, ma's adelante te mando mi squid.conf....

Este ejemplo que te mando es la configuracio'n de mi maquina... en casa como sabe's uso dos
equipos:
un servidor(192.168.0.1) y un cliente(192.168.0.10) que accede a traves del servidor

ok


La particion la he montado en un segundo disco duro (hdc1) desde /mnt/squid, y ahi he puesto
todos los logs.Recorda que el directorio /mnt/squid debe pertenecer al usuario 'squid' y al
grupo 'squid', con los privilegios 775

Una vez tenemos todo esto, nos metemos con el fichero para configurar el SQUID.
El fichero /etc/squid.conf, es muy sencillo de configurar ya que todos los comandos internos
estan comentados para facilitar la configuracion.
Los comandos basicos necesarios los podes buscar en man Squid y poner los valores por defecto,
pero para tener una idea, los que me resultan ba'rbaros (es decir que funcionan bien) son estos:




http_port 3128
icp_port 3130
cache_swap_low  90
cache_swap_high 95
maximum_object_size 4096 KB
cache_dir ufs /mnt/squid 100 16 256
cache_access_log /mnt/squid/access.log
cache_log /mnt/squid/cache.log
cache_store_log /mnt/squid/store.log
client_
netmask 255.255.255.0

Esta parte es muy importante ya que se dan los permisos para que se pueda acceder a la cache.
Fi'jate en las dos lineas que he puesto para dar permisos a las IPs del 192.168.0.1 -->
192.168.0.255

ok, lo vi en un COMO :)


acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl mipc src 192.168.0.0/255.255.255.0
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
acl SSL_ports port 443 563
acl Safe_ports port 80 21 443 563 70 210 1025-65535
acl Safe_ports port 280  # http-mgmt
acl Safe_ports port 488  # gss-http
acl Safe_ports port 591  # filemaker
acl Safe_ports port 777  # multiling http
acl CONNECT method CONNECT

estos ultimos acl, para que son???


#Default configuration:
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
#
# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS
#
http_access allow localhost
http_access allow mipc
^^^^^^^^^^^^^^^^^^^^^^
http_access deny all

Una vez has hecho los cambios necesarios en el fichero de configuracio'n tene's que
hacer lo siguiente:
1.- Para crear todo el sistema de ficheros y directorios que usara' Squid ejecutar:
root# squid -z
2.- Ejecutar el Squid para que funcione a partir de ese instante.
Escribi's 'setup' y eligi's 'System Services', y activas con el espacio la opcion del squid

puedo hacer squid -z
pero cuando quiero hacer

root# setup
Me dice comando no valido

A partir de ahora cada vez que inicies el servidor pode's tener tu propio cache.

El cliente
Para poder emplear el Proxy-Cache, tende's que configurar cada Navegador de cada PC
con los datos de la Cache. Por ejemplo:
IP-Proxy: 192.168.0.1
Puerto: 3128
En el caso que quieras sacar maquinas con gu"indos o linux...

si eso lo realice :)

NUEVO

Para facilitar el control de los clientes y para que puedas controlar el taman~o de los
ficheros o paginas que se bajan, hay unas li'neas en el fichero de configuracio'n que se
encargan de eso.
Podes jugar con los KB para ajustarlo a tus necesidades

Busca en el fichero squid.conf:

# OPTIONS FOR TUNING THE CACHE
request_header_max_size 10 KB
request_body_max_size 512 KB
reply_body_max_size 512 KB

Lo voy a probar.. jej


Redireccionar el puerto de acceso a la web
Como redireccionar el puerto 80 que usan los clientes por defecto al puerto del Squid sin que
los usuarios se den cuenta de nada

Supongamos que ya tenemos funcionando el Squid... y como hemos hecho en los pasos anteriores,
ya vimos la forma de usar Squid en los clientes cambiando en cada uno de ellos el puerto al
que tienen que acceder. Pero imaginate que tenemos muchos PCs, seria un trabajo de chinos tener

que ir uno a uno para hacer esta tonteria, pues lo que vamos a hacer es redireccionar el puerto

80 al que usemos con el Squid, pero solo en el servidor

Ahora creamos un fichero llamado 'chains' en /etc/squid/ asi':

echo 1 > /proc/sys/net/ipv4/ip_forward
/sbin/ipchains -P forward DENY
/sbin/ipchains -A forward -s 192.168.2.0/16 -d 0/0 -j MASQ
#Redireccionar el puerto 80 al 3128
/sbin/ipchains -A input -j REDIRECT 3128 -p tcp -
s 0.0.0.0/0 -d 0.0.0.0/0 80

Como te comentaba ma's arriba estoy haciendo enmascaramiento de ip con reglas de ipchains,,
pero en estos momentos me estoy queriendo pasar a iptables :)

Ahora le cambiamos las propiedades al fichero y le damos la propiedad de ejecucion:
chmod 755 chains o co'mo lo llames

Lo que interesa es que al arrancar el Linux nos lo ejecute el fichero que hemos
creado antes 'chains'. Creas un enlace simbo'lico de este fichero a /etc/init.d
luego update-rc.d chains defaults 99 por ejemplo y listo!

Bueno a continuacion te envio mi sencillo squid.conf. , te envio este porque se que me funciona,,, En realidad tengo un problema con el tema de inicio... porque para poder hacer que los demas
puedan navegar tengo re reiniciar el squid cuando me conecto a internet
# /etc/init.d/squid restart
para que actualize o no se bien que los DNS de resolv.conf
Me fije en el archivo /var/log/squid/cache.log y cuando prendo la PC,, que por cierto no esta conectada por tener dialup :) je
me dice el sig. mensaje de error..

FATAL: could not find any nemeservers
Please check your /etc/reslov.conf file
or use the `dns_nameservers` option squid.conf

aparentemente dice que no esta bien el resolv.conf,, pero esta con los dns de mi isp

nameservers 209.13.167.227
nameservers 209.13.172.3

Por lo que puedes ver tengo infovia, jeje
bueno pero lo cierto es que tengo que reiniciar el squid cuando estoy conectado,,, haaa que es eso que me dice que use la opcion de dns_nameservers,, porque estube realizando unas pruebitas en el squid.conf, y no puede con esa opcion,, porque supongo que me esta diciendo
que ponga directamente los dns de mi ISP en el. o no???
Andres te agradesco nuevamente por tu buena onda...

PIsA
------------------------------------------------------------------
\-  Federico E. Pereda - Debian GNU/Linux Woody 3.0         -/
|- E-mail:  warlinx99@yahoo.com.ar -  pereda@federico.net.ar -|
/-  Licq: 154997336             			       -\
------------------------------------------------------------------




http_port 3128
http_port 8080
cache_mem 16 MB
cache_dir ufs /var/spool/squid 300 16 256
cache_access_log /var/log/squid/access.log
ftp_user Suid@pereda.com
#Recommended minimum configuration:
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl redlocal src 192.168.0.0/255.255.255.0
http_access allow redlocal
http_access allow manager localhost
http_access deny manager 
http_access deny all
icp_access allow all
httpd_accel_host virtual
httpd_accel_port 0
httpd_accel_single_host on
httpd_accel_with_proxy on
# httpd_accel_uses_host_header off


Reply to: