Filtrado Web con Vyatta en 5 minutos
Uno de los muchos servicios que ofrece Vyatta es el filtrado Web a través de un proxy, en concreto la solución Squid + SquidGuard. Vyatta ha mejorado este servicio en la versión 6 Alpha, agregando nuevas funcionalidades que no están disponibles en la versión 5 stable.
En este artículo mostraremos lo fácil que es activar el servicio web proxy, así como el filtrado web en sólo 5 minutos. El laboratorio lo realizaremos en un entorno virtual.

Para poder realizar el laboratorio tenemos que contar previamente con una instalación operativa de Vyatta, para ello podemos seguir el artículo Instalando Vyatta Open Networking. Hay que recordar que si deseamos tener funciones adicionales debemos usar la versión 6 Alpha.
Los pasos a seguir para poner en marcha nuestro filtrado Web son los siguientes:
- Activar el servicio Web Proxy.
- Instalar listas negras.
- Activar el filtrado Web.
- Configurar filtrado Web.
- Probando el servicio.
Activar el servicio Web Proxy
El primer paso es acceder al modo configuración de nuestro Vyatta con el comando configure y a continuación ejecutar el comando set service webproxy.
A continuación, configuramos por cual dirección IP el servicio se mantendrá a la escucha de las peticiones clientes. En nuestro caso, la dirección IP que se encuentra escuchando en la red interna configurada en nuestro Vyatta es 192.168.2.254. Para ello ejecutamos el comando set service webproxy listen-address <dirección IP>.
Una vez ejecutados los comandos anteriores, es necesario aplicar los cambios para poder continuar con la activación del filtrado Web. Para ello ejecutamos el comando commit y seguidamente save.
Si no deseásemos dicho filtrado y sólo un servidor proxy para mejorar el rendimiento de la conexión a Internet usando la cache almacenada, sería suficiente con los pasos realizados.
Instalar listas negras
El siguiente paso es descargar las listas negras que usará nuestro filtrado Web si las activásemos. Para poder efectuar dicha descarga tenemos que estar fuera del modo configuración y ejecutar el comando update webproxy blacklists y confirmamos el mensaje.
Cuando haya finalizado la descarga, el sistema de forma automática descomprimirá el paquete e instalará las diferentes categorías de listas negras.
Activar el filtrado Web
El siguiente paso será activar el fitrado Web con la aplicación SquidGuard, la cual dispone nuestro Vyatta. Para activarlo ejecutamos el comando set service webproxy url-filtering squidguard. Para ello tenemos que acceder de nuevo al modo configuración con el comando configure.
Aplicamos los cambios con el comando commit y guardamos la configuración con save.
Configurar filtrado Web
El siguiente paso es configurar nuestro filtrado Web, nosotros activaremos todas las categorías disponibles en las listas negras, para ello ejecutamos el comando set service webproxy url-filtering squidguard block-category all. Aplicamos los cambios con commit y grabamos la configuración con save.
Ahora vamos a configurar las actualizaciones automáticas de la base de datos de las listas negras, para ello ejecutamos el comando set service webproxy url-filtering squidguard auto-update daily, para que lo haga diariamente. Aplicamos los cambios con commit y los grabamos con save.
Con los pasos que hemos realizado ya tenemos disponible nuestro Vyatta con filtrado Web. Si deseamos realizar otros tipos de configuraciones podemos utilizar los siguientes comandos dentro de la sentencia set service webproxy url-filtering squidguard:
- allow-ipaddr-url --> Permite direcciones IP de páginas Webs.
- default-action --> Establece la acción predeterminada del filtro Web, permitir o bloquear todo (allow/block).
- local-block --> Bloquea direcciones IP/URL Webs.
- local-block-keyword --> Bloquea páginas Webs que contengan dichas palabras.
- local-ok --> Permite direcciones IP/URL Webs.
- log --> Define el nivel de registro de eventos.
- redirect-url --> Redirección a otra URL para Webs filtradas.
- rule --> Permite crear reglas para grupos.
- source-group --> Define los miembros del grupo.
- time-period --> Define periodos de tiempos para aplicar a las reglas.
Probando el servicio
Para probar el servicio sólo tenemos que configurar nuestro explorador para que use un servidor proxy y lo haga por el puerto predeterminado de Squid que es el 3128.
Podemos probar el acceso a algunas páginas de contenido para adultos a ver si resultan bloqueadas, o de otro tipos de contenidos. Hay que tener en cuenta que bloqueará lo que exista en las bases de datos, si deseamos bloquear otro tipo de contenidos tendremos que usar el comando set service webproxy url-filtering squidguard local-block-keyword <palabra>.









20 febrero, 2010 - 10:49
hola de nuevo, interesante esto de vyatta, hay distribuidores en españa?.
otra cosa estoy trasteando con xenserver y xendesktop y me ha surgido una duda, si necesito virtualizar un sevidor con un aplicativo que necesita de mochila para funcionar como se hace en xenserver?
gracias
20 febrero, 2010 - 19:15
Hola Oscar,
Pues no sé si en España hay distribuidores, he intentado buscar dicha información pero no he dado con nada.
Referente a lo de XenServer no se puede hacer nada con sus puertos series a nivel de dispositivos ni con los USB (excepto almacenamiento). Por ahora dichos puertos no son virtualizables, si es una llave USB puedes usar un software que instala un servidor de dispositivos USB en un equipo físico y con un cliente instalado en tu máquina virtual se conecta a ellos (http://www.fabulatech.com/), también válido para puertos series.
Un saludo.
7 julio, 2010 - 04:24
HOla amigo, junto con saludarlo quiero agradecer el aporte que hace a la comunidad de networking.
respecto a este laboratorio quiero comentar un problema que surgió en mi maquina virtual, ya que en me sale como que .. estoy tratando de solucionar el problema por aca… ojala aclares ese punto. saludos y de antemano muchas gracias.
7 julio, 2010 - 08:16
Hola Eduardo,
Gracias a ti. Pero no entiendo lo que quieres saber.
Un saludo.
29 julio, 2010 - 22:22
Hola que tal, apenas estoy viendo lo que es yatta pero no se aun como configurar no he encotrado manuales para abrir puertos a cada ip para configurar fw .. te dejo mi msn espero que me puedas agregar un saludo y gracias
29 julio, 2010 - 22:43
Hola Francisco,
He eliminado tu dirección de correo para así evitar que esté de modo pública. Y mejor que vayamos aportando opiniones y experiencias por comentarios o artículos que en privado, de este modo podemos compartirlo con el resto de usuarios.
Para empezar puedes visitar http://www.vyatta.org/documentation donde encontrarás mucha documentación a todo lo que necesites.
Un saludo.
10 septiembre, 2010 - 05:37
Hola muy buen articulo. Tengo una pregunta. Soy nuevo en Vyatta y Estoy configurandolo para mi oficina. Cuando intento actualizar los Blacklists el router se queda buscando la direcciòn de FTP configurada en el update pero no logra encontrar el directorio para descargar el Blacklist. Que puedo hacer para mantenerlo al dia?
10 septiembre, 2010 - 08:58
Hola Carlos,
Muchas gracias, el problema es que la dirección desde la cual se ha de bajar el fichero de listas negras no está operativo. Un modo para salir al paso es hacer lo siguiente:
1º Accede a tu vyatta y eleva los privilegios a root con el comando su -
2º Edita el fichero /opt/vyatta/bin/sudo-users/vyatta-sg-blacklist.pl con el comando vi /opt/vyatta/bin/sudo-users/vyatta-sg-blacklist.pl
3º Después de la línea Below are some free blacklists we’ve tried: aparecen tres posibles URLs de las cuales bajar el fichero, la que está fallando es la de Francia, selecciona la de USA que es http://squidguard.mesd.k12.or.us/blacklists.tgz y cambiala en la sentencia my $blacklist_url = quedando del siguiente modo my $blacklist_url = ‘http://squidguard.mesd.k12.or.us/blacklists.tgz';
4º Guarda el fichero editado y sal de modo root con exit
5º Landa la actualización con el comando update webproxy blacklist
Saludos y cuentas que tal fue.
20 enero, 2011 - 12:52
Hola José, un placer conocerte. Estoy siguiento tu tutorial. Hay algo que quería preguntarte muy básico. Este filtrado web, aparte de la mejora que conlleva el cacheado a través de SQUID, tiene alguna funcionalidad más como
- baneo de ciertas urls
- bloquear ciertas ips
- etc
No tengo mucha experiencia con Vyatta y además del rendimiento, que por lo que leo, es la principal razón de habilitar esto, me pregunto por estas funcionalidades.
Un saludo cordial
Rubén Ortiz
20 enero, 2011 - 12:56
Hola de nuevo,
creo que me acabo de autoresponder con este mismo tutorial
* allow-ipaddr-url –> Permite direcciones IP de páginas Webs.
* default-action –> Establece la acción predeterminada del filtro Web, permitir o bloquear todo (allow/block).
* local-block –> Bloquea direcciones IP/URL Webs.
* local-block-keyword –> Bloquea páginas Webs que contengan dichas palabras.
* local-ok –> Permite direcciones IP/URL Webs.
* log –> Define el nivel de registro de eventos.
* redirect-url –> Redirección a otra URL para Webs filtradas.
* rule –> Permite crear reglas para grupos.
* source-group –> Define los miembros del grupo.
* time-period –> Define periodos de tiempos para aplicar a las reglas.
Gracias!
20 enero, 2011 - 16:35
Hola Alguien sabe el procedimiento para configurar vyatta como firrewall en modo transparente para proteger una extencion de una red que alberga un grupo de servidores.
les agradereceria cualquier apollo con esto
saludos….
20 enero, 2011 - 18:30
Hola Rubén:
Me alegro que se hayan aclarado tus dudas tras leer el artículo. Para posteriores consultas recuerda pasarte por nuestros foros en http://blog.e2h.net/foros
Un saludo y espero seguir viéndote por aquí.
20 enero, 2012 - 00:02
oye yo tengo un problema en esta configuracion, bajo las blacklists y trato de set service webproxy url-filtering squidguard y me manda el siguiente error “cache-size must lot less than free disk space in var/spool, tengo cache-size de 1000, pero parece que las blacklists pesan 12 Mb y tengo espacio de 10 MB, mi pregunta es, ¿Como puedo aumentar esto a los 12Mb que necesito?
De antemano gracias por su respuesta
23 enero, 2012 - 12:52
Hola Amaury,
Por favor las consultas a través de los foros en http://blog.e2h.net/foros
Un saludo.