Comparativa Firewall: IPCop vs. pfSense

10,715 views

Published on

¿Cuál es el sistema open source de Firewall ganador? Es difícil decidirse... hay muchas buenas opciones. Por eso hemos elaborado esta guía comparativa sobre 2 de nuestros preferidos, IPCop y pfSense, en base a nuestra experiencia en muchos proyectos desde @irontec.

Published in: Internet

Comparativa Firewall: IPCop vs. pfSense

  1. 1. Xabier Amezaga Comparativa entre IPCop y pfSense
  2. 2. Versiones analizadas de IPCop y pfSense • v2.1.3 (Mayo 2014) – v2.1.4 (Abril 2014)
  3. 3. Comparativa entre las soluciones de Firewall IPCop y pfSense • VPN (Cliente Remoto) • Reenvío de Puertos • Control de Tráfico • Filtro URL • Otras consideraciones
  4. 4. VPN (Cliente Remoto) • Soporta IPsec, L2TC, OpenVPN y PPTP:
  5. 5. VPN (Cliente Remoto) • Permite conexiones Red-a-Red:
  6. 6. VPN (Cliente Remoto) • y conexiones Host-a-Red:
  7. 7. VPN (Cliente Remoto) • Posee un Wizard para realizar la configuración de manera asistida si no se quiere realizar manualmente:
  8. 8. VPN (Cliente Remoto) • OpenVPN Client Export Utility nos permite exportar el cliente de OpenVPN directamente listo para instalarse • Es necesario instalarlo vía Package Manger (System Packages→ )
  9. 9. VPN (Cliente Remoto) • Configurado el servidor de OpenVPN y creados los certificados necesarios, podemos exportar el Cliente OpenVPN de forma muy sencilla: VPN OpenVPN Client Export→ →
  10. 10. VPN (Cliente Remoto) • Permite ver el estado de las conexiones activas de los clientes:
  11. 11. • Soporta IPsec y OpenVPN: VPN (Cliente Remoto)
  12. 12. • Solo permite conexiones Host-a-Red (RoadWarrior): VPN (Cliente Remoto)
  13. 13. • Permite exportar SOLO los certificados, tenemos que instalar el cliente OpenVPN y añadir los certificados manualmente: VPNs OpenVPN→ VPN (Cliente Remoto)
  14. 14. • Permite ver el estado de las conexiones y estadísticas de conexión: VPN (Cliente Remoto)
  15. 15. ✔ Soporta IPsec, L2TC, OpenVPN y PPTP ✔ Conexiones Red-a-Red ✔ Conexiones Host-a-Red ✔ Wizard ✔ OpenVPN Client Export Utility ✔ OpenVPN Status VPN (Cliente Remoto) - Resumen ✔ Soporta Ipsec y OpenVPN ✔ Conexiones Host-a-Red ✔ Exportar solo certificados ✔ OpenVPN Status
  16. 16. Reenvío de Puertos (Port Forwarding) • Permite el Reenvío de Puertos desde el menu: Firewall NAT Port Forward→ → • Destination Port Range: Aquí vemos dos campos, esto es porque podemos escoger un rango de puertos que serán redirigidos al puerto especificado en el campo Redirect Target IP • Redirect Target IP: Dirección IP a la que se reenviará la petición, o lo que es lo mismo, la dirección del servidor que ofrece el servicio dentro de nuestra red. • Redirect Target Port: Este es el puerto al que se redirigirán las peticiones.
  17. 17. ➔ En el siguiente ejemplo, las peticiones que entren dirigidas al puerto 9000 serán reenviadas al puerto 5555 del sistema con la ip 192.168.1.229
  18. 18. Reenvío de Puertos (Port Forwarding) • Permite escoger un rango de puertos que serán redirigidos al puerto especificado en el campo Redirect Target IP ➔ En el siguiente ejemplo, todas las peticiones entre el puerto 8000 y el 9000 se redirijan al puerto 222 de la máquina
  19. 19. Reenvío de Puertos (Port Forwarding) • Crea las reglas para el Firewall automáticamente, pero también permite crearlas de forma manual: Firewall Rules→
  20. 20. • No permite añadir un rango de puertos en el destino, solo uno concreto por defecto o personalizado Reenvío de Puertos (Port Forwarding)
  21. 21. • Crea reglas para el Firewall automáticamente, pero también permite crearlas de forma manual Reenvío de Puertos (Port Forwarding)
  22. 22. • Si se necesita un puerto que no es por defecto hay que añadirlo previamente: Cortafuegos Servicios→ Reenvío de Puertos (Port Forwarding)
  23. 23. ✔ Reenvío de Puertos ✔ Rango de puertos en el destino ✔ Reglas para el Firewall auto o manual Reenvío de Puertos - Resumen ✔ Reenvío de Puertos ✔ No rango de puertos en el destino ✔ Reglas para el Firewall auto o manual
  24. 24. • Es capaz de priorizar el trafico según las necesidades desde el menú: Firewall Traffic Shaper→ Control del Tráfico (Traffic Shaper)
  25. 25. • Un forma sencilla de limitar y controlar el ancho de banda es mediante la creación de Limitadores • Desde el menú Firewall Traffic Shaper Limiter→ → podremos crear tanto limitadores como necesitemos Control del Tráfico (Traffic Shaper)
  26. 26. ➔ En el siguiente ejemplo vamos a crear un par de limitadores de subida y bajada para limitar el ancho de banda. • Creamos dos limitadores, de subida y de bajada, limitados a 1 y 2 Mbit/s respectivamente Control del Tráfico (Traffic Shaper)
  27. 27. • Ahora tenemos que asociar estos limitadores a una regla de nuestro Firewall, en nuestro ejemplo vamos a limitar el ancho de nuestra Red Lan Firewall Rules→ Control del Tráfico (Traffic Shaper)
  28. 28. • Editamos la regla que permite el trafico en nuestra Red Lan y en el apartado Advanced Features editamos la opción IN/OUT añadiendo los limitadores que acabamos de crear. Control del Tráfico (Traffic Shaper)
  29. 29. • Con esto limitaríamos el ancho de banda de nuestra Red Lan, para comprobar que funciona podemos hacer un test de velocidad, dentro de nuestra Lan, antes y después de aplicar los limitadores. ✔ Antes: ✔ Después: Control del Tráfico (Traffic Shaper)
  30. 30. • A parte de poder limitar el el ancho de banda (U/D) de una red Lan, también podemos limitar una o varias IPs determinadas o incluso un puerto especifico ➔ Por ejemplo, vamos a limitar el ancho de banda del acceso por HTTPS, para ello crearemos dos nuevos limitadores (200 kbit/s) y una regla nueva en nuestro Firewall para activarlos. Control del Tráfico (Traffic Shaper)
  31. 31. • Una vez creados los limitadores creamos la nueva regla añadiendo en la opción Destination port range el puerto 443 (HTTPS) y añadimos los limitadores en las opciones avanzadas IN/OUT Control del Tráfico (Traffic Shaper)
  32. 32. • Una vez aplicada la nueva regla, solo nos quedaría probar que funciona correctamente, como se puede observar en la captura la descarga superior que es por HTTPS está limitada que la otra que va por HTTP esta sin limitar Control del Tráfico (Traffic Shaper)
  33. 33. ➔ Otro ejemplo, si queremos limitar el ancho de banda de una IP determinada (por ejemplo 192.168.1.229), deberemos indicarlo en la regla del Firewall: Source Type: Single host or alias→ Control del Tráfico (Traffic Shaper)
  34. 34. • Posee también un Wizard para realizar la configuración del trafico, creando colas y reglas necesarias automáticamente Firewall Traffic Shaper Wizards→ → Control del Tráfico (Traffic Shaper)
  35. 35. • El Wizard no creara las colas y configuración automáticamente pudiendo configurar las prioridades sobre VOIP, trafico P2P, Juegos y otros servicios Control del Tráfico (Traffic Shaper)
  36. 36. ● Permite filtrado por Capa 7 (capa de aplicación), filtrando los protocolos que deseamos bloquear por el contenido de sus paquetes, no por el puerto de origen y destino Control del Tráfico (Traffic Shaper)
  37. 37. • Las opciones que ofrece IPCop son muy básicas • Funciona a base de prioridades (alta/medio/baja) asignadas a cada puerto/servicio que queramos controlar, no es posible asignar un ancho de banda concreto (en Kb o Mb) solo una de las prioridades, las cuales gestiona el mismo IPCop Control del Tráfico (Traffic Shaper)
  38. 38. • Para activar el control de Trafico en IPCop, primero debemos introducir el ancho de banda total de nuestra red para que IPCop pueda gestionarlo Control del Tráfico (Traffic Shaper)
  39. 39. • Después solo tenemos que introducir el puerto/servicio que queramos controla y asignarle una prioridad (alta/medio/baja) Control del Tráfico (Traffic Shaper)
  40. 40. • No permite limitar únicamente el ancho de banda de una IP, si no que limita el trafico en toda nuestra red LAN (Green). • No posee filtrado por Capa 7 (Layer 7) Control del Tráfico (Traffic Shaper)
  41. 41. ✔ Capaz de priorizar el trafico ✔ Limita el ancho de banda de una red Lan ✔ Limita el ancho de banda por IP ✔ Limita el ancho de banda de Puertos ✔ Wizard ✔ Filtrado por Capa 7 (Layer 7) Control del Tráfico - Resumen ✔ Funciona con prioridades (alta/medio/baja) ✔ No limita el ancho de banda por IP ✔ No limita el ancho de banda por Puerto ✔ No posee filtrado por Capa 7 (Layer 7)
  42. 42. Filtro URL (SquidGuard) • No está integrado en pfSense, necesario instalar squid y squidguard vía Package Manager.
  43. 43. Filtro URL (SquidGuard) • Permite usar blacklists de squidguard.org (MESD, Shalla...)
  44. 44. Filtro URL (SquidGuard) ● Permite crear listas blacklist y whitelist propias: Proxy filter SquidGuard Target categories→
  45. 45. Filtro URL (SquidGuard) • Permite bloquear/permitir URLs por IP de usuarios o rangos de IPs
  46. 46. Filtro URL (SquidGuard) • Personalización de la web de bloqueo editando el archivo /usr/local/www/sgerror.php • También permite utilizar una pagina web propia alojada en un servidor externo Web por Defecto Web Personalizada
  47. 47. Filtro URL (SquidGuard) • Logs de los sitios bloqueados (fecha, hora, filtro, etc)
  48. 48. Filtro URL (SquidGuard) • Permite bloqueo del acceso en un horario o fechas determinadas ➔ Por ejemplo si queremos bloquear una IP (o una Subred o un rango de IPs) en un horario o fechas concretas tenemos que hacer lo siguiente: ✔ Imaginemos que queremos crear una regla para que semanalmente los Lunes y Miércoles de 12:00h a 14:00h no se pueda acceder a ciertas paginas webs desde la IP 192.168.1.229
  49. 49. Filtro URL (SquidGuard) ✔ Lo primero es crear la regla para ese horario, nos vamos al siguiente menú “Proxy filter SquidGuard Times”→ y creamos uno nuevo con los datos necesarios:
  50. 50. Filtro URL (SquidGuard) ✔ Después debemos crear un nuevo grupo (Groups ACL) o editar uno que ya tengamos creado y añadir la opción de tiempo que acabamos de crear y la IP para configurar las reglas de ese grupo con la nueva regla de tiempo
  51. 51. Filtro URL (SquidGuard) ✔ Por ultimo nos queda configurar que categoría (en el ejemplo la categoría “porn”) queremos denegar o permitir su acceso durante el periodo de tiempo. ✔ La columna de la izquierda aplica las reglas dentro del tiempo asignado y la columna de la derecha aplica las reglas para cuando se esta fuera del tiempo
  52. 52. Filtro URL (SquidGuard) • Integrado en IPCop y basado en squidguard3
  53. 53. Filtro URL (SquidGuard) • Permite instalar blacklist de squidguard.org (MESD, Shalla...) y la posibilidad de editarlas
  54. 54. Filtro URL (SquidGuard) • Permite crear listas blacklist y whitelist personalizadas
  55. 55. Filtro URL (SquidGuard) • También permite realizar filtros por expresiones, IPs y extensiones de archivos
  56. 56. Filtro URL (SquidGuard) • Personalización de la web de bloqueo y posibilidad de añadir un enlace a una web externa
  57. 57. Filtro URL (SquidGuard) • Así es como quedaría la web de bloqueo con las lineas de mensaje editadas
  58. 58. Filtro URL (SquidGuard) • Logs de los sitios bloqueados ordenados por fecha y posibilidad de exportarlos a un archivo .log desde el WebPanel
  59. 59. Filtro URL (SquidGuard) • Restricciones en función del tiempo, permite bloquear/permitir el acceso en un horario determinado a unas IPs en concreto o a toda una red. ➔ Dentro del menu Filtro de URL hacemos click en el botón “Habilitar las restricciones de tiempo”
  60. 60. Filtro URL (SquidGuard) ➔ Ahora solo queda configurar la restricciones de tiempo, horarios, IPs de origen, etc
  61. 61. ✔ No integrado en pfSense ✔ Blacklists de squidguard.org ✔ Blacklist y whitelist propias ✔ Bloquear por IPs o rangos de Ips ✔ Personalización de la web de bloqueo ✔ Visualización de Logs ✔ Restricciones en función del horario Filtro URL (SquidGuard) - Resumen ✔ Integrado en IPCop y basado en squidguard ✔ Blacklist de squidguard.org ✔ Blacklist y whitelist propias ✔ Personalización de la web de bloque ✔ Visualización de Logs ✔ Exportar Logs ✔ Restricciones en función del horario
  62. 62. Otras Consideraciones Idioma Castellano Balanceo de Carga Redundancia Multi-WAN Usuarios sin privilegios Package Manager
  63. 63. Gracias por vuestra atención

×