propuesta e implementacion de un appliance de seguridad a partir

Anuncio
PROPUESTA E IMPLEMENTACION DE UN APPLIANCE DE SEGURIDAD A
PARTIR DEL RE-USO TECNOLOGICO
DANIEL ECHEVERRY MATIAS
UNIVERSIDAD CATOLICA DE PEREIRA
FACULTAD DE CIENCIAS BÁSICAS E INGENIERÍAS
PROGRAMA DE INGENIERÍA DE SISTEMAS Y TELECOMUNICACIONES
PEREIRA
2011
1
PROPUESTA E IMPLEMENTACION DE UN APPLIANCE DE SEGURIDAD A
PARTIR DEL RE-USO TECNOLOGICO
DANIEL ECHEVERRY MATIAS
Informe Final
TUTOR:
INGENIERO DANIEL FELIPE BLANDON
UNIVERSIDAD CATOLICA DE PEREIRA
FACULTAD DE CIENCIAS BÁSICAS E INGENIERÍAS
PROGRAMA DE INGENIERÍA DE SISTEMAS Y TELECOMUNICACIONES
PEREIRA
2011
2
RESUMEN
Este proyecto, busca desarrollar y construir una solución de seguridad, usando el
re-uso tecnológico, aprovechando aquellas maquinas que cumplieron su vida util,
pero que aun así pueden llegar a cumplir ciertas funciones dentro de una red.
Usando esta tecnología antigua, el proyecto aporta una alternativa de solución a
la grande problemática que está viviendo el mundo actual, en cuanto a los
desechos tecnológicos, de esta forma, se beneficiaran las pequeñas y medianas
empresas,
implementando
soluciones
de
seguridad
a
bajo
costo,
y
adicionalmente, se beneficiara el medio ambiente.
Palabras claves: Dispositivo de seguridad, UTM, Firewall, Seguridad informatica,
Redes, appliance de seguridad.
ABSTRACT
This project seeks to develop and build a workaround of security, using the
technological reuse, taking advantage of these machines that complete their useful
life, but these yet are useful to perform certain functions within a network. Using
this old technology, the project contribute an alternative of workaround to the big
problematic that is living the today's world, with regard to technological waste, thus,
to benefit small and medium enterprises, implementing security workarounds at
low cost, and additionally, will benefit the environment.
Keywords: Security device, UTM, Firewall, networking, security appliance,
Information security.
3
TABLA DE CONTENIDO
1
Introducción
10
2
Formulación del problema
12
3
Objetivos
14
4
Justificación
15
5
Cronograma de actividades
18
6
Marco Contextual
19
6.1
“Implementación De Clusters Beowulf Como Firewall”
6.2
“Modelo de solución de enrutamiento de datos a bajo costo basado en
19
software libre”
20
6.3
“Purdue Firewall Appliance”
21
6.4
Solución Fortinet
22
6.5
Solución SonicWall
24
6.6
Diferencias entre el proyecto y las soluciones comerciales
25
7
Marco Teórico
27
4
7.1
Appliance
27
7.2
Tipos de Appliance
27
7.2.1 Appliance de telefonía IP
27
7.2.2 Appliance de correo
28
7.2.3 Appliance de Monitoreo
29
7.3
UTM
29
7.4
Servicios de seguridad
29
7.4.1 Firewall
29
7.4.2 IDS/IPS
30
7.4.3 VPN
31
7.4.4 Proxy
33
7.5
34
Sistemas operativos embebidos
7.5.1 Sistemas embebidos
34
7.5.2 Sistemas operativos embebidos
34
5
7.6
Algunos sistemas operativos embebidos
35
7.6.1 Symbian OS
35
7.6.2 DD-WRT
35
7.6.3 OpenWRT
36
7.7
El reuso tecnológico en Colombia
36
8
Definición operacional de términos
38
9
Enfoque metodológico
39
9.1
Instalación del sistema operativo
39
9.2
Instalación de servicios
45
9.2.1 Configuración Básica
45
9.2.1.1 Configuración de la interfaz WAN
47
9.2.1.2 Configuración de la interfaz LAN
49
9.2.1.3 Actualizando el gestor de paquetes
52
9.2.2 Instalación Firewall
57
6
9.2.2.1 Objetivos de un firewall
59
9.2.3 Instalación IDS
63
9.2.3.1 Snort
64
9.2.4 Instalación VPN
67
9.2.5 Instalación Proxy
68
9.2.5.1 Squid
70
9.3
72
Pruebas de rendimiento
9.3.1 Escenario de las pruebas
74
9.4
77
Análisis de los resultados
10 Conclusiones
90
11 Recomendaciones
91
12 Referencias bibliográficas
92
13 Bibliografía
94
7
TABLA DE IMAGENES.
Figura 1. Desechos tecnológicos
13
Figura 2. Numero de transistores por chip a escala logarítmica
15
Figura 3. Appliance Fortinet
23
Figura 4. Diagrama VPN
32
Figura 5. Diagrama PROXY
33
Figura 6. Equipo usado para el proyecto
42
Figura 7. Equipo usado para el proyecto
43
Figura 8. Instalación OpenWRT
44
Figura 9. Pruebas de ping
45
Figura 10.
Ventana de logueo OpenWRT
46
Figura 11.
Cambiando el password de root
46
Figura 12.
Interfaz WEB
47
Figura 13.
Configuración de las interfaces
48
Figura 14.
Diagnósticos
49
Figura 15.
Configuración DHCP
50
Figura 16.
Configuración interfaz de red equipo cliente
50
Figura 17.
Pruebas de ping
51
Figura 18.
Pruebas de Traceroute
51
Figura 19.
Esquema NAT
52
Figura 20.
Reglas por defecto del firewall
52
Figura 21.
Menu paquetes
54
8
Figura 22.
Paquetes instalados
55
Figura 23.
Paquetes disponibles
56
Figura 24.
Backup y restaurar
57
Figura 25.
Esquema Firewall
59
Figura 26.
Cadenas básicas de firewall
60
Figura 27.
Targets de un firewall
61
Figura 28.
Menu Firewall
62
Figura 29.
Snort
64
Figura 30.
Instalacion SNORT
65
Figura 31.
Paquete OPENVPN
68
Figura 32.
Paquete OPENVPN-DEVEL
68
Figura 33.
Esquema Proxy
69
Figura 34.
Paquete Squid
70
Figura 35.
Laboratorio A
74
Figura 36.
Laboratrio B
76
Figura 37.
Grafica Consumo CPU
77
Figura 38.
Grafica Consumo CPU
78
Figura 39.
Grafica Consumo CPU
78
Figura 40.
Grafica Rendimiento interfaces
79
9
1. INTRODUCCIÓN
Hoy en día, la seguridad informática juega un papel fundamental en cualquier
empresa, ya que estas se concientizan
de cuidar su activo más importante: “La
información”. Sin embargo, implementar la infraestructura necesaria (hardware y
software) para reducir los riesgos y aumentar la protección de los datos requiere
de una cantidad de dinero que algunas empresas no tienen, o los recursos no
son destinados, o simplemente no están dispuestas a pagar por algo que ven
como un gasto y no como una inversión.
En el mercado existen appliances de seguridad (también llamadas UTM), que
proporcionan toda la seguridad perimetral necesaria para cualquier sistema
informático, estos equipos trabajando a nivel de aplicación, analizan y permiten el
paso del tráfico en función de las políticas implementadas en el dispositivo, en
otras palabras estos equipos son una “caja negra” en la cual están todos los
servicios de seguridad integrados. Existen muchos fabricantes de este tipo de
equipos, desde Cisco1 hasta Fortinent2, pero los precios son algo elevados, por
ejemplo, un equipo Fortigate F110C, ideal para redes de 150 usuarios, cuesta
2.800 USD3 con todas las licencias activas, mientras que un equipo Cisco ASA
5505 con características similares cuesta alrededor de 2.100 USD4
Ahora bien, hay una problemática que surge en las empresas ¿Qué hacer con los
PC's obsoletos?, generalmente los equipos catalogados como obsoletos terminan
en la basura, sin darse cuenta que están cometiendo dos grandes errores. El
primero es la contaminación del medio ambiente, ya que los dispositivos
electrónicos no se pueden tratar como basura convencional, dado su contenido
de sustancias tóxicas como el cromo, el cadmio y el mercurio5. Y el segundo error
1
2
3
4
5
http://www.cisco.com/en/US/products/ps6120/index.html
http://www.fortinet.com/products/fortigate/111C.html
http://www.avfirewalls.com/FortiGate-110C.asp
http://www.router-switch.com/Price-cisco-firewalls-security-cisco-asa-5500-series_c26
http://www.elmundo.es/elmundosalud/2006/06/30/industria/1151687483.html
10
que cometen las empresas, es asumir que dichos equipos por ser de tecnología
antigua, no se les puede dar otra utilidad, esto es un error grave ya que si bien no
son equipos de última tecnología, son equipos que pueden soportar una función
limitada.
Este proyecto plantea una solución a dicha problemática.
proponer e implementar una solución de seguridad perimetral,
En primer lugar,
usando aquellas
máquinas de tecnología antigua, y en segundo lugar, hacer re-uso de aquellos
equipos anticuados, pero todavía útiles, contribuyendo así al medio ambiente.
11
2. FORMULACIÓN DEL PROBLEMA
Debido a que en la actualidad la información importante de cualquier empresa se
encuentra sistematizada,
existe cada vez más el riesgo de que personas no
autorizadas observen o roben dicha información, por tal motivo; hay soluciones
de Hardware y Software que tienen como único fin minimizar los riesgos de que
suceda un acceso no autorizado a la información o una fuga de la misma.
Desafortunadamente este tipo de soluciones son costosas, e inasequibles para
pequeñas empresas. Por tal motivo hay empresas que no están protegiendo su
información de forma adecuada, poniendo así en riesgo la privacidad no solo de
la organización sino también de sus clientes, Esto se deriva por carencia de
recursos económicos, o por factores como: Desconocimiento,
o simplemente
porque no se cuenta con el personal capacitado para administrar este tipo de
herramientas.
Un problema con el que se enfrentan las empresas es , qué hacer con aquellos
equipos que ya han llegado a un nivel de obsolescencia . Es claro que estos
dispositivos electrónicos se demoran varios años en descomponerse y además de
esto si son desechados pueden contaminar el medio ambiente por las sustancias
toxicas con las que fueron diseñados.
12
Figura 1: Desechos tecnológicos6
La idea principal de este proyecto es ayudar
en la solución de estas dos
problemáticas que hoy en día son más evidentes.
Se Usarán equipos con tecnología obsoleta para configurar un appliance que se
encargue de proteger la seguridad de la información en las PYMES (pequeñas y
medianas empresas), las cuales, por alguna razón no pueden tener un equipo de
marca dedicado para este fin.
6
http://greennaturebook.blogspot.com/2011/05/desechos-tecnologicos.html
13
3. OBJETIVO GENERAL
Proponer un Appliance de seguridad que provea servicios de: IDS, VPN, proxy,
Firewall y enrutamiento a partir del re-uso tecnológico, para suplir las necesidades
que tienen las pymes en cuanto a la seguridad de su información.
OBJETIVOS ESPECÍFICOS

Proponer una nueva alternativa a la grave problemática ambiental que sufre
hoy en día el mundo, referente a los desechos tecnológicos.

Indagar sobre antecedentes de trabajos similares que se hayan realizado
en este sentido.

Consultar sobre cual es el mejor Hardware y software para implementar la
solución

Definir cuales son los requerimientos mas urgentes para las pymes en
cuanto a seguridad.
14
4. JUSTIFICACIÓN
Con este proyecto, se demostrará que con aquellos equipos catalogados como “obsoletos”
se pueden construir dispositivos muy útiles para cualquier empresa u organización,
contribuyendo de esta forma al reciclaje de equipos electrónicos, pero ¿qué se puede definir
como “Obsoleto”? (Tubella, I. & Vilaseca, J. (2005)) Según la ley de Moore, fundador y
primer directivo de INTEL, cada 3 años la potencia de los ordenadores se multiplica por 4.
Esto quiere decir, que un equipo de cómputo fabricado en el año 1998, será 16 veces más
limitado que un equipo actual.
Figura 2. Numero de transistores por chip a escala logarítmica. Autor: (Tubella, I. & Vilaseca, J. (2005))
Cabe resaltar que si un equipo es viejo no quiere decir que ya no sirve, se debe explotar la
tecnología al máximo, antes de darla como obsoleta. Hay funciones o servicios los cuales no
requieren una capacidad de procesamiento considerable y son estos equipos los adecuados
para prestar dichos servicios.
La pertinencia y la innovación del proyecto, radican en que fácilmente se puede construir y
administrar una plataforma de seguridad a un costo muy bajo, sin necesidad de adquirir
hardware adicional como dispositivos físicos dedicados a servicios de seguridad; con esta
propuesta, las empresas que no velaban por la seguridad de sus sistemas, argumentando
lo costoso que es adquirir la infraestructura necesaria,
se darán cuenta que
económico no es un obstáculo para preocuparse por su seguridad informática.
15
el factor
Asimismo, es muy importante crear una cultura del re-uso tecnológico, ya que así se
concientiza
sobre lo importante que es no desechar irresponsablemente dispositivos
electrónicos.
Los países desarrollados generan miles de toneladas de basura tecnológica cada día. Estos
dispositivos contienen elementos altamente tóxicos, que al entrar en contacto con la
naturaleza causan daños irreversibles en la salud y el medio ambiente. Estas sustancias son
nocivas para el ser humano, y al desechar estos equipos pueden llegar a
hidrográficas
las fuentes
y ocasionar serios problemas ambientales, para la población. (Jose luis,
Gallego, 2009, P85)
Los ciudadanos europeos generamos anualmente más de 15 kilos de chatarra tecnológica
por persona, se trata de ordenadores personales, teléfonos celulares, agendas electrónicas y
toda una larga serie de consumibles que entran en desuso al dejar de funcionar o ser
sustituidos por un modelo con mayores prestaciones. Estos productos se han incorporado en
pocos años al sector del gran consumo generando un importante problema ambiental debido
a su especial circunstancia en el mercado. Y es que a menudo antes de poner un pie fuera
del comercio donde lo acabamos de adquirir, se quedan obsoletos.
Actualmente se busca una forma efectiva de realizar el reciclaje tecnológico. Y no es tan
complicado. Este proyecto da una alternativa a colaborar con el reciclaje tecnológico dando
otra forma de uso a estos equipos viejos y alargando el tiempo de vida útil de los mismos,
evitando así, la contaminación, y el desperdicio.7
En el desarrollo de este proyecto se podrán aplicar
conceptos vistos a lo largo de la
formación profesional como ingenieros de sistemas y telecomunicaciones. Se aplicarán no
solo los temas relacionados con las telecomunicaciones sino también relacionados con la
formulación de proyectos, conceptos que en el mundo laboral son fundamentales para un
Ingeniero de sistemas de la actualidad. Algunos de estos son:
7
http://www.uv.mx/cienciahombre/revistae/vol23num1/articulos/basuras/index.html
16

Innovación.

Emprendimiento.

Pro actividad.

Recursividad.

Creatividad.

Investigación.
17
5. CRONOGRAMA DE ACTIVIDADES
A
A1
A2
A3
A4
A5
A6
A7
A8
A9
A0
Junio
Julio
Agosto
Septiembre Octubre
1 2 3 4 1 2 3 4 1 2 3 4 1
X X X X
X X X X
X X
X X
X
A1: Elaborar Marco teórico
A2: Realizar el estado del arte
A3: Elección del hardware disponible.
A4: Elección del sistema operativo.
A5: Instalación sistema operativo base.
A6: Configuración básica del dispositivo.
A7: Instalación de los servicios propuestos.
A8: Pruebas benchmark del dispositivo.
A9: Algunas modificaciones y customizaciòn.
A10: Puesta en marcha dispositivo UTM
2 3 4
Noviembre
1 2 3 4 1 2 3 4
X
X X X X
X X
X X
X
6. MARCO CONTEXTUAL
Antes de entrar materia, es necesario hacer un recorrido por el mundo de la tecnología,
buscando aquellas entidades, universidades, y otras organizaciones las cuales
han
investigado sobre el amplio tema de la seguridad, diseñando, o estudiando la forma de
implementar equipos (Hardware) a bajo costo, los cuales integren todos los servicios que
ayuden aumentar la protección de las redes LAN.
En cuanto al re-uso tecnológico, en Colombia se han hecho grandes esfuerzos, por brindar
una solución a tantos artefactos electrónicos (computadores) que quedan en desuso debido
la tecnología entrante, por esta problemática nace “Computadores para educar”, un proyecto
el cual trata de darle un uso a aquellos computadores que no se utilizan en las grandes
compañías, reensamblandolos y enviándolos a diferentes zonas alejadas del país, con el fin
de que aquellas personas que se encuentran alejadas de las ciudades, puedan aprender,
estudiar, y navegar a través de Internet. Esta es una buena solución para los desechos
tecnológicos, educando y dándole la oportunidad a las personas a usar un computador.
En nuestro país,
no se han evidenciado
proyectos cuyo objetivo, tengan como fin
aprovechar el hardware en des-uso para construir una plataforma integral de seguridad
(también llamada UTM).
No obstante,
se han desarrollados proyectos similares que han buscado implementar
soluciones de seguridad de diferente índole. A continuación, algunos de los proyectos
relacionados que se han realizado:
6.1 “IMPLEMENTACIÓN DE CLUSTERS BEOWULF COMO FIREWALL”
“La Seguridad Computacional es un aspecto de vital importancia hoy en día en
las redes de datos, la necesidad de proteger la privacidad y autenticidad de la
información manejada ha llevado a buscar mecanismos que resguarden el interior
de la red de las amenazas presentes en Internet. Uno de los mecanismos
preferidos son los denominados “Firewalls“ya que permiten mantener control
19
sobre el funcionamiento de la red y la información que esta intercambia con el
exterior.
El
presente artículo muestra la forma en que la tecnología de
computación distribuida “Clusters BeoWulf” puede utilizarse para servir de
soporte a la seguridad de las redes de datos, específicamente como sistema
Firewall. ” [1]
La primera impresión de este proyecto, consiste en que no tiene ninguna similitud con el
propuesto, su filosofía y la metodología empleada, radica en que usando poca tecnología se
pueden desarrollar soluciones muy interesantes.
6.2 “MODELO DE SOLUCIÓN DE ENRUTAMIENTO DE DATOS A BAJO COSTO BASADO
EN SOFTWARE LIBRE”
“La dificultad que poseen las empresas pequeñas para adquirir soluciones de
enrutamiento propietarios las hace vulnerables a hacer un uso inadecuado de
las redes, una deficiencia en la comunicación y seguridad. Por esta razón se
desea ofrecer una solución de enrutamiento económica aprovechando las
bondades del software libre.
Además se busca aprovechar equipos de computo considerados obsoletos para
usar uno como maquina dedicada y allí
colocar en funcionamiento el
enrutador.”[2]
Este proyecto, desarrollado en la universidad Tecnologica de Pereira (UTP), es muy similar
(quizás el que más se asemeja a este ya que concuerda con muchos de los objetivos
planteados. Sin embargo la gran diferencia es el resultado final, ya que nuestro appliance
será una maquina de seguridad UTM, mientras que el proyecto encabezado por Jhon Alexis
Guerra, consiste en crear una maquina de routing usando Software libre.
Revisando, alrededor del mundo, se ha investigado un poco mas en cómo construir un
[
[
1] FLETSCHER BOCANEGRA,Luis Alejandro. Implementación de clusters beowulf como firewall
2] GOMEZ GUERRA, John Alexis. modelo de solución de enrutamiento de datos a bajo costo basado en
software libre
20
firewall usando pocos recursos físicos, desgastados y obsoletos, pero que aun así, sirvan
para cumplir con funciones de seguridad. A continuación, algunos proyectos similares que se
han encontrado en otros países:
6.3 “Purdue Firewall Appliance”
“The IT Security & Policy department at Purdue University has developed a
firewall appliance based on open source software and recycled PCs from oncampus labs. The software consists of a customized OpenBSD platform
configured to run as a bridging firewall. These bridging firewalls are also
known as stealth firewalls because, unlike traditional routing firewalls, they
can be configured without IP addresses, which means they are largely
invisible to other devices outside the physical network.
The platform used for the firewall appliance is a customized installation of
OpenBSD. Additional installation tasks were added to the base install to ease
configuration of the machine as a bridging firewall and further secure the
distribution. OpenBSD was chosen for this platform because of the secureby-default nature of the distribution. Firewall functions are performed by the
in-kernel stateful packet filter, pf, which is controlled by the pfctl tool. Firewall
logging is done in pcap format, which allows for easy viewing and filtering of
logs using tcpdump. The logging is also done through a virtual
interface called pflog, so that log records can be viewed in real time by using
tcpdump to listen on the virtual interface. This can be very helpful in
troubleshooting firewall policy issues.
•
The hardware used for these devices are recycled lab PCs with
additional network interfaces. These mid-range Pentium II desktop machines
now act as bridging firewalls for small groups of servers or labs of machines
and have been shown in tests to handle a fully saturated 100 Mbps full
duplex link without significant performance impact. They have become point
solutions
for
protecting
domain
controllers
from
NetBIOS
account
enumeration, preventing infection of Windows machines used to control real21
time devices that cannot be patched without breaking their functionality, and
protecting newly installed Windows machines from infection before patches
can be applied. ”[3]
Este proyecto realizado en el 2004, es el más similar a este proyecto , ya que radica en la
construcción de un Firewall basado en OPENBSD, usando los PC'S reciclados de toda la
universidad de “PURDUE”.
Es evidente que los dos proyectos tienen el mismo fin,
aprovechar al máximo, aquellos equipos de computo que de una u otra forma han sido
catalogados como obsoletos, que aun pueden ser útiles para la organización, con solo
hacerles algunas modificaciones y personalizándolos para que cumplan una función en
especifico.
Cambiando radicalmente de sector, si nos enfocamos en el ámbito comercial, podemos
encontrar infinidad de compañías que ofrecen dispositivos UTM como negocio, es decir
fabrican hardware (incluso en muchos casos, hardware genérico) o también desarrollan su
propio sistema operativo ( algunos de ellos basándose en GNU/Linux) con el fin de ofrecer
en una misma maquina todos los servicios de seguridad integrados. Estos son algunos
fabricantes reconocidos en el mercado por sus productos UTM:
•
“Fortigate”
•
“SonicWALL”
•
“CISCO”
•
“CheckPoint”
•
Cyberoam
•
Astaro
En esta caso, se van a definir las características de las marcas mas relevantes
en el
mercado, debido a que si se habla de cada una de ellas, se tendría que realizar otro estudio
más completo, el cual no es objeto de este proyecto.
6.4 SOLUCIÓN FORTINET.
[
3]
SCHROLL, Addam. Effective Practice: Purdue Firewall Appliance
22
“FortiGate es un Cortafuegos basado en hardware con funciones de
Antivirus que proporciona protección a la red en tiempo real. Basado en
el revolucionario chip FortiASIC de Fortinet, el sistema de FortiGate es
el único sistema que puede detectar y eliminar virus, gusanos y otras
amenazas basadas en contenido, sin afectar al rendimiento de la red,
incluso para aplicaciones en tiempo real como la navegación Web. Las
soluciones de FortiGate también incluyen Firewall, filtrado de
contenido, VPN, detección y prevención de intrusos y gestor de tráfico,
haciendo de FortiGate la más rentable, conveniente, potente y segura
de las soluciones de seguridad de red disponibles.”[4]
Fortinet, ofrece appliances llamados Fortigate, las cuales son desarrolladas 100% por
Fortinet, desde el hardware, hasta su sistema operativo, y cada uno de los servicios que
las integran.
Figura 3. Appliances Fortinet8
Los servicios que prestan los appliances fortigate son:
•
[
8
Firewall, VPN, and Traffic Shaping
4
http://www.abox.com
http://www.fortinet.com
23
• Intrusion Prevention (IPS)
• Antivirus/Antispyware/Antimalware
• Integrated Wireless Controller
• Application Control
• IPv6 Support
• Web Filtering
• Antispam
• VoIP Support
• Layer 2/3 routing
• WAN Optimization & Web Caching
6.5 SOLUCIÓN SONICWALL
“SonicWALL, Inc. ofrece soluciones de seguridad de redes integral, acceso
remoto seguro, seguridad de correo electrónico y Web, copias de seguridad y
recuperación de datos y política y administración. Las extensivas soluciones
de SonicWALL, que integran productos basados tanto en software como en
dispositivos, además de servicios de suscripción de valor añadido, permiten a
las empresas asegurar una protección integral sin comprometer el
rendimiento de la red. SonicWall es reconocido internacionalmente como
líder de los mercados de la pequeña y mediana empresa, y sus soluciones se
distribuyen
entre
entornos
empresariales
distribuidos,
instituciones
gubernamentales y los segmentos de salud y puntos de venta minoristas, así
como a través de los proveedores de servicios.”[5]
Sonicwall por su parte, desarrolla sus propios servicios y hardware pero, en algunos casos
usa productos de terceros para brindar un servicio en específico, un ejemplo claro de esto: el
antivirus de perímetro que brindan como servicio, los dispositivos de seguridad de
SonicWALL usan las firmas de virus de McAfee.
Otro ejemplo:, el filtrado web que proveen las cajas de Sonicwall, puede ser integrado con
Websense (servicio de filtrado de contenido en línea), en fin, hay varias situaciones en las
[
5
Http://www.sonicwall.com
24
que Sonicwall delega la responsabilidad de desarrollo a otras empresas.
Como se puede ver, en el ámbito comercial, las empresas son muy similares, cada una con
ventajas y desventajas, ofreciendo un dispositivo de seguridad que en algunos casos puede
ser visto como “bastante costoso”, costo que pequeñas empresas no estarían dispuestas a
pagar o que no lo consideran de importancia.
El gran reto de este proyecto de grado, consiste en demostrar que con muy pocos recursos
y con software libre, se puede lograr una solución robusta y similar a las soluciones de los
grandes fabricantes. Aquellos fabricantes que como negocio cobran millones por una PC con
GNU/Linux disfrazada de una “gran y robusta solución”
6.6 DIFERENCIAS ENTRE EL PROYECTO Y LAS SOLUCIONES COMERCIALES.
Después de haber hecho un recorrido por el amplio mercado de las soluciones de seguridad
que existen hoy, e identificando las características y el plus de cada una de ellas,
pertinente realizar una comparación entre el
es
appliance libre que se propone, y las demás
marcas comerciales, ya que de esta manera, se podrá determinar y conocer qué hace único
e innovador este proyecto.
Las principales diferencias entre una solución comercial, sin importar la marca, con el
proyecto que se plantea son:
•
Haciendo énfasis sólo a nivel de software (debido a que muchos fabricantes cierran
sus drivers), este proyecto es totalmente libre, el proyecto busca implementar una
solución de seguridad a muy bajo costo usando software libre, y por ende aprovecha
las bondades del código abierto para construir un appliance, seguro, confiable y con
un rendimiento adecuado.
•
Los grandes fabricantes enfocan gran parte de su trabajo en desarrollar hardware
especializado. Sin embargo, desarrollar Hardware no es el objetivo, ni hace parte del
proyecto, ya que el Hardware que se usará en la implementación del dispositivo de
seguridad serán componentes obsoletos de equipos de cómputo, los cuales han sido
25
declarados inservibles.
•
El objetivo principal de todas las soluciones comerciales, es lucrarse económicamente,
producir y comercializar su producto,
posicionarse en el mercado, aumentar sus
activos, en fin todo lo relacionado con el dinero. El proyecto aquí descrito, tiene un fin
social, que consiste en reutilizar aquella tecnología catalogada por la mayoría de las
empresas como “obsoleta”, para disminuir los problemas ambientales que se puedan
presentar debido al mal manejo que muchas empresas
dan a dichos residuos
tecnológicos.
•
Todos los aplicativos, usados en el proyecto, son desarrollados por diferentes
comunidades, ubicadas en diferentes partes geográficas, los cuales al unirlos, forman
una excelente solución de seguridad.
26
7. MARCO TEÓRICO
Para que un sistema de protección de información sea seguro, debe contar con algunos
servicios de seguridad, que nos ayuden a minimizar los riesgos de fuga de información, sin
embargo, implementar cada uno de estos servicios en un hardware diferente, implica gastos
y muchas horas de trabajo. Afortunadamente en la actualidad se cuenta con appliances o
utm's los cuales se caracterizan por ofrecer todos los servicios de seguridad en un solo
equipo. Pero ¿según los autores expertos en el tema, que es una Appliance?
7.1 APPLIANCE
Es un término común en inglés, utilizado en el lenguaje cotidiano, que se traduce a menudo
como “dispositivo” o “aplicación”. Sin embargo, en el mundo de las TIC “appliance” es un
término técnico. Una appliance destaca por el hecho de que ofrece una interacción óptima
entre hardware y software, es decir, hardware y software están adaptados perfectamente
entre sí. Una appliance no es un “sabelotodo” sino que está destinada a un solo campo de
actividades que domina perfectamente. Un ejemplo de la vida cotidiana: Con una lavadora no
se puede ni telefonear ni hacer café. 9
7.2 TIPOS DE APPLIANCE
Teniendo clara, la definición del término appliance, se deben nombrar los diferentes tipos que
existen en el mercado, ya que
aunque en este documento el objetivo principal es un
appliance de seguridad, es importante conocer que existen otros tipos, los cuales pueden ser
interesantes y útiles:
7.2.1 Appliance de Telefonia IP:
Un Appliance VoIP proporciona todas las
características que se esperan de una PBX. Trabaja con voz sobre IP en varios
protocolos (SIP, H323) e interopera con casi todo el equipo estándar basado en
telefonía IP. Provee servicios de correo de voz, comunicación de llamada, respuesta
9
http://www.dallmeier-electronic.com/es/productos/dvr-nvr/videoip-appliance-smatrix/que-es-unaappliance.html
27
interactiva de voz, cola de llamados, servicio de identificación de llamados, etc.
7.2.2 Appliance de Correo: Este Appliance permite ser utilizado como servidor de
correo para realizar filtrado de correos, ya sea de spam o de virus. Esto es gracias a
las herramientas de antivirus y antispam que posee; lo que mantiene el correo de los
usuarios libre de virus y con una mínima tasa de spam.
La otra posibilidad de uso de este Appliance es como suite de colaboración de correo,
incluyendo la capacidad de compartir calendarios para poder agendar reuniones y otros.
7.2.3 Appliance de Monitoreo: Este Appliance de monitoreo contiene un conjunto de
aplicaciones de software que permiten obtener información útil para el análisis y
monitoreo de enlaces y dispositivos de red.
Con este dispositivo se pueden monitorear aspectos importantes como:
•
Host
•
Puertos
•
HTTP
•
Conectividad a base de datos
•
FTP
•
SMTP
•
POP
•
IMAP
•
Servicios personalizados
•
Entre otros
Como pueden ver, un appliance se puede diseñar para cumplir cualquier función o
necesidad, es decir, cualquier servicio informático se puede instalar en una “caja negra” la
cual será destinada única y exclusivamente, para cumplir dicho servicio.
Ahora bien,
el objetivo primordial de este proyecto, es implementar un appliance de
28
seguridad. Este tipo de appliance es más conocido como UTM y se describe a continuacion:
7.3 UTM: (Robert, Newman, 2009, P281) Gestión unificada de amenazas o algunas veces
llamados “Firewall de la proxima generacion”. Los equipos UTM traen múltiples servicios de
seguridad en una sola plataforma. Una plataforma UTM típica provee servicios de Firewall,
VPN, antivirus, filtrado de contenido, un sistema de detección y prevención de intrusos, y
antispam. Estos appliances fueron derivados de productos de empresas como:
•
3COM
•
CISCO
•
JUNIPER
•
SONICWALL
•
FORTINET
La principal ventaja de un UTM, es que incluye múltiples características de seguridad en un
solo aparato, esto hace que el administrador o el cliente final tenga facilidades como:
•
Fácil administración
•
Administración centralizada
•
servicios integrados.
•
Alto nivel de seguridad
Debido a que el termino appliance es un termino estandar para describir un aparato o
artefacto, en el siguiente apartado, se describiran los servicios de seguridad y redes que
proveen los dispositivos UTM, los cuales hacen de este appliance una Solución demasiado
robusta y eficiente, y por tanto son los aspectos fundamentales que hacen que el dispositivo
sea un appliance de seguridad.
7.4 SERVICIOS DE SEGURIDAD
7.4.1 FIREWALL: (Maria, España, 2003 P295) Es un sistema de seguridad desarrollado
29
para ubicarse en una red publica (Generalmente Internet) y una red interna perteneciente a
una organización, o bien entre diferentes secciones de una red interna. Esta compuesto por
Hardware y Software que controlan el trafico entre las dos redes, autorizando o impidiendo
su transito de una a otra. Para construir un firewall existen básicamente dos posibilidades:
Realizar un filtrado de paquetes a nivel de red. Esta modalidad suele
ubicarse en
enrutadores, consiste en un filtro que examina cada paquete que llega al dispositivo y
dictamina si aceptar o no su paso hacia uno de los puertos de salida, en función de si
cumple ciertas reglas especificadas en una base de datos. En la actualidad existen
niveles que trabajan a niveles superiores, y admiten una mayor cantidad de criterios
como por ejemplo, la ip de origen, la ip destino, el protocolo entre otros.
Cortafuegos intermediario en la capa de aplicación. Actúa a nivel de aplicación,
generalmente intermediando la comunicación, entre un proceso cliente y un proceso
servidor. Uno de los cuales pertenece a la red que se desea proteger y el otro a una red
externa.
7.4.2 IDS/IPS: (Miquel, Colobran, 2008 P152) Los sistemas de detección de intrusos (IDS),
monitorizan los contenidos del flujo de información, a través de la red, en la búsqueda y
rechazo de posibles ataques. Pueden combinar Hardware y Software, y normalmente se
instala en los dispositivos más externos de la red. Como firewall y proxies. Admiten dos
clasificaciones:
•
según la actividad que realizan:
•
Basados en RED: Monitorean una red, suelen ser elementos pasivos que no
sobrecargan la red en exceso.
•
Basados en Hosts: Monitorean un host o un conjunto de ellos y permiten un
control mas detallado, registrando los procesos y los usuarios implicados en las
actividades registradas por el IDS, consume recursos e incrementa el flujo de la
red.
•
Basados en aplicaciones: Monitorean los ficheros de registro o logs de una
30
aplicación en específico, para detectar actividades sospechosas
•
según el tipo de análisis que realizan:
•
Basados en firmas: De forma similar a los programas antivirus, estos tipos de
IDS, monitorean la red en busca de patrones(firmas de ataques) que permitan
identificar un ataque previamente conocido, estos requieren que la base de
datos de firmas, se encuentre constantemente actualizada
•
Basados en anomalías: El IDS buscara comportamientos anómalos en la red
(un escaneo de puertos, paquetes malformados etc.)
Puede producir falsos positivos, debido a la ambigüedad de la que se podría considerar un
“comportamiento anómalo”, pero permite adaptarse a nuevos ataques sin necesidad de
añadir nuevas firmas. Uno de los IDS mas conocido tiene como nombre SNORT(SNORT es
una aplicación libre que funciona como IDS, en captiulos posteriores se entrará mas en
detalle en su definición e instalación) .
7.4.3 VPN: (Angel, Cobo, P187) Una red privada virtual, se puede definir como una
extensión de una red privada, que utiliza enlaces a través de redes publicas o compartidas
como Internet, y que posibilita la transmisión de datos como si se tratase de un enlace punto
a punto.
Para realizar esto, los datos son encapsulados utilizando un protocolo de túnel que consiste
en añadir al paquete original una cabecera que proporciona la información de enrutamiento
lo cual permite que éste pueda llegar a su destino. Para que el enlace sea privado, los datos
viajan cifrados, lo que garantiza la confidencialidad, aun así si estos son interceptados por
terceros.
31
Figura 4. Diagrama VPN
Básicamente existen 3 tipos o esquemas de VPN:
•
VPN de acceso remoto (Damian, Ferrer, 2005)
Este es quizás el modelo más usado actualmente y consiste en usuarios o
proveedores que se conectan con la empresa desde sitios remotos (oficinas
comerciales, domicilios, hoteles, aviones, etc.) utilizando Internet como vínculo
de acceso. Una vez autenticados tienen un nivel de acceso muy similar al que
tienen en la red local de la empresa. Muchas empresas han reemplazado con
esta tecnología su infraestructura "dial-up" (módems y líneas telefónicas),
aunque por razones de contingencia todavía conservan sus viejos módems.
• VPN sitio-a-sitio (Damian, Ferrer, 2005)
Este esquema se utiliza para conectar oficinas remotas con la sede central de
organización. El equipo central VPN, que posee un vinculo a Internet
permanente, acepta las conexiones vía Internet provenientes de los sitios y
establece el "túnel" vpn. Los servidores de las sucursales se conectan a
Internet utilizando los servicios de su proveedor local de Internet, típicamente
mediante conexiones de banda ancha. Esto permite eliminar los costosos
vínculos punto a punto tradicionales, sobre todo en las comunicaciones
32
internacionales.
•
VPN Interna(Damian, Ferrer, 2005)
Este esquema es el menos difundido pero uno de los más poderosos para
utilizar dentro de la empresa. Es una variante del tipo "acceso remoto" pero, en
vez de utilizar Internet como medio de conexión, emplea la misma red Lan (Red
de área local) de la empresa. Sirve para aislar zonas y servicios de la red Lan
interna. Esta capacidad lo hace muy conveniente para mejorar las prestaciones
de seguridad de las empresas.
7.4.4 PROXY (David, Martinez, 2009, P147) Es un servidor que separa dos redes diferentes,
entre sus funciones se destacan:
2. Centralizar el tráfico en ambas redes.
3. Acelerar el acceso a contenidos WEB
4. Restringir cierto tipo de tráfico, según una serie de reglas establecidas en el archivo de
configuración.
5. Permitir el acceso a otras redes, como Internet, a servidores ubicados en una red
privada.
6. Guardar un registro del tráfico de red.
Figura 5. Diagrama Proxy
Tal y como se mencionaba anteriormente el proxy puede servir para acelerar la carga de
paginas WEB, esto se logra mediante la memoria cache que utiliza. En este tipo de memoria
se almacenan datos obtenidos de otras peticiones anteriores con el fin de no tener que
33
conectarse a la página WEB
original para descargar un dato requerido, puesto que la
información ya la tiene almacenada localmente. El acceso a este dato es muy rápido y por lo
tanto la pagina web carga con mayor rapidez y se disminuye el tráfico que circula por la red,
el proxy mas conocido recibe el nombre de SQUID y es software libre.
7.5 SISTEMAS OPERATIVOS EMBEBIDOS
Conociendo ya
la definición de UTM, y los servicios que presta, es necesario hablar sobre
aquella plataforma o sistema operativo, el cual hace posible construir este tipo de Appliance,
ya que por razones de rendimiento, capacidad, y personalización, no es viable instalar un
sistema operativo convencional en un Appliance. Por tal motivo, existen sistemas operativos
denominados embebidos, diseñados, personalizados y configurados, única y exclusivamente
para este tipo de aparatos.
7.5.1 Sistemas
embebidos: (David, Perez, 2009, P4): Un sistema embebido posee
hardware de computador junto con software embebido como uno de sus componentes más
importantes. Es un sistema computacional dedicado para aplicaciones o productos. Puede
ser un sistema independiente o parte de un sistema mayor, y dado que usualmente su
software está embebido en ROM (Read Only Memory) no necesita memoria secundaria
como un computador. Un sistema embebido tiene tres componentes principales:
1. Hardware.
2. Un software primario o aplicación principal. Este software o aplicación lleva a cabo
una tarea en particular, o en algunas ocasiones una serie de tareas.
3. Un sistema operativo que permite supervisar la(s) aplicación(es), además de proveer los
mecanismos para la ejecución de procesos. En muchos sistemas embebidos es requerido
que el sistema operativo posea características de tiempo real.
7.5.2 Sistemas
operativos embebidos: (Andrew, Tanenbaum, 2001): Un sistema
operativo embebido es un sistema operativo que se ejecuta sobre un sistema embebido, los
34
cuales han sido descritos previamente. Los sistemas operativos embebidos generalmente se
ejecutan sobre dispositivos que difieren de un computador común, como televisores, hornos
microondas, y teléfonos móviles. Usualmente tienen algunas características de sistemas de
tiempo real, pero a la vez tienen restricciones de tamaño, memoria y energía que los hacen
especiales.
Otra definición interesante:
“Un sistema operativo para un sistema embebido usualmente es diseñado para una
aplicación específica, y por lo tanto es más estático que un sistema operativo de propósito
general”. 10
7.6 ALGUNOS SISTEMAS OPERATIVOS EMBEBIDOS
Si bien la mayoría de fabricantes desarrollan su propio sistema operativo para construir sus
Appliances, existen sistemas operativos libres, para estos dispositivos, desarrollados por la
comunidad del software libre, algunos de estos sistemas son:
7.6.1 Symbian OS: el sistema operativo Symbian es una colección compacta de código
ejecutable y varios archivos, la mayoría de ellos son bibliotecas vinculadas dinámicamente
(DLL por sus siglas en inglés) y otros datos requeridos, incluyendo archivos de configuración,
de imágenes y de tipografía, entre otros recursos residentes. Symbian se almacena,
generalmente, en un circuito flash dentro del dispositivo móvil. Gracias a este tipo de
tecnología, se puede conservar información aun si el sistema no posee carga eléctrica en la
batería, además de que le es factible reprogramarse, sin necesidad de separarla de los
demás circuitos.
Pagina web: http://www.symbian.org/
7.6.2 DD-WRT: DD-WRT es un firmware basado en Linux, una alternativa OpenSource
10
Friedrich, L. “A Survey on Operating System Support for Embedded Systems Properties”. Departamento de
Informática e Estatística.
35
propicia para una gran variedad de routers WLAN y sistemas embebidos. El énfasis principal
reside en proporcionar la forma más fácil posible, la manipulación y al mismo tiempo apoyar
a un gran número de funcionalidades en el marco de la respectiva plataforma de hardware
utilizada. La interfaz gráfica de usuario es lógicamente estructurada, y es operado a través
de un navegador Web estándar, por lo que incluso aquellos usuarios sin conocimientos
técnicos pueden configurar el sistema en tan sólo unos sencillos pasos.
Pagina web: http://www.dd-wrt.com
7.6.3 OPEN-WRT: OpenWrt se describe como una distribución de Linux para dispositivos
embebidos. En lugar de tratar de crear un firmware único, estático, OpenWrt proporciona un
sistema de archivos totalmente modificable con la gestión de paquetes. Esto le libera de la
selección de aplicaciones y la configuración proporcionada por el proveedor y le permite
personalizar el dispositivo mediante el uso de paquetes para adaptarse a cualquier
aplicación. Para el desarrollador, OpenWrt es el marco para construir una aplicación sin tener
que construir un firmware completo alrededor de ella, para los usuarios esto significa la
capacidad de personalización completa, para usar el dispositivo en formas que nunca
imaginó.
Pagina web: http://openwrt.org/
7.7 RE-USO TECNOLOGICO EN COLOMBIA
Desde hace algun tiempo atras cada uno de los grandes fabricantes iniciaron una carrera sin
control en la creación de productos tecnológicos, esta etapada, denominada por algunos
autores como la revolución tecnológica, se basa fundamentalmente en la evolucion de la
electrónica y su incorporación a la vida cotidiana de todos los seres humanos, haciendo la
vida mucho mas facil diseñando dispositivos como teléfonos moviles, PC'S, impresoras, etc.
En Colombia existen millones
de articulos electronicos, que con el paso del tiempo se
convertirán en una gran amenaza al medio ambiente, y es importante que la generacion
actual, se pregunte a donde irar a para esta basura tecnologica o tambien llamada E-Waste.
Debido al consumismo y a los grandes fabricantes, hoy en dia, es muy comun cambiar de
36
celular o PC en muy corto tiempo, gracias a que siempre llegan al mercado nuevos equipos
con nuevas funcionalidades, ¿Pero a donde iran a parar todos estos equipos que se dejan
de usar, que son reemplazados por un equipo de mejor tecnologia?
Hay varias formas de concientizar a la sociedad, y colaborar con esta gran problemática,
inicialmente se deben seguir los siguientes consejos:

Rehúso.

Reducción.

Donación.

Reciclaje.
Actualmente, en nuestro país se cuenta con un proyecto el cual busca, re-usar estos equipos
obsoletos en la educación de todos los niños alejados de las zonas urbanas. Se trata de
“Computadores para educar”
“Es un programa de reuso tecnológico cuyo objetivo es brindar acceso a las
tecnologías de información y comunicaciones a instituciones educativas públicas
del país, mediante el reacondicionamiento y mantenimiento de equipos,
promoviendo su uso y aprovechamiento significativo en los procesos educativos,
a través de la implementación de estrategias de acompañamiento educativo y
apropiación de TIC’s.”11
Como se puede observar, computadores para educar brinda una alternativa
para la
problemática de la E-waste, Sin embargo, en este proyecto, se mostrara otra alternativa,
usando equipos obsoletos, para desarrollar una solución de seguridad, robusta y confiable
11
http://www.computadoresparaeducar.gov.co
37
8. DEFINICIÓN OPERACIONAL DE TÉRMINOS
SEGURIDAD INFORMATICA: (Jose, Salvador, 2003, P101)La seguridad informática es
definida por 3 aspectos fundamentales.
•
La confidencialidad →
Asegura que la información no este disponible
o sea
descubierta por personas no autorizadas. En otras palabras, se refiere a la capacidad
del sistema para evitar que terceros puedan acceder a la información.
•
La disponibilidad → Un sistema seguro debe mantener, la información disponible
para los usuarios, significa que el sistema, tanto en hardware y software se debe
mantener funcionando eficientemente, y que es capaz de recuperarse rápidamente
en caso de fallo.
•
La integridad → Garantiza que la información pueda ser modificada, incluyendo su
creación y borrado, solo por el personal autorizado. El sistema no debe modificar o
corromper la información, que almacene, o permitir que alguien no autorizado lo haga.
El orden de importancia de estos tres factores es diferente, e incluso entran en juego otros
elementos como la autenticidad, y el no repudio.
38
9. ENFOQUE METODOLOGICO.
9.1 Instalación del sistema operativo.
Es claro que todo Hardware necesita de un software que lo controle y administre los recursos
físicos de la mejor manera, con el único fin de cumplir las tareas para las cuales el dispositivo
fue diseñado.
Hablando específicamente de los routers, los fabricantes crean su propio firmware, cerrado,
para que controle sus maquinas. Sin embargo, gracias al software libre, existen firmware
libres, los cuales son mantenidos por la comunidad, estos en muchos casos mejoran el
rendimiento de los dispositivos, debido a que algunos fabricantes, restringen funciones y
capacidades de sus equipos. Pero al instalar algún firmware libre, se evidencian
características que con el firmware propietario no es posible realizar.
Existen muchos firmware libres, entre los más destacados están:
•
DD-WRT: DD-WRT es un firmware no-oficial para Linksys WRT54G/GS/GL y otros
routers 802.11g basados en un diseño de referencia similar o igual al Broadcom.
Todos estos routers están diseñados para utilizar linux en el firmware oficial y su
código fuente esta disponible bajo licencia GPL.
El firmware lo desarrolla BrainSlayer y su página web es dd-wrt.com. Las primeras
versiones de DD-WRT se basaron en el firmware "Alchemy" de Sveasoft Inc, que a su
vez se basa en el firmware original GPL de Linksys y en otros proyectos. DD-WRT se
creó debido a que Sveasoft comenzó a cobrar 20$ por descargar su software.
Entre otras características que el firmware oficial de linksys no incluye, DD-WRT
añade el Demonio Kai para el Kai Console Gaming network12, WDS Puente de
red/repetidor, Autenticación Radius para comunicaciones Wireless más seguras,
avanzado control de balanceo de cargas o Calidad de servicio (QOS), y software para
que funcionen las tarjetas SD/MMC que se le pueden instalar haciendo algunas
modificaciones al dispositivo.13
12
Kai es una red global de juegos que reúne a diferentes consolas, en una comunidad integrada. Se trata de software que
se ejecuta en su PC que le permite jugar con interconexión de sistemas de juegos habilitados en línea de forma gratuita.
http://www.teamxlink.co.uk/
13
http://www.dd-wrt.com/wiki
39
•
Sveasoft: firmware Sveasoft suele ser anunciada como la posibilidad de aumentar el
radio de transmisión de energía de un router a partir del 28 mW a 251 mW, así como
la posibilidad de utilizar 14 canales para 802.11b transmisiones en lugar de los 11
normalmente permitidas en
EE.UU. o 13 permitidos en otras partes. Las
modificaciones de potencia y frecuencia pueden interferir con otros aparatos
electrónicos, y puede ser ilegal en algunas jurisdicciones.
Otras características incluyen la calidad de servicio, Sistema de Distribución
Inalámbrico, bridging inalámbrico, el modo de soporte al cliente (CPE), un servidor
PPTP VPN y el cliente, los paquetes descargados y soporte IPV6.
La última versión del firmware Talisman admite hasta 16 VLANs Ethernet, hasta 15
VLAN virtual inalámbrico cada uno con su propia gestión de ancho de banda WEP,
WPA o WPA2 y el SSID, y ya cuenta con servidor de seguridad. Sveasoft ha lanzado
varias nuevas versiones de firmware Talisman incluyendo Talismán / hotspot, Talismán
/ VPN (con soporte IPSec), Talismán / malla (red de malla automática).
•
Openwrt: Se describirá posteriormente.
Para este proyecto , se eligió OpenWRT, por las razones que se explicaran seguidamente.
¿Que es OpenWRT?
En lugar de tratar de crear un firmware único y estático, OpenWrt proporciona plenamente el
sistema de archivos con permisos de escritura de gestión de paquetes. Esto libera las
restricciones de la selección de aplicaciones y la configuración proporcionada por el
proveedor y le permite utilizar los paquetes para personalizar su dispositivo adaptándose a
cualquier aplicación. Para los desarrolladores, OpenWrt proporciona un marco para crear una
aplicación sin tener que crear una imagen completa del firmware y la distribución.
Algunas características son:
•
Libre y de código abierto. El proyecto es totalmente libre y de código abierto,
40
licenciado bajo la GPL. El proyecto tiene intención de ser siempre alojado en un sitio
de fácil acceso, con el código fuente completo disponible y fácil de construir.
• Impulsado por la comunidad. No se trata de "nosotros" que ofrece algo a "ti", es casi
todo el mundo unido para trabajar y colaborar hacia una meta común.
OpenWrt ha sido establecido como la mejor solución de firmware de su clase. Es muy
superior a otras soluciones integradas en el rendimiento, la estabilidad, extensibilidad,
robustez y diseño. Es la meta clara de los desarrolladores OpenWrt seguir ampliando el
desarrollo y garantizar que OpenWrt sea el marco principal para las soluciones innovadoras y
genuinas.14
OpenWRT, se puede instalar en diferentes arquitecturas y multiples dispositivos, si se desea
ver el listado completo de los dispositivos soportados pueden visitar este link
http://wiki.openwrt.org/toh/start
¿Por que OpenWRT?
Se decidió usar OpenWRT por las siguientes razones:
14
•
Software Libre
•
Impulsado por la comunidad.
•
Gestor de paquetes incluido
•
Gran cantidad de aplicaciones disponibles.
•
Estable y mejor rendimiento.
•
El mas usado actualmente.
•
Disponible para instalar en arquitecturas X86
•
Amplio soporte de Hardware.
•
Interfaz web de administración
Http://www.openwrt.org
41
Proceso de instalación.
OpenWRT Se instalará en un PC con las siguientes características:
•
Disco duro de 10GB
•
Memoria RAM 128MB
•
Procesador Intel Celeron 333MHZ
•
2 tarjetas de Red.
•
Unidad de CD
Figura 7. Equipo usado para el proyecto. Elaboración propia
42
Figura 8. Equipo usado para el proyecto. Elaboracion Propia
•
Se descarga la imagen precompilada de OpenWRT para arquitecturas X86:
http://downloads.openwrt.org/kamikaze/8.09.2/x86/openwrt-x86-ext2.image
•
Se copia la imagen a un dispositivo USB:
“cp openwrt-x86-ext2.image /media/USB/”
•
Instalamos la imagen, para esto es necesario usar un LiveCD cualquiera, en este caso
usaremos Slitaz por que es un LiveCD de muy poco tamaño.
•
Iniciamos desde el LiveCD
•
Montamos la unidad USB
•
Instalamos la imagen en nuestro Disco duro.
43
"dd if=/media/USB/openwrt-x86-ext2.image of=/dev/hda bs=1M count=100"
Donde:
/media/USB → es la unidad USB
/dev/hda → es el disco duro donde se desea instalar la imagen

Reiniciamos el equipo y ya tendremos nuestro sistema operativo instalado.
Figura 9. Instalación OpenWRT. Elaboración propia
44
9.2 INSTALACIÓN DE SERVICIOS
9.2.1 Configuración Básica
Después de tener el sistema operativo instalado (OpenWRT), es necesario realizar una
configuración básica con el fin de que el dispositivo tenga salida a Internet y poder descargar
cada uno de los servicios de seguridad haciendo uso del gestor de paquetes incluido en
OpenWRT denominado OPKG.
(Jesus, Niño, P 198) La descarga e instalación de paquetes se realiza mediante el sistema
de gestión de paquetes que también se conoce como gestor de paquetes, cada uno de estos
programas (o Administradores de paquetes)
sirven para gestionar paquetes de
instalación/desinstalación de diversas aplicaciones de forma muy sencilla haciendo uso de
paquetes precompilados que se encuentran en los repositorios oficiales.
En primer lugar, OpenWRT asigna la ip 192.168.1.1/24 en la interfaz principal; para ingresar
al Appliance desde un PC, es necesario conectarse físicamente con un cable utp directo, y
configurar una dirección IP de esa red, en la interfaz del equipo. Para este caso se usará la
dirección 192.168.1.2/24.
Después de aplicar esta configuración en el PC, comprobamos que el dispositivo responda
adecuadamente.
Figura 10. Pruebas de Ping. Elaboración propia
Ahora ingresamos a la IP 192.168.1.1 a través de un navegador:
45
Figura 11. Ventana de logueo de OpenWRT. Elaboracion propia
Previamente, para ingresar vía web, o SSH, fue necesario asignar una contraseña al
usuario ROOT de forma local con el comando passwd, de la siguiente forma:
Figura 11. Cambiando el password de root. Elaboracion propia
Ingresamos a través del navegador, con el usuario ROOT y la contraseña, que se asigno en
el paso anterior:
46
Figura 12. Interfaz WEB OpenWRT. Elaboración propia
Este es el panel de administración del dispositivo, este panel, da información importante del
appliance, como versión del firmware, kernel, y su respectiva arquitectura, entre otros.
9.2.1.1 Configuración de la interfaz WAN.
Teniendo acceso al panel de administración vía WEB, el siguiente paso es configurar la
interfaz WAN, la cual será al encargada de recibir el servicio de INTERNET que brindara el
proveedor respectivo.
OpenWRT, permite diferentes modos con los cuales recibir el servicio de internet que nos
brinda el proveedor, es decir, es necesario tener claro con que tecnología y de que forma, el
proveedor entrega el servicio, para así realizar la configuración adecuada en la interfaz WAN.
Los modos de configuración que trae el sistema operativo son:

IP estática → Adecuado cuando el proveedor entrega una IP estática, generalmente
una publica.

DHCP → El proveedor entrega el servicio con una IP dinámica.

PPPoE → Es útil cuando el proveedor, entrega un servicio de banda ancha mediante
servicios como cablemodem y xDSL.
47

PPPoA → Es útil cuando el proveedor, entrega un servicio de banda ancha mediante
servicios como cablemodem y xDSL. Tiene ventajas de calidad sobre PPPoE

PPTP → Protocolo de Microsoft, se usa cuando el proveedor da el acceso a Internet
a través de una VPN.

WWAN → Cuando la conexión es inalámbrica.
De acuerdo al proveedor de servicio, para este caso se configurará la interfaz WAN, por
medio del DHCP. Posteriormente, se realiza la conexión física, del cablemodem al dispositivo
por la interfaz WAN, y se comprueba que el dispositivo tenga salida a internet.
48
Figura 13. Diagnosticos
Con esto se verifica que el dispositivo ya tiene acceso a internet.
9.2.1.2 Configuración de la Interfaz LAN
Ahora que el dispositivo tiene salida a internet, el siguiente paso, es configurar la interfaz
local, la cual brindara la conexión a internet a toda la red LAN, es decir, a todos los
computadores que conforman la red.
Desde la interfaz web, en el apartado de red- DHCP, se activa el servidor DHCP para la
interfaz local, de esta forma, cualquier equipo que se conecte, tomara la IP, la ruta por
defecto y los DNS de forma automática.
49
Figura 14. Configuración DHCP. Elaboración propia
Se guardan los cambios, y se verifica conectando un equipo a dicha interfaz, y se comprueba
que le haya asignado una dirección valida, y por ende que exista acceso a INTERNET.
Figura 15.Configuracion interface equipo cliente. Elaboración propia
En la imagen se puede evidenciar, la dirección IP que asigno el dispositivo: 192.168.1.184.
50
Por último verificamos conexión a internet.
Figura 16. Pruebas de Ping. Elaboración propia
Y si es necesario, se verifica que el trafico si este pasando a través del appliance OpenWRT,
por medio del comando traceroute, el cual es usado para identificar cada uno de los saltos
que hace un paquete, antes de llegar a su destino.
Figura 17. Pruebas de traceroute. Elaboracion propia
En algunos dispositivos, es necesario configurar manualmente lo que se denomina NAT, con
el fin de enmascarar la dirección IP local para acceder a internet, esta salida debe hacerse
desde una dirección IP pública, por ello se usa el NAT.
(Luis, Corrales, 2006, P83), NAT, es un servicio por el que cualquier dispositivo o aplicación
software, puede cambiar la dirección IP origen o destino, por otra dirección previamente
definida, se puede utilizar para dar salida a redes publicas a ordenadores que se encuentran
con direccionamiento privado o para proteger maquinas publicas.
51
Figura 18. Esquema NAT. Elaboracion propia
Sin embargo, debido a que OpenWRT es un sistema operativo para router, en la
configuración por defecto, trae incluidas las reglas necesarias para hacer el NAT respectivo.
Figura 19. Reglas por defecto firewall . Elaboración propia
9.2.1.3 Actualizando Gestor de paquetes
Antes de empezar a configurar cada uno de los servicios, es necesario actualizar la lista de
repositorios del gestor de paquetes que trae OpenWRT: OPKG, con el fin de obtener las
últimas versiones de cada uno de los diferentes aplicativos. Para realizar dicha tarea, se
debe realizar el siguiente proceso:
En el apartado Sistema – Packages, se pueden encontrar algunos procesos muy útiles para
el manejo de los paquetes de OPKG. Entre estas opciones se tienen:
52

Añadir un nuevo repositorio: Con esta opción, es posible añadir un nuevo servidor
donde se encuentren algunas aplicaciones empaquetadas para OPKG, es decir, un
servidor generalmente publicado en Internet, donde hay una gran recopilación de
programas y utilidades adaptadas para instalarlas en OpenWRT haciendo uso de
OPKG.

Instalar paquete desde URL: En algunos casos, hay herramientas que no se
encuentran en ninguno de los repositorios de OpenWRT publicados en Internet; sin
embargo, algún miembro de la comunidad se ha tomado la tarea de adaptar dicha
aplicación para OPKG, y ha publicado el paquete en su blog personal, para estos
casos, esta opción es la adecuada, ya que con la simple url, se instala el paquete, sin
necesidad de descargarlo en nuestro appliance directamente.

Actualizar lista de paquetes: Este proceso permite mantener una lista actualizada
de todos los paquetes que están incluidos en los diferentes repositorios.

Paquetes instalados: Muestra una lista de todos los paquetes que están instalados
en el Appliance.

Paquetes disponibles: Muestra una lista de todos los paquetes que están disponibles
en los repositorios y listos para ser instalados.
53
54
Paquetes instalados.
Figura 20. Paquetes instalados. Elaboración propia
55
Figura 21. Paquetes disponibles. Elaboración propia
Para actualizar la lista de paquetes disponibles en los repositorios, simplemente se debe dar
click en el boton: “Update package list”. No esta de más aclarar, que para actualizar la lista
de paquetes, es necesario que el appliance tenga acceso a Internet, y que
tenga
configurados los DNS adecuados.
Con estos sencillos pasos, se ha realizado la configuración básica del appliance, y ya se
encuentra lista para empezar a instalar y configurar cada uno de los servicios de seguridad
que se van a implementar en el UTM. Es muy importante realizar esta configuración ya que
facilita mucho el trabajo de instalación de la aplicación, es decir, si no se configurara el
gestor de paquetes OPKG, la única opción de instalar los aplicativos, seria compilar, y como
es sabido, la compilación lleva mucho tiempo y esfuerzo, solucionando problemas de
librerías, entre otros.
Teniendo el dispositivo listo, con conexión a internet, y la lista de paquetes actualizada, el
siguiente paso, es la instalación de los servicios de seguridad que va a prestar el UTM.
Cabe recordar que para efectos de este proyecto, los servicios que se van a instalar son:

FIREWALL

IDS

VPN
56

PROXY
Antes de iniciar con el proceso, es muy recomendable realizar un backup de la configuración
básica del dispositivo, con el fin de poder restablecerla, en caso de que la instalación de
alguna aplicación, dañe el buen funcionamiento y rendimiento del dispositivo.
Gracias a la interfaz web que provee OpenWRT, realizar un backup de la configuración es
bastante sencillo, en la opcion sistema – Backup & restore, simplemente asignamos un
nombre al backup y se da click en el boton backup:
Figura 22. Backup y restaurar. Elaboración propia
Este archivo configuracion-inicial.tgz, es el resultado del backup, en el se encuentra la
configuración básica actual. En caso de restaurarlo, se debe ir a sistema – Backup & restore
y restaurar la configuración.
9.2.2 Instalación Firewall.
Implementar un firewall o un cortafuegos (como se conoce en el idioma español), en una
red LAN, es quizás la política de seguridad más usada a nivel corporativos por los directores
57
de IT. Normalmente,
de acuerdo a la experiencia, muchos ingenieros piensan que
implementar un firewall en su red, los protegerá de todas las amenazas que existen en
Internet, sin embargo, es un error grave, pensar de esa forma, por que hoy en día, existen
técnicas muy avanzadas que permiten evadir sin ningún problema un firewall convencional,
además el firewall tiene limitantes como:

No protege la red de ataques internos.

Con un firewall no es posible proteger una red lan contra la transferencia de archivos
infectados por virus o algún tipo de software malicioso.
Por esta razón es fundamental, implementar todo un conjunto de mecanismos de seguridad
en la red LAN, y no quedarse simplemente con un firewall que puede ser evadido, esto es
posible sin necesidad de tener altos conocimientos en técnicas de intrusión.
Un firewall, es un dispositivo o software, que permite aplicar diferentes politicas de seguridad
entre la red LAN e Internet, El sistema determina gracias a la configuracion realizada por el
administrador, que servicios de red pueden ser accedidos, desde la red LAN hacia Internet y
viceverza.
El esquema tradicional de un firewall en la red LAN, se muestra a continuación:
58
Figura 22. Diagrama firewall. Elaboración propia
9.2.2.1 Objetivos de un Firewall

Todo el trafico, desde el interior (LAN) hacia exterior (Internet) debe pasar a través del
firewall, para que la red este completamente protegida, es decir, si la organización
tiene varias salidas a Internet, o a otra red externa, es necesario implementar otro
firewall, con el fin de proteger cada una de las entradas por las cuales se comunican
redes diferentes. Así mismo, ocurre cuando dentro de la organización, ciertos
funcionarios, tienen acceso a Internet a través de un Modem 3G, dichas situaciones,
representan un riesgo potencial para la organización, puesto que de esta forma, abren
una puerta no segura, que cualquier delincuente informático, podría aprovechar.

Se permitirá pasar solamente el trafico autorizado previamente por medio de las
políticas implementadas por el administrador de red.

Siempre se buscara, que el firewall sea muy seguro hasta tal punto que sea inmune a
la penetración, es claro que ningún sistema será 100% seguro, pero se hará lo posible
por que el sistema tenga muy poco riesgo de intrusión.
Teniendo claro, qué es un firewall o cortafuegos, podemos continuar con el proceso de
59
instalación, en el dispositivo UTM.
En OpenWRT, y en cualquier GNU/Linux en general, viene incluido dentro del kernel, un
sistema de procesamiento de paquetes de red denominado IPTABLES, el cual se caracteriza
por su rendimiento y buen funcionamiento.
IPTABLES, permite al administrador definir reglas acerca de que hacer con los paquetes de
red, dichas reglas se agrupan en cadenas, una cadena es una lista ordenada de reglas, y así
mismo dichas cadenas se agrupan en tablas, cada tabla esta asociada con un tipo diferente
de procesamiento de paquetes. Generalmente se manejan 5 cadenas básicas, sin embargo,
en cualquier momento, se pueden crear cadenas. Las cadenas básicas son:
Figura 23. Cadenas de firewall. Gregor N. Purdy – “Linux Iptables”
Gregor N. Purdy en su libro “Linux Iptables: Pocket Reference” nos muestra una tabla la cual
muestra las 5 cadenas básicas, y describe los puntos en el flujo de paquetes donde se
puede especificar el procesamiento.
Básicamente, las cadenas son:

Forward: (Cadena de REDIRECCIÓN) — Todos los paquetes pasan por este sistema
para ser encaminados a su destino
60

Input: (Cadena de ENTRADA) — Todos los paquetes destinados a este sistema

Ouput: Todos los paquetes creados por este sistema

Postrouting: Los paquetes salientes pasan por esta cadena después de haberse
tomado la decisión del ruteo (SNAT)

Prerouting: Todos los paquetes que logran entrar a este sistema, antes de que el
ruteo decida si el paquete debe ser reenviado
Adicionalmente, iptables define targets o destinos, los cuales consisten en la acción que se el
sistema deberá realizar cuando un paquete, concuerde con algunas de las reglas
preestablecidas, existen 4 tipos de targets:
Figura 24. Targets del firewall. Gregor N. Purdy
Básicamente, cada uno de los targets son:

Accept: Este target hace que iptables acepte el paquete

Drop: Este target hace que iptables descarte el paquete
61

Queue: Este destino hace que el paquete sea enviado a una cola

Return: Hace que el paquete en cuestión deje de circular por la cadena en cuya regla
se ejecutó el destino RETURN
Implementar y administrar el firewall (IPTABLES), en OpenWRT, es demasiado sencillo, ya
que, si se desea se puede hacer de forma tradicional, es decir, desde la consola, entrando al
equipo por SSH, o se puede configurar mucho más fácil a través de la interfaz WEB, muy útil
para aquellos usuarios que no se sienten muy familiarizado con la consola:
Figura 25. Menu firewall. Elaboración propia
Para entrar a este menú, se debe hacer click, en RED – FIREWALL, desde allí, se pueden
crear todas las reglas necesarias por el administrador, cada regla debe tener los siguientes
parámetros:

Name: Un nombre que describa la función o el objetivo de la regla.

Source: Interface de origen
62

Destination: Interface de destino.

Protocolo: Ya sea TCP, UDP o ambos

IP source: Dirección IP de origen

IP Destination: Alguna dirección ip de destino, si no se tiene una se deja en blanco.

Port: Numero de puerto por donde se establece la conexión

Action: Que función cumplirá la regla, descartar, aceptar, rechazar etc.
9.2.3 Instalación IDS
Un sistema de detección de intrusos,
también conocido como un IDS, es un sistema
encargado de vigilar todo el perímetro de red, ante ataques o intrusiones, previamente
conocidos, es decir, el sistema contiene un gran número de ataques conocidos, ya sea por
experimentados delincuentes informáticos, o scriptkiddies, usando herramientas automáticas.
Cuando el IDS, detecta un patrón similar, a alguno de los ataques que tiene en su base de
datos, lanza una alarma, que puede ser un sonido o un email al administrador, donde
muestra información relevante sobre el ataque.
Gonzalo Asensio, en su libro “Seguridad en Internet: Una guía practica para proteger su PC”
define varios tipos de IDS:
1. HIDS (Host IDS): Es un IDS que controla una sola maquina, se encarga de monitorear
el comportamiento de dicha maquina, gracias a este IDS es posible detectar,
problemas de malware y virus, entre otros.
2. NIDS (Network IDS): Son IDS que analizan todo el trafico de la red
3. DIDS: Este es un hibrido que mezcla el HIDS con NIDS,
Funcionamiento.
El funcionamiento de un Sistema de Detección de intrusos, básicamente consiste en el
análisis muy detallado del tráfico de red, el cual al entrar al sistema y es comparado con
firmas de ataques conocidos, o comportamientos sospechosos, como pueden ser:
63

el escaneo de puertos.

paquetes malformados

vulnerabilidades conocidas
El IDS no sólo analiza qué tipo de tráfico es, sino que también revisa el contenido y su
comportamiento. Normalmente esta herramienta se integra con un firewall. El detector de
intrusos es incapaz de detener los ataques por sí solo, excepto los que trabajan
conjuntamente con otros servicios de seguridad, como el firewall, convirtiéndose en una
herramienta muy poderosa ya que se une la inteligencia del IDS y el poder de bloqueo del
firewall, al ser el punto donde forzosamente deben pasar los paquetes y pueden ser
bloqueados antes de penetrar en la red. Los IDS suelen disponer de una base de datos de
“firmas” de ataques conocidos los cuales sirven como patrón para comparar el trafico con
todos estos tipos de ataques.. Dichas firmas permiten al IDS distinguir el trafico normal, de
cualquier trafico invasivo que desee atacar la red, y poder enviar una alerta al administrador
del evento ocurrido.
9.2.3.1 SNORT
Figura 26. Snort. http://snort.org
Es claro que, en el mercado actual, existen diversas alternativas de IDS, unas opciones
privativas y otras libres, cada una con sus ventajas y desventajas. Sin embargo, para efectos
de este proyecto, se usara Snort, un IDS completamente libre, para sistemas UNIX (Aunque
también es posible instalar en plataformas Microsoft) el cual se caracteriza, por su poder,
eficacia y rendimiento.
64
La página oficial del proyecto http://www.snort.org, dice:
Snort® is an open source network intrusion prevention and detection system (IDS/IPS)
developed by Sourcefire. Combining the benefits of signature, protocol, and anomaly-based
inspection, Snort is the most widely deployed IDS/IPS technology worldwide. With millions of
downloads and nearly 400,000 registered users, Snort has become the de facto standard for
IPS.
El proceso de instalación en nuestro appliance es bastante sencillo, simplemente se debe
hacer uso de OPKG; para esto vamos a la interfaz web, y en el menú Sistema-Packages ,
damos click en el boton “update package list”
Si todo ha salido bien, debe salir en pantalla un mensaje como este:
Figura 27.Instalacion SNORT. Elaboración propia
Si por alguna razón, no sale un mensaje de esta forma debe ser por alguno de los siguientes
aspectos:

El appliance no esta conectado a internet: Para poder usar el gestor de paquetes
OPKG, es necesario que el dispositivo este conectado a Internet, por tal motivo se
deben hacer pruebas de ping desde el prompt de OpenWRT hacia Internet, si el ping
65
no responde, habrá que configurar nuevamente el equipo para que tenga salida a
internet.

Si el ping hacia internet responde, es necesario hacer ping hacia un dominio, con el fin
de verificar problemas de DNS. Si el dominio no responde, pero el ping a una ip si, se
debe configurar los dns en el archivo /etc/resolv.conf de OpenWRT
Después de que hemos actualizado los repositorios, en la lista de paquetes disponibles
buscamos snort, y se instalan dos paquetes esenciales para el buen funcionamiento del IDS:
Figura 28. Instalación SNORT. Elaboración propia
Por último se deben descargar las reglas actualizadas del IDS, para ello descargamos el
paquete disponible en la página web oficial del proyecto, sin embargo para realizar la
descarga, es necesarios suscribirse al proyecto. https://www.snort.org/signup Luego de
suscribirse, procedemos a descargar las reglas necesarias para el IDS:
https://www.snort.org/downloads/1189
Teniendo ya el paquete con las reglas en nuestro PC, es necesario enviar dicho paquete a
nuestro dispositivo, se puede hacer de muchas formas, con una simple usb, o a través de
SSH:
scp paquete-rules.tar.gz root@192.168.1.107:/home
De esa forma enviaremos el paquete-rules a nuestro appliance, cabe resaltar que se debe
reemplazar la dirección IP y el usuario por el que se haya configurado para el appliance.
Solo nos queda descomprimir el archivo en el directorio /etc/snort/rules/ lo hacemos de la
66
siguiente forma:
cd /home
tar xvvf paquete-rules.tar.gz
cp rules/* /etc/snort/rules
cp prepoc_rules/* /etc/snort/prepoc_rules
cp etc/* /etc/snort/
Con esto nuestro IDS quedara listo para configurar y empezar a vigilar la red local.
9.2.4 Instalación VPN
El siguiente servicio a instalar, es el servidor VPN, a lo largo del documento se ha definido
que es una VPN, y cada uno de los tipos existentes, por tal motivo no se entrara a definir qué
es y cómo funciona
Para brindar el servicio de conectividad VPN en nuestro dispositivo, se instalara el paquete
OPENVPN. OpenVPN es un aplicación libre licenciada bajo la licencia GPL la cual permite
ofrecer conectividad punto-a-punto con validación jerárquica de usuarios y host conectados
remotamente.
En su página oficial http://www.openvpn.net define:
“OpenVPN Access Server is a full featured SSL VPN software solution that
integrates OpenVPN server capabilities, enterprise management capabilities,
simplified OpenVPN Connect UI, and OpenVPN Client software packages that
accommodate Windows, MAC, and Linux OS environments. OpenVPN Access
Server supports a wide range of configurations, including secure and granular
remote access to internal network and/ or private cloud network resources and
applications with fine-grained access control.. ”
El proceso de instalación es muy sencillo, en la lista de paquetes disponibles, buscamos el
paquete openvpn-devel y procedemos con la instalación:
67
Figura 29. Paquete OPENVPN. Elaboración propia
De esta manera, el servidor VPN estará instalado y listo para ser configurado.
Figura 30. Paquete OPENVPN. Elaboración propia
Como se puede observar en la imagen, cada uno de los paquetes necesarios ya se
encuentran instalados:

openvpn

openvpn-devel

openvpn-easy-rsa

snort

snort-mysql
9.2.5 Instalación Proxy
68
El último servicio a instalar, es el servidor proxy, este servicio es fundamental para cualquier
red local a nivel corporativo, debido a que gracias a este se puede controlar el tráfico web
que circula por la red, es decir, con el servidor proxy, es posible controlar a que sitios web los
usuarios pueden acceder y a cuáles no.
El funcionamiento de un servidor proxy es sencillo, el cliente establece la conexión con el
servidor proxy, que a su vez establece otra conexión, como cliente, con el servidor final,
cuando el proxy recibe el mensaje de petición del cliente puede generar una respuesta
propia
o retransmitirlo al servidor final. En otro caso, el servidor puede realizar
modificaciones en la petición según la aplicación para que esté diseñado, y cuando reciba la
respuesta del servidor final, la retransmitirá al cliente, también con la posibilidad de efectuar
cambios:
Figura 31. Esquema proxy. Jose M. Barcelo: Protocolos y aplicaciones Internet
Segun Jose M. Barcelo en su libro “protocolos y aplicaciones Internet”, existen diversas
aplicaciones de un servidor proxy, las más importantes son:

Actuar como un cortafuegos que aísle la red local de las demás redes externas, en
esta configuración, los clientes no tienen acceso directo al exterior de su red y toda
comunicación con los servidores remotos tiene lugar por medio del proxy.

Tener una memoria cache compartida entre los usuarios de la red local. Si diferentes
clientes, solicitan directamente un mismo recurso, por norma general guardara la
69
misma copia de la respuesta en sus respectivas memorias cache, si lo solicitan por
medio de un proxy, la primera petición necesitará un acceso al servidor remoto. Sin
embargo, las siguientes pueden aprovechar la copia ya guardada en la memoria
cache del servidor proxy, aunque provengan de clientes diferentes.

Construir una jerarquía de memorias cache de proxies. En el nivel mas bajo se
encuentran los proxies a que acceden directamente los clientes, en un segundo nivel
existen los proxies a los que acceden los de primer nivel, y así sucesivamente,
incluso pueden haber proxies a escala de todo un país.
9.2.5.1 Squid
Squid es una aplicación multiplataforma libre, la cual brinda el servicio de Proxy, en el mundo
tecnológico, squid es ampliamente reconocido por ser la solución proxy líder, por su
rendimiento y amplias características.
E n su página oficial15 lo definen como:
“Squid is a caching proxy for the Web supporting HTTP, HTTPS, FTP, and more.
It reduces bandwidth and improves response times by caching and reusing
frequently-requested web pages. Squid has extensive access controls and makes
a great server accelerator. It runs on most available operating systems, including
Windows and is licensed under the GNU GPL.”
La instalación de Squid en OpenWRT, se hace igual que otras aplicaciones, usando el gestor
de paquetes OPKG, en la lista de paquetes disponibles buscamos squid y damos click en
instalar.
15
http://www.squid-cache.org/
70
Figura 32. Instalacion SQUID. Elaboración propia
De esta forma, tendremos nuestro servidor proxy listo para configurar bajo los parámetros
que el administrador de red crea conveniente.
Hasta este punto, hemos descrito el proceso de instalación de cada uno de los servicios
propuestos, como se pudo evidenciar, administrar nuestro appliance desde la interfaz web
es muy sencillo, además haciendo uso del poder de OPKG, este ultimo quizás fue el factor
mas determinante para seleccionar un sistema operativo liviano pero que tuviera la suficiente
robustez para instalar servicios como proxy y VPN.
Antes de continuar es pertinente aclarar, que el objetivo del proyecto es demostrar cómo de
manera sencilla se puede construir un appliance de seguridad con los servicios principales
usando aquellos equipos que generalmente se encuentran archivados en un cuarto de la
empresa, por esta razón, en ningún servicio se describió como realizar la configuración, ya
que es responsabilidad del administrador de red configurar cada uno de los aplicativos de la
forma que lo requiera.
71
9.3 PRUEBAS DE RENDIMIENTO.
Es importante, que a estos equipos que funcionan como gateway de la red, se les realicen
algunas pruebas de rendimiento, con el fin de diagnosticar y dimensionar, la cantidad de
equipos que pueden llegar a proteger. Para esto, se realizan las pruebas de rendimiento
Benchmark como se le conoce en Inglés.
En general, la realización de pruebas benchmark no suele ser una tarea fácil debido a que se
requiere hacerlo de forma repetitiva para llegar a conclusiones útiles, encontrar patrones de
comportamientos similares, y deducir de acuerdo a los resultados, ademas, asi como es
complicado realizar las pruebas, es mas difícil aun interpretar los resultados de las mismas,
se debe tener conocimiento del campo.
Dentro del amplio espectro de pruebas de benchmarking existen infinidad de pruebas
metodologías y aplicaciones para evaluar el rendimiento de casi cualquier componente
software o hardware, como por ejemplo:

Bases de datos

Networking

Servicios WEB

Computadores de escritorio

Tarjetas Graficas

Sistemas operativos

Entre otros..
De igual forma, existen aplicaciones, desarrolladas para realizar este tipo de test, de forma
automatizada, las cuales lo realizan, y organizan toda la información recolectada para
mostrarla de una manera mas amigable al tester. Algunas de estas aplicaciones son:

TPC BenchmarkTM C (TPC-C): Aplicación propietaria utilizada para el procesamiento
online de transacciones (en inglés, OLTP). Es considerado como el estándar para
OLTP en cuanto a benchmarks para gestores de bases de datos. http://www.tpc.org
72

eWeek’s Nile benchmark: diseñado para comparar los resultados de varios gestores
de bases de datos (entre otros MySQL, Microsoft SQL Server, IBM DB2, Oracle y
Sybase)”. http://www.eweek.com/article2/0,4149,293,00.asp

ApacheBench: Herramienta libre, diseñada para evaluar servidores HTTP de Apache.
En particular muestra cuantas peticiones por Segundo es capaz de servir (viene
incluida con el servidor Apache). http://httpd.apache.org/docs/2.0/programs/ab.html

LoadRunner: Herramienta propietaria para la evaluación del comportamiento y
rendimiento de aplicaciones web. Puede simular miles de usuarios y utiliza monitores
de rendimiento para identificar y aislar problemas.
Evaluación de servidores de
aplicaciones web, servidores de streaming, gestores de bases de datos, aplicaciones
Java y ERP. http://www-svca.mercuryinteractive.com/products/loadrunner

Mausezahn: Es un generador de tráfico licenciado bajo la licencia GPL, escrito en C
para GNU/Linux, muy versátil y rápido, que permite generar y enviar prácticamente
todos los paquetes posibles con una sintaxis bastante sencilla. principalmente se
utiliza para probar VoIP o redes multicast, aunque también puede usarse en auditorías
de seguridad para chequear si los sistemas están suficientemente fortificados o, para
comprobar
los
IDS,
y
demás
elementos
de
seguridad
perimetral.
http://www.perihel.at/sec/mz/

D-ITG: (Generador de Tráfico distribuido en Internet) es una plataforma capaz de
producir tráfico a nivel de paquetes con precisión, replicando apropiadamente los
procesos estocásticos tanto para IDT (Entre la hora de Salida) y PS (Tamaño del
paquete) variables aleatorias (exponencial, uniforme, cauchy, normal, Pareto, ...). DITG soporta la generación de tráfico IPV4 e IPV6 y es capaz de generar tráfico en las
capas de red, transporte y aplicación. Se Cree que D-ITG muestra propiedades
interesantes
cuando
es
comparado
con
http://www.grid.unina.it/software/ITG/index.php
73
otros
generadores
de
tráfico.
Para este proyecto, se usaran las últimas 2 herramientas mencionadas, ya que son las
herramientas adecuadas para medir el rendimiento en la red.
9.3.1 Escenario de las pruebas
Se realizaran 2 laboratorios, uno por cada aplicación , es necesario hacer 2 esquemas
diferentes, puesto que cada herramienta funciona de forma diferente, y lo mejor es simular el
entorno ideal, para que las pruebas tengan los resultados esperados:

Laboratorio A: Internet llega al dispositivo a través de un cableModem que entrega el
proveedor, en este caso UNE, dicho cableModem entrega una dirección IP publica
por medio de un servidor DHCP. Igualmente, detrás del appliance de seguridad, se
encuentra un equipo el cual será el encargado de generar el tráfico. La siguiente es la
topología del laboratorio:
74
Figura 32. Laboratorio A. Elaboracion propia
Básicamente, en este laboratorio se busca medir la carga del sistema de nuestro
appliance, a medida que viajan paquetes de red, por medio de él. Se hicieron los
siguientes envíos de paquetes usando la herramienta Mausezahn:
Para 1.000.000 de paquetes:
epsilon@C3PO:~$ sudo mz eth0 -c 1000000 \ "ff:ff:ff:ff:ff:ff ff:ff:ff:ff:ff:ff cc:dd
00:00:00:ca:fe:ba:be"
4.25 seconds (235294 packets per second)
Para 10.000.000 de paquetes:
epsilon@C3PO:~$ sudo mz eth0 -c 10000000 \ "ff:ff:ff:ff:ff:ff ff:ff:ff:ff:ff:ff cc:dd
00:00:00:ca:fe:ba:be"
40.24 seconds (248509 packets per second)
Para 100.000.000 de paquetes:
epsilon@C3PO:~$ sudo mz eth0 -c 100000000 \ "ff:ff:ff:ff:ff:ff ff:ff:ff:ff:ff:ff cc:dd
00:00:00:ca:fe:ba:be"
436.54 seconds (229074 packets per second)

Laboratorio B: Para esta prueba, el esquema es similar, sin embargo, ya que la
herramienta D-ITG trabaja bajo una arquitectura cliente/servidor, es necesario contar
con un servidor externo publicado en Internet el cual tendrá corriendo la aplicación
servidor de D-ITG y el PC detrás del appliance lanzará la aplicación cliente de dicha
75
herramienta:
Figura 33. Laboratorio B. Elaboración propia
En este laboratorio, se genera diferente tipo de tráfico VoIP, Telnet y DNS
hacia dos
destinos diferentes, con el fin de medir el throughput de nuestro dispositivo.
Se realizaron los siguientes pasos:
1. Iniciar la aplicación servidor.
2. Se debe crear un script donde se definen cada tipo de tráfico que será generado.
3. Se ejecuta la aplicación cliente recibiendo como parámetro el script previamente
creado.
4. Se cierra la aplicación servidor.
5. Se decodifica el archivo de log, con el fin de observar los datos.
76
9.4 ANALISIS DE LOS RESULTADOS
Laboratorio A.
Para este laboratorio, cuando se realizo cada uno de los envíos de paquetes, se evidencio
un aumento en la carga del sistema, lo cual se puede observar en las graficas del consumo
de CPU
Para 1.000.000 de paquetes:
Figura 34. Grafica Consumo CPU. Elaboracion propia
Como se puede ver en las graficas de carga del sistema, en el momento que se envía
1.000.000 de paquetes, la carga de la CPU aumenta considerablemente.
77
Para 10.000.000 de paquetes
Figura 35. Grafica consumo CPU. Elaboración propia
En este envió, la carga aumenta demasiado, hasta tal punto que se empieza a observar el
dispositivo bloqueado, y el servicio de Internet empieza a sufrir latencias.
Para 100.000.000 de paquetes
Al momento de iniciar el envió de esta cantidad de paquetes, el equipo queda totalmente
bloqueado, no hay gestión del equipo, y el servicio de Internet quedo inoperativo. Para
restablecer el servicio se procedió a apagar el dispositivo físicamente, y volver a encenderlo.
78
Laboratorio B
Para este laboratorio, el tráfico por las interfaces aumentó, como se evidencia en la siguiente
gráfica:
Figura 35. Grafica consumo de red . Elaboración propia
Y los resultados que arrojo la aplicación usada, fueron los siguientes:
Resultados de envió:
/---------------------------------------------------------Flow number: 2
From 192.168.0.184:41136
79
To
190.14.237.248:10002
---------------------------------------------------------Total time
=
Total packets
2.300197 s
=
250
Minimum delay
=
0.000000 s
Maximum delay
=
0.000000 s
Average delay
Average jitter
=
0.000000 s
=
0.000000 s
Delay standard deviation =
Bytes received
=
Average bitrate
=
Average packet rate
Packets dropped
0.000000 s
510
1.773761 Kbit/s
=
=
Average loss-burst size =
108.686343 pkt/s
0 (0.00 %)
0.000000 pkt
------------------------------------------------------------------------------------------------------------------80
Flow number: 1
From 192.168.0.184:44417
To
190.14.237.248:10001
---------------------------------------------------------Total time
=
Total packets
9.980082 s
=
500
Minimum delay
=
0.000000 s
Maximum delay
=
0.000000 s
Average delay
Average jitter
=
0.000000 s
=
0.000000 s
Delay standard deviation =
Bytes received
=
Average bitrate
=
Average packet rate
Packets dropped
0.000000 s
58000
46.492604 Kbit/s
=
=
Average loss-burst size =
50.099789 pkt/s
0 (0.00 %)
0.000000 pkt
81
------------------------------------------------------------------------------------------------------------------Flow number: 3
From 192.168.0.184:45356
To
190.14.237.248:10003
---------------------------------------------------------Total time
=
Total packets
8.930380 s
=
6
Minimum delay
=
0.000000 s
Maximum delay
=
0.000000 s
Average delay
Average jitter
=
=
0.000000 s
0.000000 s
Delay standard deviation =
Bytes received
=
Average bitrate
=
Average packet rate
0.000000 s
1176
1.053483 Kbit/s
=
0.671864 pkt/s
82
Packets dropped
=
0 (0.00 %)
Average loss-burst size =
0.000000 pkt
----------------------------------------------------------
__________________________________________________________
**************** TOTAL RESULTS ******************
__________________________________________________________
Number of flows
Total time
Total packets
=
=
3
10.049101 s
=
756
Minimum delay
=
0.000000 s
Maximum delay
=
0.000000 s
Average delay
Average jitter
=
=
0.000000 s
0.000000 s
Delay standard deviation =
Bytes received
=
0.000000 s
59686
83
Average bitrate
=
47.515494 Kbit/s
Average packet rate
=
Packets dropped
75.230610 pkt/s
=
0 (0.00 %)
Average loss-burst size =
Error lines
=
0 pkt
0
---------------------------------------------------------Resultados de recibo:
ITGDec version 2.8.0-rc1 (r457:458)
Compile-time options:
----------------------------------------------------------Flow number: 2
From 186.0.57.251:41136
To
190.14.237.248:10002
---------------------------------------------------------Total time
Total packets
=
2.311910 s
=
250
84
Minimum delay
=
351.036319 s
Maximum delay
=
351.078388 s
Average delay
Average jitter
=
351.051827 s
=
0.006865 s
Delay standard deviation =
Bytes received
=
Average bitrate
=
Average packet rate
Packets dropped
0.008848 s
510
1.764775 Kbit/s
=
=
Average loss-burst size =
108.135697 pkt/s
0 (0.00 %)
0.000000 pkt
------------------------------------------------------------------------------------------------------------------Flow number: 1
From 186.0.57.251:44417
To
190.14.237.248:10001
----------------------------------------------------------
85
Total time
=
Total packets
9.980597 s
=
499
Minimum delay
=
351.036498 s
Maximum delay
=
351.060237 s
Average delay
Average jitter
=
351.038024 s
=
0.000940 s
Delay standard deviation =
Bytes received
=
Average bitrate
=
Average packet rate
Packets dropped
0.002069 s
57884
46.397225 Kbit/s
=
=
Average loss-burst size =
49.997009 pkt/s
1 (0.20 %)
1.000000 pkt
------------------------------------------------------------------------------------------------------------------Flow number: 3
From 186.0.57.251:45356
86
To
190.14.237.248:10003
---------------------------------------------------------Total time
=
Total packets
8.932953 s
=
6
Minimum delay
=
351.036942 s
Maximum delay
=
351.051918 s
Average delay
Average jitter
=
351.041095 s
=
0.006623 s
Delay standard deviation =
Bytes received
=
Average bitrate
=
Average packet rate
Packets dropped
0.004997 s
1176
1.053179 Kbit/s
=
=
Average loss-burst size =
0.671670 pkt/s
0 (0.00 %)
0.000000 pkt
----------------------------------------------------------
87
__________________________________________________________
**************** TOTAL RESULTS ******************
__________________________________________________________
Number of flows
Total time
=
=
Total packets
3
10.046120 s
=
755
Minimum delay
=
351.036319 s
Maximum delay
=
351.078388 s
Average delay
Average jitter
=
351.042619 s
=
0.003004 s
Delay standard deviation =
Bytes received
=
Average bitrate
=
Average packet rate
Packets dropped
0.008426 s
59570
47.437220 Kbit/s
=
=
Average loss-burst size =
75.153393 pkt/s
1 (0.13 %)
1.000000 pkt
88
Error lines
=
0
----------------------------------------------------------
89
10. CONCLUSIONES

Por medio de este proyecto se pudo demostrar que existe una alternativa para el
reuso de los equipos de computos catalogados como obsoletos, y que son una bomba
de tiempo para el ambiente, es importante concientizar a todas las personas, de que
un dispositivo (en este caso un computador) puede llegar a ser muy util sin importar la
condicion, solo es necesario adaptarlo y configurarlo para que realice una funcion
especifica de forma eficiente.

Si bien, en nuestro páis existen proyectos similares, ninguno de los indagados, tienen
como objetivo usar los equipos de computo obsoletos para desarrollar una solucion
de seguridad para las pymes, no obstante hay proyectos los cuales buscan darle una
solucion a la grave situación de los desechos tecnologicos.

Se pudo evidenciar, que para implementar una solución de seguridad, no es necesario
tener hardware sofisticado, ni equipos costosos, si por algún motivo no es posible
adquirir una solución de seguridad profesional, proyectos de este tipo brindan una
buena alternativa. Gracias a las pruebas se identificó que con un equipo utilizado en la
elaboración del prototipo:

Disco duro de 10GB

Memoria RAM 128MB

Procesador Intel Celeron 333MHZ

2 tarjetas de Red.

Unidad de CD
Es posible implementar una solución de seguridad que proteja alrededor de 25 a 30
usuarios, es decir, el equipo esta en la capacidad de soportar el trafico generado por
este numero de maquinas, ,de ahi en adelante, podran aparcer problemas de
saturación y sobrecarga del procesador. Alli se puede concluir, que existe una relacion
directamente proporcional entre el Hardware usado y la cantidad de usuarios que el
equipo pueda soportar, de esta forma, entre mejor sea el hardware usado, mayor sera
90
la cantidad de usuarios que pueda proteger.

De acuerdo a las investigaciones e indagaciones, se pudo observar, que los
requerimientos mas urgentes en el campo de la seguridad informatica son:

Proteger el activo mas importante: La informacíon

Controlar las aplicaciones de ocio que a diario usan los usuarios de la red.

Ya que hoy en dia, es fundamental estar siempre conectado a sus sistemas de
información se debe cifrar todas las conexiones.

Realizar un analisis de trafico en tiempo real, con el fin de evitar ataques
previamente establecidos y conocidos.
11. RECOMENDACIONES

La única recomendación para instalar el firmware utilizado, es determinar si el kernel
de Linux, trae soporte para el hardware en donde se desea instalar, ya que este seria
el unico inconveniente que se puede presentar a la hora de implementar OpenWRT.

Igualmente es recomendable, que si desea implementar la solución se tenga
conocimientos basico en el manejo y administracion de GNU/Linux.

Es fundamental, concientizar a las pymes, que con muy poco se puede llegar a
construir soluciones adecuadas e innovadoras.
91
12. REFERENCIAS BIBLIOGRAFICAS

http://www.cisco.com/en/US/products/ps6120/index.html

http://www.fortinet.com/products/fortigate/111C.html

http://www.elmundo.es/elmundosalud/2006/06/30/industria/1151687483.html

FLETSCHER BOCANEGRA,Luis Alejandro. Implementación de clusters beowulf
como firewall

GOMEZ GUERRA, John Alexis. modelo de solución de enrutamiento de datos a bajo
costo basado en software libre

SCHROLL, Addam. Effective Practice: Purdue Firewall Appliance

http://www.abox.com

Http://www.sonicwall.com

http://www.dallmeier-electronic.com/es/productos/dvr-nvr/videoip-appliancesmatrix/que-es-una-appliance.html

Robert, Newman, 2009: Computer Security: Protecting Digital Resources

Maria, España: Firewall 2003, P95

Miquel, Colobran: Administración de sistemas operativos en red, 2008 P152

Angel, Cobo: Estudio científico de las redes de ordenadores, P187

Damian Ferrer: Servicios en red, 2005
92

David Martinez: UNIX a base de ejemplos. 2009, P159

Andrew Tanenbaum: Sistemas operativos embebidos, 2001

Friedrich, L. “A Survey on Operating System Support for Embedded Systems
Properties”. Departamento de Informática e Estatística.

http://www.symbian.org/

http://www.dd-wrt.com

http://openwrt.org/

http://www.computadoresparaeducar.gov.co

Jose, Salvador: Ingeniera de procesos informáticos. 2003, P101

Jesus Niño: Sistema operativo monopuesto, P198

Luis, Corrales: Diseño e implantacion de arquitecturas seguras,2006, P186

http://www.snort.org/

http://www.openvpn.net/

http://www.squid-cache.org/
93
13. BIBLIOGRAFÍA

Sistemas operativos Modernos – Andrew Tanenbaum

Linux appliance design: a hands-on guide to building Linux appliances - Bob
Smith,John Hardin,Graham Phillips,Bill Pierce

Network Security Using Linux - Michael Sweeney

TCP/IP – John Ray

Security Sage's guide to hardening the network infrastructure - Andrés, S., Kenyon, B.,
Marc Cohn, J., Johnson, N. & Dolly, J.

Network security hacks - Andrew Lockhart

Intrusion detection systems with Snort: advanced IDS techniques using Snort. Escrito
por Rafeeq Ur Rehman

Linux iptables: pocket reference - Escrito por Gregor N. Purdy

Combat Training 2.0 Base 4 security.
94
Descargar