viernes, 8 de febrero de 2013

ThunderCache 3.1.2 en CentOS 6.3



ThunderCache es un proxy cache para contenidos dinámicos de Internet que trabaja de parent para squid. Los desarrolladores del software sugieren instalarlo en distribuciones debian o ubuntu, por lo que esta guía les será de utilidad a aquellos que trabajen con CentOS o derivados de Red Hat.

Para el efecto asumiremos que ya esta en producción el servidor centos con squid 3.1
actualizamos el sistema
yum update

instalamos las librerías de desarrollo necesarias:
yum install -y libcurl4-gnutls-devel libmysqlclient-devel libmysqlclient15-devel libmysqlclient16-devel
Instalaremos la versión 3.1 del thunder para luego actualizar a 3.1.2 con el script que creó JOEMG, siendo esta una versión modificada del proxy con nuevos plugins y las herramientas para diseñar los propios también.
Como ya dije, el script esta programado para distribuciones debian alike asi que extraemos lo relevante para el CentOS.
Creamos un directorio de trabajo:
mkdir /var/tmp/thunder312
cd /var/tmp/thunder312

descargamos esta serie de archivos:
wget http://joemg.host56.com/tc31/thunder31.tar.gz
wget http://www.joemg.host56.com/tc312/x32/thunder.tar.gz
wget http://www.joemg.host56.com/tc31/libmysqlclient.so.15
wget http://www.joemg.host56.com/tc31/libmysqlclient.so.15.0.0
wget http://www.joemg.host56.com/clean/32bits/clean.zip
wget http://www.joemg.host56.com/tc31/killcpumax.sh
wget http://www.joemg.host56.com/tc31/thunderotate.sh
wget http://www.joemg.host56.com/tc31/pluginmaker.zip
wget http://joemg.host56.com/plugins32/plugins.zip
wget http://joemg.host56.com/tc31/thunder.sql
wget http://joemg.host56.com/tr/thunder.zip
wget http://joemg.host56.com/tr/thunderp.sql
wget http://joemg.host56.com/tc31/upload.cgi
instalamos la versión 3.1 de thunder:
tar -xzvf /tmp/thunder31.tar.gz -C /
Creamos los directorios de trabajo y asignamos permisos:
mkdir /var/log/thunder
mkdir /var/tmp/thunder
mkdir /var/run/thunder
mkdir /thunder
chmod a+rwx /var/log/thunder
chmod a+rwx /var/tmp/thunder
chmod a+rwx /var/run/thunder
chmod a+x /etc/init.d/thunder
touch /etc/thunder/whitelist
touch /etc/thunder/blacklist
chown -R apache /thunder/
chmod -R 777 /thunder/
umask 000 /thunder/
echo “extension=pdo.so” >> /etc/php.ini
echo “vm.swappiness=10″ >> /etc/sysctl.conf

creamos la base de datos para thunder y el modulo administrativo:
mysql -p
mysql> create database thunder;
mysql> grant all privileges on thunder.* to thunder@localhost identified by ‘thunder2012′;
mysql> create database clientes;
mysql> grant all privileges on clientes.* to thunder@localhost identified by ‘thunder2012′;
mysql> flush privileges;

Llenamos esas bases de datos:
mysql -u root -p thunder < thunder.sql
mysql -u root -p clientes < thunderp.sql

Actualizamos a la version thunder 3.1.2:
rm -rf /usr/local/sbin/thunder
tar -xzvf thunder.tar.gz
mv thunder /usr/local/sbin/

Editamos /etc/squid/squid.conf y le agregamos:
#———————————————————————-
#Redireccionamiento Thunder – REGEx
#———————————————————————-
acl thunder_lst url_regex -i \”/etc/thunder/thunder.lst\”
cache deny thunder_lst
cache_peer 127.0.0.1 parent 8080 0 proxy-only no-digest
dead_peer_timeout 2 seconds
cache_peer_access 127.0.0.1 allow thunder_lst
cache_peer_access 127.0.0.1 deny all
#———————————————————————-
Editamos /etc/thunder/thunder.conf y cambiamos las lineas para que se muestren asi:
# Configuracion de MySQL
MYSQL_HOST localhost
MYSQL_USER thunder
MYSQL_PASS thunder2012
MYSQL_DB thunder
Instalamos las herramientas de thunder:
unzip clean.zip
cp clean /etc/thunder/
chmod 555 /etc/thunder/clean
cp killcpumax.sh /etc/thunder/killcpumax.sh
cp thunderotate.sh /etc/thunder/thunderotate.sh
unzip pluginmaker.zip
mv pluginmaker /etc/thunder/

cambiamos el contenido de /etc/thunder/thunder.lst por este:
74\.125\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)
http.*\.2shared.com\.com.*(\.exe|\.iso|\.torrent|\.zip|\.rar|\.pdf|\.doc|\.tar|\.mp3|\.mp4|\.avi|\.wmv)
http.*\.4shared\.com.*(\.exe|\.iso|\.torrent|\.zip|\.rar|\.pdf|\.doc|\.tar|\.mp3|\.mp4|\.avi|\.wmv)
http.*\.photobucket\.com
########################################==========A==========###############
http.*\.avast\.com.*(\.def|\.vpu|\.vpaa|\.stamp|\.vpx)
http.*adobe\.com/.*(\.cab|\.aup|\.exe|\.msi|\.upd|\.msp)
http.*\.avira-update\.com.*(\.idx|\.gz|\.exe)
http.*\.avg\.com.*(\.exe|\.bin)
http.*\.axeso5\.com.*(\.zip|\.cdt|\.cmp|\.exe)
########################################==========B==========###############
http.*\.blogspot\.com.*(\.mp4|\.flv|\.swf|\.jpg)
########################################==========C==========###############
http.*\.cnet\.com.*(\.exe|\.rar|\.zip|\.iso)
http.*\.baycdn\.com.*(\.exe|\.iso|\.flv|\.zip|\.rar|\.pdf|\.doc|\.tar|\.mp3|\.mp4|\.avi|\.wmv|.7z)
http.*\.cramit\.in.*\.mp4
########################################==========D==========###############
http.*\.depositfiles\.com.*(\.exe|\.iso|\.torrent|\.zip|\.rar|\.pdf|\.doc|\.tar|\.mp3|\.mp4|\.avi|\.wmv|.7z)
http.*\.dailymotion\.com.*(\.flv|\.on2|\.h264|\.mp4)
########################################==========E==========###############
http.*\.eset\.com.*(\.nup|\.ver|\.exe|\.msi)
http.*\.eluniverso\.com.*\.jpg
http.*\.ewinet\.com.*\.jpg
########################################==========F==========###############
http.*\.fulltono\.com.*(\.mp3|\.ftm|\.sdk)
http.*\.fbcdn\.net.*(\.mp4|\.jpg)
http.*\.filefactory.com.*(\.exe|\.iso|\.torrent|\.zip|\.rar|\.pdf|\.doc|\.tar|\.mp3|\.mp4|\.avi|\.wmv)
http.*\.filehippo\.com.*(\.zip|\.rar|\.exe|\.iso)
http.*flashvideo\.globo\.com.*(\.mp4|\.flv)
http.*\.fileserve\.com.*(\.exe|\.iso|\.torrent|\.zip|\.rar|\.pdf|\.doc|\.tar|\.mp3|\.mp4|\.avi|\.wmv)
http.*\.filebox\.com.*\.mp4
########################################==========G==========###############
http.*\.google\.com.*(\.kmz|\.exe|\.msi|\.kmz|\.msp|\.cab)
http.*\.goear\.com.*\.mp3
########################################==========H==========###############
http.*\.hotfile.com*
http.*\.hardsextube\.com.*(\.flv|\.wmv)
http.*\.hsyns\.net.*\.jpg
http.*\.hwcdn\.net*
########################################==========K==========###############
http.*\.juegosjuegos\.com.*(\.swf|\.jpg|\.png)
########################################==========L==========#######################################################==========M==========###############
http.*\.mlstatic\.com.*\.jpg
http.*\.mbamupdates\.com.*\.ref
http.*\.mccont\.com.*(\.flv|\.mp4)
http.*\.macromedia\.com.*\.z
http.*\.mcafee\.com.*(\.exe|\.xdb|\.msi|\.zip|)
#http.*\.mediafire\.com.*(\.exe|\.iso|\.torrent|\.zip|\.rar|\.pdf|\.doc|\.tar|\.mp3|\.mp4|\.avi|\.wmv)
http.*(\.myspacecdn\.com|\.footprint\.com).*(\.flv|\.mp4)
http.*(\.movistar\.com\.pe|\.telconet\.net).*\.jpg
########################################==========N==========###############
http.*\.nai.com.*(\.zip|\.tar|\.exe|\.gem)
http.*\.netlogstatic\.com.*(\.flv|\.mp4)
http.*\.noticias24\.com
http.*\.nflxvideo\.net*
########################################==========O==========###############
########################################==========P==========###############
http.*\.pandonetworks\.com.*(\.nzp|\.lst)
http.*\.phncdn\.com.*(\.flv|\.mp4)
http.*\.pornhub\.com.*\.flv
http.*\.pornotube\.com.*(\.flv|\.mp4)
http.*\.porntube\.com.*(\.m4v|\.flv|\.mp4)
http.*\.pop6\.com.*(\.flv)
########################################==========R==========###############
http.*\.redtubefiles\.com.*(\.flv|\.mp4)
#http.*\.rapidshare\.com.*(\.exe|\.iso|\.torrent|\.zip|\.rar|\.pdf|\ .doc|\.tar|\.mp3|\.mp4|\.avi|\.wmv)
########################################==========S==========###############
http.*\.sendspace\.com.*(\.exe|\.iso|\.torrent|\.zip|\.rar|\.pdf|\.doc|\.tar|\.mp3|\.mp4|\.avi|\.wmv)
http.*\.symantecliveupdate\.com.*(\.zip|\.exe|\.m26)
http.*\.sourceforge\.net.*(\.zip|\.rar|\.exe|\.iso)
http.*\.softonic\.com.*(\.zip|\.rar|\.exe|\.iso)
http.*\.stream\.aol\.com.*(\.mp4|\.flv)
http.*\.softnyx\.com.*(\.xfs|\.rar|\.exe|\.iso)
http.*\.staticflickr\.com.*\.jpg
########################################==========T==========###############
http.*\.terra\.com.*\.mp4
http.*\.tube8\.com.*(\.flv|\.mp4)
http.*\.tagstat\.com.*\.jpg
http.*\.tudiscoverykids\.com.*(\.flv|\.mp4|\.mp3|\.jpg|\.png|\.mp4|\.f3d|\.swf)
http.*\.tricom\.net.*\.jpg
########################################==========U==========###############
http.*\.uptodown\.net.*(\.zip|\.rar|\.exe|\.iso)
http.*\.uptodown\.com.*(\.zip|\.rar|\.exe|\.iso)
http.*\.ubuntu\.com.*(\.deb|\.tar|\.gz)
########################################==========V==========###############
http.*\.viddler\.com.*\.flv
http.*(\.video\.msn\.com|\.video\.latan\.msn\.com).*(\.flv|\.mp4)
http.*\.vimeo.com.*(\.flv|\.on2|\.h264|\.mp4)
http.*\.videocaserox\.com.*\.flv
########################################==========W==========###############
#http.*(\.windowsupdate\.com|\.microsoft\.com).*(\.cab|\.exe|\.iso|\.zip|\.psf|\.msu)
http.*\.microsoft\.com.*(\.cab|\.exe|\.iso|\.zip|\.psf|\.msu|\.msi|\.msp|\.dsft)
http.*\.windowsupdate\.com.*(\.cab|\.exe|\.iso|\.zip|\.psf|\.msu|\.msi|\.msp|\.dsft)
http.*\.wikimedia\.org.*(\.jpg|\.png)
########################################==========X==========###############
http.*\.xtube\.com.*\.flv
http.*\.xvideos\.com.*\.flv
########################################==========Y==========###############
http.*\.youtube\.com.*videoplayback
http.*\.youporn\.com.*(\.flv|\.mp4)
http.*\.youjizz\.com.*(\.flv|\.mp4)
http.*\.ytimg\.com.*\.jpg
http.*\.yimg\.com.*(\.jpg|\.swf)
########################################==========Z==========###############
http.*.\ziddu\.com.*(\.exe|\.iso|\.rar|\.zip|)

Actualizamos los plugins:
rm -rf /etc/thunder/plugins/
unzip plugins.zip
mv plugins /etc/thunder/
chmod 555 /etc/thunder/plugins/*
chmod 555 /etc/thunder/memoria.sh
chmod 555 /etc/thunder/clean
chmod 555 /etc/thunder/thunderotate.sh
chmod 555 /etc/thunder/killcpumax.sh
instalamos el modulo web:
unzip thunder.zip
mv thunder /var/www/html/
chmod 555 /var/www/html/thunder/*
chmod 555 /var/www/html/thunder/mail/*
Editamos estos archivos para cambiar usuario y contraseña de la DB:
/var/www/html/thunder/report.php
/var/www/html/thunder/Cpay.php
/var/www/html/thunder/Cent.php
/var/www/html/thunder/Cent.php
/var/www/html/thunder/conexion.php
/var/www/html/thunder/system.php
/var/www/html/thunder/edit/editsq.php
/var/www/html/thunder/edit/editip.php
/var/www/html/thunder/edit/edit.php
/var/www/html/thunder/edit/editdns.php
/var/www/html/thunder/edit/editmk.php
/var/www/html/thunder/edit/editus.php
Iniciamos los servicios:
/etc/init.d/thunder start
/etc/init.d/squid restart

Y ya podemos ver cómo esta funcionando thundercache junto a squid en nuestro servidor CentOS 6.3 entrado a:
http:/ip.del.servidor/thunder

usuario:admin password:admin Esto podrá cambiarse más adelante desde esta misma interface

Screenshots:

Fuentes:
http://www.alterserv.com/foros/index.php?topic=3.0
http://www.alterserv.com/foros/index.php?topic=9.0
http://www.alterserv.com/foros/index.php?topic=11.0
http://foro-mikrotik.com/thundercache-7-1-final-licencia-de-pago-y-free-ads-detalles/

3 comentarios:

OSIAN dijo...

que diferencia hay entre centos y debian funciona igual? alquien ya lo probo? por favor espero respuesta

Héctor dijo...

la única diferencia es que son dos distribuciones de linux distintas. Thundercache funciona de la misma forma en cualquiera de las dos

Ximena Ortega dijo...

Disculpa, tengo Centos 6.4 y al tratar de instalar los paquetes de: libcurl4-gnutls-devel libmysqlclient-devel libmysqlclient15-devel libmysqlclient16-devel

Tengo el mensaje: Setting up Install Process
No package libcurl4-gnutls-devel available.
No package libmysqlclient-devel available.
No package libmysqlclient15-devel available.

Se necesita algún repositorio en particular?