Manual Proxy Pfsense
March 9, 2017 | Author: wilmer0929 | Category: N/A
Short Description
Download Manual Proxy Pfsense...
Description
IMPLEMENTACIÒN DE PROXY CON PFSENSE
Por Wilmer Arlex Castrillòn
Grupo 38110
Instructor Mauricio Ortiz
Centro de servicios y gestión empresaria Tecnólogo en administración de redes Sena Medellín 2011
Introducción 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 Un proxy es un programa o dispositivo que realiza una acción en representación de otro, esto es, si una hipotética máquina a solicita un recurso a una c, lo hará mediante una petición a b; C entonces no sabrá que la petición procedió originalmente de a. Su finalidad más habitual es la de servidor proxy, que sirve para interceptar las conexiones de red que un cliente hace a un servidor de destino, por varios motivos posibles como seguridad, rendimiento, anonimato, etc.
Servidor proxy en pfsense Para implementar un servidor proxy primeros vamos a dar una pequeña teoría del servidor proxy. Un proxy me permite tener control sobre la navegación en internet. Su finalidad más habitual es la de servidor proxy, que sirve para interceptar las conexiones de red que un cliente hace a un servidor de destino, por varios motivos posibles como seguridad, rendimiento, anonimato, etc. Existes múltiples proxies 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. Proxies 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 de servicios de internet (ISP). 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.
Diagrama a trabajar
La implementación del servidor proxy la vamos a realizar en pfsense. Ya luego de tener instalado el pfsense y configurado las interfaces no dirigimos a instalar el paquete squid que es uno de los servidores proxies más implementados a nivel mundial. Para instalar el paquete, entramos al sitio web administrativo del pfsense y seleccionamos la pestaña Systemy damos clic en la opción Packages.
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. Nota: Le decimos paquete al programa a instalar en el 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.
Nos vamos para la pestaña Generalpara ver la configuración básica del proxy. Los cambios realizados fueron: habilitar el proxy transparente, cambiar idioma al idioma correspondiente al lenguaje hablado y en el parámetro Proxy interface especificamos en que interfaz va a trabajar el proxy transparente. El proxy siempre va a actuar en la interfaz de la red LAN. El resto de los parámetros se dejan por defecto y guardamos los cambios Todo lo anterior se muestra en las dos imágenes a continuación.
Restricciones en el proxy Ahora vamos a probar que el equipo de la red lan salga a internet. Ingresamos a una página xxx en este caso es www.playboy.com para probar que el equipo si este saliendo a esas páginas y más adelante bloquearemos dicha página para comprobar el funcionamiento del proxy..
Para bloquear la página del paso anterior nos dirigimos ya dentro de la configuración del proxy a la pestaña Access Control para generar la restricción. Ya dentro de dicha pestaña nos dirigimos al parámetro Blacklist y al frente colocamos las páginas a bloquear. En este ejemplo vamos a bloquear la página del paso anterior que es www.playboy.com y damos clic en Save.
Ahora vamos a realizar la prueba de la restricción de la página xxx. Para ello nos dirigimos a la máquina que está dentro de la red LAN y volvemos a ingresar a la página www.playboy.com y nos debe salir un error como se muestra en la imagen siguiente.
Ahora vamos a hacer una restricción en la que va hacer primordial el peso de descargar de una página. Para realizar dicha restricción vamos a la pestaña TrafficMigmt y en el parámetro Maximumdownloadsize especificamos la cantidad máximo peso de descarga d la página en kilobytes, en este ejemplo colocamos 15 kilobytes y guardamos los cambios.
Luego nos dirigimos a la máquina que está dentro de la red LAN para realizar la prueba de la restricción del paso anterior. Desde la maquina local abrimos el navegador e ingresamos a la página www.softonic.com, dicha página el peso de descarga de la página es muy grande ya que dicha página sirve para descargar programas entonces su contenido pesa demasiado. Si todo está bien nos debe salir una imagen después de ingresar a la página de softonic como la que se muestra a continuación.
Vamos a crear una restricción que cuando un usuario de la red LAN quiera navegar en internet deba autenticarse contra el servidor proxy. La autenticación con el proxy no sirve si tenemos habilitado que el proxy es transparente. Para poder crear la restricción de autenticación vamos a la pestaña General, le quitamos el chulo al parámetro Transparent Proxyy guardamos los cambios.
Ahora si vamos a crear la restricción para navegar a internet con autenticación en el proxy, para ello nos dirigimos a la pestaña Auth Settings y en el parámetro Authentication method vamos a seleccionar Local. Esto quiere decir que el método de autenticación va hacer local y guardamos los cambios.
Luego vamos a crear los usuarios locales que se van a autenticar en el servidor proxy, para ello vamos a la pestaña Local Users y dentro de dicha pestaña vamos y daño clic en el cuadrito con el signo + para agregar un usuario local. Nota: Los usuarios creados en la pestaña Local Users pueden ser otros usuarios distintos a los del sistema.
Llenamos los parámetros correspondientes para crear el usuario y luego guerdarmos para que los cambios se apliquen. En este ejemplo el usuario es Wilmer.
Aquí como lo muestra la imagen siguiente se ve el usuario creado correctamente. Si queremos añadir más usuarios repetimos los dos anteriores pasos y listo.
Ahora desde el equipo que está dentro de la red LAN, abrimos el navegador y vamos a configurar en el navegador el proxy, ya que recuerden que el proxy no está trabajando como trasparente. Para configurar el proxy en el navegador y realizar la prueba vamos a la opción del navegador editary seleccionamos Preferencias.
Luego nos dirigimos a la pestaña Avanzado, luego de estar en dicha pestaña nos dirigimos a la pestaña Red y damos doble clic sobre la opción Configuración.
No va a parecer una imagen como la que se muestra a continuación, seleccionamos la opción Configuración manual del proxy y en el parámetro Proxy HTTP ingresamos la dirección ip y el puerto por donde escucha las peticiones del servidor proxy, seleccionamos con el chulo la opción Usar el mismo proxy para todo ydamos clic en aceptar.
Cerramos el navegador y lo volvemos a abrir e ingresamos a una página en internet y nos debe aparecer un cuadro solicitando usuario y contraseña para navegar en internet. Si le parece una imagen como la que se muestra a continuación la restricción si se esta aplicando.
Si la autenticación con el usuario yla contraseña son correctas podremos navegar en internet.
Ahora vamos a crear restricción por dirección IP. Para hacer dicha restricción en el pfsense nos dirigimos a la pestaña Access control y en el parámetro Banned host addresses colocamos la ip del host a restringir la navegación y guardamos para que se aplique los cambios.
Ahora desde la maquina local abrimos la consola y listamos su configuración IP y verificamos que la IP si corresponda con la dirección IP que se le va a aplicar la restricción.
Ahora abrimos el navegador e intentamos ingresar a una página cualquiera en internet y nos saldrá una imagen como la que se ve a continuación sacando un error.
Instalación del complemento SquidGuard para el servidor proxy SquidGuardes un redirector dirección URL utilizada para el uso de listas negras con los proxysoftware Squid. Hay dos grandes ventajas de SquidGuard: es rápido y es gratis. SquidGuard se publica bajo licencia pública GNU. Ya sabiendo que es SquidGuard vamos a instalar el paquete o sea el complemento, para ello nos vamos a la pestaña System del pfsense y seleccionamos Packages.
Buscamos el complemento o paquete y al frente aparece un cuadrito con un signo +,damos clic sobre el para instalar.
Ya realizado el paso anterior nos va a aparecer el proceso de instalación y esperamos a que termine.
Luego de que termine la instalación vamos a la pestaña Services y nos debe de aparecer el nombre proxy filter. Si aparece dicho nombre es porque el SquidGuard instalo correctamente y damos doble clic sobre dicho nombre.
Dentro del Proxy Filter para que el SquidGuard empiece a funcionar vamos al parámetro Enable y al frente nos va a aparecer un cuadrito para generar un chulito, generamos el chulito y damos clic en Apply. Si todo lo anterior se hizo correctamente va a aparecer que es SquidGuard esta iniciado. Todo lo anterior se afirma en la siguiente imagen.
Restricciones con SquidGuard Para generar restricciones dentro del SquidGuard primero vamos a la pestaña Target categories para crear una nueva categoría. Para agregar la categoría debemos dar clic sobre el cuadrito con el signo +.
Le asignamos un nombre a la categoría y vamos al parámetro Domain list y añadimos los dominios que queremos restringir. En este caso como prueba son los dominios facebook.com y Wikipedia.org y damos clic en guardar.
Aquí podemos ver que la categoría se agregó correctamente.
Luego vamos a crear una regla de grupo para aplicársela a la categoría creada en el paso anterior, para ello nos dirigimos a la pestaña Groups ACLy damos clic sobre el cuadrito que tiene un signo +.
Los parámetros a básicos a configurar son: Name: Asignamos un nombre para la ACL. Client (origen): dirección ip del equipo al cual le vamos a aplicar la ACL. Si queremos aplicársela a una red completa colocamos el ID de red con su respectiva mascara. Target Rules: damos clic sobre el símbolo > que aparece en color verde y buscamos la categoría creada anteriormente con el nombre que le asignamos en las opciones que aparecen al frente de la categoría que son Accesscolocamos deny, esto va a denegarlos dominio que queremos restringir. Guardamos los cambios.
Ya esta creada la ACL que me va a denegar lo dominios especificados en la categoría Paginas.
Ahora vamos hacia el equipo que está dentro de la red para realizar las pruebas de los dominios. Abrimos el navegador e ingresamos a los dominios denegados anteriormente. En este ejemplo denegamos facebook.com y wikipedia.org. En la imagen que se ve a continuación podremos ver que al ingresar al dominio facebook.com el proxy deniega la conexión.
En este paso podremos observar también que el dominio wikipedia.org también el proxy esta denegando la conexión hacia la pagina web.
Procedemos a crear una restricción en el proxy de tiempo. La regla de tiempo va a permitir denegar el acceso a internet en un horario específico. Para crear la regla de tiempo vamos a la pestaña Times que está dentro del paquete Proxy Filter y estando dentro de la pestaña Times damos clic en el cuadrito que tiene en signo + para añadir una nueva regla.
Los parámetros a configurar en esta restricción son: Name: asignamos un nombre a la restricción. Values: Valores que va a tener la restricción, que son:
Time type: Especificados el tipo de tiempo Days: Los días en lo que se va a aplicar la restricción Time range: Rango del tiempo en horas para denegar el acceso a internet.
Ya teniendo configurado los parámetros anteriores guardamos. En la imagen que se muestra a continuación vemos un ejemplo de cómo crear la regla de tiempo.
En rango del tiempo especificado en el paso anterior fue de 6:30 a 7:30. Ahora nos dirigimos a la maquina local verificamos la hora que se encuentra en la parte superior derecha e ingresamos al navegar e intentamos abrir una pagina web. El resultado debe ser igual a el que nos muestra la imagen siguiente.
Ahora vamos a restringir con el proxy por expresiones. Para realizar las restricciones por expresiones nos dirigimos a la pestaña Target categories que se encuentra dentro del paquete Proxy Filter y luego damos clic en el cuadrito que contiene la letra e para editar la categoría que aparece.
Ya estando en la categoría nos dirigimos al parámetro Expressions e ingresamos las expresiones a bloquear, en este caso son sexo y porno, en el parámetro redirect mode seleccionamos la opción que aparece en la imagen para que cuando salga el error en la pagina muestra un mensaje personalizado y el mensaje personalizado se agrega en el parámetro Redirect. Las expresiones deben de ir separadas por una tubería. Ya cuando tengamos las expresiones añadidas guardamos.
Desde la maquina que está en la red LAN ingresamos a ww.google.com y buscamos las expresiones que se añadieron en el paso anterior las cuales se van a denegar. En la imagen siguiente se muestra ingresando a www.google.com y buscando la expresión sexo.
Al dar enter en buscar en google en el paso anterior nos debe salir la siguiente imagen que se muestra con el error y el mensaje personalizado que colocamos.
CONCLUSIONES
Al implementar un servidor proxy en nuestra red nos va a permitir tener mejor rendimiento en una empresa u organización ya que tendremos control sobre la navegación a internet y esto va permitir que cualquier empleado no entre a páginas web que no se debe entrar en horarios de trabajo. El servidor proxy es uno de los elementos básicos en una red en donde es constante la navegación a internet. Un servidor proxy también es uno de los elementos de la seguridad informática ya que brinda seguridad en la red. Hay que tener claro antes de implementar un proxy que tipo de proxy se va a utilizar y que es lo que busca la empresa con el servidor proxy.
View more...
Comments