You are on page 1of 22

PROXY EN OPENBSD 4.

Por:

Jennifer Julieth Murillo Areiza

Administración De Redes de Computadores

Fernando Quintero

SENA Centro De Servicios y Gestión Empresarial CESGE

MEDELLIN

2010

Proxy En OpenBsd Página 1


CONTENIDO

INTRODUCION
OBJETIVOS

1. Conceptos Previos……………………………………………………………5
2. Estructura del Servidor…………………………………………………….....6
3. Configuración de la Red……………………………………………………...7
4. Configuración de Squid……………………………………………………….8
4.1 Instalación de Squid……………………………………………………....8
4.2 Configuración Básica de Squid……………………………………….....8
5. Creando Filtros Básicos……………………………………………………....9
5.1 Filtros Denegando Sitios por IP, Nombre de Dominio y palabras….10
6. Probando Proxy……………………………………………………………....11
7. Configuración del Proxy Transparente………………………………….....13
7.1 Probando Proxy Transparente………………………………………....13
8. Otros Filtros…………………………………………………………………..16
8.1 Filtro por hora Y día……………………………………………………..16
8.2 Filtro por extensiones de Archivo …………………………………......17

CONCLUSIONES
BIBLIOGRAFIA

Proxy En OpenBsd Página 2


INTRODUCCION

Este manual hará énfasis en cómo montar un servidor proxy Web básico,
desde la instalación y configuración básica, creación de ACL y de filtros que
podrán ser de gran ayuda en entornos empresariales, en escuelas y colegios.

Proxy En OpenBsd Página 3


OBJETIVOS

Instalar y configurar un servidor Squid Proxy para minimizar los riesgos de


usuarios que pretenden entrar a internet y ver contenido no apropiado que
perturba los entornos laborales.

Proxy En OpenBsd Página 4


1. CONCEPTOS PREVIOS

1.1 ¿Qué es Squid?

Es un software de licencia GPL que implementa el servidor proxy y una cache


para páginas web. Tiene una gran variedad de utilidades entre ellas acelerar un
servidor web, guardar en cache paginas visitas por los usuarios que hacen uso
del proxy etc. Squid es uno del software más completo siendo en un principio
orientado principalmente para HTTP y FTP.

1.2 ¿Qué es un Proxy Transparente?

Squid puede se configurado de manera transparente de manera que se enrutan


el trafico en el servidor sin que se tenga que hacer configuración extra en el
cliente, así el usuario nunca se percata de que existe este en la red.

1.3 ¿Qué es un Proxy web/cache?

Squid soporta peticiones HTTP, HTTPS y FTP a los usuarios que estén
haciendo uso del proxy. Estas peticiones son guardadas en una cache de
manera que cuando se haga una petición a una conexión que ya esta
registrada esta no tenga que ir hasta el servidor remoto a resolverla.

1.4 Puerto De Escucha

Squid generalmente escucha por el puerto 3128, pero uno puede cambiar este
y ponerlo a escuchar por cualesquiera

Proxy En OpenBsd Página 5


2. ESTRUCTURA DEL SERVIDOR

Para empezar con la instalación de squid sería de gran ayuda tener una
estructura de este.

Proxy En OpenBsd Página 6


3. CONFIGURACION DE LA RED

Para empezar con la configuración del servidor proxy primero voy a configurar
las opciones de red. En OpenBsd las interfaces se nombran según el fabricante
de la tarjeta. La ruta en donde se guarda el archivo de configuración es
/etc/hostname.* “Nombre de la interface”. Quedara parecido a lo siguiente.

Interna

#cat /etc/hostname.vic0
192.168.238.2 255.255.255.0 NONE

Internet

#cat /etc/hostname.vic1
dhcp

Luego creamos otro archivo que tendrá la puerta de enlace de nuestra red. El
archivo se llamara mygate. Quedara parecido a esto.

#cat /etc/mygate
192.168.238.2

Proxy En OpenBsd Página 7


4. Configuración De SQUID

4.1 Instalación de Squid

Para instalar Squid en OpenBsd lo hacemos con la herramienta pkg, de la


siguiente manera.

#pkg_add ftp://ftp.openbsd.org/pub/OpenBSD/4.6/packages/i386/squid-2.7.STABLE7p0.tgz

Al terminar la instalación aparecerá algo así.

[…]
You can also edit /etc/rc.local so that Squid is started automatically:

if [ -x /usr/local/sbin/squid/ ]; then
echo –n „Squid‟; /usr/local/sbin/squid
fi

Esto lo que nos está indicando es que pongamos estas líneas al final del
archive /etc/rc.conf para que Squid se inicie al inicio con los demás servicios.

4.2 Configuración Básica de Squid

Para empezar con la configuración ingresamos al archivo que se encuentra en


/etc/squid/Squid.conf y editamos las siguientes modificaciones.

#Puerto por donde escucha el proxy


#TAG: http_port
http_port 3128

El siguiente parámetro se utiliza para establecer que tamaño va a tener la


cache en el disco duro para Squid.

#Establecer tamaño de Cache


#TAG: cache_dir
cache_dir ufs /var/Squid/cache 100 16 256

Esto nos está indicando que hay 100MB de cache, 16 directorios y 256
subdirectorios.

Proxy En OpenBsd Página 8


El siguiente parámetro establece la cantidad de memoria para el tráfico, ósea
objetos frecuentemente utilizados.

#TAG: cache_mem
Cache_mem 32MB

Seguimos con el nombre que será visible en los clientes.

#TAG: visible_hostname
Visible_hostname localhost

Configurar squid para que muestre los mensajes de error en español. En


OpenBsd la ruta de esto es /usr/local/share/squid/errors.

#TAG: error_directory
Error_directory /usr/share/squid/errors/Spanish

Luego guardamos y salimos y ejecutamos el siguiente comando

# squid –z
2010/09/25/ 21:19:45 | Creating Swap Directories

Si no se tienen errores de sintaxis nos debe de ejecutar el siguiente comando


sin problemas

#/usr/local/sbin/squid

Proxy En OpenBsd Página 9


5. Creando Filtros Básicos

Para empezar a denegar o permitir cosas en nuestra red, debemos crear las
respectivas acl. La sintaxis es muy sencilla “acl aclname string |archivo”. De
esta manera si queremos crear una acl para nuestra red quedara de la
siguiente manera.

#TAG: acl
acl redlan src 192.168.238.0/24

Luego de crear la acl la aplicamos en el TAG: http_access, de la siguiente


manera. Las ACL se deniegan o se permiten en esta parte según como se la
necesidad. En este caso se tiene que permitir la Red Local.

#TAG: http_access
http_access allow redlan.

5.1 Filtros Denegando Sitios por IP, Nombre de Dominio y palabras.

Para denegar de esta manera lo que voy a hacer es crear un archivo en


“/etc/squid/” que se va a llamar sitios_deny, dentro de el ingresare las IP,
nombres de dominio y palabras que quiera bloquear.

File: /etc/Squid/sitios_deny

www.facebook.com
juegos
taringa
200.13.228.22

Después ingresamos al archivo /etc/Squid/squid.conf agregamos la acl y


aplicamos el filtro en http_access, asi.

#TAG: acl
acl sitios url_regex “/etc/Squid/sitios_deny”

#TAG: http_access
http_access deny sitios

Con esto podemos hacer las primeras pruebas.

Proxy En OpenBsd Página 10


6. Probando Proxy

Para ello basta con entrar a un navegador y colocar la ip de nuestro servidor


proxy en las configuraciones de red. En mi caso utilizare el Mozilla Firefox
Abrimos el navegador damos click en “Editar/preferencias/Anvazado”

Proxy En OpenBsd Página 11


Ahora empezamos a hacer las pruebas.

Como se puede ver el proxy está funcionando.

Proxy En OpenBsd Página 12


7. CONFIGURACION DE PROXY TRANSPARENTE

Para esto vamos a entrar al archivo de configuración del Squid y en el TAG


http_port le vamos a poner la palabra transparent, así.

#TAG: http_port
http_port 127.0.0.1:3128 transparent

Y en la configuración del firewall vamos a agregar la regla para que re todo el


tráfico que vaya por el puerto 80 lo re direccione a la interface loopback por el
puerto 3128.

File: /etc/pf.conf

# rdr pass on $interna proto tcp to port http -> 127.0.0.1 port 3128

8. Prueba Proxy Transparente

Volvemos a ingresar al navegador y quitamos el proxy.


Entramos al navegador Firefox en “Editar/Preferencias/Avanzado/”

Proxy En OpenBsd Página 13


Y volvemos a hacer pruebas con alguna palabra que pusimos en el filtro.

Proxy En OpenBsd Página 14


Proxy En OpenBsd Página 15
8. OTROS FILTROS

8.1 Filtro por Días y Horas.

Squid nos permite hacer un filtrado por medio de los días de la semana y la
hora Exacta. Con esto podemos denegar la salida a internet de los usuarios en
la hora del almuerzo por ejemplo. Maneja la siguiente sintaxis:

Para los días de la Semana.


S – Sunday Para la hora
M – Monday
T – Tuesday [hora inicio: min inicio-hora fin: min fin]
W - Wednesday
H – Thursday
F – Friday
A – Saturday

Sintaxis completa
acl deny_tiempo time SMH 14:00-14:30

Esta acl la vamos a ubicar en el TAG: acl asi.

#TAG: acl
acl deny_tiempo time SMH 10:00-10:30

Y luego en http_access la aplicamos, en mi caso voy a denegar la acl.

#TAG: http_access
http_access deny deny_tiempo

Lo que estoy diciendo en la anterior acl es que deniegue el Internet los días
Domingos, lunes y jueves en el horario de 10AM a 10:30AM.

Proxy En OpenBsd Página 16


Como podemos ver en la imagen anterior son las 10:14, y al intentar abrir una
página cualesquiera nos va a decir que no se puede.

8.2 Filtrando por extensión de archivo.

Squid nos permite hacer filtrado por medio de extensiones de archivo, así,
cuando se encuentre una URL con alguna de las extensiones que se
bloquearon no dejara descargarlas.

La sintaxis es la siguiente.
Acl aclname urlpath_regex “extenciones o archivo que las contiene”

Para mi caso voy a bloquear las extenciones “mp3, zip, rar, exe, jpg”
Acl extensiones urlpatch_regex “/etc/Squid/extenciones/”, esta acl la pondré en
el TAG: acl asi.

#TAG: acl
Acl extensiones urlpath_regex “/etc/Squid/extensiones”

Proxy En OpenBsd Página 17


La aplicamos en el TAG: http_access así.

#TAG: http_access
http_access deny extensiones

Creando el archivo

File: /etc/Squid/extensiones
\.mp3$
\.exe$
\.jpeg$
\.rar$
\.zip$

Ahora hacemos las pruebas.

Proxy En OpenBsd Página 18


Proxy En OpenBsd Página 19
Aquí esta filtrando los exe, y asi lo hara para las demás extenciones que se
encuentran en el archivo

Proxy En OpenBsd Página 20


CONCLUSIONES

Como se puede ver la configuración de un proxy básicamente es muy sencilla,


ya que las sintaxis son fáciles de comprender.

Una de las ventajas que encontré es que es que hay demasiada


documentación para la implementación de Squid, y esta es válida para
cualesquier sistema en el que se quiera implementar y sea Windows, Unix o
Linux.

Proxy En OpenBsd Página 21


BIBLIOGRAFIA

Página oficial de OpenBsd Colombia

http://tuxjm.net/docs/Manual_de_Instalacion_de_Servidor_Proxy_Web_c
on_Ubuntu_Server_y_Squid/index.html

http://www.linuxparatodos.net/portal/staticpages/index.php?page=19-0-
como-squid-general

Proxy En OpenBsd Página 22

You might also like