Buenos días adjunto mi compilación personalizada de squid3
en caso que alguien tenga una mejor configuracion o compilacion por favor postearla
Una vez instalado el script de joemg seguir los siguientes pasos:´
#apt-get remove squid3
#apt-get purge squid3
#aptitude install build-essential libcap2-dev libltdl-dev ebtables bridge-utils
#cd /usr/src
#apt-get build-dep squid3
#wget -c http://www.squid-cache.org/Versions/v3/3.1/squid-3.1.21.tar.bz2
#tar xvfj squid-3.1.21.tar.bz2
#cd squid-3.1.21
#ulimit -HSn 819200
#ulimit -HSd unlimited
./configure --build=x86_64-linux-gnu --prefix=/usr --includedir=/usr/include --infodir=/usr/share/info --localstatedir=/var --libexecdir=/usr/lib/squid3 --disable-maintainer-mode --disable-dependency-tracking --disable-silent-rules --srcdir=. --datadir=/usr/share/squid3 --sysconfdir=/etc/squid3 --mandir=/usr/share/man --with-cppunit-basedir=/usr --enable-inline --enable-async-io=128 --enable-storeio=ufs,aufs,diskd --enable-removal-policies=lru,heap --enable-useragent-log --enable-referer-log --enable-delay-pools --enable-cache-digests --enable-zph-qos --enable-underscores --enable-icap-client --enable-follow-x-forwarded-for --enable-auth=basic,digest,ntlm,negotiate --enable-basic-auth-helpers=LDAP,MSNT,NCSA,PAM,SASL,SMB,YP,getpwnam,multi-domain-NTLM --enable-digest-auth-helpers=ldap,password --enable-negotiate-auth-helpers=squid_kerb_auth --enable-external-acl-helpers=ip_user,ldap_group,session,unix_group,wbinfo_group --enable-arp-acl --enable-snmp --enable-http-violations --with-filedescriptors=819200 --with-large-files --enable-large-cache-files --with-default-user=proxy --enable-epoll --enable-linux-netfilter
# make
# make install
# mkdir -p /var/spool/squid3
# chown proxy:proxy /var/spool/squid3
# mkdir -p /var/log/squid3
# chown proxy:proxy /var/log/squid3
Copiar el archivo squid adjunto en la carpeta /etc/init.d/
correr el comando
#update-rc.d squid defaults
reemplazar squid.conf en la carpeta /etc/squid3/
reemplazar limits.conf en la carpeta /etc/security/
reemplazar sysctl.conf en la carpeta /etc/
correo
#squid -z
crear un archivo en /root
#nano /root/iptables-TPROXY
# Generated by nDasJoWo
*nat
REROUTING ACCEPT [541:35450]
OSTROUTING ACCEPT [796:56114]
:OUTPUT ACCEPT [795:56050]
COMMIT
# Completed
# Generated by nDasJoWo
*mangle
REROUTING ACCEPT [51:11203]
:INPUT ACCEPT [5711:2016323]
:FORWARD ACCEPT [3:1580]
:OUTPUT ACCEPT [8347:3818817]
OSTROUTING ACCEPT [8350:3820397]IVERT - [0:0]
-A PREROUTING -p tcp -m socket -j DIVERT
-A PREROUTING -p tcp -m tcp --dport 80 -j TPROXY --on-port 3129 --on-ip 0.0.0.0 --tproxy-mark 0x1/0xffffffff
-A DIVERT -j MARK --set-xmark 0x1/0xffffffff
-A DIVERT -j ACCEPT
COMMIT
# Completed
editar rc.local
#nano /etc/rc.local
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
ip rule add fwmark 1 lookup 100
ip route add local 0.0.0.0/0 dev lo table 100
iptables-restore < /root/iptables-TPROXY
exit 0
Reiniciar
#shutdown -r now
verificar si squid esta corriendo sin errores
#squid -d1
una vez realizado esto ingresar a mikrotik y configurar en mangle lo sigueinte
/ip route add dst-address=0.0.0.0/0 gateway=(ip-proxy) routing-mark="VIA_TPROXY"
/ip firewall mangle add chain=prerouting protocol=tcp dst-port=80 in-interface=(ether-clientes) action=mark-routing new-routing-mark=VIA_TPROXY
/ip firewall mangle add chain=prerouting in-interface=(ether-proxy) action=mark-connection new-connection-mark=VIA_TPROXY
/ip firewall add chain=prerouting in-interface=(ether-internet) connection-mark=VIA_TPROXY action=mark-routing new-routing-mark=VIA_TPROXY
esto es para tener tu thundercache 3.1.2 con soporte de tproxy
saludos y espero les sirva, espero comentarios y si hay alguien que sabe hacerlo de otra forma por favor comunicarme
saludos
leandro
PD: Joemg como puedes ver la linea
cache_peer 192.168.10.2 parent 8080 3130 proxy-only no-digest no-tproxy
esta para que no haga tproxy sobre el parent que es thunder
ese es mi inconveniente hace tproxy de todo menos cuando ingresa a thunder al ponerlo sin no-tproxy
el sistema deja de funcionar por ahi debo de hacer algun cambio en la configuracion del parent o en el thunder.conf pero en realidad no se cual sea
saludos
leandro
Leandro cuales son los pre requisitos para hacer este procedimiento? ej. puede hacerlo una persona con thundercache 3.1.2 debian 32 bits squid 2.7?
Gracias por tu aporte hermano siempre dandole a los labs...
Cita de: dgonzaleznet en Noviembre 14, 2012, 04:55:34 PM
Leandro cuales son los pre requisitos para hacer este procedimiento? ej. puede hacerlo una persona con thundercache 3.1.2 debian 32 bits squid 2.7?
Gracias por tu aporte hermano siempre dandole a los labs...
como estas
la instalacion es en thunder 3.1.2 con squid 3
como especifico en el escrito rimero deben instalar el script de joemg con el squid 3
saludos
leandro
Buenos Días
con esta opción en squid 3 pueden equilibrar el almacenamiento de archivos dependiendo el numero
de carpetas que tengan
store_dir_select_algorithm round-robin
saludos
leandro
el squid me esta dando un error como este a alguien le a dado..
Estado de Squidv. 3.1.6 Offline
Y REINICIANDO EL SQUID SE LE QUITA Y VUELVE CON LOS MISMO.
Leandro me pasa lo mismo que WALYN mi squid sale offline y cuando hago el squid -d1 el squid vuelve a estar online, bueno llevo probandolo 10 minutos aun no se si seguirá así pero cuando reinicie el server de nuevo salio offline, tuve que volver a ejecutar el squid -d1
Cita de: dgonzaleznet en Noviembre 19, 2012, 01:16:11 AM
Leandro me pasa lo mismo que WALYN mi squid sale offline y cuando hago el squid -d1 el squid vuelve a estar online, bueno llevo probandolo 10 minutos aun no se si seguirá así pero cuando reinicie el server de nuevo salio offline, tuve que volver a ejecutar el squid -d1
Buenos dias
les recuerdo que si usan tproxy el puerto es 3129 no 3128
deben de cambiar en el php que envez de 3128 diga 3129
saludos
leandro
cambie mi pregunta anterior dime tengo unas dudas :
memory_replacement_policy heap LFUDA
no debiria ser
memory_replacement_policy heap GDSF
Y TIMEOUTS
shutdown_lifetime 20 seconds
# Shutdown pending time
shutdown_lifetime 20 seconds
hay duplicidad esta bien o es asi
Please help me to define the topologi for use this tproxy.
Thanks
Cita de: leandro1979 en Noviembre 14, 2012, 10:03:27 AM
Buenos días adjunto mi compilación personalizada de squid3
en caso que alguien tenga una mejor configuracion o compilacion por favor postearla
Una vez instalado el script de joemg seguir los siguientes pasos:´
#apt-get remove squid3
#apt-get purge squid3
#aptitude install build-essential libcap2-dev libltdl-dev ebtables bridge-utils
#cd /usr/src
#apt-get build-dep squid3
#wget -c http://www.squid-cache.org/Versions/v3/3.1/squid-3.1.21.tar.bz2
#tar xvfj squid-3.1.21.tar.bz2
#cd squid-3.1.21
#ulimit -HSn 819200
#ulimit -HSd unlimited
./configure --build=x86_64-linux-gnu --prefix=/usr --includedir=/usr/include --infodir=/usr/share/info --localstatedir=/var --libexecdir=/usr/lib/squid3 --disable-maintainer-mode --disable-dependency-tracking --disable-silent-rules --srcdir=. --datadir=/usr/share/squid3 --sysconfdir=/etc/squid3 --mandir=/usr/share/man --with-cppunit-basedir=/usr --enable-inline --enable-async-io=128 --enable-storeio=ufs,aufs,diskd --enable-removal-policies=lru,heap --enable-useragent-log --enable-referer-log --enable-delay-pools --enable-cache-digests --enable-zph-qos --enable-underscores --enable-icap-client --enable-follow-x-forwarded-for --enable-auth=basic,digest,ntlm,negotiate --enable-basic-auth-helpers=LDAP,MSNT,NCSA,PAM,SASL,SMB,YP,getpwnam,multi-domain-NTLM --enable-digest-auth-helpers=ldap,password --enable-negotiate-auth-helpers=squid_kerb_auth --enable-external-acl-helpers=ip_user,ldap_group,session,unix_group,wbinfo_group --enable-arp-acl --enable-snmp --enable-http-violations --with-filedescriptors=819200 --with-large-files --enable-large-cache-files --with-default-user=proxy --enable-epoll --enable-linux-netfilter
# make
# make install
# mkdir -p /var/spool/squid3
# chown proxy:proxy /var/spool/squid3
# mkdir -p /var/log/squid3
# chown proxy:proxy /var/log/squid3
Copiar el archivo squid adjunto en la carpeta /etc/init.d/
correr el comando
#update-rc.d squid defaults
reemplazar squid.conf en la carpeta /etc/squid3/
reemplazar limits.conf en la carpeta /etc/security/
reemplazar sysctl.conf en la carpeta /etc/
correo
#squid -z
crear un archivo en /root
#nano /root/iptables-TPROXY
# Generated by nDasJoWo
*nat
REROUTING ACCEPT [541:35450]
OSTROUTING ACCEPT [796:56114]
:OUTPUT ACCEPT [795:56050]
COMMIT
# Completed
# Generated by nDasJoWo
*mangle
REROUTING ACCEPT [51:11203]
:INPUT ACCEPT [5711:2016323]
:FORWARD ACCEPT [3:1580]
:OUTPUT ACCEPT [8347:3818817]
OSTROUTING ACCEPT [8350:3820397]IVERT - [0:0]
-A PREROUTING -p tcp -m socket -j DIVERT
-A PREROUTING -p tcp -m tcp --dport 80 -j TPROXY --on-port 3129 --on-ip 0.0.0.0 --tproxy-mark 0x1/0xffffffff
-A DIVERT -j MARK --set-xmark 0x1/0xffffffff
-A DIVERT -j ACCEPT
COMMIT
# Completed
editar rc.local
#nano /etc/rc.local
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
ip rule add fwmark 1 lookup 100
ip route add local 0.0.0.0/0 dev lo table 100
iptables-restore < /root/iptables-TPROXY
exit 0
Reiniciar
#shutdown -r now
verificar si squid esta corriendo sin errores
#squid -d1
una vez realizado esto ingresar a mikrotik y configurar en mangle lo sigueinte
/ip route add dst-address=0.0.0.0/0 gateway=(ip-proxy) routing-mark="VIA_TPROXY"
/ip firewall mangle add chain=prerouting protocol=tcp dst-port=80 in-interface=(ether-clientes) action=mark-routing new-routing-mark=VIA_TPROXY
/ip firewall mangle add chain=prerouting in-interface=(ether-proxy) action=mark-connection new-connection-mark=VIA_TPROXY
/ip firewall add chain=prerouting in-interface=(ether-internet) connection-mark=VIA_TPROXY action=mark-routing new-routing-mark=VIA_TPROXY
esto es para tener tu thundercache 3.1.2 con soporte de tproxy
saludos y espero les sirva, espero comentarios y si hay alguien que sabe hacerlo de otra forma por favor comunicarme
saludos
leandro
PD: Joemg como puedes ver la linea
cache_peer 192.168.10.2 parent 8080 3130 proxy-only no-digest no-tproxy
esta para que no haga tproxy sobre el parent que es thunder
ese es mi inconveniente hace tproxy de todo menos cuando ingresa a thunder al ponerlo sin no-tproxy
el sistema deja de funcionar por ahi debo de hacer algun cambio en la configuracion del parent o en el thunder.conf pero en realidad no se cual sea
saludos
leandro
A pesar que me dio problemas al compilar, ya que cuando pones make es make all, y un problema que dice -fluge-objets es obsoleto, pues funciona mejor squid que como yo lo tenia, lo unico que le puse la configuracion que tengo, la verdad se siente una mejora bastante observable al momento de navegar y respuesta de las peticiones, lo que si no me funciono fueron las reglas de iptables, las que yo habia visto anteriormente habian sido estas, pero antes te mostrare los que responde ingresar tus reglas:
/home/thunder/erick.sh: 2: /home/thunder/erick.sh: *nat: not found
/home/thunder/erick.sh: 3: /home/thunder/erick.sh: REROUTING: not found
/home/thunder/erick.sh: 4: /home/thunder/erick.sh: OSTROUTING: not found
/home/thunder/erick.sh: 5: /home/thunder/erick.sh: :OUTPUT: not found
/home/thunder/erick.sh: 6: /home/thunder/erick.sh: COMMIT: not found
/home/thunder/erick.sh: 9: /home/thunder/erick.sh: *mangle: not found
/home/thunder/erick.sh: 10: /home/thunder/erick.sh: REROUTING: not found
/home/thunder/erick.sh: 11: /home/thunder/erick.sh: :INPUT: not found
/home/thunder/erick.sh: 12: /home/thunder/erick.sh: :FORWARD: not found
/home/thunder/erick.sh: 13: /home/thunder/erick.sh: :OUTPUT: not found
/home/thunder/erick.sh: 14: /home/thunder/erick.sh: OSTROUTING: not found
/home/thunder/erick.sh: 15: /home/thunder/erick.sh: -A: not found
/home/thunder/erick.sh: 16: /home/thunder/erick.sh: -A: not found
/home/thunder/erick.sh: 17: /home/thunder/erick.sh: -A: not found
/home/thunder/erick.sh: 18: /home/thunder/erick.sh: -A: not found
/home/thunder/erick.sh: 19: /home/thunder/erick.sh: COMMIT: not found
y las que habia visto son estas,
iptables -t mangle -N DIVERT
iptables -t mangle -A PREROUTING -p tcp -m socket -j DIVERT
iptables -t mangle -A DIVERT -j MARK --set-mark 1
iptables -t mangle -A DIVERT -j ACCEPT
iptables -t mangle -A PREROUTING -p tcp --dport 80 -j TPROXY --tproxy-mark 0x1/0x1 --on-port 3129
ip rule add fwmark 1 lookup 100
ip route add local 0.0.0.0/0 dev lo table 100
gracias Leandro, mira que hasta ahora tuve tiempo de probar tu configuracion, Saludos
amigo Leandro cuando reinicias el servicio de squid me doy cuenta que te hace una cuenta de 60 segundos supongamos que se puede bajar a la mitas o realmente es necesario ese tiempo, Saludos
como estas
que raro que te de problemas el iptables a mi me funciona perfecto habria que revisar
recuerda que es un iptables restore no es un script
se puede bajar en realidad ese script de reinicio lo descargue de una pagina
saludos
leandro
Cita de: leandro1979 en Enero 15, 2013, 01:25:57 PM
como estas
que raro que te de problemas el iptables a mi me funciona perfecto habria que revisar
recuerda que es un iptables restore no es un script
se puede bajar en realidad ese script de reinicio lo descargue de una pagina
saludos
leandro
Gracias por responder leandro, estoy bien gracias a Dios, si fijate me da problemas, yo he visato una configuracion de iptables, te la voy a mostrar,
#!/bin/bash
iptables -F -t mangle
iptables -X -t mangle
iptables -t mangle -N DIVERT
iptables -t mangle -A PREROUTING -p tcp -m socket -j DIVERT
iptables -t mangle -A DIVERT -j MARK --set-mark 1
iptables -t mangle -A DIVERT -j ACCEPT
iptables -t mangle -A PREROUTING -p tcp --dport 80 -j TPROXY --tproxy-mark 0x1/0x1 --on-port 3129
y el segundo
#!/bin/bash
ebtables -t broute -A BROUTING -i eth1 -p ipv4 --ip-proto tcp --ip-dport 80 -j redirect --redirect-target ACCEPT
ebtables -t broute -A BROUTING -i eth0 -p ipv4 --ip-proto tcp --ip-sport 80 -j redirect --redirect-target ACCEPT
cd /proc/sys/net/bridge/
for i in *
do
echo 0 > $i
done
unset i
y en el /etc/rc.local
/sbin/modprobe xt_TPROXY
/usr/sbin/squid
ip rule add fwmark 1 lookup 100
ip route add local 0.0.0.0/0 dev lo table 100
/root/frw1.sh
/root/frw2.sh
/sbin/route add -net 186.194.1.0/24 gw 186.194.1.1
exit 0
solo que esto viene de una guia algo vieja claro, usando ubuntu 10.04, pero igual seguire investigando para seguir avanzando en esta materia, y no habia tenido tenido tiempo para dedicarle a esto del tproxy, Saludos
como estas
esas configuraciones son para tproxy en modo bridge
en este caso estamos haciendo para modo paralelo
estas agregando las lineas que yo puse en un script.sh porque tiene q ser en un archivo comun y este deve serv iptables save
saludos
leandro
Para configurarlo en modo bridge solo hay que cambiar las iptables? gracias.
men y si solo q coje para proxy si se puede con eso y claro se comenta lo del tc o raptor y si se usa serviran esas reglas para usarla solo para el proxy
Joe??????????????? tengo tiempo que no veo a joe conectado o posteando algun comentario
Cita de: freedarwuin en Octubre 21, 2013, 07:01:50 AM
Joe??????????????? tengo tiempo que no veo a joe conectado o posteando algun comentario
Tienes razon y creo que esto esta descepcionando a muchos y algunos creen que el proyecto esta abandonado, pero yo creo que joemg6 esta preparando algo bueno y cuando menos lo pensemos lo estara posteando, saludos
Recuerden que esto es software libre, por tanto muchas veces el tiempo que se le dedica a este tipo de proyectos es parte de nuestro tiempo libre y su desarrollo no representa una obligación, y a pesar de que no soy joemg, me tomo el atrevimiento de decir esto ya que he tenido casos (no en este foro claro esta) en que me han dicho (e incluso reprochado) porque lime root y otros de mis proyectos no han tenido novedades, pero la verdad es que hay novedades sin publicar, pero no están terminadas o simplemente se prefiere enviar un update con varias cosas pero por falta de tiempo es casi que imposible, en mi caso en particular casi cada 2 meses y cada 3 meses me enredo con el papeleo legal de la empresa, y entre mas se acerca el fin de un semestre también la U hace pupa, imagino que joemg esta pasando por uno de esos momentos en que todo se enreda y te deja sin tiempo.
Un abrazo y esperemos que joemg este bien.