Manual Proxy Pfsense

download Manual Proxy Pfsense

of 26

Transcript of Manual Proxy Pfsense

IMPLEMENTACIN DE PROXY CON PFSENSE

Por Wilmer Arlex Castrilln

Grupo 38110

Instructor Mauricio Ortiz

Centro de servicios y gestin empresaria Tecnlogo en administracin de redes Sena Medelln 2011

Introduccin En este trabajo les dar a conocer como implementar y configurar un proxy con pfsense. Pfsense es una distribucin personalizada de FreeBSD adaptado para su uso como Firewall y Router. Se caracteriza por ser de cdigo abierto, puede ser instalado en una gran variedad de ordenadores, y adems cuenta con una interfaz web sencilla para su configuracin Un proxy es un programa o dispositivo que realiza una accin en representacin de otro, esto es, si una hipottica mquina a solicita un recurso a una c, lo har mediante una peticin a b; C entonces no sabr que la peticin procedi originalmente de a. Su finalidad ms 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 pequea teora del servidor proxy. Un proxy me permite tener control sobre la navegacin en internet. Su finalidad ms 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 mltiples 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 peticin se realiza mediante una Aplicacin Web embebida en un Servidor HTTP al que se accede mediante una direccin DNS, esto es, una pgina web que permite estos servicios. Proxy Cach:Su mtodo de funcionamiento es similar al de un proxy HTTP o HTTPs. Su funcin es precargar el contenido web solicitado por el usuario para acelerar la respuesta Web en futuras peticiones de la misma informacin de la misma mquina u otras. Almacenar las pginas y objetos que los usuarios solicitan puede suponer una violacin 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 configuracin 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 ms servidores web. Todo el trfico entrante de Internet y con el destino de uno de esos servidores web pasa a travs del servidor proxy. Proxy NAT:Otro mecanismo para hacer de intermediario en una red es el NAT. La traduccin de direcciones de red (NAT, Network AddressTranslation) tambin es conocida como enmascaramiento de IPs. Es una tcnica 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:Tpicamente usado por Tecnologas web asncronas (flash, ajax, comet, etc) que tienen restricciones para establecer una comunicacin entre elementos localizados en distintos dominios.

Diagrama a trabajar

La implementacin 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 ms implementados a nivel mundial. Para instalar el paquete, entramos al sitio web administrativo del pfsense y seleccionamos la pestaa Systemy damos clic en la opcin 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 continuacin, donde aparece el proceso de instalacin del paquete. Esperamos a que el proceso termine.

Ya de terminado el proceso de instalacin nos vamos a la opcin Services y nos debe aparecer el proxy instalado. El proxy en pfsense se hace llamar Proxy Server. Damos doble clic sobre la opcin Proxy Server para entrar a configurar y crear restricciones en el servidor proxy.

Nos vamos para la pestaa Generalpara ver la configuracin bsica del proxy. Los cambios realizados fueron: habilitar el proxy transparente, cambiar idioma al idioma correspondiente al lenguaje hablado y en el parmetro 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 parmetros se dejan por defecto y guardamos los cambios Todo lo anterior se muestra en las dos imgenes a continuacin.

Restricciones en el proxy Ahora vamos a probar que el equipo de la red lan salga a internet. Ingresamos a una pgina xxx en este caso es www.playboy.com para probar que el equipo si este saliendo a esas pginas y ms adelante bloquearemos dicha pgina para comprobar el funcionamiento del proxy..

Para bloquear la pgina del paso anterior nos dirigimos ya dentro de la configuracin del proxy a la pestaa Access Control para generar la restriccin. Ya dentro de dicha pestaa nos dirigimos al parmetro Blacklist y al frente colocamos las pginas a bloquear. En este ejemplo vamos a bloquear la pgina del paso anterior que es www.playboy.com y damos clic en Save.

Ahora vamos a realizar la prueba de la restriccin de la pgina xxx. Para ello nos dirigimos a la mquina que est dentro de la red LAN y volvemos a ingresar a la pgina www.playboy.com y nos debe salir un error como se muestra en la imagen siguiente.

Ahora vamos a hacer una restriccin en la que va hacer primordial el peso de descargar de una pgina. Para realizar dicha restriccin vamos a la pestaa TrafficMigmt y en el parmetro Maximumdownloadsize especificamos la cantidad mximo peso de descarga d la pgina en kilobytes, en este ejemplo colocamos 15 kilobytes y guardamos los cambios.

Luego nos dirigimos a la mquina que est dentro de la red LAN para realizar la prueba de la restriccin del paso anterior. Desde la maquina local abrimos el navegador e ingresamos a la pgina www.softonic.com, dicha pgina el peso de descarga de la pgina es muy grande ya que dicha pgina sirve para descargar programas entonces su contenido pesa demasiado. Si todo est bien nos debe salir una imagen despus de ingresar a la pgina de softonic como la que se muestra a continuacin.

Vamos a crear una restriccin que cuando un usuario de la red LAN quiera navegar en internet deba autenticarse contra el servidor proxy. La autenticacin con el proxy no sirve si tenemos habilitado que el proxy es transparente. Para poder crear la restriccin de autenticacin vamos a la pestaa General, le quitamos el chulo al parmetro Transparent Proxyy guardamos los cambios.

Ahora si vamos a crear la restriccin para navegar a internet con autenticacin en el proxy, para ello nos dirigimos a la pestaa Auth Settings y en el parmetro Authentication method vamos a seleccionar Local. Esto quiere decir que el mtodo de autenticacin 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 pestaa Local Users y dentro de dicha pestaa vamos y dao clic en el cuadrito con el signo + para agregar un usuario local. Nota: Los usuarios creados en la pestaa Local Users pueden ser otros usuarios distintos a los del sistema.

Llenamos los parmetros 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 aadir ms 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 opcin del navegador editary seleccionamos Preferencias.

Luego nos dirigimos a la pestaa Avanzado, luego de estar en dicha pestaa nos dirigimos a la pestaa Red y damos doble clic sobre la opcin Configuracin.

No va a parecer una imagen como la que se muestra a continuacin, seleccionamos la opcin Configuracin manual del proxy y en el parmetro Proxy HTTP ingresamos la direccin ip y el puerto por donde escucha las peticiones del servidor proxy, seleccionamos con el chulo la opcin Usar el mismo proxy para todo ydamos clic en aceptar.

Cerramos el navegador y lo volvemos a abrir e ingresamos a una pgina en internet y nos debe aparecer un cuadro solicitando usuario y contrasea para navegar en internet. Si le parece una imagen como la que se muestra a continuacin la restriccin si se esta aplicando.

Si la autenticacin con el usuario yla contrasea son correctas podremos navegar en internet.

Ahora vamos a crear restriccin por direccin IP. Para hacer dicha restriccin en el pfsense nos dirigimos a la pestaa Access control y en el parmetro Banned host addresses colocamos la ip del host a restringir la navegacin y guardamos para que se aplique los cambios.

Ahora desde la maquina local abrimos la consola y listamos su configuracin IP y verificamos que la IP si corresponda con la direccin IP que se le va a aplicar la restriccin.

Ahora abrimos el navegador e intentamos ingresar a una pgina cualquiera en internet y nos saldr una imagen como la que se ve a continuacin sacando un error.

Instalacin del complemento SquidGuard para el servidor proxy SquidGuardes un redirector direccin URL utilizada para el uso de listas negras con los proxysoftware Squid. Hay dos grandes ventajas de SquidGuard: es rpido y es gratis. SquidGuard se publica bajo licencia pblica GNU. Ya sabiendo que es SquidGuard vamos a instalar el paquete o sea el complemento, para ello nos vamos a la pestaa 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 instalacin y esperamos a que termine.

Luego de que termine la instalacin vamos a la pestaa 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 parmetro 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 pestaa Target categories para crear una nueva categora. Para agregar la categora debemos dar clic sobre el cuadrito con el signo +.

Le asignamos un nombre a la categora y vamos al parmetro Domain list y aadimos 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 categora se agreg correctamente.

Luego vamos a crear una regla de grupo para aplicrsela a la categora creada en el paso anterior, para ello nos dirigimos a la pestaa Groups ACLy damos clic sobre el cuadrito que tiene un signo +.

Los parmetros a bsicos a configurar son: Name: Asignamos un nombre para la ACL. Client (origen): direccin ip del equipo al cual le vamos a aplicar la ACL. Si queremos aplicrsela a una red completa colocamos el ID de red con su respectiva mascara. Target Rules: damos clic sobre el smbolo > que aparece en color verde y buscamos la categora creada anteriormente con el nombre que le asignamos en las opciones que aparecen al frente de la categora 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 categora 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 continuacin podremos ver que al ingresar al dominio facebook.com el proxy deniega la conexin.

En este paso podremos observar tambin que el dominio wikipedia.org tambin el proxy esta denegando la conexin hacia la pagina web.

Procedemos a crear una restriccin en el proxy de tiempo. La regla de tiempo va a permitir denegar el acceso a internet en un horario especfico. Para crear la regla de tiempo vamos a la pestaa Times que est dentro del paquete Proxy Filter y estando dentro de la pestaa Times damos clic en el cuadrito que tiene en signo + para aadir una nueva regla.

Los parmetros a configurar en esta restriccin son: Name: asignamos un nombre a la restriccin. Values: Valores que va a tener la restriccin, que son: Time type: Especificados el tipo de tiempo Days: Los das en lo que se va a aplicar la restriccin Time range: Rango del tiempo en horas para denegar el acceso a internet.

Ya teniendo configurado los parmetros anteriores guardamos. En la imagen que se muestra a continuacin vemos un ejemplo de cmo 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 pestaa 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 categora que aparece.

Ya estando en la categora nos dirigimos al parmetro Expressions e ingresamos las expresiones a bloquear, en este caso son sexo y porno, en el parmetro redirect mode seleccionamos la opcin 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 parmetro Redirect. Las expresiones deben de ir separadas por una tubera. Ya cuando tengamos las expresiones aadidas guardamos.

Desde la maquina que est en la red LAN ingresamos a ww.google.com y buscamos las expresiones que se aadieron en el paso anterior las cuales se van a denegar. En la imagen siguiente se muestra ingresando a www.google.com y buscando la expresin 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 organizacin ya que tendremos control sobre la navegacin a internet y esto va permitir que cualquier empleado no entre a pginas web que no se debe entrar en horarios de trabajo. El servidor proxy es uno de los elementos bsicos en una red en donde es constante la navegacin a internet. Un servidor proxy tambin es uno de los elementos de la seguridad informtica 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.