Archive for 4 agosto 2008

Linux y Windows, reestructuración y mejoramiento de una red para una MyPyme.

agosto 4, 2008

 

 

INTRODUCCIÓN.

 

La globalización del planeta puede tener varios aspectos, algunos negativos y otros especialmente positivos. Uno de estos aspectos es la utilización de Internet y, más específicamente, de las redes computacionales. Pues bien, el acceso a la información, ya sea tecnológica, cultural, o de investigación, permite que un país como el nuestro tenga acceso a conocimientos de primera fuente. Sin embargo, qué pasa con el retraso tecnológico, cómo invertimos astronómicas cantidades de dinero en desarrollo tecnológico, cuando debemos superar primero problemas logísticos de primera necesidad. Es aquí donde nos damos cuenta que para lograr avanzar hacia el desarrollo necesitamos utilizar tecnologías de licencia libre G.N.U., como por ejemplo: Linux, las cuales nos permitirán dar los saltos tecnológicos necesarios que nos permitan estar a la par con los países que invierten sustanciosas cantidades de dinero en su desarrollo tecnológico. Estamos claros que los países del tercer mundo requieren utilizar sistemas de licencia libre, en parte, debido a la falta de recursos, para cruzar las distancias que nos separan de los países desarrollados.

 

Por otro lado, la utilización de sistemas de organización de grandes volúmenes de información, a través de bases de datos, permiten, por ejemplo, manejar una bodega, de manera rápida y eficiente, eliminando por completo la lentitud en la respuesta a una consulta tan simple como si un determinado producto está o no disponible. En definitiva, la organización sistemática de grandes volúmenes de información a través de la utilización de bases de datos, ayudan a disminuir los tiempos de búsqueda y aumentar la calidad del procesamiento de la misma.

 

Todas estas realidades nos llevan a extrapolar nuestras observaciones y reflexionar por ejemplo, sobre las PYMES, elementos fundamentales, tanto como la educación, para desarrollar un país. Ambas, requieren para la informatización de sus sistemas, entendamos conectividad, seguridad y servicios, invertir bajos presupuestos logrando máximas tasas de utilidad. La respuesta está en la utilización de sistemas de libre distribución, como Linux, sobre todo lo que dice relación con brindar conectividad a una red. Es la solución para obtener eficientes manejos de información a muy bajo costo. Pensemos por un minuto que si estas PYMES tuvieran que, además de adquirir los equipos necesarios para su gestión, pagar altas sumas de dinero por las licencias de las plataformas a utilizar. No habría forma de que estas PYMES lograran la eficiencia de sus competidoras con más recursos, tanto nacionales como internacionales.

 

 

Resulta indudable entonces que el viaje de la humanidad hacia su total informatización ya se ha iniciado, países como el nuestro, con paso cansino, que se encuentran dejando atrás el subdesarrollo, buscan la forma de en pocos años progresar lo que otros han tardado décadas. Esto nos pone en la compleja situación de obtener tecnología eficiente al mínimo costo. Y es aquí donde aparecen plataformas como Linux que permiten tremendas potencialidades a bajo costo y con niveles de seguridad y estabilidad aceptables.

 

Estas consideraciones y reflexiones han motivado que el presente proyecto intente mostrar, a través de la implementación en un PC con Linux los servicios de ruteo y filtro, además de un DNS el cual resolverá el nombre de la página que accede a la base de datos de la bodega para la red interna. Todo lo anterior será desarrollado en una Institución que cuenta con una pequeña red privada, además de su correspondiente acceso a Internet y será detalladamente explicado a continuación:

 

SITUACIÓN DE LA EMPRESA.

 

La empresa utiliza alrededor de 32 PC’s para el trabajo diario de lunes a viernes, de 08:30 a 17:00 hrs, con gran utilización de Internet. También hay computadores en bodega, administración y en otros departamentos. La empresa utiliza una red privada, existe un solo dominio de colisión en gran parte de la red, mientras que en otra está divido mediante un equipo capa 2, no administrable. Es claro que al existir un solo domino de Broadcast se podrían generar graves problemas de seguridad y de disponibilidad de ancho de banda, a pesar de que el tipo de carga corresponde a la generada por la navegación en Internet y correo electrónico. También existe una gran preocupación por el tema de la seguridad y el acceso a Internet de los empleados, sobre todo en lo que se refiere a los contenidos. La red de la empresa no considera ningún tipo de seguridad o filtro de contenido.

 

La bodega posee un sistema de registro basado en una tarjeta de ingreso y salida,  también se lleva un registro de todos los artículos disponibles. Obviamente el sistema es tremendamente lento y engorroso.

 

Se utiliza una red privada clase C, del tipo 192.168.1.0/24. Los PC’s que la componen han sido configurados a través de una tarjeta de red Ethernet 10/100, agregando una IP de la red, su máscara, el DNS y su Gateway. Para el cableado se utiliza UTP categoría 5e, algunos tramos van sobre conductos y en otros, el cable va a descubierto o sobre una canaleta.

 

Cada computador tiene instalado como S.O. winXP en Inglés, como herramienta de producción Office XP en Inglés, además de otros programas requeridos para el trabajo de los alumnos, un editor gráfico, un editor de páginas web, un editor de animaciones, etc. Para el tema de los virus se utiliza Norton Antivirus de Symantec y Ad-aware .

 

En cuanto a los equipos de comunicaciones. Se utilizan Hubs 3Com de 16 puertas, Switch 3Com de 16 puertas no administrable, también dos Router/Bridge NetDsl1000, los cuales son provistos por Telefónica y permiten el acceso a Internet.

 

La conexión a Internet es brindada por Telefónica a través de un plan para Pymes, mutiusuario 512/128, el proveedor de Internet llega hasta un equipo capa 3, un Router /Briedge NetDSL1000 y desde este hacia la LAN.

 

ANÁLISIS Y PROYECTO A PROPONER.

 

Después de observar el funcionamiento de la red por varias semanas, identificar los equipos, su configuración y utilización, además de algunas entrevistas a los usuarios de la red, se pudieron evidenciar algunas carencias del sistema con respecto a las necesidades de los usuarios, además de la evidente urgencia por establecer políticas de seguridad que controlaran el tráfico de la red, sobre todo lo que dice relación con el acceso de los usuarios a Internet, elemento primordial para una institución educacional. Por otro lado, se evidenció la necesidad de diseñar un sistema de consultas para la biblioteca, el cual agilizará enormemente el funcionamiento del sistema.

 

Dentro de las deficiencias existentes, sobre todo lo que se refiere a las colisiones, debido a la existencia de un solo dominio de colisión; y que tiene efectos negativos en el rendimiento de la red. Cabe mencionar que esta deficiencia es equilibrada por el hecho de que el tipo de carga de la red es medianamente liviana. En cuanto a la seguridad, es quizá el aspecto más importante y que debe ser urgentemente solucionado a través del filtrado de paquetes. La situación de la biblioteca implica desarrollar una base de datos que pueda ser fácilmente administrada y consultada.

 

Se propondrán soluciones para todas las deficiencias detectadas, teniendo en consideración la realidad de la institución, desde el punto de vista de los usuarios, los recursos que pueden ser destinados y la infraestructura con la que se cuenta. Se mejorará el rendimiento a través de la división del dominio de Broadcast y de colisión, agregando equipos de capa 2 y 3, y también se mejorarán las conexiones.

 

Por otro lado se propondrá montar un PC que actúe como ruteador y además un mecanismo para realizar filtrado de paquetes. En el caso de la biblioteca, se montará un servidor de bases de datos para que pueda ser consultado por los usuarios. Todo lo anterior con el propósito de mejorar la red y solucionar sus deficiencias.

 

De a cuerdo a los recursos con los que cuenta la institución, tanto técnicos como logísticos, se optará por utilizar un computador que se encuentre disponible para montar un Router que permita separar redes y hacer filtrado de paquetes. También se diseñará una base de datos para los registros de la bodega y a través de plataforma web brindar la interfaz para los usuarios.

 

PROYECTO.

 

El proyecto consistirá en configurar un PC con Linux en su distribución Fedora Core, como un Router a través de la utilización de Zebra como software de ruteo e iptables como software para el filtrado. El PC actuará como un Router que dividirá el dominio de Broadcast creando una segunda red para el laboratorio de los alumnos, y en este Router crearemos las políticas de filtrado para restringir el acceso de los equipos de esta red hacia la otra red del colegio y hacia Internet. También se utilizará BIND para montar un servidor DNS y así crear un dominio “bodega.pyme” el cual apuntará a la IP del PC en que correrá el servidor de base de datos.

 

También se integrará el sistema de bibliotecas a la red del colegio a través de la creación de una base de datos la cual será actualizada y consultada a través de la plataforma web. Se diseñará un sistema que permita a alumnos y profesores consultar por algún texto al sistema de biblioteca, además de permitir a las bibliotecarias, previa autorización, ingresar registros y actualizar para préstamos y devoluciones. Para esto se utilizará un recurso integrado en Windows XP, un servidor web llamado IIS. La base de datos se diseñará en Access y se utilizarán como lenguajes para consulta ASP y SQL.

 

Para el desarrollo de este proyecto debemos considerar los siguientes conceptos:

 

 

1- Conceptos importantes sobre redes

2- Sistemas de distribución gratuita

3- Sistema operativo Linux en su distribución Fedora Core

4- IPTABLES (Filtering)

5- BIND (DNS)

6- Zebra (Routing)

7- Sistema operativo Windows XP Profesional

8- ASP

9- HTML

10- PWS

11- Access

12- SQL

 

 

LO QUE SE HIZO.

 

Aspectos de SW: se agregó el siguiente sw para permitir desarrollar el proyecto planteado con los resultados que se detallaran a continuación

 

1. Selección de PC para instalar Fedora Core

 

– Características del PC: HD, RAM, CPU, etc.

 

En primer lugar se procedió a seleccionar un PC para instalar Linux. Se utilizó un equipo que estaba disponible y que tenía las siguientes características:

 

Placa madre: ASUS TUSI-M

Ethernet 0 tarjeta de red integrada SIS 900/7016CI Ethernet

Ethernet 1 tarjeta de red 3Com 3Com 3c590/3c595/3c595/3c90x/3cx980 Ethernet

Disco duro Maxtor con partición

Lector de CD ASUS 52x max

Ram de 256 MB

 

2. Instalar Linux Fedora Core

 

– Obtención de Fedora Core : del sitio: ftp.rdc.cl

– Pasos para instalar Fedora Core, espacio para la raíz, swap, etc

– Configuración del PC

 

Para realizar el proyecto se utilizó Linux en su distribución para Fedora Core, los discos fueron descargados, sus imágenes, desde ftp.rdc.cl.

 

Luego se procedió a generar los discos y entonces se inició la instalación, para ello se siguieron algunas recomendaciones básicas, que dicen relación con el tamaño de las particiones:

 

Swap: 256 MB

Boot: 75MB

Root: 3700 MB

Usr: 4000 MB

Var: 385 MB

Home: 2500 MB

 

Muchas de las opciones de instalación son fácilmente comprensibles durante el proceso de instalación.

 

3. Instalar dos interfaces de red Ethernet

 

– Obtención de dos interfaces de red Ethernet

– Instalación y configuración de interfaces

 

El PC tenía una interfaz ethernet interna, eth0. Luego se le instaló una segunda interfaz, eth1. Ambas fueron configuradas desde el entorno gráfico.

 

Ethernet 0: 192.168.1.28/24

Ethernet 1: 192.168.2.1/24

 

4. Instalar y configurar Zebra para ruteo

 

– Obtención de paquetes necesarios para instalar Zebra

– Instalar Zebra con el comando rpm

– Configuración en Zebra las interfaces y rutas estáticas

– Iniciar servicio

 

En primer lugar se procedió a obtener el paquete rpm, el cual fue descargado desde http://www.rpmfind.net, zebra-0.93b-1.i386.rpm.

 

Posteriormente se procedió a la instalación desde el RPM a través del comando:

 

rpm -Uvh zebra-0.93b-1.i386.rpm

 

Quedando entonces todo instalado.

 

El archivo de configuración de zebra se encuentra en /etc/zebra/zebra.conf, en este archivo se guardará la configuración de la interfaces y las rutas que se agreguen.

 

Posteriormente, a través de una interfaz de comando llamada Vtysh, muy similar al IOS de los Routers Cisco, se puede configurar zebra:

 

Una vez instalado el pequete, desde la línea de comando digitamos:

 

Root$ vtysh

 

Hello, this is Zebra (version 0.93b).

Copyright 1996 – 2002 Kunihiro Ishiguro

 

Lab28#enable

 

Previamente nos aseguramos que el demonio Zebra esté corriendo:

 

#service zebra Start

 

Procedemos a configurar las interfaces:

 

Lab28>enable

Lab28#configure terminal

Lab28(config)#interface eth0

Lab28(config-if)#ip address 192.168.1.28/24

Lab28(config-if)#exit

Lab28(config)#interface eth1

Lab28(config-if)#ip address 192.168.2.1/24

Lab28(config-if)#exit

Lab28(config)#end

Lab28#write memory

Lab28#exit

 

 

Para agregar la ruta que permitirá salir hacia Internet:

 

Lab28>enable

Lab28#configure terminal

Lab28(config)#ip route 0.0.0.0/0 192.168.1.253

Lab28(config)#end

Lab28#write memory

Lab28#exit

 

Veamos a continuación los archivos de configuración de las interfaces:

 

 

5. Instalar y configurar BIND para DNS

 

– Obtención de paquetes para instalar BIND

– Configurar el dominio library.stj como dominio para el servidor de la base de datos

– Abrir puerto 53 para el servicio

– Iniciar servicio

 

En primer lugar nos aseguramos de que estuviera instalado el paquete Bind, si no es así puede ser instalado desde el disco de instalación a través del comando rpm -Uvh Bind. Es recomendable tener instalado en el PC la herramienta Apt-Get, la cual permite instalar, desinstalar o actualizar paquetes desde los sitios oficiales de que cuentan con el sevicio Apt-Get.

 

Una vez instalado se procedió a configurar una zona maestra de redireccionamiento, dicho de otra forma, se asociaría a un nombre bodega.pyme la ip de un PC donde estará corriendo el Personal Web Server. Para esto se debe modificar en archivo named.conf, el cual se encuentra en /etc, y además se debe crear el archivo de la base de datos DNS, el cual se encuentra en /var/named. Para esto se utilizó una herramienta de configuración gráfica para bind la cual puede ser arrancada desde la consola con el comando fedoracore-config-bind. Esta herramienta requiere el sistema X Windows. Esta herramienta creará una entrada en el archivo /etc/named.conf del tipo:

 

Zone “bodega.pyme” {

Type master;

File “bodega.pyme.zone”;

};

 

 

Y también creará el archivo /var/named/bodega.pyme.zone, con la siguiente información:

 

$TTL 86400

@ IN SOA bodega.pyme. root.localhost (

2 ; serial

28800 ; refresh

7200 ; retry

604800 ; expire

86400 ; ttl

)

 

 

IN NS 192.168.1.28

 

 

IN A 192.168.1.13

 

 

 

El cual nos dice que la ip del servidor de nombre es 192.168.1.28 y que el nombre bodega.stj, está asociado a la ip 192.168.1.13.

 

No debemos olvidar que se tiene que abrir el puerto 53 tanto para el protocolo TCP como UDP.

 

Finalmente se reinicia el servicio y se configura para se inicie cada vez que el sistema parta.

 

6. Instalar y configurar IPTABLES para hacer filtrado de paquetes

 

– Obtener paquete para instalar Iptables

– Definir las reglas y políticas para filtrar

– Generar un archivo bash

– Configurar para iniciar a la partida del servidor con texto para depurar

– Iniciar servicio

 

En primer lugar se verificó que el paquete de IPTABLES estuviera instalado, y así fue ya que este servicio se instala por defecto en Fedora Core cuando se instala el sistema operativo.

 

Se procedió entonces a definir que era lo que se deseaba filtrar para posteriormente aplicarlo al firewall. Como una forma de hacer más cómoda la gestión del firewall se creó un archivo llamado ejemplo1, en el cual se pondrán las reglas de filtrado, además de comentarios de depuración. La idea es que sea un servicio más que se inicie cada vez que se inicie el sistema.

 

Dentro de los aspectos que se consideraron para la creación de las reglas del firewall están, por ejemplo, que exista una IP de control para administrar el PC Router para su posible administración, que los paquetes puedan transitar desde y hacia la red 192.168.1.2/24, que se pueda ir a servicios WEB y consultas de DNS, etc. El resto es cerrado. Con respecto al acceso hacia algunos sitios indeseables se elaboró una pequeña lista, la cual puede ir actualizándose, con las webs o servicios que se desea restringir, por ejemplo: los puertos de kazaa, Bitorrent, y sitios web como www.photoblog.be, cuya IP es 193.109.191.2.

 

Se creó, entonces, una carpeta llamada iptables en el directorio /etc:

 

#MKDIR /etc/iptables

 

Allí se creó el archivo ejemplo1:

 

#vi ejemplo11

 

Entonces se le dieron permisos de ejecución:

 

#chmod 755 /etc/iptables/ejemplo1

 

Ahora bien, para que el script se ejecute cada vez que se reinicie el sistema, vamos a /etc y el archivo rc.local, agregamos la siguiente línea al final:

 

/etc/iptables/./ejemplo1 start

 

Y de esta forma, tenemos las reglas de nuestro firewall aplicándose en el sistema.

 

 

7. Configurar NetDSL1000

 

– Agregar ruta estática para la red del laboratorio

 

8. Seleccionar un PC con Windows XP

 

– Definir un PC con WinXP con características de RAM, HD, CPU, etc.

– Configurar para trabajar en la red

 

Se preparó un PC con Windows XP, con 127 MB de RAM, un disco duro de 10 GB, una CPU Pentium III, una tarjeta de red 3COM Etherlink 10/100 PCI. Monitor Samsung Syngmaster 550 v.

 

El PC se configuró como servidor de web y de bases de datos. La tarjeta de red se configuró con los siguientes parámetros:

 

IP 192.168.1.13

Subnet Mask: 255.255.255.0

Gateway: 192.168.1.253

DNS: 192.168.1.253 – 192.168.1.28

 

9. Instalar Access y IIS

 

– Utilizar Officce XP para instalar Access

– Diseñar una base de datos para la bodega

– Crear una réplica de la base de datos para ser consultada por los clientes

– Instalar IIS.

– Configurar la raíz para colocar las páginas web

 

Access fue instalado desde el disco de instalación de officce XP, una vez instalado en el PC que sería servidor de bases de datos se procedió a diseñar una base de datos con el nombre bodegapyme.mdb y una tabla llamada objetos, en la que se ingresarán los artículos de la bodega a partir de la siguiente tabla:

 

Campo Tipo Tamaño Otros

 

1 Numero Autonumérico Clave

2 Codigo Texto 4

3 Titulo Texto 20

4 Descripción Texto 20

5 Medida Texto 20

6 Cantidad Texto 15

7 Tipo Texto 10

8 Estado Texto 10

9 Disponible Si/No

10 Pedido Texto 10

11 Devolucion Texto 10

 

Posteriormente se creó una réplica de la base de datos bodegapyme.mdb llamada bodegapyme2.mdb la cual será utilizada para ser consultada por los usuarios a través de una página web. Esta réplica se sincronizó con la original para que los cambios realizados en la original se aplicarán a la réplica. Como una forma de seguridad esta réplica sólo tiene permiso de lectura. Los ingresos de nuevos textos o las actualizaciones para saber si estaban o no en biblioteca se harán en el mimo servidor en un formulario de Access.  

 

Obtener este servidor web de Microsoft es bastante sencillo, en este caso fue extraído del disco de instalación de Windows XP Profesional. Una vez instalado se configuró el directorio raíz donde se alojarían las páginas html y asp. Este servidor crea por defecto el siguiente directorio C:\Inetpub\wwwroot y desde allí busca una página web válida para mostrar.

  

10. Crear páginas asp para la interfaz de consulta a la base de datos

 

– Diseñar las interfaces para consultar la base de datos

– Crear y modificar los códigos asp para consultar la base de datos

 

Se crearon los archivos, htm y asp:

 

– index.asp

– buscar.htm

– ingreso.asp

 

La página index.htm da la bienvenida al usuario y lo lleva hacia la página que le permitirá buscar un artículo a partir de una palabra o palabras del título, buscar.htm. La página buscar.asp interactúa con la base de datos, realiza una búsqueda en la base de datos de acuerdo al criterio y luego genera una página de respuesta, indicando lo que nos interesa, si el texto está o no disponible.

 

 

11. Diseño de cableado

 

– Construcción de cables para agregar los dos servidores

 

En lo que se refiere al cableado, se construyeron dos cables directos que fueron desde el Hub de la red 192.168.1.0/24 a la interfaz eth0 y otro que unió la interfaz eth1 con el Hub de la red 192.168.2.0/24. Para esto se siguieron las especificaciones de norma para la construcción de los terminales:

 

Se utilizó el siguiente esquema para conectar un cable RJ45 directo, es decir de Pc a Hub, PC a Switch, PC a Router, etc., según la norma T568B.

 

Los dos extremos del cable llevaran un conector RJ45 con los colores en el orden indicado en la figura.

 

CONCLUSIÓN.

 

Quizá una de los aspectos más importantes del proyecto es el hecho de poder instalar un Router junto con todas sus potencialidades a un costo muy bajo, muy importante para una institución que destina, aún, muy pocos recursos.

 

Por otro lado, los notables mejoramientos que puede experimentar la administración de una red al brindarle ruteo y filtro. Lo anterior, de gran importancia para el rendimiento y seguridad de una red. También la organización de información a través de una base de datos y la versatilidad de la plataforma web para generar interfaces amistosas y potentes para consultar dichas bases de datos.

 

Las pruebas realizadas confirmaron los supuestos del diseño al iniciar el proyecto.

 

Se sugiere que para una correcta operación del Router se mantenga permanentemente encendido, para asegurar que los servicios, de ruteo, filtro y DNS, se mantengan siempre funcionando, al igual que el PC con el PWS.

 

También se pueden agregar nuevas reglas de filtrado para restringir nuevos sitios o servicios indeseables que puedan resultar inapropiados para los usuarios.

 

En lo que respecta al servidor de bases de datos es importante recordar que la base de datos, junto con su réplica, deben ser periódicamente compactadas y sincronizadas para un correcto funcionamiento. También se recomienda realizar respaldo de la misma cada cierto tiempo de uso.

 

Cabe mencionar que la implementación del proyecto se encuentra actualmente en estudio, debido fundamentalmente a que produce inseguridades el hecho de utilizar un sistema como Linux, que requiere de una persona especializada. Otro elemento se refiere a que el próximo año la institución se cambiará de dirección, lo que implicará un rediseño de la red.

 

El proyecto realizado, nos ha permitido explorar áreas muy importantes dentro de lo que es la labor del administrador de redes. Aspectos como el montaje y configuración de un Router con software de licencia libre, además del montaje de servicios, como el DNS y bases de datos, nos hacen comprender cabalmente el concepto de servicio en una red. Por otro lado, el diseño de una base de datos y la correspondiente construcción del código, o scripts, que permiten consultar la base de datos a través del lenguaje SQL.

 

En publicaciones posteriores explicaré cómo podemos remplazar IIS, asp y Access por Apache, php y MySql. Para Más información pueden consultarme al email.

Anuncios