ADMINISTRACION DE SISTEMAS OPERATIVOS DE RED PROXY

Anuncio
ADMINISTRACION DE SISTEMAS OPERATIVOS DE RED
PROXY WEB TRANSPARENTE (SQUID)
JAVIER VIDAL NUMA MENDOZA
CODIGO 1150057
UNIVERSIDAD FRANCISCO DE PAULA SANTANDER
FACULTAD DE INGENIERIA
INGENIERIA DE SISTEMAS
SAN JOSE DE CUCUTA
2013
ADMINISTRACION DE SISTEMAS OPERATIVOS DE RED
PROXY WEB TRANSPARENTE (SQUID)
JAVIER VIDAL NUMA MENDOZA
CODIGO 1150057
PRESENTADO A:
ING. JEAN POLO CEQUEDA OLAGO
UNIVERSIDAD FRANCISCO DE PAULA SANTANDER
FACULTAD DE INGENIERIA
INGENIERIA DE SISTEMAS
SAN JOSE DE CUCUTA
2013
INTRODUCCIÓN
La intención de este trabajo es la de dar una introducción general a lo que es un SQUID
y los principales parámetros que se deben de configurar luego de su instalación, el
significado o función que cada parámetro configurado cumple dentro del contexto del
SQUID, ya que dependiendo de la buena configuración de dichos parámetros la
eficiencia será máxima. Las parametrizaciones son generalmente las incógnitas más
relevantes al inicio de cualquier instalación de un servidor.
SQUID es un Servidor Intermediario (Proxy) de alto desempeño que se ha venido
desarrollando desde hace varios años y es hoy en día un muy popular y ampliamente
utilizado entre los sistemas operativos como GNU/Linux y derivados de Unix. Es muy
confiable, robusto y versátil y se distribuye bajo los términos de la Licencia Pública
Genera GNU (GNU/GPL).Siendo sustento lógico libre, está disponible el código fuente
para quien así lo requiera.
Entre otras cosas, Squid puede funcionar como Servidor Intermediario (Proxy) y caché
de contenido de Red para los protocolos HTTP, FTP, GOPHER y WAIS, proxy de SSL,
caché transparente, WWWCP, aceleración HTTP, caché de consultas DNS y otras
muchas más como filtración de contenido y control de acceso por IP y por usuario.
Squid consiste de un programa principal como servidor, un programa para búsqueda
en servidores DNS, programas opcionales para reescribir solicitudes y realizar
autenticación y algunas herramientas para administración y herramientas para clientes
Al iniciar Squid da origen a un número configurable (5, de modo predefinido a través del
parámetro dns_children) de procesos de búsqueda en servidores DNS, cada uno de los
cuales realiza una búsqueda única en servidores DNS, reduciendo la cantidad de
tiempo de espera para las búsquedas en servidores DNS.
Squid no debe ser utilizado como Proxy para protocolos como SMTP, POP3,
TELNET,SSH, IRC, etc. Si se requiere intermediar para cualquier protocolo distinto a
HTTP, HTTPS, FTP, GOPHER y WAIS se requerirá implementar obligatoriamente un
enmascaramiento de IP o NAT o bien hacer uso de un servidor SOCKS.
OBJETIVO

Aprender el concepto de proxy, sus usos y beneficios que trae el implementarlo

Conocer los aspectos básicos del servidor proxy SQUID

Aprender a instalar y configurar SQUID en una distribución gnu/Linux fedora 18

Manejar la funcionalidad transparente del servidor proxy SQUID
TABLA DE CONTENIDO
1. Concepto de Proxy ______________________________
6
2. Generalidades de SQUID __________________________
8
3. Proceso de Instalación y configuración SQUID__________ 10
Conclusiones ___________________________________
15
Bibliografía _____________________________________
16
1 CONCEPTO DE PROXY
En una empresa que usa Internet, un Proxy Server en un servidor que actúa como
intermediario entre el ordenador de un usuario e Internet, por lo que la empresa puede
asegurar una mínima seguridad, control de administración, y un servicio de cache. Este
tipo de servidor esta normalmente asociado a un “gateway” o pasarela que separa la
red corporativa de la red externa, y a un Firewall que protege la red corporativa de
intrusiones provenientes de otras redes.
Un Proxy Server recibe una petición para un servicio de Internet de un usuario (por
ejemplo una página Web). Si pasa los filtros establecidos, el Proxy Server, asumiendo
que también es un servidor caché, mira en su caché local de páginas Web
recientemente descargadas. Si encuentra la página solicitada, se la envía al usuario sin
tener que enviar la petición a Internet. Si no está en caché, el servidor Proxy, actuando
en nombre del usuario, usa una de sus propias direcciones IP para pedir la página del
servidor de Internet donde está alojada. Cuando la página es encontrada y se envía al
Proxy, le es enviada al usuario que la había requerido al principio.
Para el usuario, el Proxy Server es invisible y transparente; todas las peticiones de
Internet y respuestas externas parecerán estar directamente desde el PC del usuario.
Aun así, debemos recordar que habrá que configurar la dirección del Proxy en el
navegador o programa de acceso que utilicemos, por lo que no es tan invisible.
Una ventaja del Proxy Server es que el caché nos puede ahorrar tiempo de acceso a
las páginas Web. Si uno o mas sitios de Internet es visitado de forma frecuente, los
elementos mas característicos como por ejemplo los gráficos, no se tienen que
descargar cada vez que accedemos de nuevo a ese sitio. Se guardan en el caché.
Algunas veces nos guarda la copia entera de la página por lo que puede que no está al
día. La forma de solucionar esto es pulsar el botón “Actualizar” en nuestro navegador.
Volverá a realizar la petición completa bajándonos la página mas reciente.
Las funciones de Proxy, Firewall y caché pueden estar en programas separados o
combinados en un único paquete. Los servidores pueden estar localizados en
diferentes ordenadores. Por ejemplo, un Proxy Server puede estar en la misma
máquina que un Firewall o puede estar en un servidor distinto y enviar peticiones a
través del Firewall.
PROXY TRANSPARENTE
Los proxies transparentes mejoran la calidad del servicio en la navegación por Internet,
entregando contenido a un mayor ancho de banda y reduciendo la latencia en la
transmisión. Si no usáramos proxies, los usuarios estarían atravesando Internet en
muchas ocasiones, por servidores y enlaces lentos o con problemas, dependiendo del
país donde están localizados los equipos. Dicho de otra manera, Si alguien ya ha
bajado un archivo que queremos o ha visto una página Web que nosotros queremos
visualizar, es mucho más rápido que nos lo provea la infraestructura del proxy
transparente, que volver a Internet y conseguirlo desde ahí.
Primero veremos qué es un proxy. Los proxies almacenan contenido que
frecuentemente es accedido, y por ello lo guarda para que otras personas que quieran
ver ese mismo contenido, no tenga que salir a Internet de nuevo a cogerlo. El lugar
donde guarda este contenido se llama caché. Funciona más o menos de esta manera:
Un usuario requiere una página Web de un navegador de Internet. La red analiza esa
petición, y basándose en ciertos parámetros, redirecciona esa petición a un caché de la
red local. Si el caché no tiene esa página Web, hará su propia petición al servidor Web.
El servidor Web entrega el contenido al proxy que lo guarda en caché a la vez que se lo
entrega al usuario que hizo la petición original. Ese contenido queda almacenado. Más
tarde, cuando otro usuario quiera ver esa página Web, en lugar de hacer de nuevo la
petición al servidor Web, le entrega la copia que tiene guardada. Este proceso reduce el
tiempo de descarga para el usuario.
Te puedes estar preguntando, ¿qué diferencia hay entre un Proxy normal y un Proxy
transparente? Lo cierto es que no hay una gran diferencia en el papel que realizan o en
su funcionamiento. De hecho, en muchos casos suelen ser la misma máquina. La
mayor diferencia es que con un Proxy transparente, no tienes que hacer
configuraciones de red para que el tráfico http sea capturado. Al estar construido como
parte de la arquitectura de red, todo el tráfico del puerto 80 tiene que pasar por este
Proxy transparente.
Un pequeño inconveniente que ha sido motivo de muchas quejas por parte de usuarios,
es que en ocasiones no vemos la página actualizada, y esto se nota sobre todo si la
Web a la que estamos accediendo, cambia cada poco tiempo. Si la página a sido
modificada con respecto a la que el proxy transparente tiene en caché, no veremos ese
cambio a no ser que hagamos un “refresco” de página con la tecla F5, o la opción
“Actualizar” en el propio navegador.
2 GENERALIDADES DE SQUID.
A continuación se muestran los principales parámetros que se deben de configurar para
el SQUID.
 Parametro http_port
En este parámetro configuramos el puerto de escucha de nuestro servidor squid, por
default es el puerto 3128 pero puede ser utilizado 8080
http_port 3128
 Parametro cache_mem
Establece la cantidad de memoria RAM dedicada para almacenar los datos más
solicitados. Esta opción viene comentada por los cual se descomenta para darle un
valor reservado en memoria RAM
cache_mem 50 MB (este valor ya depende del administrador y de la carga que tenga el
squid)
 Parametros cache_swap
Dentro del cache_swap, existen dos parámetros: cache_swap_low cache_swap-hight
con estos le indicamos a squid que mantenga los niveles del espacio del área de
intercambio o también conocido como swap. Estos parámetros vienen siempre
desactivados por la cual los buscaremos para activarlos.
cache_swap_low 90
cache_swap_high 95
Con esto decimos al squid que mantenga los niveles del espacio del area de
intercambio entre 90% y 95%
 Parámetros maximum_object_size
Utilizamos esta directiva para indicar el tamaño máximo para los objetos a almacenar
en la cache.
maximum_object_size 10240 MB
 Parametro hierarchy_stoplist
Este parámetro es útil para indicar a squid que páginas que no deben almacenarse en
cache.
También se pueden incluir como sitios de webmail y paginas locales en su red ya que
no sería necesario almacenarlas en el cache, esta opción ya viene habilitada.
hierarchy_stoplist cgi-bin ? hotmail gmail yahoo utcd.com.py
 Parametro visible_hostname
Es el nombre del equipo, el nombre debe ser igual a los siguientes ficheros/etc/hosts y
en /etc/sysconfig/network.
Este parámetro no viene en el archivo de configuración, tendremos que agregar y que
en ocasiones pueda ser que nuestro servicio de squid no quiera iniciar.
visible_hostname nombre
 Parametro cache_dir
Con este parámetro establecemos el tamaño que deseamos que tenga la cache en el
disco, lo cual tendremos que habilitar y modificar el siguiente dato
cache_dir ufs /var/spool/squid 700 16 256
Con esto establecemos el tamaño que deseamos que tenga la cache en el disco, se
puede incrementar hasta el tamaño que desee el administrador, en este caso se
estableció 700MB de cache con 16 directorios subordinados y 256 niveles cada uno.
 Parametros access_log
Especifica en que directorio se realizara el registro de accesos al squid, este parámetro
es importante para definir un análisis de estadísticas con webalizer.
access_log /var/log/squid/access.log squid
 Parametro cache_log
Define en donde se almacenaran los mensajes del comportamiento de la cache de
squid. Por default viene desactivado.
cache_log /var/log/squid/cache.log
Así, podríamos poner en funcionamiento el SQUID, y de acuerdo a los mensajes
empezar a modificar los parámetros correspondientes.
3 INSTALACION Y CONFIGURACION SQUID
El proceso de instalación que se muestra a continuación se llevó a cabo en una
distribución gnu/Linux fedora 18
Se busca la terminal y se inicia como usuario root para poder tener los privilegios
Después de haber ingresado como root, procedemos a instalar el servidor squid con la
siguiente línea de comando
Yum install squid
Para dar inicio con la configuración es necesario abrir el archivo de configuración de
squid, el cual se encuentra ubicado en el directorio /etc/squid y tiene como nombre
squid.conf, para entrar al archivo ingrese la siguiente linea en la terminar.
nano /etc/squid/squid.conf
Se procede a realizar algunas modificaciones como en http_port En las últimas
versiones se puede usar el puerto por defecto (3128) y simplemente agregar la palabra
transparent para hacerlo transparente
Agregamos la siguiente linea
acl localnet src 192.168.1.3
Que hace referencia a la IP de la máquina para este ejemplo.
Para esta configuración crearemos una lista de acceso para dominios permitidos, otro
para dominios prohibidos y un último para usuarios no permitidos a continuación de
muestran dichos archivos:

pbloquedas : dominios que estarán bloquedas , entre ellos: youtube y facebook.
Estos archivos quedan ubicados en el directorio /etc/squid

Para dichas listas de control de acceso definimos la siguiente regla de control
acceso, tenga en cuenta la estructura sintáctica de una regla se control la cual se
especifica a continuación:
http_access [deny o allow] [lista de control de acceso]
http_access allow localnet
http_access allow localhost
http_access deny pbloqueadas
luego se busca el siguiente parámetro que se utiliza para establecer que tamaño se
desea que utilice Squid para almacenamiento de caché en el disco duro. De modo
predefinido Squid utilizará un caché de 100 MB, dividido en jerarquías de 16 directorios
subordinados, hasta 256 niveles cada uno:
cache_dir ufs /var/spool/squid/ 100 16 256
Finalmente reiniciamos el servicio con el siguiente comando:
Systemctl restart squid.service
CONCLUSIONES

un proxy no es más que un intermediario entre el servicio de internet y el usuario
de internet que permite manejar el acceso de este a varios dominios

El servidor proxy interrumpe la conexión de TCP/IP para ocultar la información
de la red interna (por ejemplo, nombres de sistemas principales internos y
direcciones del protocolo de Internet (IP))

El proceso de Instalación y configuración de Squid en Fedora 16 es sencillo
solamente hay que tener en cuenta los parámetros requeridos por este.
BIBLIOGRAFIA

http://www.linuxparatodos.net//web/comunidad/basedeconocimiento//wiki/Base%
20de20Conocimiento/Servidor+Proxy#sectionServidor+ProxyArchivosDeConfigur
aci_C3_B3nDelSquid

http://www.squid-cache.org/Download
Descargar