30
TALLER PROXY. CONFIGURANDO PROXY EN UNA APPLIANCE PFSENSE. POR: Maicol Muñoz. INSTRUCTOR: Andres Mauricio Ortiz. Tecnólogo en administración de redes informáticas. Gestión de la seguridad de la red. 35442. Servicio nacional de aprendizaje (SENA) - Antioquia Centro de Servicios y Gestión Empresarial. (CESGE) 2011

67645487 TALLER PROXY Configurando Proxy en Pfsense

Embed Size (px)

Citation preview

Page 1: 67645487 TALLER PROXY Configurando Proxy en Pfsense

TALLER PROXY. CONFIGURANDO PROXY EN UNA

APPLIANCE PFSENSE.

POR: Maicol Muñoz.

INSTRUCTOR:

Andres Mauricio Ortiz.

Tecnólogo en administración de redes informáticas.

Gestión de la seguridad de la red. 35442.

Servicio nacional de aprendizaje (SENA) - Antioquia

Centro de Servicios y Gestión Empresarial. (CESGE)

2011

Page 2: 67645487 TALLER PROXY Configurando Proxy en Pfsense

INTRODUCCION. La seguridad es la principal defensa que puede tener una organización si desea conectarse a Internet, dado que expone su información privada y arquitectura de red a los intrusos de Internet. El Firewall ofrece esta seguridad, mediante: Políticas de seguridad, determinando que servicios de la red pueden ser acezados y quienes pueden utilizar estos recursos, manteniendo al margen a los usuarios no-autorizados. En este trabajo les daré a conocer como implementar y configurar un proxy con pfsense.Pfsense es una distribución personalizada de FreeBSD adaptado para su uso como Firewall y Router. Se caracteriza por ser de código abierto, puede ser instalado en una gran variedad de ordenadores, y además cuenta con una interfaz web sencilla para su configuración.

Page 3: 67645487 TALLER PROXY Configurando Proxy en Pfsense

MARCO TEORICO. Proxy. Un proxy me permite tener control sobre la navegación en internet. Su finalidad más habituales la de servidor proxy, que sirve para interceptar las conexiones de red que un cliente hace a un servidor de destino. Existes múltiples proxys que cumplen la misma finalidad pero lo hacen de maneras diferentes. Estos son los tipos de proxys: Servicio Proxy o Proxy Web: Su funcionamiento se basa en el del Proxy HTTP y HTTPs, pero la diferencia fundamental es que la petición se realiza mediante una Aplicación Web embebida en un Servidor HTTP al que se accede mediante una dirección DNS, esto es, una página web que permite estos servicios. Proxy Caché: Su método de funcionamiento es similar al de un proxy HTTP o HTTPs. Su función es precargar el contenido web solicitado por el usuario para acelerar la respuesta Web en futuras peticiones de la misma información de la misma máquina u otras. Almacenar las páginas y objetos que los usuarios solicitan puede suponer una violación de la intimidad para algunas personas. Proxys transparentes: Un proxy transparente combina un servidor proxy con NAT (Network AddressTranslation) de manera que las conexiones son enrutadas dentro del proxy sin configuración por parte del cliente, y habitualmente sin que el propio cliente conozca de su existencia. Este es el tipo de proxy que utilizan los proveedores deservicios de internet (ISP).

Page 4: 67645487 TALLER PROXY Configurando Proxy en Pfsense

Reverse Proxy / Proxy inverso: Un reverse proxy es un servidor proxy instalado en el domicilio de uno o más servidores web. Todo el tráfico entrante de Internet y con el destino de uno de esos servidores web pasa a través del servidor proxy. Proxy NAT: Otro mecanismo para hacer de intermediario en una red es el NAT.La traducción de direcciones de red (NAT, Network AddressTranslation) también es conocida como enmascaramiento de IPs. Es una técnica mediante la cual las direcciones fuente o destino de los paquetes IP son reescritas, sustituidas por otras (de ahí el "enmascaramiento"). Proxy abierto: Este tipo de proxy es el que acepta peticiones desde cualquier ordenador, esté o no conectado a su red. Cross-Domain Proxy: Típicamente usado por Tecnologías web asíncronas (flash, ajax, comet, etc.) que tienen restricciones para establecer una comunicación entre elementos localizados en distintos dominios

Page 5: 67645487 TALLER PROXY Configurando Proxy en Pfsense

Desarrollando. La topología a realizar será muy sencilla será implementar un servidor proxy en pfsense en la interface de nuestra LAN.

Ya luego de tener instalado el pfsense y configurado las interfaces no dirigimos a instalar el paquete Squid que es uno de los servidores proxy más implementados a nivel mundial. Para instalar el paquete Squid, entramos al sitio web administrativo del pfsense y seleccionamos la pestaña System y damos clic en la opción Package

Luego vamos a buscar el paquete Squid y cuando ya lo encontremos al frente de paquete aparece un cuadrito con un Signo +, damos clic sobre el cuadrito para instalar el paquete.

Page 6: 67645487 TALLER PROXY Configurando Proxy en Pfsense

Cuando hacemos el paso anterior nos aparecerá una imagen como la que se muestra a continuación, donde aparece el proceso de instalación del paquete. Esperamos a que el proceso termine.

Ya de terminado el proceso de instalación nos vamos a la opción

Services y nos debe aparecer el proxy instalado. El proxy en

pfsense se hace llamar Proxy Server.Damos doble clic sobre la

opción Proxy Server para entrar a configurar y crear restricciones

en el servidor proxy.

Page 7: 67645487 TALLER PROXY Configurando Proxy en Pfsense

Nos vamos para la pestaña General para ver la configuración

básica del proxy. Los cambios realizados fueron:

*Especificar la interface a la cual se aplicara el servidor proxy.

*Que todos los usuarios de la red LAN utilicen el proxy.

*Especificamos la ruta de los logs.

*Especificamos el puerto del servidor proxy.

*Un nombre.

*Un correo donde se enviaran los mensajes de error.

*El lenguaje.

Y el resto de opciones las dejamos por defecto.

Page 8: 67645487 TALLER PROXY Configurando Proxy en Pfsense

Ahora lo que haremos será crear nuestra lista de páginas a

bloquear.

Nos dirigimos a Services, proxy filter, general settings aquí

habilitaremos todas las opciones de nuestro proxy.

Page 9: 67645487 TALLER PROXY Configurando Proxy en Pfsense
Page 10: 67645487 TALLER PROXY Configurando Proxy en Pfsense

Ahora para crear nuestra lista de páginas a bloquear, nos

dirigimos ya dentro de la configuración del proxy a la pestaña

Target categories, para generar las listas de restricciones.

Page 11: 67645487 TALLER PROXY Configurando Proxy en Pfsense

Y de la misma manera que creamos la lista para las paginas a

bloquear crearemos otra lista con todas las anteriores

restricciones, pero con el nombre de descanso esto para que,

simplemente para que cuando creemos nuestra lista de acceso

por tiempo se ejecute esta lista.

Page 12: 67645487 TALLER PROXY Configurando Proxy en Pfsense

Aquí vemos nuestras dos listas.

Page 13: 67645487 TALLER PROXY Configurando Proxy en Pfsense

Pasamos ya a crear una lista de tiempo, en esta lista lo que

haremos será determinar un tiempo en especifico, hay será

cuando se ejecutara nuestra lista Descanso.

Page 14: 67645487 TALLER PROXY Configurando Proxy en Pfsense

Ahora lo que nos faltara será crear una lista o mejor dicho un

grupo el cual contenga nuestras dos listas (paginas denegadas y

Descanso) y especificar qué lista es la que se permite y cual la

que se deniega, además de eso especificaremos que rango de ip

serán aplicadas estas reglas.

Para esto nos dirigimos a Groups ACL.

Y como vemos en la anterior imagen especificamos un nombre

para nuestro grupo, un rango de direcciones ip y especificamos la

lista de tiempo Descanso.

Page 15: 67645487 TALLER PROXY Configurando Proxy en Pfsense

Aquí deberemos tener mucho cuidado y atención, esta es la parte

donde me tomo más tiempo corregirla ya que no tenía muy en

claro como ejecutar bien la lista de tiempo, así que lo que

deberemos hacer es, en target categoríes especificamos que

nuestras listas todas se permitan ya que esto no nos sirve, ahora

el target categories for oof-time son las más importante para

que se nos ejecuta nuestra lista de tiempo y demás,

especificamos que la lista de paginas denegadas se deniegue y

que la lista de Descanso y la lista por defecto se permitan.

La mejor muestra de esta configuración la puede observa en la

anterior imagen.

Page 16: 67645487 TALLER PROXY Configurando Proxy en Pfsense

Ahora también especificamos que se deniega y que no, en las

actuales ACL.Nos dirigimos a common ACL.

Allí también especificamos que listas se deniega y que cuales se

permiten.

Ya lo único que faltaría seria guardar para que el proxy tome los

cambios.

Page 17: 67645487 TALLER PROXY Configurando Proxy en Pfsense

Probando.

Para hacer nuestra prueba, lo realizaremos en una maquina de

nuestra LAN que está dentro del rango que especificamos en

nuestro grupo de ACL.

A esta máquina deberemos especificarle la ip de la interface LAN

o Gateway y el puerto de escucha de nuestro proxy 3128.

Page 18: 67645487 TALLER PROXY Configurando Proxy en Pfsense
Page 19: 67645487 TALLER PROXY Configurando Proxy en Pfsense

Denegacion por Palabras.

Denegacion por URL.

Ahora para mostrar bien la prueba por tiempo deberemos saber

bien cuál es la hora de nuestro pfsense especificar un tiempo

para nuestra prueba.

Page 20: 67645487 TALLER PROXY Configurando Proxy en Pfsense

Aplicamos todos los cambios para nuestro proxy.

Aquí vemos nuestra hora actual.

Page 21: 67645487 TALLER PROXY Configurando Proxy en Pfsense

Aquí vemos que todavía están bloqueadas las paginas.

Aquí vemos que ya es la hora que especificamos en nuestra lista

de tiempo,asi que ya podremos acceder a todas las paginas.

Y cuando ya se acaba el tiempo de nuevo se bloquean las

páginas.

Page 22: 67645487 TALLER PROXY Configurando Proxy en Pfsense

Ya con todo lo anterior se podría decir que tenemos una

configuración básica de proxy que fue denegar por ip,por

palabras,por dominios y por url además creamos listas de acceso

por tiempo.

Ahora para complementar mucho más nuestro proxy le daremos

acceso por usuario.

Nos dirigimos a Services, proxy server.

Page 23: 67645487 TALLER PROXY Configurando Proxy en Pfsense

Aquí escogemos la pestaña local user, y creamos los usuarios los

cuales podrán acceder a internet.

Ahora deberemos especificar que el método de autenticación sea

por usuarios locales, nos dirigimos auth settings.

Page 24: 67645487 TALLER PROXY Configurando Proxy en Pfsense

Y listo ya con esto tendremos autenticación por usuarios locales

de pfsense.

Y para complementar mucho mas nuestro proxy lo pondremos en

modo tranparente esto para que el usuario no le toque especificar

la ip del Gateway si no que el proxy se ejecuta en toda la red

transparentemente.

Page 25: 67645487 TALLER PROXY Configurando Proxy en Pfsense

Nos dirigimos a Services, proxy servers y seleccionamos la

pestaña general.

Page 26: 67645487 TALLER PROXY Configurando Proxy en Pfsense

Y listo ya con esto tendremos nuestro proxy transparente.

Page 27: 67645487 TALLER PROXY Configurando Proxy en Pfsense

NOTA:

Al habilitar el proxy transparente la opción de autenticación por

usuario ya no nos serviría.

Glosario:

DMZ: Una DMZ es una red con seguridad perimetral, lo que se hace es ubicar una subred entre la LAN y la WAN. LAN: Una red de área local. WAN: Las Redes de área amplia. Router: Enrutador, en caminador. Dispositivo hardware o software para interconexión de redes de computadoras que opera en la capa tres (nivel de red) del modelo OSI. El Router interconecta segmentos de red o redes enteras. Hace pasar paquetes de datos entre redes tomando como base la información de la capa de red. SDM: SDM es la abreviatura de Cisco Router and Security Device Manager. Una herramienta de mantenimiento basada en una interfaz web desarrollada por Cisco. No es simplemente una interfaz web. Es una herramienta java accesible a través del navegador. Esta herramienta soporta un amplio número de routers Cisco IOS. En la actualidad se entrega preinstalado en la mayoría de los routers nuevos de Cisco. SSH:

Page 28: 67645487 TALLER PROXY Configurando Proxy en Pfsense

SSH (Secure SHell, en español: intérprete de órdenes segura) es el nombre de un protocolo y del programa que lo implementa, y sirve para acceder a máquinas remotas a través de una red. Permite manejar por completo la computadora mediante un intérprete de comandos, y también puede redirigir el tráfico de X para poder ejecutar programas gráficos si tenemos un Servidor X (en sistemas Unix y Windows) corriendo. JAVA: Java es un lenguaje de programación. Existe un gran número de aplicaciones y sitios Web que no funcionan a menos que Java esté instalado, y muchas más que se crean a diario. Java es rápido, seguro y fiable. De portátiles a centros de datos, de consolas de juegos a superequipos científicos, de teléfonos móviles a Internet, Java está en todas partes. NAT: En las redes de computadoras, NAT es el proceso de modificación de la dirección IP de información en los encabezados de paquetes IP, mientras que en tránsito a través de un tráfico de dispositivos de enrutamiento El tipo más simple de NAT proporciona una traducción a una de las direcciones IP. DNS: es un sistema de nomenclatura jerárquica para computadoras, servicios o cualquier recurso conectado a Internet o a una red privada. Este sistema asocia información variada con nombres de dominios asignado a cada uno de los participantes. Su función más importante, es traducir (resolver) nombres inteligibles para los humanos en identificadores binarios asociados con los equipos conectados a la red, esto con el propósito de poder localizar y direccionar estos equipos mundialmente.

Page 29: 67645487 TALLER PROXY Configurando Proxy en Pfsense

TCP: Es uno de los principales protocolos de la capa de transporte del modelo TCP/IP. En el nivel de aplicación, posibilita la administración de datos que vienen del nivel más bajo del modelo, o van hacia él, (es decir, el protocolo IP). Cuando se proporcionan los datos al protocolo IP, los agrupa en datagramas IP, fijando el campo del protocolo en 6 (para que sepa con anticipación que el protocolo es TCP). TCP es un protocolo orientado a conexión, es decir, que permite que dos máquinas que están comunicadas controlen el estado de la transmisión. UDP: UDP son las siglas de Protocolo de Datagrama de Usuario (en inglés User Datagram Protocol) un protocolo sin conexión que, como TCP, funciona en redes IP. UDP/IP proporciona muy pocos servicios de recuperación de errores, ofreciendo en su lugar una manera directa de enviar y recibir datagramas a través una red IP. Se utiliza sobre todo cuando la velocidad es un factor importante en la transmisión de la información, por ejemplo, RealAudio utiliza el UDP. El FTP utiliza TCP/IP, mientras que TFTP utiliza UDP. TFTP son las siglas de Protocolo de Transferencia de Archivos Triviales (en inglés Trivial File Transfer Protocol), y puesto que es trivial, perder algo de información en la transferencia no es crucial Stateless: Crear reglas de ida y de respuesta. Statefull: Crear reglas de ida y las reglas de respuestas son automaticas no hay que crearlas. Mascara wildcard: Una máscara wildcard es sencillamente una agrupación de 32 bits dividida en cuatro bloques de ocho bits cada uno (octetos). La apariencia de una máscara wildcard le recordará problablemente a una máscara de subred. Salvo esa apariencia, no existe otra

Page 30: 67645487 TALLER PROXY Configurando Proxy en Pfsense

relación entre ambas. Por ejemplo, una máscara wildcard puede tener este aspecto:192.168.1.0 mascara normal 255.255.255.0 mascara wildcard 0.0.0.255. mascara normal 255.255.0.0 mascara wildcard 0.0.255.255 mascara normal 255.0.0.0 mascara wildcard 0.255.255.255