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