domingo, 24 de abril de 2011

m0n0wall y PfSense en el Nortel Convity 100





En este post voy a detallar paso a paso la instalacion de un Router/Firewall en el switch Nortel Convity 100 usando las distribuciones pfSense y m0n0wall.


Que son  M0n0wall y pfSense?




      



Son distribuciones  derivadas de FreeBSD las cuales se enfocan para su uso como Firewall y Router. Se caracteriza por ser de código abierto, puede ser instaladas en una gran variedad de ordenadores, y además cuentan con una interfaz web sencilla para su configuración.

m0n0wall es un potente firewall que se caracteriza por ocupar poco espacio en el disco (entre 7 MB y 12 MB dependiendo de la plataforma)  implementa un completo firewall con una interfaz de sencillo manejo (basada en un servidor web con soporte PHP). Estas son algunas de sus caracteristicas:

  • web interface (supports SSL)
  • serial console
    • set LAN IP address
    • reset password
    • restore factory defaults
    • reboot system
  • wireless support (including access point mode)
  • captive portal
  • 802.1Q VLAN support
  • IPv6 support
  • stateful packet filtering
    • block/pass rules
    • logging
  • NAT/PAT (including 1:1)
  • DHCP client, PPPoE and PPTP support on the WAN interface
  • IPsec VPN tunnels (IKE; with support for hardware crypto cards, mobile clients and certificates)
  • PPTP VPN (with RADIUS server support)
  • static routes
  • DHCP server and relay
  • caching DNS forwarder
  • DynDNS client and RFC 2136 DNS updater
  • SNMP agent
  • traffic shaper
  • SVG-based traffic grapher
  • firmware upgrade through the web browser
  • Wake on LAN client
  • configuration backup/restore
  • host/network aliases

pfSense es una distribución basada en FreeBSD, derivada de m0n0wall. Su objetivo es tener un cortafuegos (firewall) fácilmente configurable a través de una interface web e instalable en cualquier PC, incluyendo los miniPC de una sola tarjeta.
Se trata, por tanto, de una solución muy completa, bajo licencia BSD y, por tanto, de libre distribución.El cortafuegos forma parte del Kernel del sistema. De hecho, se trata del Packet Filter (PF) originario de OpenBSD, considerado com el sistema operativo más seguro del mundo. Packet Filter (PF) está presente como estándar en FreeBSD desde noviembre de 2004. Incluye funcionalidades como el regulador de caudal ALTQ, que permite asignar prioridades por tipo de tráfico.Todo ello da una gran flexibilidad a la solución pfSense, ya que se puede montar tanto en equipos miniPC (basados en una sola placa) que emplean como disco una Compact Flash como en PC estándar con disco duro. En este último caso se pueden añadir paquetes como Snort, Squid, Radius, etc.

Caracteristicas:

  • Firewall
  • State Table
  • NAT
  • Redundancy
  • CARP - CARP from OpenBSD allows for hardware failover. Two or more firewalls can be configured as a failover group. If one interface fails on the primary or the primary goes offline entirely, the secondary becomes active. pfSense also includes configuration synchronization capabilities where changes made to the primary firewall will automatically synchronize to the secondary firewall.
  • pfsync - pfsync ensures the firewall's state table is replicated to all failover configured firewalls. This means your existing connections will be maintained in the case of failure, which is important to prevent network disruptions.
  • Outbound and Inbound Load Balancing
  • VPN - IPsecOpenVPNPPTP
  • PPPoE Server
  • RRD Graphs Reporting
  • Real Time Information - Using AJAX
  • Dynamic DNS
  • Captive portal
  • DHCP Server and Relay
  • Live CD Version Available
  • Proxy server
  • VDSL-Router - Aufrüstung von pfSense zum High-Speed-Router.
  • Support for software extensions.
  • Squid proxy server and Snort intrusion prevention/detection system.
  • Squid Guard - a high-performance web proxy filter.
  • FreeRADIUS - a free implementation of the RADIUS protocol.
  • Zabbix Agent - a monioring agent.
  • FreeSWITCH - a scalable open source cross-platform telephony platform designed to route and interconnect popular communication protocols using audio, video, text or any other form of media.
  • FusionPBX project - an open source web based management interface for the very powerful and highly scalable voice switch called FreeSWITCH.
  • Siproxd - a proxy/masquerading daemon for the SIP protocol.
  • stunnel - designed to work as an SSL encryption wrapper between remote client and local (inetd-startable) or remote servers.
  • Darkstat - a network statistics gatherer. It's a packet sniffer that runs as a background process on a cable/DSL router, gathers all sorts of statistics about network usage, and serves them over HTTP.
  • Iperf - a tool for measuring maximum TCP and UDP bandwidth, reminiscent of ttcp and nettest. It has been written to overcome the shortcomings of those aging tools. Iperf can also test UDP bandwidth, loss, and jitter.
  • ntop - a network probe that shows network usage.
  • arping - a computer software tool that is used to discover hosts on a computer network.
  • DNS-server - a version of TinyDNS which features failover host support.


Ambas aplicaciones permite guardar toda la configuración del sistema en un único archivo XML que podemos salvar en un disco, pendrive o un simple diskette. Esta facilidad de almacenamiento de la configuración permite un rápido despliegue del sistema y rápidas migraciones de éste. 


Caracteristicas de Nortel Convity 100

procesador Via Cyrix MII-333  de 333 Mhz, soporta hasta  550 Mhz modificando el SW3
12 MB of RAM internas 
8MB o 16MB en la CF card.
fuente de poder ATX ,  
7 puertos 10/100 switch
2 puertos Ethernet independientes 10/100 Mbps 
un puerto serial 
chipset VIA





Pasos para realizar la instalación:

Antes que nada es necesario destapar el Switch para poder observar cada uno de sus componentes y realizar los cambios pertinentes, en mi caso he removido la CF card de 8MB y he conectado un disco duro de 6GB, he añadido 64 MB de RAM DIMM PC-100, he añadido una correa con puerto VGA en el J16 para poder observar el arranque en mi monitor, el Convity no arranca unidad de CD por defecto, solamente arranca los discos, tampoco me fue posible conectar Teclado o Mouse aunque en esta pagina dice que en J12 esta el teclado con el conector PS/2. 



MUY IMPORTANTE !

Es necesario desactivar el watchdog que trae activada la motherboard de lo contario el switch se reiniciará para ello es necesario quitar el puente del J14, en algunos casos viene un Jumper en otros un simple alambre que une dos puntos , para este ultimo caso por favor cortar el alambre cuidadosamente. 



                     En la imagen de arriba podemos localizar el J14  encerrado en el recuadro amarillo


Instalar m0n0wall:

descargar m0n0wall desde el siguiente link: 


Conectar el disco duro o CF Card en otro computador

Seguir los siguietes pasos segun el sistema operativo:
    • FreeBSD:
    • gzcat generic-pc-1.33.img | dd of=/dev/rad[n] bs=16k
      Donde n es el numero que identifica al disco

    • Linux:
    • gunzip -c generic-pc-1.33.img | dd of=/dev/hdX bs=16k
      Donde X es el numero que identifica al disco, en algunos casos puede ser sda, sdb etc... segun el tipo de disco IDE o SATA

    • Windows:
      (usar -u si el disco es mayor de 800 MB)
    • physdiskwrite [-u] generic-pc-1.33.img
      (usar la version 0.3 o superior!)

  • Conecte de nuevo el disco al Convity 100
  • conecte un computador al switch en algun puerto (LAN/WAN/...)
  • Encienda el switch
  • Verifique que el computador conectado al switch reciba una IP por medio del DHCP
  • ingrese a la interfaz grafica del switch por medio de la IP 192.168.1.1 desde su navegador
  • Ingrese (user: 'admin', default password: 'mono')
  • Haga los cambios y la configuracion que ud desee


Instalar pfSense:

descargar pfSense para sistemas embebidos desde el siguiente link: 


Conectar el disco duro o CF Card en otro computador

Seguir los siguietes pasos segun el sistema operativo:
    • FreeBSD:
    • gzcat pfSense-1.2.2-Embedded.img.gz | dd of=/dev/rad[n] bs=16k
      Donde n es el numero que identifica al disco

    • Linux:
    • gunzip -c pfSense-1.2.2-Embedded.img.gz | dd of=/dev/hdX bs=16k
      Donde X es el numero que identifica al disco, en algunos casos puede ser sda, sdb etc... segun el tipo de disco IDE o SATA

    • Windows:
      (usar -u si el disco es mayor de 800 MB)
    • physdiskwrite [-u] pfSense-1.2.2-Embedded.img.gz
      (usar la version 0.3 o superior!)
  • Conecte de nuevo el disco al Convity 100
  • conecte un computador al switch en algun puerto (LAN/WAN/...)
  • Encienda el switch
  • Verifique que el computador conectado al switch reciba una IP por medio del DHCP
  • ingrese a la interfaz grafica del switch por medio de la IP 192.168.1.1 desde su navegador
  • Ingrese (user: 'admin', default password: 'pfsense')
  • Haga los cambios y la configuracion que ud desee
Nota: se recomienda activar el servidor SSH para poder acceder a la consola de manera remota ya que el convity aparentemente no trae soporte para teclado.


2 comentarios:

  1. Como propago el trafico independiente de las vlans creadas en monowall con el switch(JE008A)
    Gracias!

    ResponderEliminar
  2. http://xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.com

    ResponderEliminar