Menú principal

ayuda con squid

Publicado por willysantana, Marzo 24, 2015, 02:33:18 PM

Tema anterior - Siguiente tema

willysantana

hola necesito una ayuda para montar squid en un servidor. actual mente estaba usando raptor pero me vi obligado a quitarlo por los problema que me da con los móviles.
La red esta trabajando sin cache y me ase falta por lo meno cachar pejinas web.
alguna ayuda?
gracias.

firecold

Cita de: willysantana en Marzo 24, 2015, 02:33:18 PM
hola necesito una ayuda para montar squid en un servidor. actual mente estaba usando raptor pero me vi obligado a quitarlo por los problema que me da con los móviles.
La red esta trabajando sin cache y me ase falta por lo meno cachar pejinas web.
alguna ayuda?
gracias.

Amigo puedes inatalar squid muy facilmente, solo tecleas:

sudo apt-get install squid3

y como configuracion puedes poner la de Raptor, ya que esa funciona bien, lo que no tiene que agregar son los cache_peer de raptor, Saludos

willysantana

Cita de: firecold en Marzo 24, 2015, 11:56:22 PM
Amigo puedes inatalar squid muy facilmente, solo tecleas:

sudo apt-get install squid3

y como configuracion puedes poner la de Raptor, ya que esa funciona bien, lo que no tiene que agregar son los cache_peer de raptor, Saludos

Amigo mira esto lo saque del raptor.
como ya el servidor no tendrá raptor cache le cambie lo que estaba en la carpeta raptor por squid "/etc/raptor/" por "/etc/squid/" dele una revisada por favor y corrijame.
gracias.

/ip route
add check-gateway=ping disabled=no distance=1 dst-address=0.0.0.0/0 gateway=192.168.77.100 routing-mark=raptor_route scope=30 target-scope=10

/ip firewall mangle
add action=mark-routing chain=prerouting comment="Squid - Mangle ====================>" disabled=no dst-port=80 in-interface=ether5 new-routing-mark=raptor_route passthrough=no protocol=tcp
add action=mark-connection chain=forward comment="==SQUID - TOS 12==" disabled=no dscp=12 new-connection-mark=squid-connection passthrough=yes
add action=mark-packet chain=forward connection-mark=squid-connection disabled=no new-packet-mark=squid-packs passthrough=yes

/queue simple
add max-limit=2M/20M name=SQUID packet-marks=squid-packs target="0.0.0.0/0"



#######################==========Redirección squid-Cache por Mangle==========###############

Para esta configuración es necesario poner una regla iptables en el servidor, por ej. sería de la siguiente forma:
Se crea un archivo fw.sh y lo guardamos en "/etc/squid3/", y dentro va el siguiente contenido

#################################################################

#!/bin/bash
echo ";;;;;;;;;;;;;;;;;;;;;;;"
echo ";     squid-Cache     ;"
echo ";;;;;;;;;;;;;;;;;;;;;;;"

#Borrar cadenas anteriores
iptables -F
iptables -X
iptables -Z
iptables -t nat -F

#Condiciones por defecto
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT

iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT

#Aceptamos el localhost
iptables -A INPUT -i lo -j ACCEPT

#Aceptamos la red local
iptables -A INPUT -s 192.168.88.0/24 -j ACCEPT

iptables  -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128

echo 1 > /proc/sys/net/ipv4/ip_forward

################################################################

Le damos permisos

chmod 777 /etc/squid3/fw.sh

Ejecutamos el script

/etc/squid3/./fw.sh

Luego editamos el archivo "/etc/rc.local" (esto para que al iniciar el servidor arranque el script iptables),
ingresamos la siguiente línea

/etc/squid3/fw.sh

Esta linea tiene que estar arriva de "exit 0"

willysantana

Cita de: firecold en Marzo 24, 2015, 11:56:22 PM
Amigo puedes inatalar squid muy facilmente, solo tecleas:

sudo apt-get install squid3

y como configuracion puedes poner la de Raptor, ya que esa funciona bien, lo que no tiene que agregar son los cache_peer de raptor, Saludos

Este es mi squid.conf no quiero que el cache dns lo estoy asiendo en mk.
también hay unas lineas que menciona el youtube dime si la elimino.
gracias.
#========================== Squid 3.x Conf ===========================#
#
# Opciones de SQUID 3.x
#----------------------------------------------------------------------
http_port 3128 intercept
visible_hostname proxy.os.com
icp_port 0
#----------------------------------------------------------------------
acl youtube url_regex -i youtube.com
request_header_access User-Agent deny youtube
header_replace User-Agent Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/40.0.2214.115 Safari/537.36 (compatible; Googlebot/2.2; +http://www.google.com/bot.html)
#----------------------------------------------------------------------
#error_directory /usr/share/squid3/errors/Spanish/
#----------------------------------------------------------------------
acl denegados url_regex -i "/etc/squid3/denegados.lst"
#----------------------------------------------------------------------
# Servidor DNS y Politica de Cambios
#----------------------------------------------------------------------
#dns_nameservers 8.8.8.8 8.8.4.4
#dns_retransmit_interval 5 seconds
#dns_timeout 2 minutes
#----------------------------------------------------------------------
acl manager proto cache_object
acl localhost src 127.0.0.1/32 ::1
acl to_localhost dst 127.0.0.0/8 0.0.0.0/32 ::1
acl CONNECT method CONNECT

acl Safe_ports port 80          # http
acl Safe_ports port 21          # ftp
acl SSL_ports port 443
acl Safe_ports port 443         # https
acl Safe_ports port 70          # gopher
acl Safe_ports port 210         # wais
acl Safe_ports port 1025-65535  # unregistered ports
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 Safe_ports port 631         # cups
acl Safe_ports port 873         # rsync
acl Safe_ports port 901         # SWAT
acl Safe_ports port 1863        # MSN
#acl SSL_ports port 443          # https
acl SSL_ports port 563          # snews
acl SSL_ports port 873          # rsync

http_access allow manager localhost
http_access deny manager all
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localhost
http_access deny denegados
#----------------------------------------------------------------------
coredump_dir /var/spool/squid3
#----------------------------------------------------------------------
# Memoria reservada para cache
# Se recomienda que dedique aprox. 5MB de RAM por cada 1GB asignado a cache_dir
#----------------------------------------------------------------------
cache_mem 512 MB
#----------------------------------------------------------------------
# Maximo tamaño de archivo en cache de memoria
#----------------------------------------------------------------------
maximum_object_size_in_memory 128 KB
#----------------------------------------------------------------------
# Maximo y minimo tamaño de archivos cache en el Disco duro
#----------------------------------------------------------------------
maximum_object_size 30 MB
minimum_object_size 4 KB
#----------------------------------------------------------------------
# Sustituir archivos de cache cuando llegue a 96%
#----------------------------------------------------------------------
cache_swap_low 92
cache_swap_high 96
#----------------------------------------------------------------------
# Total de espacio en HD a ser usado por el cache, numero de carpetas,
# numero de subcarpetas en cache
# 100000 = 100 GB
#----------------------------------------------------------------------
cache_dir aufs /var/spool/squid3/cache1 200000 16 256
#----------------------------------------------------------------------
# Estandar de actualización de cache
# 1 mes = 10080 mins, 1 dia = 1440 mins
#----------------------------------------------------------------------
refresh_pattern -i \.jpg$ 14400 80% 43200 reload-into-ims
refresh_pattern -i \.gif$ 14400 80% 43200 reload-into-ims
refresh_pattern -i \.png$ 14400 80% 43200 reload-into-ims
refresh_pattern -i \.jpeg$ 14400 80% 43200 reload-into-ims
refresh_pattern -i \.bmp$ 14400 80% 43200 reload-into-ims
refresh_pattern -i \.tif$ 14400 80% 43200 reload-into-ims
refresh_pattern -i \.tiff$ 14400 80% 43200 reload-into-ims
refresh_pattern -i \.swf$ 14400 80% 43200 reload-into-ims
refresh_pattern -i \.html$ 10 20% 4320 reload-into-ims
refresh_pattern -i \.htm$ 10 20% 4320 reload-into-ims
refresh_pattern -i \.shtml$ 10 20% 4320 reload-into-ims
refresh_pattern -i \.shtm$ 10 20% 4320 reload-into-ims
refresh_pattern -i \.nub$ 2880 80% 21600 reload-into-ims
refresh_pattern -i \.exe$ 14400 80% 43200
refresh_pattern -i \.zip$ 14400 80% 43200
refresh_pattern -i \.mov$ 14400 80% 43200
refresh_pattern -i \.mpe?g?$ 14400 80% 43200
refresh_pattern -i \.avi$ 14400 80% 43200
refresh_pattern -i \.qtm?$ 14400 80% 43200
refresh_pattern -i \.viv$ 14400 80% 43200
refresh_pattern -i \.wav$ 14400 80% 43200
refresh_pattern -i \.aiff?$ 14400 80% 43200
refresh_pattern -i \.au$ 14400 80% 43200
refresh_pattern -i \.ram?$ 14400 80% 43200
refresh_pattern -i \.snd$ 14400 80% 43200
refresh_pattern -i \.mid$ 14400 80% 43200
refresh_pattern -i \.mp2$ 14400 80% 43200
refresh_pattern -i \.mp3$ 14400 80% 43200
refresh_pattern -i \.sit$ 14400 80% 43200
refresh_pattern -i \.zip$ 14400 80% 43200
refresh_pattern -i \.hqx$ 14400 80% 43200
refresh_pattern -i \.arj$ 14400 80% 43200
refresh_pattern -i \.lzh$ 14400 80% 43200
refresh_pattern -i \.lha$ 14400 80% 43200
refresh_pattern -i \.cab$ 14400 80% 43200
refresh_pattern -i \.rar$ 14400 80% 43200
refresh_pattern -i \.tar$ 14400 80% 43200
refresh_pattern -i \.gz$ 14400 80% 43200
refresh_pattern -i \.z$ 14400 80% 43200
refresh_pattern -i \.a[0-9][0-9]$ 14400 80% 43200
refresh_pattern -i \.r[0-9][0-9]$ 14400 80% 43200
refresh_pattern -i \.txt$ 14400 80% 43200
refresh_pattern -i \.pdf$ 14400 80% 43200
refresh_pattern -i \.doc$ 14400 80% 43200
refresh_pattern -i \.rtf$ 14400 80% 43200
refresh_pattern -i \.tex$ 14400 80% 43200
refresh_pattern -i \.latex$ 14400 80% 43200
refresh_pattern -i \.class$ 14400 80% 43200
refresh_pattern -i \.js$ 14400 80% 43200
refresh_pattern -i \.ico$ 14400 80% 43200
refresh_pattern -i \.css$ 10 20% 4320
#----------------------------------------------------------------------
refresh_pattern ^ftp:           1440    20%     10080
refresh_pattern ^gopher:        1440    0%      1440
refresh_pattern -i (/cgi-bin/|\?) 0     0%      0
#refresh_pattern (Release|Package(.gz)*)$       0       20%     2880
refresh_pattern .               0       20%     4320
#----------------------------------------------------------------------
# Log de acessos por el cache o para SARG
#----------------------------------------------------------------------
logfile_rotate 2
access_log /var/log/squid3/access.log
access_log /var/log/squid3/error.log
cache_store_log none
#----------------------------------------------------------------------
# Otras configuraciones
#----------------------------------------------------------------------
half_closed_clients off
server_persistent_connections off
client_persistent_connections off
log_fqdn off
quick_abort_min 0 KB
quick_abort_max 0 KB
quick_abort_pct 95
max_filedescriptors 65536
cache_effective_user proxy
cache_effective_group proxy
#----------------------------------------------------------------------
# Manteniendo objetos recientes y pequeños en memoria
#----------------------------------------------------------------------
memory_replacement_policy heap GDSF
cache_replacement_policy heap LFUDA
#----------------------------------------------------------------------
# Sitios que se les niega el cache 
#----------------------------------------------------------------------
acl nocache dstdomain .4shared.com .youtube.com .windowsupdate.com .gl$
no_cache deny nocache
#----------------------------------------------------------------------
# Negar cache para archivos con extension .asx e .asf |streaming|
#----------------------------------------------------------------------
acl asx url_regex -i \.asx$
cache deny asx
acl asf url_regex -i \.asf$
cache deny asf
# -----------------------------------------------------------------------------
# Qos_Flows
# -----------------------------------------------------------------------------
qos_flows local-hit=0x30
qos_flows parent-hit=0x32
qos_flows disable-preserve-miss
#----------------------------------------------------------------------



luistec

Cita de: willysantana en Marzo 25, 2015, 07:51:22 AM
Amigo mira esto lo saque del raptor.
como ya el servidor no tendrá raptor cache le cambie lo que estaba en la carpeta raptor por squid "/etc/raptor/" por "/etc/squid/" dele una revisada por favor y corrijame.
gracias.

/ip route
add check-gateway=ping disabled=no distance=1 dst-address=0.0.0.0/0 gateway=192.168.77.100 routing-mark=raptor_route scope=30 target-scope=10

/ip firewall mangle
add action=mark-routing chain=prerouting comment="Squid - Mangle ====================>" disabled=no dst-port=80 in-interface=ether5 new-routing-mark=raptor_route passthrough=no protocol=tcp
add action=mark-connection chain=forward comment="==SQUID - TOS 12==" disabled=no dscp=12 new-connection-mark=squid-connection passthrough=yes
add action=mark-packet chain=forward connection-mark=squid-connection disabled=no new-packet-mark=squid-packs passthrough=yes

/queue simple
add max-limit=2M/20M name=SQUID packet-marks=squid-packs target="0.0.0.0/0"



#######################==========Redirección squid-Cache por Mangle==========###############

Para esta configuración es necesario poner una regla iptables en el servidor, por ej. sería de la siguiente forma:
Se crea un archivo fw.sh y lo guardamos en "/etc/squid3/", y dentro va el siguiente contenido

#################################################################

#!/bin/bash
echo ";;;;;;;;;;;;;;;;;;;;;;;"
echo ";     squid-Cache     ;"
echo ";;;;;;;;;;;;;;;;;;;;;;;"

#Borrar cadenas anteriores
iptables -F
iptables -X
iptables -Z
iptables -t nat -F

#Condiciones por defecto
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT

iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT

#Aceptamos el localhost
iptables -A INPUT -i lo -j ACCEPT

#Aceptamos la red local
iptables -A INPUT -s 192.168.88.0/24 -j ACCEPT

iptables  -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128

echo 1 > /proc/sys/net/ipv4/ip_forward

################################################################

Le damos permisos

chmod 777 /etc/squid3/fw.sh

Ejecutamos el script

/etc/squid3/./fw.sh

Luego editamos el archivo "/etc/rc.local" (esto para que al iniciar el servidor arranque el script iptables),
ingresamos la siguiente línea

/etc/squid3/fw.sh

Esta linea tiene que estar arriva de "exit 0"
No todo es copy and paste o cambiar de nombre, hay que entender lo que se está haciendo. Para evitar que estes mencionando Raptor en tus problemas, sería que hagas una instalación limpia del sistema y posteriormente el Squid

apt-get install squid3
squid3 -z
service squid3 restart

Configuras el squid.conf de acuerdo a tus necesidades y tendrás corriendo Squid, también tienes que tener en cuenta que el caché a páginas estáticas es muy poco.

Saludos.

willysantana

Cita de: luistec en Marzo 25, 2015, 08:22:33 AM
No todo es copy and paste o cambiar de nombre, hay que entender lo que se está haciendo. Para evitar que estes mencionando Raptor en tus problemas, sería que hagas una instalación limpia del sistema y posteriormente el Squid

apt-get install squid3
squid3 -z
service squid3 restart

Configuras el squid.conf de acuerdo a tus necesidades y tendrás corriendo Squid, también tienes que tener en cuenta que el caché a páginas estáticas es muy poco.

Saludos.

Gracias amigo pero me falta la redirecion por mangle marcando el tos12 de squid
Todo lo trabajare con instalación limpia.
Recuerda que en una instalación limpia no encontrare nada de el raptor para poder aser lo siguientes que va en la carpeta raptor.



#######################==========Redirección RaptorCache por Mangle==========#############

Para esta configuración es necesario poner una regla iptables en el servidor, por ej. sería de la siguiente forma:
Se crea un archivo fw.sh y lo guardamos en "/etc/raptor/", y dentro va el siguiente contenido

###########################################################
#!/bin/bash
echo ";;;;;;;;;;;;;;;;;;;;;;;"
echo ";     RaptorCache     ;"
echo ";;;;;;;;;;;;;;;;;;;;;;;"

#Borrar cadenas anteriores
iptables -F
iptables -X
iptables -Z
iptables -t nat -F

#Condiciones por defecto
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT

iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT

#Aceptamos el localhost
iptables -A INPUT -i lo -j ACCEPT

#Aceptamos la red local
iptables -A INPUT -s 192.168.88.0/24 -j ACCEPT

iptables  -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128

echo 1 > /proc/sys/net/ipv4/ip_forward

#########################################################

Le damos permisos

chmod 777 /etc/raptor/fw.sh

Ejecutamos el script

/etc/raptor/./fw.sh

Luego editamos el archivo "/etc/rc.local" (esto para que al iniciar el servidor arranque el script iptables),
ingresamos la siguiente línea

/etc/raptor/fw.sh

Esta linea tiene que estar arriva de "exit 0"

luistec

Cita de: willysantana en Marzo 25, 2015, 08:25:55 AM
gracias amigo pero me falta la redirecion por mangle marcando el tos12 de squid
todo lo trabajare con instalacion limpia.
Las reglas de redirección son las mismas, te sugiero que primero pruebes con la redirección por NAT o cuál es la necesidad de hacerlo por Mangle. Para el funcionamiento del TOS12 se encarga las siguientes directivas en el squid.conf

qos_flows local-hit=0x30
qos_flows parent-hit=0x32
qos_flows disable-preserve-miss


La regla que se encarga de hacer el marcado DSCP(TOS) 12 en Mikrotik es la siguiente
Código (mk) [Seleccionar]

/ip firewall mangle
add action=mark-connection chain=forward comment="==SQUID - TOS 12==" disabled=no dscp=12 new-connection-mark=squid-connection passthrough=yes
add action=mark-packet chain=forward connection-mark=squid-connection disabled=no new-packet-mark=squid-packs passthrough=yes


Saludos.

willysantana

Cita de: luistec en Marzo 25, 2015, 08:39:33 AM
Las reglas de redirección son las mismas, te sugiero que primero pruebes con la redirección por NAT o cuál es la necesidad de hacerlo por Mangle. Para el funcionamiento del TOS12 se encarga las siguientes directivas en el squid.conf

qos_flows local-hit=0x30
qos_flows parent-hit=0x32
qos_flows disable-preserve-miss


La regla que se encarga de hacer el marcado DSCP(TOS) 12 en Mikrotik es la siguiente
Código (mk) [Seleccionar]

/ip firewall mangle
add action=mark-connection chain=forward comment="==SQUID - TOS 12==" disabled=no dscp=12 new-connection-mark=squid-connection passthrough=yes
add action=mark-packet chain=forward connection-mark=squid-connection disabled=no new-packet-mark=squid-packs passthrough=yes


Saludos.

Configuración en mk v6.26
No tengo la configuración por nat

/ip route
add check-gateway=ping disabled=no distance=1 dst-address=0.0.0.0/0 gateway=192.168.77.100 routing-mark=raptor_route scope=30 target-scope=10

/ip firewall mangle
add action=mark-routing chain=prerouting comment="Squid - Mangle ====================>" disabled=no dst-port=80 in-interface=ether5 new-routing-mark=raptor_route passthrough=no protocol=tcp
add action=mark-connection chain=forward comment="==SQUID - TOS 12==" disabled=no dscp=12 new-connection-mark=squid-connection passthrough=yes
add action=mark-packet chain=forward connection-mark=squid-connection disabled=no new-packet-mark=squid-packs passthrough=yes

/queue simple
add max-limit=2M/20M name=SQUID packet-marks=squid-packs target="0.0.0.0/0"

luistec

Cita de: willysantana en Marzo 25, 2015, 08:50:36 AM
Configuración en mk v6.26
No tengo la configuración por nat

/ip route
add check-gateway=ping disabled=no distance=1 dst-address=0.0.0.0/0 gateway=192.168.77.100 routing-mark=raptor_route scope=30 target-scope=10

/ip firewall mangle
add action=mark-routing chain=prerouting comment="Squid - Mangle ====================>" disabled=no dst-port=80 in-interface=ether5 new-routing-mark=raptor_route passthrough=no protocol=tcp
add action=mark-connection chain=forward comment="==SQUID - TOS 12==" disabled=no dscp=12 new-connection-mark=squid-connection passthrough=yes
add action=mark-packet chain=forward connection-mark=squid-connection disabled=no new-packet-mark=squid-packs passthrough=yes

/queue simple
add max-limit=2M/20M name=SQUID packet-marks=squid-packs target="0.0.0.0/0"
Has la configuración por NAT primero, es más sencillo, por lo que veo no tienes necesidad de usar la redirección por Mangle.
Código (mk) [Seleccionar]

/ip firewall nat
add action=dst-nat chain=dstnat comment="" disabled=no dst-port=80 protocol=tcp src-address=!192.168.10.2 to-addresses=192.168.10.2 to-ports=3128


Revisa documentación sobre IPtables y cuando tengas funcionando tu reglas de IPtables, ahí recien puedes intentar hacer la redirección por Mangle.

Saludos.

willysantana

Cita de: luistec en Marzo 25, 2015, 09:01:49 AM
Has la configuración por NAT primero, es más sencillo, por lo que veo no tienes necesidad de usar la redirección por Mangle.
Código (mk) [Seleccionar]

/ip firewall nat
add action=dst-nat chain=dstnat comment="" disabled=no dst-port=80 protocol=tcp src-address=!192.168.10.2 to-addresses=192.168.10.2 to-ports=3128


Revisa documentación sobre IPtables y cuando tengas funcionando tu reglas de IPtables, ahí recien puedes intentar hacer la redirección por Mangle.

Saludos.
probando.

gracias.

firecold

Cita de: luistec en Marzo 25, 2015, 09:01:49 AM
Has la configuración por NAT primero, es más sencillo, por lo que veo no tienes necesidad de usar la redirección por Mangle.
Código (mk) [Seleccionar]

/ip firewall nat
add action=dst-nat chain=dstnat comment="" disabled=no dst-port=80 protocol=tcp src-address=!192.168.10.2 to-addresses=192.168.10.2 to-ports=3128


Revisa documentación sobre IPtables y cuando tengas funcionando tu reglas de IPtables, ahí recien puedes intentar hacer la redirección por Mangle.

Saludos.

Gracias mi amigo, es bueno siempre contar con tu ayuda, Saludos