viernes, 10 de junio de 2011

Servidor Proxy (Centos)

Introducción

Un servidor proxy es un servicio de red por la cual la red cliente se conecta de forma intermediaria situado entre el sistema cliente e Internet. Este servicio tiene las ventajas que registra el uso de Internet y también para bloquear el  acceso a cierto sitio web, filtro de contenidos, comunicaciones anonimas.etc

Utilizaremos el software squid

Practica

La practica la realizaremos en virtual box con sistema operativo (Centos 5.4) donde tendrá 2 tarjetas de red
eth0 (salida a Internet) y eth1 (red interna) y algunos cliente para pruebas con sistema operativo (windows xp) sera distribuidos así:
Instalación

 -Instalaremos el paquete squid con el comando siguiente:
#yum install squid
-Configuramos el fichero de configuración de squid 
#cd /etc/squid/
#nano squid.conf
-Esta en el fichero configuramos algunos parámetros 

Este parámetro configura el puerto de escucha de servicio squid, por default es el puerto 3128 pero puede ser también por ejm el 8080.
http_port 3128

Este parámetro establece la cantidad de memoria dedicada para almacenar los datos mas solicitados. Descomentamos
#cache_mem 8 MB
El valor puede se como tu lo desea

Los siguientes parámetros le indicamos a squid que mantenga los niveles del espacio del área de intercambio o también conocido como swap. Descomentamos 
#cache_swap_low 90
#cache_swap_hign 95 

Este parámetro es útil para indicar a squid que contengan ciertos caracteres no deben almacenarse en cache. También se puede incluir sitios hotmail o pagina locales en su red. Ya viene habilitada 

hierarchy_stoplidt cgi-bin ?

este parámetro es el nombre de equipo, el nombre debe ser igual a los ficheros /etc/hosts y /etc/sysconfig/network. Este parámetro no tiene que ver nada con el fichero de configuracion de squid, tendremos que agregar esto sirve por si nuestro servicio de squid no quiera iniciar

visible_hostname mds.maida

Este parámetro establece el tamaño que deseamos que tenga la cache en el disco, lo cual tendremos que tendremos que habilitar y modificar la siguiente linea
#cache_dir ufs /var/spool/squid 100 16 256
Se puede incrementar dependiendo como quiera el administrador hay se establece 700MB de cache con 16 directorio subordinados y 256 niveles por cada uno.

Este parámetro especifica en que directorio se realizara el registro de accesos al squid.
#access_log /var/log/squid/access.log squid

Este parámetro define en donde se almacenaran los mensajes del comportamiento de la cache de squid. Descomentamos

#cache_log /var/log/squid/cache.log

Ahora haremos la acl para permitir IP 

Regla tipo src 
Esta regla especifica una o varias dirección ip de origen o un segmento de red.

-Forma 1 
acl (nombre) src 192.168.1.0/24

Acá permitirá que todo el segmento de red pueda salir.

-Forma 2 
acl (nombre) src 192.168.1.0 192.168.1.20
Esta regla es para permitir que este segmento pueda salir.

-forma 3 acl (nombre) src "/etc/squid/red"
Esta regla no indica que esta apuntado a un fichero donde se encuentra las direcciones 

Utilizaremos la forma 3

1- Vamos a permitir la salida de la red 
acl red src "/etc/squid/red"
Ese ruta la creamos en /etc/squid llamada red

Para poder que la acl se permita vamos buscar http_access donde le diremos en este caso que permita la red 
-http_access allow red 
Acá estamos permitiendo la salida localhost  y  la salida a la red y que deniegue el resto.

Iniciamos el servicio squid 
/etc/init.d/squid start
/etc/init.d/squid restart

Hacemos pruebas con cliente

Esta utilizando direccionamiento estático 

En el cliente no vamos adaptadores de red-click derecho propiedades en conexion de área local-click en ipv4 configuracion de la red.

En el navegador preferido configuramos en proxy 

En herramientas-opciones-conexiones de red-(LAN)

2.A Continuación vamos a denegación sitios web y contenido

Para denegar de esta manera voy a crear un archivo /etc/squid/ llamado deny donde ingresare la ip los nombres de dominios y las palabras que queremos denegar.

En el archivo de configuracion del squid crearemos otra regla
acl sitios url_regex "/etc/squid/deny"
y agregamos el filtrado en http_access 
Aquí esta denegando sitios por que es carácter (!) le indica que deniegue la acl declarada sitios. por que no se hizo así http_access deny sitios Por que  con http_access deny all esta linea es importante ya que deniega el resto.

Hacemos pruebas 

-Denegación por IP
NOTA= so permitimos salir la dirección 192.168.1.5 y que es resto se deniegue osea que la dirección anterior no podrá salir.
Denegación por Sitios o dominio web
NOTA= La siguientes denegación es para las direcciones ip declaradas en la acl red osea la 192.168.1.5
Denegación por contenido o palabra
Ahora vamos a hacer filtro por días y horas 
La nueva regla para filtro de tiempo es 
acl tiempo SMT 08:00-20:00
Esta regla dice que permita de lunes a miércoles de 10am 8pm 

Luego vamos a filtrar la acl nueva

Hacemos pruebas 
Autenticación con usuario
-Para esta autenticación vamos aplicar una regla tipo password
password, para poder habliltar este método tendremos que hacer lo siguientes pasos de configuracion.

-Crearemos un archivo que contendrá las claves y la llamaremos claves /etc/squid/
#touch /etc/squid/claves 

Le asinaremos permisos de lectura/Escritura 
#chmod 600 /etc/squid/claves
Y el usuario encargado del archivo
#chown squid:squid /etc/squid/claves
Ahora crearemos el usuario y password para el acceso a Internet
#htpasswd /etc/squid/claves david
Habilitaremos las siguientes opciones dentro de fichero de configuracion del squid,buscar el parámetro siguientes.
#auth_param basic program
Este parámetro lo modificamos de la siguiente manera.

Estamos enlazando la aplicación que nos permitiría autentificarnos y en donde se encuentra el archivo donde se encuentran las cuentas de los usuarios.

Por ultimo tendremos que habilitar la regla acl de la autenticación de password 
#acl password proxy_auth REQUIRED
Y por ultimo hacemos el filtrado 
y reiniciamos el servicio 
/etc/init.d/squid restart

Hacemos prueba 

Ingresamos con el usuario creado llamado david 
Fin 

Mas información

No hay comentarios:

Publicar un comentario