Proxy Transparente

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 8

INSTALACION DEL SERVIDOR PROXY

TRANSPARENTE Y DHCP.

Autor: Guillermo Cárdenas Hernández.


Email:[email protected]

Guillermo Cárdenas Hernández. email:[email protected]


Primero vamos a ver el esquema de un servidor proxy, obviamente puedes usar
ubuntu server edition si lo quieres, el servidor debe contar con 2 tarjetas de red, la
primera ira conectada a nuestro router dsl,o nuestro servicio de internet , la
segunda debera ir conectada a nuestra red local.

En este caso ya tengo la ip de la red local configurada que es eth0 10.0.0.1 digamos
que es la ip local de mi servidor, y en eth1 tengo asignada la ip de mi router dsl
192.168.10.101.

eth0 ip de red local 10.0.0.1 asignada estaticamente


eth1 ip de router xdsl que nos fue asignada dinamicamente

Nota: Para configurar la ip estatica haremos lo siguiente vamos a ir a cosola y nos


dirigimos a /etc/network

sudo gedit /etc/network/interfaces

Y colocaremos algo como esta configuración.

Guillermo Cárdenas Hernández. email:[email protected]


Por defecto ubuntu detecta la interfaz de red que tengamos instalada y la pone en auto y
con cliente dhcp en mi caso e t h 1 esta en automatico y es la que se asigna dinamicamente
por el modem-router dsl de mi proveedor de internet .
Editamos lo que hay para eth0 y ponemos algo como lo que esta en verde, voy a decirle a
ubuntu que eth0 sea cargada automaticamente en cada inicio de ubuntu y que le asigne la
direccion ESTATICA 10.0.0.1 con su mascara de subred 255.0.0.0 y que sea gateway o puerta
de enlace 10.0.0.1 y con esto ya tenemos nuestra tarjeta de red configurada estaticamente
solo nos resta guardar los cambios en el archivo y rearrancar el servicio de network

cd /etc/init.d
sudo ./networking restart

Ahora será necesario verificar las interfaces con el comando ifconfig.

Guillermo Cárdenas Hernández. email:[email protected]


Instalación del Servidor DHCP.

Lo instalamos desde la consola con la Linea.

sudo apt-get install dhcp3-server

Y ahora editaremos el archivo de configuración del DHCP, con la Linea.

Sudo gedit /etc/dhcp3/dhcpd.conf

Y Agregamos el Archivo de configuracion que esta en el dhcp de respaldo.

Al Finalizar será necesario reiniciar los servicios del DHCP, con.

sudo /etc/init.d/dhcp3-server restart

y listo si no marco ningun error todo ira de pelos para comprobar que nuestros clientes ya
tienen direccion ip del tipo 10.0.0.x en mi caso solo conecta algun cliente a tu SWITCH o
HUB y haz ping a tu servidor 10.0.0.1 (recuerda que tu le puedes poner lo que quieres
192.168.x.x etc etc dependiendo a tus necesidades, si marco un error el servicio quiere
decir que hubo un error en tu configuracion.

Guillermo Cárdenas Hernández. email:[email protected]


Configuración de Iptables.
Hasta aqui ya llevamos el 50% de nuestro tutorial ahora vamos con IPTABLES pero que pasa
con ellas, pues que debemos asignar ciertas reglas para que se carguen automaticamente
cada vez que inicie nuestro servidor proxy ubuntu que vamos a hacer primero para que se
carguen automaticamente nos vamos a la ruta.

cd /etc/init.d/

en esta carpeta estan todos los archivos que se ejecutan al iniciar nuestro ubuntu asi
que hay que poner uno para que tambien arranque y este contendra las sentencias
de iptables para que funcione nuestro proxy TRANSPARENTE.
dentro de la carpeta /etc/init.d creamos un nuevo archivo llamale como tu quieras
iptables, superproxy, amo_y_señor o como quieras.

sudo gedit proxyrules.sh


entonces tenemos nuestro editor abierto ponemos las siguientes reglas

explicamos rapidisimo que significa las reglas iptables , las primeras borran todas las reglas
de iptables en ejecucion, el echo indica forwarding activado, la primera cadena de iptables
indica que todas las peticiones que nuestra red 10.0.0.0/255.0.0.0 haga al puerto 80 (web)
sea redireccionada al puerto 3128 (proxy) , la segunda cadena se refiere a que damos
enmascaramiento a nuestra red para que pueda salir a internet recuerda que en mi caso e t
h 1 es mi salida a internet por medio del modem-router de mi ISP. ahora grabamos nuestra
archivo con ctrl+o en caso de usar nano y damos permisos de ejecucion a nuestro archivo
en mi caso con el siguiente comando .

sudo chmod 700 proxyrules.sh

y despues de eso editamos el archivo rc.local


y le ponemos hasta arriba

Guillermo Cárdenas Hernández. email:[email protected]


cd /etc/init.d
./proxyrules.sh

Instalación de Squid.

Nos vamos a la carpeta /usr/local/src.

cd /usr/local/src

Y descargamos Squid.

sudo wget http://www.squid-cache.org/Versions/v2/2.7/squid-2.7.STABLE

con esto obtenemos el codigo fuente, ahora vamos a descomprimirlo y compilarlo.

sudo tar xvzf squid2.7.STABLE4.tar.gz


sudo ./configure prefix=/usr/local/squid enablelinuxnetfilter
sudo make
sudo make install

con esto ya tenemos instalado SQUID en la ruta /usr/local/squid


ahora vamos a configurar nuestro squid primero debemos crear un usuario llamado
squid y un grupo llamado squid

sudo useradd squid


sudo groupadd squid

ahora nos vamos a la ruta donde esta squid y hacemos que todos los archivos y
carpetas pertenezcan a este usuario y grupo squid

cd /usr/local/squid
chown R squid *
chgrp R squid *

sale todos los archivos pertenecen a squid ahora vamos a la ruta de configuracion

cd /usr/local/squid/etc

editamos el archivo de configuracion squid.conf, si no esta o esta algun otro como


squid.conf.default lo copiamos y lo renombramos squid.conf
abrimos squid.conf

sudo gedit squid.conf

Guillermo Cárdenas Hernández. email:[email protected]


Configuracion de Squid.

http_port 192.168.0.228:3128 transparent


cache_mem 100 MB
cache_dir ufs /usr/local/squid/var/cache 2048 16 256
cache_effective_user squid
cache_effective_group squid
ie_refresh on
offline_mode on
cache_access_log /usr/local/squid/var/logs/access.log
cache_log /usr/local/squid/var/logs/cache.log

#REGLAS DE ACCESO
acl all src 0.0.0.0/0.0.0.0
#acl no_permitido1 dst "/usr/local/squid/etc/pag_no_permitidos.lst"
acl filterneg dstdom_regex "/usr/local/squid/etc/filternew.flt"
#acl filterporn dstdom_regex "/usr/local/squid/etc/filterporn.flt"
acl no_permitido2 url_regex "/usr/local/squid/etc/pag_no_permitidos2.lst"
# Palabras prohibidas & permitidas
acl block url_regex "/usr/local/squid/etc/block.flt"
acl unword urlpath_regex "/usr/local/squid/etc/dload.flt"
acl banorte dstdom_regex "/usr/local/squid/etc/nuevosrapidos.flt"
#acl msn_live port 1863
#bloquear streaming video y audio
acl useragent browser -i ^application/NSPlayer$
acl useragent browser -i ^application/player$
acl useragent browser -i ^application/Windows-Media-Player$
acl useragentq rep_mime_type ^video
acl useragentq rep_mime_type ^audio
#\.ppt$
acl downloads url_regex -i \.dll$ \.bin$ \.cab$ \.asx$ \.vbs$ \.bat$ \.lnk$ \.scr$ \.pif$ \.msi$ \.exe$ \.mp3$
\.wmv$ \.mpg$ \.torrent$ \.com$ \.avi$ \.flv$ \.rmv$ \.rmvb$

acl localhost src 127.0.0.1

#CONTROL DE ACCESSO
#http_access deny no_permitido1
http_access deny filterneg
#filterporn
http_access allow unword
http_access allow banorte
http_access deny block
#filterporn
http_access deny no_permitido2
#http_access deny nodownload
http_access deny useragent
http_access deny useragentq
http_access deny downloads !localhost
http_access allow all
error_directory /usr/local/squid/share/errors/Spanish
visible_hostname PROXY-SERVER

Guillermo Cárdenas Hernández. email:[email protected]


Para esto será necesario tener en la carpeta de Squid los archivos
nuevosrapidos.flt,block.flt,dload.flt,filternew.flt,pag_no_permitidos.lst,pag_no_permitidos2.lst

Ya que tenemos nuestro archivo squid.conf debidamente configurado solo nos resta crear los directorios swap
o de cache con el comando

cd /usr/local/squid/sbin
sudo ./squid z

Si todo salio bien hasta aqui vamos PERFECTO, si salio algun error de permisos de escritura revisa tu
configuracion de squid.conf que tengas el usuario en cache_effective_user squid y cache_effective_group
squid , ademas de revisar que agregaste ese grupo y usuario ok. lo que resta es hacer que nuestro sistema
cargue squid cada vez que iniciemos nuestro equipo, recuerdan el archivo en el paso 3 RC.LOCAL pues ahi
vamos a meter nuestras sentencias editamos el archivo que esta en .

cd /etc/init.d
nano rc.local

y hasta arriba del archivo ponemos

cd /usr/local/squid/sbin
./squid

grabamos el archivo y listo cada vez que nuestro servidor encienda arranca squid y las reglas de iptables para
el proxy transparente.

para saber si nuestro proxy esta activo solo ponemos

sudo ps ax

ahi tenemos 2 procesos ./squid y (squid) si estan los 2 procesos todo esta perfecto.

Guillermo Cárdenas Hernández. email:[email protected]

También podría gustarte