facultad de ingeniería eléctrica y electrónica - ESCUELA ...

Post on 05-Feb-2023

0 views 0 download

Transcript of facultad de ingeniería eléctrica y electrónica - ESCUELA ...

I

ESCUELA POLITÉCNICA NACIONAL

FACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA

ANÁLISIS E IMPLEMENTACIÓN DE UN PROTOTIPO DE SERVIDOR VIRTUALIZADO SOBRE UNA DISTRIBUCIÓN DE

LINUX PARA EL USO EN PyMES

PROYECTO PREVIO A LA OBTENCIÓN DEL TÍTULO DE INGENIERO EN ELECTRÓNICA Y REDES DE INFORMACIÓN

BONILLA SUÁREZ JORGE JAVIER jjbs8@hotmail.com

CARRASCO AGUILAR DANIEL SANTIAGO danielserver86@hotmail.com

DIRECTOR: ING. FERNANDO FLORES. fflore@mailfie.epn.edu.ec

Quito, Febrero 2010

II

DECLARACIÓN

Nosotros, Jorge Javier Bonilla Suárez y Daniel Santiago Carrasco Aguilar,

declaramos que el trabajo aquí descrito es de nuestra autoría; que no ha sido

previamente presentado para ningún grado o calificación profesional; y, que hemos

consultado las referencias bibliográficas que se incluyen en este documento.

La Escuela Politécnica Nacional, puede hacer uso de los derechos correspondientes

a este trabajo, según lo establecido por la Ley de Propiedad Intelectual, por su

Reglamento y por la normatividad institucional vigente.

Jorge Javier Bonilla Suárez Daniel Santiago Carrasco Aguilar

III

CERTIFICACIÓN

Certifico que el presente trabajo fue desarrollado por Jorge Javier Bonilla Suárez y

Daniel Santiago Carrasco Aguilar, bajo mi supervisión.

Ing. Williams Fernando Flores Cifuentes

Director del Proyecto

IV

AGRADECIMIENTO

A Dios Todopoderoso, por darme una vida llena de Bendiciones…

A mi madre Tatyana y a mi padre Felipe por haberme dado el más grande regalo: la

vida.

A mi abuelita Sonia, ejemplo de amor y trabajo, por ser la persona que me da la

fuerza que me mueve cada día para ser mejor…

A mi abuelito Jorge, quien ha estado siempre presente para darme su cariño,

confianza y apoyo incondicional.

A mi hermana Andrea por ser esa persona que ha estado conmigo todos los días de

mi carrera universitaria dándome sus muy sabios consejos.

A mi tío Lenin por ser quien, con su experiencia y cariño, me ha sabido guiar por el

camino profesional.

A mi mamita Michita, papito Segundo y mami Zoila que desde el cielo estarán

guiándome…

A toda mi gran familia, ejemplo de unidad, tesón, y amor…

Daniel.

V

A Dios por todas las bendiciones que me ha brindado durante mi vida.

A mi madre María Antonieta por todo el amor, apoyo y amistad que me brinda día a

día.

A mi abuelito Eugenio por los conocimientos y experiencia que comparte conmigo.

A mi tía Imelda por su amabilidad y comprensión.

A toda mi familia: Jorge, Cecilia, Santiago y Verónica, Manuel, María Elena, María

Augusta, Alex y Ximena por todo su cariño y apoyo.

A todos mis amigos por siempre estar conmigo.

Finalmente un agradecimiento muy especial al Ingeniero Fernando Flores, por

brindarnos sus consejos y enseñanzas y de esta forma hacer posible el presente

trabajo.

Jorge.

VI

DEDICATORIA

Para la persona más importante de mi vida: mi Mamy Taty, ejemplo de mujer; a quien

le debo todo y por quién lucharé sin cansancio todos los días de mi vida…

Daniel.

El presente trabajo está dedicado a toda mi familia, en especial a mi Madre; por todo

el amor y dedicación que me brindan en cada momento y por siempre creer en mí.

Jorge.

I

CONTENIDO

CONTENIDO ............................................................................................................................................... I ÍNDICE DE FIGURAS ............................................................................................................................. VIII ÍNDICE DE TABLAS ................................................................................................................................ XII ÍNDICE DE ESPACIOS DE CÓDIGO ................................................................................................... XIV RESUMEN ............................................................................................................................................... XVI PRESENTACIÓN .................................................................................................................................. XVIII

CAPÍTULO UNO ........................................................................................................................................... 1

1. DESCRIPCIÓN GENERAL DE LA VIRTUALIZACIÓN (ARQUITECTURA SERVIDOR VIRTUALIZADO) Y LAS HERRAMIENTAS TECNOLÓGICAS PARA SU IMPLEMENTACIÓN. .................................................................. 1

1.1. FUNDAMENTOS GENERALES DE LA VIRTUALIZACIÓN .................................................................... 2 1.1.1. ANTECEDENTES .......................................................................................................................... 2 1.1.2. FUNDAMENTACIÓN ................................................................................................................... 3 1.1.3. ANTECEDENTES HISTÓRICOS DE LA VIRTUALIZACIÓN ............................................................... 5

1.1.3.1. Explosión de La Virtualización de 1990´S y 2000`S .................................................. 6 1.1.3.2. Virtualización y el Hardware x86 .............................................................................. 7

1.2. CONCEPTO .................................................................................................................................... 11 1.3. TIPOS DE VIRTUALIZACIÓN ........................................................................................................... 12

1.3.1. VIRTUALIZACIÓN DE RECURSOS .............................................................................................. 13 1.3.1.1. Virtualización de Almacenamiento ........................................................................ 13

1.3.1.1.1. Virtualización basada en el Dispositivo .................................................................. 14 1.3.1.1.2. Virtualización basada en la Red ............................................................................. 14 1.3.1.1.3. Virtualización basada en el Host ............................................................................ 15

1.3.1.2. Virtualización de Redes .......................................................................................... 15 1.3.1.2.1. Virtual LAN (VLAN) ................................................................................................. 15 1.3.1.2.2. Virtual IP (VIP) ........................................................................................................ 16 1.3.1.2.3. Virtual Private Network (VPN) ............................................................................... 16

1.3.2. VIRTUALIZACIÓN DE PLATAFORMA ......................................................................................... 16 1.3.2.1. Virtualización de Aplicaciones ................................................................................ 18 1.3.2.2. Virtualización de Escritorio .................................................................................... 18 1.3.2.3. Virtualización de Equipos y Servidores .................................................................. 19

1.3.2.3.1. Arquitectura general .............................................................................................. 19 1.3.2.3.2. Virtual Machine (VM) o Máquina Virtual ............................................................... 22 1.3.2.3.3. Hypervisor o Virtual Machine Monitor (VMM) ...................................................... 22 1.3.2.3.4. Sistema Operativo Anfitrión (Host OS) ................................................................... 23 1.3.2.3.5. Sistema Operativo Visitante (Guest OS) ................................................................. 23 1.3.2.3.6. Hardware Real o físico ........................................................................................... 23 1.3.2.3.7. Alternativas de Virtualización de Servidores (1) (2) ............................................... 24 1.3.2.3.8. Virtualización de Sistema Operativo ...................................................................... 24 1.3.2.3.9. Virtualización Completa ......................................................................................... 25 1.3.2.3.10. Paravirtualización ................................................................................................... 26 1.3.2.3.11. Virtualización Nativa o Virtualización Híbrida ........................................................ 27

1.4. VIRTUALIZACIÓN DE SERVIDORES: VIRTUALIZACIÓN COMPLETA, PARAVIRTUALIZACIÓN Y

VIRTUALIZACIÓN HÍBRIDA .......................................................................................................................... 28 1.4.1. VIRTUALIZACIÓN COMPLETA ................................................................................................... 28

1.4.1.1. Características ........................................................................................................ 29 1.4.1.1.1. Hypervisor .............................................................................................................. 29 1.4.1.1.2. Kernel de las Máquinas Virtuales ........................................................................... 29 1.4.1.1.3. Simulación Completa de todo el Hardware anfitrión ............................................. 30

1.4.1.2. Arquitectura ........................................................................................................... 30 1.4.2. PARAVIRTUALIZACIÓN ............................................................................................................. 32

1.4.2.1. Características ........................................................................................................ 32 1.4.2.1.1. Modificación del Guest OS ..................................................................................... 33 1.4.2.1.2. Seguridad ............................................................................................................... 33 1.4.2.1.3. Hypervisor .............................................................................................................. 34 1.4.2.1.4. Hypervisors de distintas plataformas ..................................................................... 34

II

1.4.2.2. Arquitectura ........................................................................................................... 35 1.4.3. VIRTUALIZACIÓN HÍBRIDA ....................................................................................................... 36

1.4.3.1. Características ........................................................................................................ 36 1.4.3.2. Hardware Especializado ......................................................................................... 36 1.4.3.3. Arquitectura ........................................................................................................... 37

1.5. OPCIONES DE SOFTWARE PARA VIRTUALIZACIÓN ....................................................................... 38 1.5.1. SOFTWARE DE VIRTUALIZACIÓN MÁS USADO......................................................................... 38

1.5.1.1. VMware®................................................................................................................ 39 1.5.1.1.1. Virtualización de sistemas x86 ............................................................................... 40 1.5.1.1.2. Arquitectura ........................................................................................................... 41 1.5.1.1.3. Productos ............................................................................................................... 41

1.5.1.2. Microsoft® (4) (5) ................................................................................................... 44 1.5.1.2.1. Características ........................................................................................................ 45 1.5.1.2.2. Arquitectura ........................................................................................................... 46

1.5.1.3. Xen® Hypervisor (6) ................................................................................................ 47 1.5.1.3.1. Características ........................................................................................................ 48 1.5.1.3.2. Arquitectura ........................................................................................................... 49

1.5.2. OTRAS OPCIONES DE SOFTWARE DE VIRTUALIZACIÓN ........................................................... 51 1.5.2.1. KVM®...................................................................................................................... 51 1.5.2.2. Microsoft Virtual PC® ............................................................................................. 52

1.5.2.2.1. Windows Virtual PC................................................................................................ 53 1.5.2.2.2. Sistemas Operativos Soportados ........................................................................... 54 1.5.2.2.3. Sistemas Operativos Linux como Huésped ............................................................ 55

CAPÍTULO DOS .......................................................................................................................................... 56

2. ANÁLISIS DE LOS REQUERIMIENTOS TECNOLÓGICOS DE LAS PYMES Y LA APLICABILIDAD DE LA ARQUITECTURA SERVIDOR VIRTUALIZADO PARA FACILITAR SU OPERACIÓN. .......................................... 56

2.1. FUNDAMENTOS GENERALES DE LAS PYMES ................................................................................. 57 2.2. CONCEPTO (7) (8) (9) .................................................................................................................... 59 2.3. SITUACIÓN ACTUAL DE LAS TIC´S EN LAS PYMES ECUATORIANAS ................................................ 62

2.3.1. ESTADÍSTICAS DE LAS TIC´s EN LAS PyMES ECUATORIANAS .................................................... 64 2.3.2. SOLUCIONES Y REQUERIMIENTOS TECNOLÓGICOS ACTUALES PARA LAS PyMES ECUATORIANAS (10) (11) ....................................................................................................................... 67 2.3.3. ANÁLISIS DE REQUERIMIENTOS DE LAS PyMES PARA LA CONSTITUCIÓN DEL CENTRO DE DATOS 72

2.3.3.1. Internet .................................................................................................................. 75 2.3.2.1.1. Correo electrónico ................................................................................................. 78 2.3.2.1.2. Comercio electrónico ............................................................................................. 80 2.3.2.1.3. Páginas web ........................................................................................................... 81

2.3.3.2. Intranet .................................................................................................................. 83 2.3.2.2.1. DHCP ...................................................................................................................... 84 2.3.2.2.2. DNS ........................................................................................................................ 85 2.3.2.2.3. Proxy ...................................................................................................................... 87 2.3.2.2.4. Directorio ............................................................................................................... 88 2.3.2.2.5. Firewall ................................................................................................................... 89 2.3.2.2.6. Telefonía ip ............................................................................................................ 90

2.3.3.3. Otros Servicios (10) ................................................................................................ 92 2.3.2.3.1. Mensajería instantánea ......................................................................................... 92 2.3.2.3.2. Seguridad Informática ............................................................................................ 92 2.3.2.3.3. Software de Gestión Organizacional ...................................................................... 93

2.4. APLICABILIDAD DE LA ARQUITECTURA SERVIDOR VIRTUALIZADO PARA FACILITAR LA OPERACIÓN

DE LAS PYMES .............................................................................................................................................. 94 2.4.1. IMPACTO DE LA ARQUITECTURA SERVIDOR VIRTUALIZACIÓN EN LAS PyMES ........................ 95

2.4.1.1. Ventajas y aplicaciones brindadas por los servidores virtualizados para las PyMES 95

2.4.1.1.1. Centralización, Descentralización, Consolidación .................................................. 95 2.4.1.1.2. Confiabilidad y Disponibilidad .............................................................................. 101 2.4.1.1.3. Escalabilidad......................................................................................................... 102 2.4.1.1.4. Seguridad ............................................................................................................. 103

III

2.4.1.2. Desventajas de la virtualización de servidores ..................................................... 104 2.4.1.2.1. Fallos de hardware ............................................................................................... 104 2.4.1.2.2. Congestión en varios dispositivos ........................................................................ 104

2.4.1.3. Comentario sobre la adopción de la arquitectura servidor virtualizado en las PyMES 104

CAPÍTULO TRES ....................................................................................................................................... 106

3. INSTALACIÓN, CONFIGURACIÓN, Y PRUEBAS DE XEN® HYPERVISOR COMO BASE EN LA IMPLEMENTACIÓN DE SERVIDORES VIRTUALES. ..................................................................................... 106

3.1. DISEÑO DE UN PROTOTIPO DE SERVIDOR VIRTUALIZADO PARA PYMES ..................................... 107 3.1.1. DISEÑO DE UN CENTRO DE DATOS PARA PyMES (13) ........................................................... 108

3.1.1.1. Consideraciones de Seguridad, Disponibilidad y Confiabilidad ............................ 109 3.1.1.1.1. Seguridad ............................................................................................................. 109 3.1.1.1.2. Disponibilidad ...................................................................................................... 110 3.1.1.1.3. Confiabilidad ........................................................................................................ 111

3.1.1.2. Prototipo del Centro de Datos para las PyMES .................................................... 111 3.1.2. ELECCIÓN DE LA SOLUCIÓN DE VIRTUALIZACIÓN ADECUADA PARA EL DISEÑO ................... 114 3.1.3. ANÁLISIS DE LOS TIPOS Y HERRAMIENTAS DE VIRTUALIZACIÓN DE SERVIDORES ................. 114 3.1.4. ANÁLISIS COMPARATIVO: VIRTUALIZACIÓN COMPLETA VS. PARAVIRTUALIZACIÓN VS. VIRTUALIZACIÓN HÍBRIDA .................................................................................................................... 115

3.1.4.1. Ventajas y Desventajas de la Virtualización Completa ......................................... 115 3.1.4.2. Ventajas y Desventajas de la Paravirtualización (3) ............................................. 116 3.1.4.3. Ventajas y Desventajas de la Virtualización Híbrida............................................. 117 3.1.4.4. Cuadro comparativo de los tipos principales de virtualización de servidores ..... 120

3.1.5. ANÁLISIS COMPARATIVO ENTRE LAS HERRAMIENTAS DE VIRTUALIZACIÓN ......................... 121 3.1.5.1. Cuadro comparativo de los tipos principales de virtualización de servidores ..... 122

3.1.6. CONCLUSIÓN SOBRE LA ELECCIÓN DE LA SOLUCIÓN DE VIRTUALIZACIÓN ........................... 126 3.2. XEN ............................................................................................................................................. 128

3.2.1. INTRODUCCIÓN ..................................................................................................................... 128 3.2.1.1. Problemas de la Virtualización en x86 ................................................................. 131

3.2.2. ARQUITECTURA ..................................................................................................................... 131 3.2.3. IMPLEMENTACIÓN DE LA ARQUITECTURA SERVIDOR VIRTUALIZADO CON LA HERRAMIENTA XEN 136

3.2.3.1. Instalación ............................................................................................................ 138 3.2.3.1.1. Requerimientos para la instalación ...................................................................... 138 3.2.3.1.2. Instalación ............................................................................................................ 139

3.2.3.2. Configuración del GRUB ....................................................................................... 143 3.2.3.3. Configuración y creación de Máquinas virtuales ................................................. 143

3.2.3.3.1. Archivo de configuración de dominio .................................................................. 144 3.2.3.3.2. Configuración de la Red ....................................................................................... 146 3.2.3.3.3. Configuración utilizada ........................................................................................ 151 3.2.3.3.4. Configuración de Dispositivos de Almacenamiento ............................................. 153 3.2.3.3.5. Comandos de XEN ................................................................................................ 156

3.2.3.4. Migración de Máquinas Virtuales ........................................................................ 158 3.2.3.5. Configuración de VM´s para Unmodified OS ....................................................... 159 3.2.3.6. Pruebas ................................................................................................................ 161

CAPÍTULO CUATRO ................................................................................................................................. 164

4. INSTALACIÓN, CONFIGURACIÓN, Y PRUEBAS DE LOS SERVICIOS NECESARIOS PARA SATISFACER LAS NECESIDADES TECNOLÓGICAS GENÉRICAS DE LAS PYMES. ..................................................................... 164

4.1. CUADRO DE SERVICIOS PARA PYMES .......................................................................................... 165 4.2. ESQUEMA DE SOLUCIÓN DE SERVIDOR VIRTUALIZADO PARA EL DATACENTER ......................... 166

4.2.1. ESQUEMA DE DIRECCIONAMIENTO DEL DATACENTER ......................................................... 168 4.2.2. INSTALACIÓN DEL SERVIDOR VIRTUAL BASE ......................................................................... 172

4.2.2.1. Consideraciones de instalación de la VM ............................................................. 172 4.2.2.2. Asignación de Disco Duro ..................................................................................... 172 4.2.2.3. Instalación sin el uso de herramientas adicionales .............................................. 173 4.2.2.4. Instalación con la herramienta virt-install............................................................ 175

IV

4.3. INSTALACIÓN Y CONFIGURACIÓN DEL DATACENTER DE INFRAESTRUCTURA ............................ 180 4.3.1. SERVIDORES DE RUTEO: ROUTER INTRANET, FIREWALL PROXY Y ROUTER INTERNET ......... 181

4.3.1.1. Software ............................................................................................................... 181 4.3.1.1.1. Alternativas de software ...................................................................................... 182 4.3.1.1.2. Selección alternativa ............................................................................................ 182

4.3.1.2. Instalación ............................................................................................................ 183 4.3.1.2.1. Instalación Máquina Virtual ................................................................................. 183 4.3.1.2.2. Instalación Servicio .............................................................................................. 183

4.3.1.3. Configuración ....................................................................................................... 185 4.3.1.3.1. Router Intranet .................................................................................................... 185 4.3.1.3.2. Firewallproxy ........................................................................................................ 187

4.3.2. SERVIDOR DNS ....................................................................................................................... 189 4.3.2.1. Software ............................................................................................................... 189

4.3.2.1.1. Alternativas de software ...................................................................................... 190 4.3.2.1.2. Selección alternativa ............................................................................................ 190

4.3.2.2. Instalación ............................................................................................................ 190 4.3.2.2.1. Instalación Máquina Virtual ................................................................................. 190 4.3.2.2.2. Instalación Servicio .............................................................................................. 191

4.3.2.3. Configuración ....................................................................................................... 191 4.3.2.3.1. Dnsiprimario ........................................................................................................ 192 4.3.2.3.2. Dnsisecundario ..................................................................................................... 196

4.3.3. SERVIDOR DHCP ..................................................................................................................... 198 4.3.3.1. Software ............................................................................................................... 198

4.3.3.1.1. Alternativas de software ...................................................................................... 199 4.3.3.1.2. Selección alternativa ............................................................................................ 199

4.3.3.2. Instalación ............................................................................................................ 200 4.3.3.2.1. Instalación Máquina Virtual y Servicio ................................................................. 200

4.3.3.3. Configuración ....................................................................................................... 201 4.3.3.3.1. Archivo de configuración dhcpd.conf .................................................................. 201 4.3.3.3.2. Configuración dhcrelay ........................................................................................ 202

4.3.4. SERVIDOR DE CORREO ELECTRÓNICO.................................................................................... 203 4.3.4.1. Software ............................................................................................................... 204

4.3.4.1.1. Alternativas de software ...................................................................................... 204 4.3.4.1.2. Selección alternativa ............................................................................................ 205

4.3.4.2. Instalación ............................................................................................................ 205 4.3.4.2.1. Instalación Máquina Virtual ................................................................................. 205 4.3.4.2.2. Instalación Servicio .............................................................................................. 206

4.3.4.3. Configuración ....................................................................................................... 207 4.3.4.3.1. Mailempresarial ................................................................................................... 207

4.3.5. SERVIDOR DE DIRECTORIO ..................................................................................................... 210 4.3.5.1. Software ............................................................................................................... 211

4.3.5.1.1. Alternativas de software ...................................................................................... 211 4.3.5.1.2. Selección alternativa ............................................................................................ 211

4.3.5.2. Instalación ............................................................................................................ 212 4.3.5.2.1. Instalación Máquina Virtual ................................................................................. 212 4.3.5.2.2. Instalación Servicio .............................................................................................. 212

4.3.5.3. Configuración ....................................................................................................... 213 4.3.5.3.1. Archivo de configuración ..................................................................................... 213

4.4. INSTALACIÓN Y CONFIGURACIÓN DEL DATACENTER DE DATOS................................................. 214 4.4.1. SERVIDOR DE BASE DE DATOS ............................................................................................... 215

4.4.1.1. Software ............................................................................................................... 216 4.4.1.1.1. Alternativas de software ...................................................................................... 216 4.4.1.1.2. Selección alternativa ............................................................................................ 216

4.4.1.2. Instalación ............................................................................................................ 217 4.4.1.2.1. Instalación Máquina Virtual ................................................................................. 217 4.4.1.2.2. Instalación Servicio .............................................................................................. 217

4.4.1.3. Configuración ....................................................................................................... 218 4.4.1.3.1. Archivo de configuración ..................................................................................... 218

4.4.2. SERVIDOR DE ARCHIVOS ........................................................................................................ 219 4.4.2.1. Software ............................................................................................................... 219

4.4.2.1.1. Alternativas de software ...................................................................................... 219

V

4.4.2.1.2. Selección alternativa ............................................................................................ 220 4.4.2.2. Instalación ............................................................................................................ 220

4.4.2.2.1. Instalación Máquina Virtual ................................................................................. 220 4.4.2.2.2. Instalación Servicio .............................................................................................. 221

4.4.2.3. Configuración ....................................................................................................... 221 4.4.2.3.1. Archivo de configuración ..................................................................................... 221

4.4.3. SERVIDOR WEB EMPRESARIAL............................................................................................... 225 4.4.3.1. Software ............................................................................................................... 226

4.4.3.1.1. Alternativas de software ...................................................................................... 226 4.4.3.1.2. Selección alternativa ............................................................................................ 227

4.4.3.2. Instalación ............................................................................................................ 227 4.4.3.2.1. Instalación Máquina Virtual ................................................................................. 227 4.4.3.2.2. Instalación Servicio .............................................................................................. 228

4.4.3.3. Configuración ....................................................................................................... 228 4.4.3.3.1. Archivo de configuración ..................................................................................... 228

4.4.4. SERVIDOR FTP ........................................................................................................................ 231 4.4.4.1. Software ............................................................................................................... 232

4.4.4.1.1. Alternativas de software ...................................................................................... 232 4.4.4.1.2. Selección alternativa ............................................................................................ 232

4.4.4.2. Instalación ............................................................................................................ 233 4.4.4.2.1. Instalación Máquina Virtual ................................................................................. 233 4.4.4.2.2. Instalación Servicio .............................................................................................. 233

4.4.4.3. Configuración ....................................................................................................... 234 4.4.4.3.1. Archivo de configuración vsftpd.conf .................................................................. 234

4.4.5. SERVIDOR DE IMPRESIÓN ...................................................................................................... 236 4.4.5.1. Software ............................................................................................................... 237

4.4.5.1.1. Alternativas de software ...................................................................................... 237 4.4.5.1.2. Selección alternativa ............................................................................................ 237

4.4.5.2. Instalación ............................................................................................................ 238 4.4.5.2.1. Instalación Máquina Virtual ................................................................................. 238 4.4.5.2.2. Instalación Servicio .............................................................................................. 238

4.4.5.3. Configuración ....................................................................................................... 238 4.4.5.3.1. Archivo de configuración ..................................................................................... 239

4.5. INSTALACIÓN Y CONFIGURACIÓN DE LA DMZ ............................................................................ 240 4.5.1. SERVIDOR WEB INTERNET ..................................................................................................... 241

4.5.1.1. Software ............................................................................................................... 242 4.5.1.2. Configuración ....................................................................................................... 242

4.5.1.2.1. Archivo de configuración ..................................................................................... 243 4.5.2. SERVIDOR DE COMERCIO ELECTRÓNICO ............................................................................... 247

4.5.2.1. Software ............................................................................................................... 247 4.5.2.1.1. Alternativas de software ...................................................................................... 247 4.5.2.1.2. Selección alternativa ............................................................................................ 248

4.5.2.2. Instalación ............................................................................................................ 248 4.5.2.2.1. Instalación Máquina Virtual ................................................................................. 248 4.5.2.2.2. Instalación Servicio .............................................................................................. 248

4.5.2.3. Configuración ....................................................................................................... 249 4.5.3. SERVIDOR DE CORREO ELECTRÓNICO (MAIL GATEWAY)....................................................... 256

4.5.3.1. Software ............................................................................................................... 257 4.5.3.2. Configuración ....................................................................................................... 257

4.5.3.2.1. Archivo de configuración ..................................................................................... 257 4.5.4. SERVIDOR DNS (EXTERNO – DMZ) ......................................................................................... 261

4.5.4.1. Software ............................................................................................................... 261 4.5.4.1.1. Alternativas de software ...................................................................................... 261 4.5.4.1.2. Selección alternativa ............................................................................................ 261

4.5.4.2. Instalación ............................................................................................................ 261 4.5.4.2.1. Instalación Máquina Virtual ................................................................................. 261 4.5.4.2.2. Instalación Servicio .............................................................................................. 261

4.5.4.3. Configuración ....................................................................................................... 262 4.5.4.3.1. Archivo de configuración ..................................................................................... 262 4.5.4.3.2. Dnseprimario ....................................................................................................... 262 4.5.4.3.3. Dnsesecundario.................................................................................................... 265

VI

4.5.5. SERVIDORES PROXY, FIREWALL ............................................................................................. 266 4.5.5.1. Software ............................................................................................................... 266

4.5.5.1.1. Alternativas de software ...................................................................................... 266 4.5.5.1.2. Selección alternativa ............................................................................................ 267

4.5.5.2. Instalación ............................................................................................................ 268 4.5.5.2.1. Instalación Máquina Virtual ................................................................................. 268 4.5.5.2.2. Instalación Servicio .............................................................................................. 268

4.5.5.3. Configuración ....................................................................................................... 268 4.5.5.3.1. Servidor firewallinternet ...................................................................................... 268

4.6. PRUEBAS DE LOS SERVICIOS ....................................................................................................... 272 4.6.1. ROUTERINTRANET ................................................................................................................. 273 4.6.2. FIREWALLPROXY .................................................................................................................... 274 4.6.3. DNS INTRANET ....................................................................................................................... 275 4.6.4. DHCP ...................................................................................................................................... 276 4.6.5. CORREO ELECTRÓNICO .......................................................................................................... 276 4.6.6. BASE DE DATOS...................................................................................................................... 278 4.6.7. SERVIDOR DE ARCHIVOS ........................................................................................................ 279 4.6.8. SERVIDOR DE DIRECTORIO ..................................................................................................... 281 4.6.9. SERVIDORES WEB .................................................................................................................. 281 4.6.10. FTP .................................................................................................................................... 283 4.6.11. IMPRESIÓN ........................................................................................................................ 284 4.6.12. COMERCIO ELECTRÓNICO ................................................................................................. 285 4.6.13. DNS DMZ ........................................................................................................................... 285 4.6.14. FIREWALL INTERNET ......................................................................................................... 286

CAPÍTULO CINCO..................................................................................................................................... 287

5. ACONDICIONAMIENTO DE LOS SERVIDORES Y REQUERIMIENTOS DE HARDWARE PARA UN ÓPTIMO FUNCIONAMIENTO. ................................................................................................................................ 287

5.1. INTRODUCCIÓN .......................................................................................................................... 288 5.2. DIMENSIONAMIENTO DE LOS SERVIDORES VIRTUALES (15) (16) (17) ........................................ 288

5.2.1. CORREO ELECTRÓNICO .......................................................................................................... 289 5.2.2. BASE DE DATOS...................................................................................................................... 290 5.2.3. SERVIDOR DE ARCHIVOS ........................................................................................................ 291 5.2.4. FTP ......................................................................................................................................... 292 5.2.5. WEB ....................................................................................................................................... 292 5.2.6. COMERCIO ELECTRÓNICO ...................................................................................................... 292 5.2.7. DNS ........................................................................................................................................ 293 5.2.8. DHCP ...................................................................................................................................... 293 5.2.9. SERVIDORES DE ENRUTAMIENTO Y FIREWALL ...................................................................... 294

5.2.9.1. FirewallProxy ........................................................................................................ 294 5.2.9.2. RouterIntranet ..................................................................................................... 295 5.2.9.3. FirewallInternet.................................................................................................... 295

5.2.10. IMPRESIÓN ........................................................................................................................ 296 5.2.11. DIRECTORIO ...................................................................................................................... 297 5.2.12. RESUMEN DE LAS CARACTERÍSTICAS DE LOS SERVIDORES VIRTUALES............................. 298

5.3. DIMENSIONAMIENTO DEL SERVIDOR FÍSICO .............................................................................. 300 5.3.1. PROCESADOR ......................................................................................................................... 300 5.3.2. MEMORIA .............................................................................................................................. 303 5.3.3. DISCO DURO .......................................................................................................................... 305 5.3.4. DISPOSITIVOS DE CONECTIVIDAD .......................................................................................... 307 5.3.5. MAINBOARD .......................................................................................................................... 309 5.3.6. IMÁGENES DEL PROTOTIPO DE SERVIDOR VIRTUALIZADO ARMADO ................................... 313

5.4. CÁLCULO DEL ENLACE AL ISP ...................................................................................................... 318 5.4.1. ACCESO A CORREO ELECTRÓNICO .................................................................................................... 318 5.4.2. DESCARGA DE ARCHIVOS ................................................................................................................. 319 5.4.3. ENLACE VPN ..................................................................................................................................... 320 5.4.4. ENLACE AL ISP ................................................................................................................................... 320

VII

CAPÍTULO SEIS ........................................................................................................................................ 321

6. PRESUPUESTO DE LA IMPLEMENTACIÓN PROPUESTA ................................................................... 321

6.1. PRESENTACIÓN DE COSTOS DEL PROTOTIPO DE VIRTUALIZACIÓN ............................................ 322 6.1.1. COSTO DE HARDWARE FÍSICO ............................................................................................... 323 6.1.2. COSTO DE SOFTWARE ............................................................................................................ 323 6.1.3. PRESUPUESTO TOTAL ............................................................................................................ 324

CAPÍTULO SIETE ...................................................................................................................................... 326

7. CONCLUSIONES Y RECOMENDACIONES ......................................................................................... 326

7.1. CONCLUSIONES .......................................................................................................................... 327 7.2. RECOMENDACIONES .................................................................................................................. 332

CAPÍTULO OCHO ..................................................................................................................................... 334

8. ANEXOS ......................................................................................................................................... 334

ANEXO A.................................................................................................................................................... 335 TECNOLOGÍA DE PROCESADORES INTEL® VT Y AMD®-V ........................................................................... 335 ANEXO B .................................................................................................................................................... 341 ESTADO DE LAS TIC´S EN ECUADOR........................................................................................................... 341 ANEXO C .................................................................................................................................................... 343 FORMULARIO DE ENCUESTA PARA LA DETERMINACIÓN DE LAS TIC´S EN LA EMPRESA ........................... 343 ANEXO D ................................................................................................................................................... 349 ERP DE SOFTWARE LIBRE .......................................................................................................................... 349 ANEXO E .................................................................................................................................................... 353 LA VIRTUALIZACIÓN PASO POR PASO – RECOMENDACIONES DE HEWLETT PACKARD ............................. 353 IDENTIFICACIÓN DE LOS CANDIDATOS PARA VIRTUALIZACIÓN RECOMENDACIONES MICROSOFT Y XEN 355 ANEXO F .................................................................................................................................................... 358 CONFIGURACIÓN TWO WAY ROUTED DEL PROTOTIPO ............................................................................ 358 ANEXO G ................................................................................................................................................... 363 INSTALACIÓN DE MAILSCANNER Y CLAMAV ............................................................................................. 363 ANEXO H ................................................................................................................................................... 366 INSTALACIÓN Y CONFIGURACIÓN DE SQUIRRELMAIL ............................................................................... 366 ANEXO I ..................................................................................................................................................... 370 SERVIDORES ADICIONALES ....................................................................................................................... 370 TELEFONÍA IP – MENSAJERÍA INSTANTÁNEA ............................................................................................ 370

Software .......................................................................................................................................................... 371 Alternativas de software .......................................................................................................................... 371

Instalación....................................................................................................................................................... 372 Instalación Máquina Virtual ..................................................................................................................... 372 Instalación Servicio .................................................................................................................................. 372

Configuración ................................................................................................................................................. 373 Archivo de configuración ......................................................................................................................... 373

Fichero /etc/asterisk/sip.conf. ...................................................................................................................... 373 Fichero /etc/asterisk/extensions.conf. ........................................................................................................ 375

Configuración de cliente Ekiga........................................................................................................ 376 ANEXO J..................................................................................................................................................... 379 COSTOS DE LA IMPLEMENTACIÓN ............................................................................................................ 379 ANEXO K .................................................................................................................................................... 385 CÓDIGO DE IMPLEMENTACIÓN DE LOS SERVICIOS ................................................................................... 385

REFERENCIAS .......................................................................................................................................... 387

9. REFERENCIAS BIBLIOGRÁFICAS ...................................................................................................... 387

VIII

ÍNDICE DE FIGURAS

FIGURA 1.1 SERVIDORES DE VARIAS MARCAS DE LA ACTUALIDAD. FUENTE: BOMBAYHARBOR.COM .............. 7 FIGURA 1.2 LÍNEA DE TIEMPO EN EL DESARROLLO DE LA VIRTUALIZACIÓN EN EL HARDWARE X86.

FUENTE: FOCUS CONSULTING ................................................................................................................ 9 FIGURA 1.3 REPRESENTACIÓN DE LA VIRTUALIZACIÓN EN LA QUE SE ENCUENTRAN MUCHAS MÁQUINAS EN

UN SOLO COMPUTADOR. ........................................................................................................................ 11 FIGURA 1.4 ARQUITECTURA DE LA VIRTUALIZACIÓN ...................................................................................... 12 FIGURA 1.5 CONSTITUCIÓN BÁSICA DE UN COMPUTADOR TÍPICO. FUENTE: AUERBACH, ADVANCED SERVER

VIRTUALIZATION. .................................................................................................................................... 20 FIGURA 1.6 ARQUITECTURA 1 DE UNA PLATAFORMA VIRTUALIZADA. FUENTE: AUERBACH. ADVANCED.

SERVER VIRTUALIZATION. ..................................................................................................................... 21 FIGURA 1.7 ARQUITECTURA 2 DE UNA PLATAFORMA VIRTUALIZADA. FUENTE: AUERBACH, ADVANCED

SERVER VIRTUALIZATION. ..................................................................................................................... 21 FIGURA 1.8 ARQUITECTURA DE LA VIRTUALIZACIÓN COMPLETA. ................................................................... 31 FIGURA 1.9 INFRAESTRUCTURA VIRTUAL COMPLETA. ................................................................................... 31 FIGURA 1.10 VIRTUALIZACIÓN COMPLETA CONTRA ARQUITECTURA DE PARAVIRTUALIZACIÓN. EN AMBOS

CASOS, EXISTE UNA CAPA DE SOFTWARE DENOMINADA MONITOR DEL EQUIPO VIRTUAL (VMM), QUE

INCLUYE UN PLANIFICADOR DE EQUIPO VIRTUAL Y OFRECE GESTIÓN GENERAL DE MEMORIA Y

VIRTUALIZACIÓN DE ENTRADA Y SALIDA. EL MODELO DE PARAVIRTUALIZACIÓN INCLUYE INTERFACES

API QUE ASISTEN AL EQUIPO VIRTUAL EN ALGUNOS CASOS. FUENTE: VIRTUALIZACIÓN EN EL CENTRO

DE DATOS, INFORME TÉCNICO, NOVELL INC. ©, PÁG. 4. ..................................................................... 35 FIGURA 1.11 ARQUITECTURA DE LA VIRTUALIZACIÓN HÍBRIDA. .................................................................... 37 FIGURA 1.12 SOFTWARE DE VIRTUALIZACIÓN MÁS USADO............................................................................ 38 FIGURA 1.13 LOGO DE VMWARE. ................................................................................................................... 39 FIGURA 1.14 ARQUITECTURA EMPLEADA POR VMWARE ESX, LA CAPA DE VIRTUALIZACIÓN NO CORRE

SOBRE UN SISTEMA OPERATIVO ............................................................................................................ 43 FIGURA 1.15 LOGOTIPO DE WINDOWS SERVER® 2008 HYPER-V™. FUENTE: WWW.MICROSOFT.COM ..... 44 FIGURA 1.16 ARQUITECTURA DE WINDOWS SERVER® 2008 HYPER-V™. FUENTE: UNDERSTANDING

MICROSOFT VIRTUALIZATION SOLUTION, PÁG. 29. MICROSOFT CORPORATION ©, 2009. ................ 46 FIGURA 1.17 LOGOTIPO DEL HYPERVISOR XEN®. FUENTE: WWW.XEN.ORG ................................................ 47 FIGURA 1.18 ARQUITECTURA BÁSICA DE XEN®. FUENTE: XEN AND THE ART OF VIRTUALIZATION. PAUL

BARHAM, BORIS DRAGOVIC, KEIR FRASER, STEVEN HAND, TIM HARRIS, ALEX HO, ROLF

NEUGEBAUERY, IAN PRATT, ANDREW WARELD, UNIVERSITY OF CAMBRIDGE COMPUTER

LABORATORY. PÁG. 5. ........................................................................................................................... 49 FIGURA 1.19 LOGO DE KVM. ......................................................................................................................... 51 FIGURA 1.20 LOGO DE MICROSOFT VIRTUAL PC. ......................................................................................... 52 FIGURA 2.1 CRITERIOS PARA LA ADOPCIÓN DE LAS TIC`S EN LAS PYMES. FUENTE: E-COMMERCE IN

REGIONAL SMALL TO MEDIUM ENTERPRISES. PÁG. 11 ....................................................................... 63 FIGURA 2.2 PROYECTOS DE SOLUCIÓN DE TIC`S EN LAS PYMES. FUENTE: INFOPYME 2008. ................. 68 FIGURA 2.3 CARICATURA E-COMMERCE. ....................................................................................................... 80 FIGURA 2.4 DIAGRAMA INDICANDO A UN SERVIDOR DHCP BRINDANDO A LOS HOSTS LOS DATOS PARA

CONECTARSE A LA RED. FUENTE: HTTP://ADRIAN15.WORDPRESS.COM/2007/10/07/PROTOCOLO-DHCP/ ..................................................................................................................................................... 85

FIGURA 2.5 FUNCIONAMIENTO TÍPICO DE UNA CONSULTA DE DNS RECURSIVA. FUENTE: HTTP://NIRLOG.COM/2006/03/28/DNS-AMPLIFICATION-ATTACK/ .......................................................... 86

FIGURA 2.6 UBICACIÓN DEL PROXY PARA BRINDAR A LA INTRANET SEGURIDAD Y CONEXIÓN CON EL

INTERNET. FUENTE: HTTP://WWW.COMPUTERREPAIRMAINTENANCE.COM/TAG/ANONYMOUS-WEB-SURFING-WITH-A-PROXY ........................................................................................................................ 87

FIGURA 2.7 REPRESENTACIÓN DE ALGUNAS DE LAS VENTAJAS QUE PUEDE BRINDAR UN SERVICIO DE

DIRECTORIO. FUENTE: HTTP://WWW.QUEST.COM/IDENTITY_MANAGEMENT/IMAGES/IDM_DIAGRAM_WEB.JPG ....................... 89

FIGURA 2.8 REPRESENTACIÓN DEL FIREWALL PARA BRINDAR SEGURIDAD A UNA RED LAN. ....................... 90 FIGURA 2.9 ESTRUCTURA DE UNA ARQUITECTURA BÁSICA DE UN SERVICIO DE TELEFONÍA IP. FUENTE:

HTTP://WWW.E-ADVENTO.COM/SOLUCIONES/TELEFONIAIP.PHP ........................................................... 91

IX

FIGURA 2.10 IMPLEMENTACIÓN DESCENTRALIZADA DE CINCO SERVIDORES. FUENTE: VIRTUALIZATION WITH

XEN, SYNGRESS 2007, PÁG 11. ........................................................................................................... 96 FIGURA 2.11 IMPLEMENTACIÓN VIRTUALIZADA DE CINCO SERVIDORES. FUENTE: VIRTUALIZATION WITH XEN,

SYNGRESS 2007, PÁG 12. .................................................................................................................... 99 FIGURA 2.12 IMPLEMENTACIÓN VIRTUALIZADA DE ALTA CONFIABILIDAD. FUENTE: VIRTUALIZATION WITH

XEN, SYNGRESS 2007, PÁG 319. ....................................................................................................... 102 FIGURA 3.1 EJEMPLO DE UNA ZONA DESMILITARIZADA (DMZ) Y SU UBICACIÓN EN LA RED. ...................... 110 FIGURA 3.2 ARQUITECTURA “DMZ INTRANET SERVER FARM” PRESENTADA POR CISCO. ......................... 112 FIGURA 3.3 PROTOTIPO DE DATACENTER PARA PYMES. .......................................................................... 113 FIGURA 3.4 ANILLOS DE PROTECCIÓN DEL MODO PROTEGIDO DE UN PROCESADOR. ............................... 129 FIGURA 3.5 AROS DE SEGURIDAD ARQUITECTURA NATIVA VS. PARAVIRTUALIZADA. FUENTE: THE

DEFINITIVE GUIDE TO XEN® HYPERVISOR. DAVID CHISNALL, PRENTICE HALL 2007. PÁG. 17. ...... 133 FIGURA 3.6 ARQUITECTURA BÁSICA DE XEN®. FUENTE: THE DEFINITIVE GUIDE TO XEN® HYPERVISOR.

DAVID CHISNALL, PRENTICE HALL 2007. PÁG. 24. ............................................................................ 134 FIGURA 3.7 ARQUITECTURA DE XEN®, SO MODIFICADOS (COLOR VERDE) Y SO NO MODIFICADOS (COLOR

NARANJA). FUENTE: (13). PÁG. 5. ...................................................................................................... 135 FIGURA 3.8 PROTOTIPO DE DATACENTER VIRTUALIZADO PARA PYMES................................................... 137 FIGURA 3.9 DESCARGA DEL PAQUETE DE XEN. ........................................................................................... 139 FIGURA 3.10 DESCOMPRESIÓN DEL PAQUETE DE XEN. ............................................................................... 140 FIGURA 3.11 INSTALACIÓN DEL PAQUETE DE XEN. ...................................................................................... 140 FIGURA 3.12 COMPROBACIÓN DE LA CORRECTA INSTALACIÓN DEL PAQUETE DE XEN. .............................. 141 FIGURA 3.13 BÚSQUEDA E INSTALACIÓN DE LOS PAQUETES REQUERIDOS PARA VIRTUALIZACIÓN EN

CENTOS. ............................................................................................................................................. 141 FIGURA 3.14 BÚSQUEDA DE LOS PAQUETES DE XEN HYPERVISOR. ........................................................... 142 FIGURA 3.15 COMPROBACIÓN DEL APARECIMIENTO DEL KERNEL MODIFICADO DE XEN EN /BOOT/. .......... 142 FIGURA 3.16 DIAGRAMA DE DISPOSITIVOS DE RED DE LOS DOMINIOS VIRTUALES. FUENTE:

WIKI.XENSOURCE.COM/XENWIKI/XENNETWORKING............................................................................ 147 FIGURA 3.17 ILUSTRACIÓN 2 DE BRIDGED NETWORKING. FUENTE:

WIKI.XENSOURCE.COM/XENWIKI/XENNETWORKING............................................................................ 148 FIGURA 3.18 ILUSTRACIÓN DE ROUTED WITH NAT NETWORKING. FUENTE:

WIKI.XENSOURCE.COM/XENWIKI/XENNETWORKING............................................................................ 149 FIGURA 3.19 ILUSTRACIÓN DE ROUTED NETWORKING. FUENTE:

WIKI.XENSOURCE.COM/XENWIKI/XENNETWORKING............................................................................ 150 FIGURA 3.20 BRIDGES CONFIGURADOS SEGÚN DISEÑO. ............................................................................. 152 FIGURA 3.21 VENTANA DE UN ADMINISTRADOR DE MÁQUINAS VIRTUALES QUE MUESTRA A LAS MISMAS

EJECUTÁNDOSE DE MANERA SIMULTÁNEA EN UN ÚNICO SERVIDOR FÍSICO. ....................................... 161 FIGURA 3.22 VENTANA DE LA CONSOLA DE UNA MÁQUINA VIRTUAL QUE MUESTRA SU INICIO. ................... 162 FIGURA 3.23 VENTANA DE LA CONSOLA DE UNA MÁQUINA VIRTUAL QUE MUESTRA SU CONECTIVIDAD CON EL

SERVIDOR FÍSICO. ................................................................................................................................ 162 FIGURA 3.24 VENTANAS DE DOS CONSOLAS DE MÁQUINAS VIRTUALES QUE MUESTRAN SU CONECTIVIDAD

ENTRE ELLAS. ....................................................................................................................................... 163 FIGURA 3.25 VENTANAS DE DETALLE DE UNA MÁQUINA VIRTUAL. ............................................................... 163 FIGURA 4.1 ESQUEMA DE SOLUCIÓN DE SERVIDOR VIRTUALIZADO PARA PYMES. ................................... 168 FIGURA 4.2 SERVIDOR VIRTUALIZADO CON ESQUEMA DE DIRECCIONAMIENTO IP. ..................................... 171 FIGURA 4.3 INSTALACIÓN DEL SERVIDOR VIRTUAL BASE CENTOS 5.2 ....................................................... 175 FIGURA 4.4 SELECCIÓN DEL DISCO PARA EL PARTICIONAMIENTO DEL SERVIDOR BASE. ............................ 176 FIGURA 4.5 ESQUEMA DE PARTICIONAMIENTO SERVIDOR VIRTUAL BASE. .................................................. 176 FIGURA 4.6 CONFIGURACIÓN GENERAL DE LA TARJETA DE RED DEL SERVIDOR BASE. .............................. 177 FIGURA 4.7 SELECCIÓN DE COMPONENTES DE INSTALACIÓN EN MODO SERVER. ...................................... 177 FIGURA 4.8 SELECCIÓN DE SOFTWARE DE SERVIDOR BASE. ....................................................................... 178 FIGURA 4.9 PROGRESO DE INSTALACIÓN DE CENTOS 5.2 ......................................................................... 179 FIGURA 4.10 INSTALACIÓN FINAL DE CENTOS 5.2 ...................................................................................... 179 FIGURA 4.11 DATACENTER DE INFRAESTRUCTURA ..................................................................................... 180 FIGURA 4.12 INSTALACIÓN DE IPTABLES MEDIANTE EL COMANDO YUM INSTALL ......................................... 184 FIGURA 4.13 INSTALACIÓN DE SQUID MEDIANTE EL COMANDO YUM INSTALL. ............................................. 184 FIGURA 4.14 INSTALACIÓN DE BIND MEDIANTE EL COMANDO YUM INSTALL. ............................................... 191 FIGURA 4.15 INSTALACIÓN DEL SERVIDOR DE DHCP CON LA HERRAMIENTA YUM. ................................... 200

X

FIGURA 4.16 ROUTERINTRANET ACTUANDO COMO DHCRELAY. .................................................................. 203 FIGURA 4.17 INSTALACIÓN DE SENDMAIL Y SUS DEPENDENCIAS CON LA HERRAMIENTA YUM. .................. 206 FIGURA 4.18 INSTALACIÓN DE OPENLDAP MEDIANTE EL COMANDO YUM INSTALL ....................................... 212 FIGURA 4.19 INSTALACIÓN DE OPENLDAP-SERVERS MEDIANTE EL COMANDO YUM INSTALL ...................... 212 FIGURA 4.20 INSTALACIÓN DE OPENLDAP-CLIENTS MEDIANTE EL COMANDO YUM INSTALL ........................ 213 FIGURA 4.21 DATACENTER DE DATOS. ........................................................................................................ 215 FIGURA 4.22 INSTALACIÓN DE MYSQL MEDIANTE EL COMANDO YUM INSTALL ........................................... 217 FIGURA 4.23 CONFIGURACIÓN DE CLAVE PARA MYSQL ............................................................................. 218 FIGURA 4.24 CREACIÓN DE BASES DE DATOS Y ASIGNACIÓN DE PERMISOS ............................................... 219 FIGURA 4.25 RECURSOS COMPARTIDOS DESDE LINUX VISTOS EN WINDOWS XP. .................................... 225 FIGURA 4.26 SITIO WEB.VSERVER.EC – WEBEMPRESARIAL. ....................................................................... 231 FIGURA 4.27 CONFIGURACIÓN DE VSFTPD VÍA WEBMIN. ............................................................................. 235 FIGURA 4.28 INSTALACIÓN DE CUPS MEDIANTE EL COMANDO YUM INSTALL. .............................................. 238 FIGURA 4.29 PANTALLA DE ADMINISTRACIÓN DE CUPS VÍA WEB ................................................................. 239 FIGURA 4.30 DMZ CORPORATIVA. ............................................................................................................... 241 FIGURA 4.31 FICHEROS DE WEBS ALOJADAS. .............................................................................................. 243 FIGURA 4.32 PORTAL WEB WWW.VSERVER.EC ........................................................................................... 245 FIGURA 4.33 PORTAL WEB WWW.AEIE.EC ................................................................................................... 246 FIGURA 4.34 PORTAL WEB VIADMIN.VSERVER.EC ....................................................................................... 246 FIGURA 4.35 PANTALLA DE INICIO DE ZEN CART ......................................................................................... 249 FIGURA 4.36 LICENCIA DE ZEN CART ........................................................................................................... 250 FIGURA 4.37 INSPECCIÓN DEL SISTEMA ....................................................................................................... 250 FIGURA 4.38 COMPROBACIÓN DEL SISTEMA PARA LA INSTALACIÓN DE ZEN CART .................................... 252 FIGURA 4.39 CONFIGURACIÓN DE LA BASE DE DATOS ................................................................................ 253 FIGURA 4.40 CONFIGURACIÓN DEL SISTEMA ............................................................................................... 254 FIGURA 4.41 PETICIÓN DEL DIRECTORIO PHPBB ......................................................................................... 254 FIGURA 4.42 UBICACIÓN DEL DIRECTORIO PHPBB ...................................................................................... 255 FIGURA 4.43 CONFIGURACIÓN DE LA CUENTA DE ADMINISTRACIÓN ........................................................... 255 FIGURA 4.44 ENVÍO Y RECEPCIÓN DE CORREO ENTRE MAILEMPRESARIAL Y MAILGATEWAY. .................. 256 FIGURA 4.45 SQUIRREL MAIL EN EL SERVIDOR WEBEMPRESARIAL. ........................................................... 260 FIGURA 4.46: PRUEBA DE ENRUTAMIENTO DESDE UN EQUIPO DE LA RED INTERNA DE LA EMPRESA HACIA

OTRO DE LA ZONA DE DATOS ............................................................................................................... 273 FIGURA 4.47: PRUEBA DE ENRUTAMIENTO DESDE UN EQUIPO DE LA RED INTERNA DE LA EMPRESA HACIA

OTRO DE LA ZONA DE INFRAESTRUCTURA ........................................................................................... 273 FIGURA 4.48: PRUEBA DE ENRUTAMIENTO DESDE UN EQUIPO DE LA ZONA DE INFRAESTRUCTURA HACIA

OTRO DE LA ZONA DE DATOS ............................................................................................................... 274 FIGURA 4.49: PRUEBA DE ENRUTAMIENTO DESDE UN EQUIPO DE LA ZONA DE INFRAESTRUCTURA HACIA

OTRO DE LA ZONA DESMILITARIZADA ................................................................................................... 275 FIGURA 4.50: PRUEBA DE ENRUTAMIENTO DESDE UN EQUIPO DE LA ZONA DE DATOS HACIA OTRO DE LA

ZONA DESMILITARIZADA ....................................................................................................................... 275 FIGURA 4.51: PRUEBAS DE RESOLUCIÓN DE NOMBRES DE DOMINIO Y DIRECCIONES IP EN LOS SERVIDORES

DNS DE LA INTRANET .......................................................................................................................... 275 FIGURA 4.52 PRUEBAS DEL SERVIDOR DHCP EN UN CLIENTE WINDOWS. ................................................. 276 FIGURA 4.53 PRUEBAS AL PORTAL DE INGRESO AL MAILEMPRESARIAL...................................................... 276 FIGURA 4.54 PRUEBA DE ENVÍO DE CORREO ELECTRÓNICO DESDE D.CARRASCO@VSERVER.EC A

J.BONILLA@VSERVER.EC Y D.CARRASCO@ANDINANET.NET. ............................................................ 277 FIGURA 4.55 PRUEBA DE RECEPCIÓN DEL CORREO ANTERIOR. .................................................................. 277 FIGURA 4.56 RESPUESTA DE CORREO. ........................................................................................................ 277 FIGURA 4.57 RECEPCIÓN DE CORREO DE RESPUESTA. ............................................................................... 278 FIGURA 4.58 PRUEBA DE MAILGATEWAY CON RECEPCIÓN DE CORREO EN EL DOMINIO @ANDINANET.NET.

............................................................................................................................................................. 278 FIGURA 4.59 CREACIÓN DE BASES DE DATOS Y ASIGNACIÓN DE PERMISOS ............................................... 279 FIGURA 4.60 PRUEBA DE FUNCIONAMIENTO DE SAMBA COMO SERVIDOR DE ARCHIVOS. SE OBSERVA LAS

CARPETAS COMPARTIDAS A TRAVÉS DE LA RED VISTAS DESDE UN CLIENTE WINDOWS. ................... 279 FIGURA 4.61 SERVIDOR DE ARCHIVOS SAMBA VISTO DESDE UN CLIENTE EN GNU-LINUX. ....................... 280

XI

FIGURA 4.62 PRUEBA DE UPLOAD DE ARCHIVOS AL SERVIDOR SAMBA. SE MUESTRA TAMBIÉN LOS

ARCHIVOS DISPONIBLES. ..................................................................................................................... 280 FIGURA 4.63 EJEMPLO DE BÚSQUEDA DE UNA ENTRADA EN EL DIRECTORIO .............................................. 281 FIGURA 4.64 PORTAL WEB WWW.VSERVER.EC ........................................................................................... 281 FIGURA 4.65 PORTAL WEB WWW.AEIE.EC ................................................................................................... 282 FIGURA 4.66 PORTAL WEB VIADMIN.VSERVER.EC ....................................................................................... 282 FIGURA 4.67 PRUEBA DE INICIO DE SESIÓN DEL SERVIDOR FTP. ................................................................. 283 FIGURA 4.68 ARCHIVOS DESPLEGADOS EN EL SERVIDOR FTP. ................................................................... 283 FIGURA 4.69 PRUEBAS DE ENVÍO DE ARCHIVOS VÍA LÍNEA DE COMANDOS DESDE UN CLIENTE FTP EN

WINDOWS. ........................................................................................................................................... 284 FIGURA 4.70 PANTALLA DE ADMINISTRACIÓN DE CUPS VÍA WEB ................................................................. 284 FIGURA 4.71 VENTANA DE INSTALACIÓN EXITOSA DE ZEN CART ................................................................ 285 FIGURA 4.72: PRUEBAS DE RESOLUCIÓN DE NOMBRES DE DOMINIO Y DIRECCIONES IP EN LOS SERVIDORES

DNS DE LA ZONA DESMILITARIZADA ................................................................................................... 285 FIGURA 4.73: PRUEBA DE ENRUTAMIENTO DESDE UN EQUIPO DE LA ZONA DESMILITARIZADA HACIA UNA

DIRECCIÓN DE INTERNET ..................................................................................................................... 286 FIGURA 5.1 USO DE MEMORIA Y CPU POR EL SERVICIO BIND. .................................................................... 293 FIGURA 5.2 USO DE MEMORIA Y CPU POR EL SERVICIO CUPSD. ................................................................ 296 FIGURA 5.3 ILUSTRACIÓN DEL PROTOTIPO DE SERVIDOR VIRTUALIZADO PARA PYMES. .......................... 300 FIGURA 5.4 LOGOTIPO PROCESADOR INTEL® CORE™ 2 QUAD. ................................................................ 301 FIGURA 5.5 RENDIMIENTO DE LOS DISTINTOS TIPOS DE MEMORIA RAM. FUENTE:

HTTP://WWW.KINGSTON.COM/BRANDED/PDF_FILES/FINAL_ESX3_MEMORY.PDF .............................. 304 FIGURA 5.6 MEMORIA RAM KINGSTON KVR667D2N5/2 2GB.................................................................. 304 FIGURA 5.7 DISCO DURO SAMSUNG HD103SI DE 1TB DE CAPACIDAD TIPO SATA DE 7200 RPM. ........ 306 FIGURA 5.8 IMAGEN INTERIOR DEL DISCO DURO SAMSUNG HD103SI DE 1TB DE CAPACIDAD TIPO SATA DE

7200 RPM. .......................................................................................................................................... 306 FIGURA 5.9 TARJETA DE RED D-LINK DGE-530T - 1GBPS. FUENTE:

HTTP://WWW.DLINK.COM/PRODUCTS/?PID=284 ................................................................................. 308 FIGURA 5.10 DIAGRAMA INTERNO DEL MAINBOARD UTILIZADO: INTEL® DG33BU .................................... 312 FIGURA 5.11 TARJETA MADRE CON DISPOSITIVOS DE MEMORIA, PROCESADOR, INTERFACES DE RED DEL

PROTOTIPO. ......................................................................................................................................... 313 FIGURA 5.12 MEMORIA RAM INSTALADA. .................................................................................................... 314 FIGURA 5.13 PROCESADOR INSTALADO. ...................................................................................................... 314 FIGURA 5.14 DISPOSITIVOS DE RED INSTALADOS Y PUERTOS DISPONIBLES............................................... 315 FIGURA 5.15 TARJETAS DE RED INSTALADAS (VISTA EXTERNA). ................................................................. 315 FIGURA 5.16 PUERTOS DISPONIBLES DEL PROTOTIPO. ............................................................................... 316 FIGURA 5.17 DISCO DURO INSTALADO. ........................................................................................................ 316 FIGURA 5.18 FUENTE DE PODER INSTALADA................................................................................................ 317 FIGURA 5.19 UNIDAD DE DVD INSTALADA. .................................................................................................. 317 FIGURA 5.20 CASE DEL SERVIDOR. ............................................................................................................. 318 FIGURA 8.1 ARQUITECTURA DE XEN E INTEL® VT. ..................................................................................... 337 FIGURA 8.2 TWO WAY ROUTED NETWORK APLICADO AL DISEÑO. .............................................................. 359

XII

ÍNDICE DE TABLAS

TABLA 2.1 CLASIFICACIÓN DE LAS MIPYMES ECUADOR. FUENTE: ASOCIACIÓN LATINOAMERICANA DE INTEGRACIÓN ALADI. ........................................................... 59

TABLA 2.2 CLASIFICACIÓN DE LAS MIPYMES COLOMBIA. FUENTE: LEY 905 DE 2004

HTTP://WWW.MIPYMES.GOV.CO/MICROEMPRESARIO/NEWSDETAIL.ASP?ID=86&IDCOMPANY=45 ... 60 TABLA 2.3 CLASIFICACIÓN DE LAS PYMES MERCOSUR. FUENTE:

HTTP://WWW.RAU.EDU.UY/MERCOSUR/FAQ/PRE24.MERCO.HTM .................................................... 61 TABLA 2.4 CLASIFICACIÓN DE LAS PYMES UNIÓN EUROPEA. FUENTE:

HTTP://EUROPA.EU/LEGISLATION_SUMMARIES/ENTERPRISE/BUSINESS_ENVIRONMENT/N26026_ES.HT

M ............................................................................................................................................... 62 TABLA 2.5 PARTICIPACIÓN DE LAS PYMES EN EL PIB. FUENTE: CÁMARA DE LA PEQUEÑA INDUSTRIA DE

PICHINCHA, PROYECTO INFOPYME 2008, RESUMEN EJECUTIVO PÁG. 2. ................................... 66 TABLA 2.6 DISTRIBUCIÓN DE LAS EMPRESAS ENCUESTADAS. FUENTE: LAS TECNOLOGÍAS DE LA

INFORMACIÓN Y LAS COMUNICACIONES EN LA COMPETITIVIDAD DE QUITO, SANTA FE ASSOCIATES

INTERNATIONAL. ......................................................................................................................... 69 TABLA 2.7 EMPRESAS CON CARACTERÍSTICAS DE USO AVANZADO DE TIC FUENTE: LAS TECNOLOGÍAS DE

LA INFORMACIÓN Y LAS COMUNICACIONES EN LA COMPETITIVIDAD DE QUITO, SANTA FE ASSOCIATES

INTERNATIONAL. ......................................................................................................................... 70 TABLA 2.8 TIPO DE RED LAN. FUENTE: LAS TECNOLOGÍAS DE LA INFORMACIÓN Y LAS COMUNICACIONES

EN LA COMPETITIVIDAD DE QUITO, SANTA FE ASSOCIATES INTERNATIONAL. ................................. 71 TABLA 2.9 REQUERIMIENTOS BÁSICOS DE TIC´S EN LAS PYMES. ......................................................... 73 TABLA 2.10 REQUERIMIENTOS TÉCNICOS PARA TIC´S EN LAS PYMES. ................................................. 74 TABLA 2.11 TIPO DE CONEXIÓN A INTERNET POR TAMAÑO DE EMPRESA. FUENTE: LAS TECNOLOGÍAS DE LA

INFORMACIÓN Y LAS COMUNICACIONES EN LA COMPETITIVIDAD DE QUITO, SANTA FE ASSOCIATES

INTERNATIONAL. ......................................................................................................................... 75 TABLA 2.12 VELOCIDAD DE CONEXIÓN A INTERNET. FUENTE: LAS TECNOLOGÍAS DE LA INFORMACIÓN Y LAS

COMUNICACIONES EN LA COMPETITIVIDAD DE QUITO, SANTA FE ASSOCIATES INTERNATIONAL. ..... 76 TABLA 2.13 USOS DE INTERNET EN LA GERENCIA. FUENTE: LAS TECNOLOGÍAS DE LA INFORMACIÓN Y LAS

COMUNICACIONES EN LA COMPETITIVIDAD DE QUITO, SANTA FE ASSOCIATES INTERNATIONAL. ..... 76 TABLA 2.14 USOS DE INTERNET POR LA EMPRESA. FUENTE: LAS TECNOLOGÍAS DE LA INFORMACIÓN Y LAS

COMUNICACIONES EN LA COMPETITIVIDAD DE QUITO, SANTA FE ASSOCIATES INTERNATIONAL. ..... 77 TABLA 2.15 DIAGNÓSTICO Y ESTRATEGIA DE GOBIERNO ELECTRÓNICO. FUENTE CONATEL, MARZO

2005. ........................................................................................................................................ 78 TABLA 2.16 TIPO DE CUENTAS DE CORREO ELECTRÓNICO EN LA EMPRESA. FUENTE: LAS TECNOLOGÍAS DE

LA INFORMACIÓN Y LAS COMUNICACIONES EN LA COMPETITIVIDAD DE QUITO, SANTA FE ASSOCIATES

INTERNATIONAL. ......................................................................................................................... 79 TABLA 2.17 DISPONIBILIDAD DE SITIO WEB. FUENTE: LAS TECNOLOGÍAS DE LA INFORMACIÓN Y LAS

COMUNICACIONES EN LA COMPETITIVIDAD DE QUITO, SANTA FE ASSOCIATES INTERNATIONAL. ..... 81 TABLA 2.18 DISPONIBILIDAD DE DOMINIO PROPIO. FUENTE: LAS TECNOLOGÍAS DE LA INFORMACIÓN Y LAS

COMUNICACIONES EN LA COMPETITIVIDAD DE QUITO, SANTA FE ASSOCIATES INTERNATIONAL. ..... 82 TABLA 2.19 UTILIZACIÓN DEL SITIO WEB EMPRESAS NO EXPORTADORAS. FUENTE: LAS TECNOLOGÍAS DE

LA INFORMACIÓN Y LAS COMUNICACIONES EN LA COMPETITIVIDAD DE QUITO, SANTA FE ASSOCIATES

INTERNATIONAL. ......................................................................................................................... 82 TABLA 2.20 UTILIZACIÓN DEL SITIO WEB EMPRESAS EXPORTADORAS. FUENTE: LAS TECNOLOGÍAS DE LA

INFORMACIÓN Y LAS COMUNICACIONES EN LA COMPETITIVIDAD DE QUITO, SANTA FE ASSOCIATES

INTERNATIONAL. ......................................................................................................................... 83 TABLA 2.21 DISPONIBILIDAD DE SISTEMAS DE SEGURIDAD INFORMÁTICA. FUENTE: LAS TECNOLOGÍAS DE LA

INFORMACIÓN Y LAS COMUNICACIONES EN LA COMPETITIVIDAD DE QUITO, SANTA FE ASSOCIATES

INTERNATIONAL. ......................................................................................................................... 93 TABLA 2.22 COSTO DE UN EJEMPLO DE IMPLEMENTACIÓN DESCENTRALIZADA DE CINCO SERVIDORES. .... 97 TABLA 2.23 COSTO DE UN EJEMPLO DE IMPLEMENTACIÓN VIRTUALIZADA DE CINCO SERVIDORES. ......... 100 TABLA 2.24 AHORRO EN IMPLEMENTACIÓN VIRTUALIZADA DE CINCO SERVIDORES CON SOFTWARE

LICENCIADO. ............................................................................................................................ 100 TABLA 2.25 AHORRO EN IMPLEMENTACIÓN VIRTUALIZADA DE CINCO SERVIDORES CON SOFTWARE LIBRE.

............................................................................................................................................... 101 TABLA 3.1 CUADRO COMPARATIVO DE LOS PRINCIPALES TIPOS DE VIRTUALIZACIÓN DE SERVIDORES. .... 120

XIII

TABLA 3.2 CUADRO COMPARATIVO DE LOS PRINCIPALES TIPOS DE HERRAMIENTAS DE VIRTUALIZACIÓN DE

SERVIDORES. ........................................................................................................................... 123 TABLA 3.3 SELECCIÓN DE LA SOLUCIÓN DE VIRTUALIZACIÓN ............................................................... 126 TABLA 3.4 PARÁMETROS CONFIGURABLES DE XEND. FUENTE:

HTTP://WWW.REDHAT.COM/DOCS/MANUALS/ENTERPRISE/RHEL-5-MANUAL/ES-ES/VIRTUALIZATION/CH-VIRT-TASK-VIRSH-CONFIG-MAX-MEM.HTML ............................................ 157

TABLA 4.1 REQUERIMIENTOS TÉCNICOS PARA TIC´S EN LAS PYMES .................................................. 166 TABLA 4.2 DIRECCIONAMIENTO DEL CENTRO DE DATOS ..................................................................... 170 TABLA 4.3 ALTERNATIVAS DE SOFTWARE PARA DHCP. ........................................................................ 199 TABLA 4.4 ALTERNATIVAS DE SOFTWARE MTA´S. FUENTE:

HTTP://GLUC.UNICAUCA.EDU.CO/WIKI/INDEX.PHP/DOCUMENTACI%C3%B3N_MTAS_Y_TABLA_COMP

ARATIVA ................................................................................................................................... 205 TABLA 4.5 ARCHIVOS DE CONFIGURACIÓN DE SENDMAIL. .................................................................... 207 TABLA 4.6 OPCIONES PARA LA CONFIGURACIÓN DE RECURSOS COMPARTIDOS EN SAMBA. FUENTE:

ALCANCE LIBRE, © 1999-2009 JOEL BARRIOS DUEÑAS – CONFIGURACIÓN DE SAMBA. .............. 223 TABLA 4.7 CARACTERÍSTICAS PRINCIPALES DE ALTERNATIVAS DE SOFTWARE SERVIDOR WEB. FUENTE:

FUENTE: DISEÑO DE LA INTRANET DE LA EMPRESA MEGAREDES CÍA. LTDA., TESIS DE GRADO ING. TRELLES SEGOVIA, CÉSAR ALFREDO, ING.VALLEJO CIFUENTES, RICARDO PATRICIO. ................. 227

TABLA 4.8 ALTERNATIVA DE SOFTWARE PARA FTP. FUENTE: HTTP://VSFTPD.BEASTS.ORG/#SECURITY Y

HTTP://WWW.INFORMATICABOSCO.COM/PHPNUKE/LINUXAVANZADO/CURSO/BLOQUE04/12.PROFTPD.PDF ......................................................................................................................................... 232

TABLA 5.1 CUADRO RESUMEN DE LAS CARACTERÍSTICAS DE LOS SERVIDORES VIRTUALES .................. 299 TABLA 5.2 ALTERNATIVAS DE PROCESADOR CON CARACTERÍSTICAS INTEL® VIRTUALIZATION

TECHNOLOGY. FUENTE: HTTP://ARK.INTEL.COM/PRODUCTCOLLECTION.ASPX?FAMILYID=28398 . 302 TABLA 5.3 CARACTERÍSTICAS TÉCNICAS MEMORIA RAM ESCOGIDA. FUENTE:

HTTP://WWW.VALUERAM.COM/DATASHEETS/KVR667D2N5_2G.PDF .......................................... 305 TABLA 5.4 CARACTERÍSTICAS TÉCNICAS DEL DISCO DURO SELECCIONADO. FUENTE:

HTTP://WWW.SAMSUNG.COM/GLOBAL/BUSINESS/HDD/PRODUCTMODEL.DO?GROUP=72&TYPE=61&SU

BTYPE=78&MODEL_CD=443&PPMI=1170# ............................................................................... 307 TABLA 5.5 CARACTERÍSTICAS TÉCNICAS TARJETAS DE RED ADICIONALES TIPO PCI. FUENTE:

HTTP://WWW.DLINK.COM/PRODUCTS/?PID=284 .......................................................................... 309 TABLA 5.6 CARACTERÍSTICAS TÉCNICAS DE LAS ALTERNATIVAS DE MAINBOARD PARA EL PROTOTIPO. .. 311 TABLA 6.1 COSTOS DEL HARDWARE PARA LA IMPLEMENTACIÓN DEL PROTOTIPO DE SERVIDOR

VIRTUALIZADO. ........................................................................................................................ 323 TABLA 6.2 SOFTWARE UTILIZADO EN LA IMPLEMENTACIÓN DEL PROTOTIPO DE SERVIDOR VIRTUALIZADO.

............................................................................................................................................... 324 TABLA 6.3 COSTO TOTAL SERVIDOR VIRTUALIZADO. ........................................................................... 325 TABLA 8.1 HTTP://ARK.INTEL.COM/COMPARE.ASPX?IDS=41316,38512,27486,27249,42805, ............. 340 TABLA 8.2 UTILIZACIÓN DE LAS TIC´S EN AMÉRICA LATINA. FUENTE: “LAS TECNOLOGÍAS DE LA

INFORMACIÓN Y LAS COMUNICACIONES EN LA COMPETITIVIDAD DE QUITO” PÁG: 34. ECON. HERNANDO LÓPEZ GUERRERO, ING. HUGO CARRIÓN GORDÓN, © CORPORACIÓN DE PROMOCIÓN

ECONÓMICA CONQUITO, 2007 .............................................................................................. 342 TABLA 8.3 FASES DE LA IMPLEMENTACIÓN DE LA SOLUCIÓN DE SERVIDOR VIRTUALIZADO. FUENTE:

HTTP://WWW.ASAC.AS/WEB/UPLOAD/PONENCIAS/HP-BLADE_VIRTUALIZACI%C3%B3N.PDF ........ 354

XIV

ÍNDICE DE ESPACIOS DE CÓDIGO

ESPACIO DE CÓDIGO 3.1 CÓDIGO A INTRODUCIRSE EN EL ARCHIVO MENU.LST PARA PERMITIR EL INICIO DEL

KERNEL DE XEN. .................................................................................................................................. 143 ESPACIO DE CÓDIGO 3.2 ARCHIVO DE CONFIGURACIÓN DEL DOMINIO PARA UN SERVIDOR ....................... 146 ESPACIO DE CÓDIGO 3.3 CÓDIGO PARA CONFIGURACIÓN TIPO BRIDGE. .................................................... 149 ESPACIO DE CÓDIGO 3.4 CÓDIGO PARA CONFIGURACIÓN DE NETWORK NAT. ........................................... 150 ESPACIO DE CÓDIGO 3.5 CÓDIGO PARA CONFIGURACIÓN DE TWO WAY ROUTED ..................................... 151 ESPACIO DE CÓDIGO 3.6 ARCHIVOS DE CONFIGURACIÓN DE BRIDGED NETWORKING ............................... 152 ESPACIO DE CÓDIGO 3.7 SCRIPT SCRIPT-PYMES PARA UNA BRIDGED NETWORKING .............................. 153 ESPACIO DE CÓDIGO 3.8 CONFIGURACIÓN DE UN DISPOSITIVO DE ALMACENAMIENTO PARA VM. ............ 154 ESPACIO DE CÓDIGO 3.9 CÓDIGO PARA AÑADIR EN CALIENTE UN DISPOSITIVO DE ALMACENAMIENTO ..... 155 ESPACIO DE CÓDIGO 3.10 CÓDIGO PARA DESVINCULAR EN CALIENTE UN DISPOSITIVO DE ALMACENAMIENTO

............................................................................................................................................................. 155 ESPACIO DE CÓDIGO 4.1 ARCHIVO DE CONFIGURACIÓN PARA LA CREACIÓN DE UNA MÁQUINA VIRTUAL . 174 ESPACIO DE CÓDIGO 4.2 ARCHIVO DE CONFIGURACIÓN DE UNA MÁQUINA VIRTUAL. ................................ 174 ESPACIO DE CÓDIGO 4.3 INSTALACIÓN DE UNA MÁQUINA VIRTUAL CON LA HERRAMIENTA VIRT-INSTALL . 175 ESPACIO DE CÓDIGO 4.4 RUTAS DEL SERVIDOR ROUTERINTRANET ........................................................... 185 ESPACIO DE CÓDIGO 4.5 EJEMPLO DE REFLAS PARA FILTRADO DE PAQUETES EN EL ROUTERINTRANET.. 187 ESPACIO DE CÓDIGO 4.6 RUTAS DEL SERVIDOR FIREWALLPROXY ............................................................. 187 ESPACIO DE CÓDIGO 4.7 CONFIGURACIONES PARA FILTRADO DE PAQUETES EN EL FIREWALLPROXY ...... 188 ESPACIO DE CÓDIGO 4.8 ARCHIVO DE CONFIGURACIÓN SQUID.CONF ........................................................ 189 ESPACIO DE CÓDIGO 4.9 ARCHIVO DE CONFIGURACIÓN DNS PRIMARIO NAMED.CONF ............................. 193 ESPACIO DE CÓDIGO 4.10 ARCHIVO DE ZONA DE NOMBRES PRIMARIO NAMED.VSERVER.EC .................... 194 ESPACIO DE CÓDIGO 4.11 ARCHIVO DE ZONA IP NAMED.10.0.0 ................................................................ 194 ESPACIO DE CÓDIGO 4.12 ARCHIVO DE ZONA IP PRIMARIO NAMED.10.0.1 ............................................... 195 ESPACIO DE CÓDIGO 4.13 ARCHIVO DE ZONA IP PRIMARIO NAMED.10.0.2 ............................................... 195 ESPACIO DE CÓDIGO 4.14 ARCHIVO DE ZONA IP PRIMARIO NAMED.192.168.0 ......................................... 195 ESPACIO DE CÓDIGO 4.15 ARCHIVO DE ZONA IP PRIMARIO NAMED.192.168.2 ......................................... 196 ESPACIO DE CÓDIGO 4.16 ARCHIVO DE ZONA IP PRIMARIO NAMED.172.16.0 ........................................... 196 ESPACIO DE CÓDIGO 4.17 ARCHIVO DE ZONA LOCAL PRIMARIO NAMED.LOCAL ......................................... 196 ESPACIO DE CÓDIGO 4.18 ARCHIVO DE ZONA LOCAL PRIMARIO LOCALHOST.ZONE ................................... 196 ESPACIO DE CÓDIGO 4.19 ARCHIVO DE CONFIGURACIÓN DNS SECUNDARIO NAMED.CONF ..................... 198 ESPACIO DE CÓDIGO 4.20 ARCHIVO DE ZONA LOCAL SECUNDARIO NAMED.LOCAL .................................... 198 ESPACIO DE CÓDIGO 4.21 ARCHIVO DE ZONA LOCAL PRIMARIO LOCALHOST.ZONE ................................... 198 ESPACIO DE CÓDIGO 4.22 ARCHIVO DE CONFIGURACIÓN DHCPD.CONF ..................................................... 202 ESPACIO DE CÓDIGO 4.23 ARCHIVO DE CONFIGURACIÓN DHCRELAY. ........................................................ 203 ESPACIO DE CÓDIGO 4.24 ARCHIVO DE CONFIGURACIÓN SENDMAIL.MC .................................................... 207 ESPACIO DE CÓDIGO 4.25 ARCHIVO DE CONFIGURACIÓN LOCAL-HOST-NAMES. ........................................ 208 ESPACIO DE CÓDIGO 4.26 ARCHIVO DE CONFIGURACIÓN ACCESS. ............................................................ 208 ESPACIO DE CÓDIGO 4.27 ACTIVACIÓN DEL SERVICIO SMTP AUTENTIFICADO .......................................... 209 ESPACIO DE CÓDIGO 4.28 ARCHIVO DE CONFIGURACIÓN DOVECOT.CONF ................................................ 209 ESPACIO DE CÓDIGO 4.29 ARCHIVO DE CONFIGURACIÓN DE MAILSCANNER............................................. 210 ESPACIO DE CÓDIGO 4.30 CAMBIOS EN EL ARCHIVO DE CONFIGURACIÓN SLAPD.CONF ............................ 214 ESPACIO DE CÓDIGO 4.31 CAMBIOS EN EL ARCHIVO DE MIGRACIÓN MIGRATE_COMMON.PH .................... 214 ESPACIO DE CÓDIGO 4.32 CONFIGURACIÓN DE ARCHIVO LMHOSTS EN SAMBA. ........................................ 222 ESPACIO DE CÓDIGO 4.33 ARCHIVO DE CONFIGURACIÓN SMB.CONF DE SAMBA. ...................................... 225 ESPACIO DE CÓDIGO 4.34 ARCHIVO DE CONFIGURACIÓN HTTPD.CONF (EXTRACTO). ............................... 230 ESPACIO DE CÓDIGO 4.35 AGREGACIÓN DE CNAME PARA WEBEMPRESARIAL.VSERVER.EC .................. 231 ESPACIO DE CÓDIGO 4.36 ARCHIVO DE CONFIGURACIÓN VSFTPD.CONF ................................................... 236 ESPACIO DE CÓDIGO 4.37 CAMBIOS EN EL ARCHIVO DE MIGRACIÓN MIGRATE_COMMON.PH .................... 240 ESPACIO DE CÓDIGO 4.38 ARCHIVO DE CONFIGURACIÓN HTTPD.CONF DE LA WEBINTERNET. .................. 244 ESPACIO DE CÓDIGO 4.39 EXTRACTO DEL ARCHIVO DE CONFIGURACIÓN NAMED.CONF. .......................... 244

XV

ESPACIO DE CÓDIGO 4.40 CONFIGURACIÓN DE CNAME PARA LAS WEB ALOJADAS EN WEBINTERNET DEL

DOMINIO VSERVER.EC. ......................................................................................................................... 244 ESPACIO DE CÓDIGO 4.41 CONFIGURACIÓN DEL DOMINIO WWW.AEIE.EC PARA SER ATENDIDO POR EL

SERVIDOR VIRTUAL WEBINTERNET (10.0.0.2). ................................................................................... 245 ESPACIO DE CÓDIGO 4.42 ARCHIVO DE CONFIGURACIÓN SENDMAIL.MC .................................................... 257 ESPACIO DE CÓDIGO 4.43 ARCHIVO DE CONFIGURACIÓN ACCESS. ............................................................ 258 ESPACIO DE CÓDIGO 4.44 ARCHIVO DE CONFIGURACIÓN MAILERTABLE. ................................................... 258 ESPACIO DE CÓDIGO 4.45 ACTIVACIÓN DEL SERVICIO SMTP AUTENTIFICADO .......................................... 258 ESPACIO DE CÓDIGO 4.46 ARCHIVO DE CONFIGURACIÓN DE MAILSCANNER............................................. 260 ESPACIO DE CÓDIGO 4.47 ARCHIVO DE CONFIGURACIÓN DNS PRIMARIO NAMED.CONF ........................... 263 ESPACIO DE CÓDIGO 4.48 ARCHIVO DE ZONA DE NOMBRES PRIMARIO NAMED.VSERVER.EC .................... 263 ESPACIO DE CÓDIGO 4.49 ARCHIVO DE ZONA IP NAMED.10.0.2 ................................................................ 264 ESPACIO DE CÓDIGO 4.50 ARCHIVO DE ZONA IP PRIMARIO NAMED.172.16.0 ........................................... 264 ESPACIO DE CÓDIGO 4.51 ARCHIVO DE ZONA LOCAL PRIMARIO NAMED.LOCAL ......................................... 264 ESPACIO DE CÓDIGO 4.52 ARCHIVO DE ZONA LOCAL PRIMARIO LOCALHOST.ZONE ................................... 264 ESPACIO DE CÓDIGO 4.53 ARCHIVO DE CONFIGURACIÓN DNS SECUNDARIO NAMED.CONF ..................... 265 ESPACIO DE CÓDIGO 4.54 ARCHIVO DE ZONA LOCAL SECUNDARIO NAMED.LOCAL .................................... 265 ESPACIO DE CÓDIGO 4.55 ARCHIVO DE ZONA LOCAL PRIMARIO LOCALHOST.ZONE ................................... 266 ESPACIO DE CÓDIGO 4.56 RUTAS DEL SERVIDOR FIREWALLINTERNET ...................................................... 268 ESPACIO DE CÓDIGO 4.57 REGLAS DE FILTRADO DE PAQUETES EN EL SERVIDOR FIREWALLINTERNET .... 270 ESPACIO DE CÓDIGO 4.58 GENERACIÓN DEL CERTIFICADO DE AUTORIDAD ............................................... 271 ESPACIO DE CÓDIGO 4.59 ARCHIVO DE CONFIGURACIÓN DEL SERVIDOR .................................................. 272 ESPACIO DE CÓDIGO 4.60 ARCHIVO DE CONFIGURACIÓN DEL CLIENTE ..................................................... 272 ESPACIO DE CÓDIGO 8.1 CUADRO DE CÓDIGO PARA CONFIGURACIÓN PROTOTIPO VIRTUALIZADO DE

PYMES DEL TIPO TWO WAY ROUTED. ............................................................................................... 360 ESPACIO DE CÓDIGO 8.2 CONFIGURACIÓN DE INTERFAZ DE RED VIRTUAL DE UNA VM PARA UN ESQUEMA

ROUTED. ............................................................................................................................................... 361 ESPACIO DE CÓDIGO 8.3 CONFIGURACIÓN DEL DOM0 PARA FORWARDING Y ENMASCARAMIENTO DE LAS

VM ....................................................................................................................................................... 361 ESPACIO DE CÓDIGO 8.4 CREACIÓN DE UNA VM. ....................................................................................... 361

XVI

RESUMEN

En el presente proyecto se realiza el diseño, análisis e implementación de un servidor

virtualizado sobre el que se implementa un centro de datos diseñado para las

pequeñas y medianas empresas PyMEs. El diseño presentado constituye una

solución económica para permitir su adquisición por parte de las pequeñas empresas,

brindar la escalabilidad suficiente para permitir el crecimiento y la flexibilidad

requerida por los cambios que pudieran ocurrir en las organizaciones.

El primer capítulo se centra en la descripción de la tecnología de virtualización, una

breve historia de su evolución y desarrollo y los diferentes tipos de virtualización

existentes. Aquí se describirán las características y aplicaciones de los principales

tipos de virtualización y de las principales herramientas que se emplean.

En el segundo capítulo se trata sobre la situación de las pequeñas y medianas

empresas (PYMES) analizando sus requerimientos tecnológicos y la factibilidad de

implementación de un prototipo de servidor virtualizado para facilitar su correcta

operación. Para esto se emplearán datos obtenidos de fuentes como el Ministerio de

Industrias y Competitividad (MIC), la Cámara de la Pequeña Industria de Pichincha

(CAPEIPI) y de la Corporación de Promoción Económica (CONQUITO).

Posteriormente en el capítulo tres, en función del análisis de las alternativas de tipo y

plataforma de virtualización, se procede a seleccionar la solución más conveniente de

acuerdo a los requerimientos de las PYMES; esta solución la constituye el Hypervisor

XEN®. Así de esta manera se procede a detallar dicha herramienta y la

implementación de una arquitectura servidor virtualizado con la misma.

En el capítulo cuatro se presenta el centro de datos para las PYMES diseñado en

base a los servicios requeridos según lo expuesto en el segundo capítulo. En esta

parte del proyecto se detalla el modo en que se realizan las instalaciones y

configuraciones de los diversos servidores virtuales y los servicios a implementarse,

al igual que se mostrarán pruebas generales del correcto funcionamiento de los

mismos.

XVII

Una vez que se tiene en claro la forma de instalación y configuración de la

herramienta de virtualización y los servidores virtuales, en el capítulo cinco se

procede a dimensionar cada uno de los servicios a implementarse al igual que el

servidor físico con la selección del hardware requerido para la implementación del

prototipo.

Finalmente, en el capítulo seis, se presenta el presupuesto requerido para la

implementación del prototipo y las principales conclusiones y recomendaciones

obtenidas en la elaboración del proyecto en el capítulo 7.

Se incluye, al final del presente proyecto, anexos correspondientes a datos

adicionales y precisiones para una comprensión integral del trabajo así como un CD-

ROM donde se puede encontrar el código completo de las implementaciones

realizadas.

Los autores.

XVIII

PRESENTACIÓN

El progreso computacional de los últimos 40 años ha traído consigo de manera

generalizada el aparecimiento de infraestructuras tecnológicas con características de

mayor potencia, rapidez, simplicidad y menor costo que tecnologías precedentes.

Esta evolución computacional de hardware y software ha dado lugar que los centros

de datos de las organizaciones también evolucionen a través de los años. Éste

desarrollo de los centros de datos se ha dado fundamentalmente en relación a tres

paradigmas: centralización, descentralización y el introducido en los últimos años: la

consolidación. Es en esta última infraestructura tecnológica, la consolidación, donde

la virtualización toma un papel protagónico especialmente en la virtualización de

servidores.

El desarrollo de la virtualización constituye un trabajo probado a lo largo ya de 40

años, desde su aparecimiento y aplicación en la era Mainframe por parte de IBM®

hasta sus recientes aplicaciones en el hardware x86 por parte Xen®, VMware® y

Microsoft® entre otros.

Todo este desarrollo tecnológico ha ido de la mano con la evolución, estructura y giro

del negocio de las organizaciones en busca de obtener mayor eficiencia y eficacia en

el desempeño de sus operaciones y con ello la obtención de un mayor rédito en el

ámbito de su competencia.

Esta combinación de factores, a decir, la reducción de costos del hardware

(especialmente del hardware x86), la aplicación de la virtualización de servidores y la

constitución de un centro de datos eficiente, contribuye a dar lugar a que el entorno

de TI de las organizaciones productivas cambie a gran velocidad. El objetivo es

ajustar la tecnología con mayor precisión a las necesidades organizacionales

contribuyendo así a la constitución de un centro de datos más eficiente, manejable,

confiable, seguro, disponible y de menor costo.

Es así que las soluciones tecnológicas de virtualización, antes casi exclusivas para

las grandes empresas, comienzan a ser presentadas en formato pequeño para

empresas de menor tamaño donde se requiere tecnología con la menor inversión de

XIX

recursos económicos (debido a su naturaleza) para su mejoramiento organizativo y

productivo.

Es por este motivo que en el presente trabajo de investigación, es donde se pretende

aprovechar esta serie de factores tecnológicos y económicos como la virtualización

de servidores para incluir a las Pequeñas y Medianas Empresas -PyMEs- en un

nuevo ámbito organizativo donde las Tecnologías de Información (TI) constituyen un

factor trascendental en el incremento de su productividad.

Así, los beneficios de la virtualización son grandes; ésta es una tecnología ecológica

que ahorra costos, espacio y recursos, permitiendo que las empresas “…reduzcan su

consumo energético en hasta un 80%, gestionen mejor el crecimiento de los sistemas

y consigan reducciones en el coste total de propiedad de hasta el 72%...”1. Esto se

debe fundamentalmente a que la virtualización de servidores permite múltiples

servidores en un sólo equipo, de forma que un único servidor podría ejecutar varios

sistemas operativos y aplicaciones del negocio.

El hecho de aplicar la Virtualización de Servidores para las PyMES sobre hardware

convencional (x86) y una distribución de Linux, no es más que un factor adicional que

esperamos contribuya a la adopción de infraestructuras tecnológicas que brinden un

centro de datos con altas características de eficiencia y eficacia pero a la vez

accesible económicamente.

Finalmente nuestro objetivo principal con este proyecto de titulación es el poder

contribuir de manera técnica desde nuestro campo de acción –la Electrónica y Redes

de Información- al crecimiento productivo de las pequeñas y medianas empresas

ecuatorianas y con ello al desarrollo productivo del país; ponemos así de esta manera

en práctica el lema que orgullosamente lleva nuestra Escuela Politécnica Nacional:

“El bienestar del hombre proviene de la Ciencia” y al que queremos agregar: “La

ingeniería al servicio de la comunidad, al servicio de todas y todos los ecuatorianos

en pro de un mejor país”.

Los autores

1 Estudios realizados por IBM sobre tecnologías de virtualización. http://www.tecnologiahechapalabra.com/negocios/PyMES/testimonios/articulo.asp?i=3031

1

CAPÍTULO UNO

1. DESCRIPCIÓN GENERAL DE LA

VIRTUALIZACIÓN (ARQUITECTURA SERVIDOR

VIRTUALIZADO) Y LAS HERRAMIENTAS

TECNOLÓGICAS PARA SU IMPLEMENTACIÓN.

2

1.1. FUNDAMENTOS GENERALES DE LA VIRTUALIZACIÓN

1.1.1. ANTECEDENTES

El cada vez más potente y de menor costo hardware x86 actual, ha sido adoptado en

los últimos años en un número considerable de implementaciones de servidores y

escritorios x86; el incremento en su utilización generó nuevos desafíos operacionales

y de infraestructura de TI.

Entre estos desafíos se pueden mencionar:

· Sub-aprovechamiento de la infraestructura: Este hardware fue diseñado

para ejecutar un único sistema operativo y en implementaciones estándar de

servidores x86 se tiende a ejecutar una aplicación por servidor. Esta situación

presente de manera general muestra un índice de aprovechamiento promedio

de entre un 10% y un 15% de la capacidad total2. Esta práctica habitual la

realizan las organizaciones para evitar el riesgo de afectar la disponibilidad de

las aplicaciones del servidor producidas por vulnerabilidades de otras

aplicaciones en el mismo servidor.

· Incremento de costos de infraestructura física: El crecimiento de la

infraestructura física debe estar respaldado por costos de funcionamiento que

garanticen suplir la necesidad incurrente de las infraestructuras tecnológicas a

permanecer operativas en todo momento. Dichos costos aumentan

significativamente debido al incremento en gastos de energía, refrigeración e

instalaciones que no varían según los niveles de aprovechamiento de los

servidores.

· Incremento de los costos de administración de TI: Debido al incremento de

complejidad de los entornos informáticos, es necesario que el personal invierta

mayor cantidad de tiempo en tareas manuales relacionadas con el

2 Datos señalados por la empresa de estudios de mercado International Data Corporation (IDC). Fuente: http://www.vmware.com/lasp/overview/history.html

3

mantenimiento de los servidores. Ante esta situación, cada vez se necesita

más personal capacitado, con experiencia y a un mayor costo.

· Protección y estrategias insuficientes de recuperación ante fallas y

desastres: Cada vez más es necesario contar con una estrategia que permita

a las organizaciones disminuir los riesgos debido a ataques de seguridad y

desastres naturales. La finalidad es aumentar el tiempo de continuidad del

negocio impidiendo la inactividad de las aplicaciones del servidor y con ello la

pérdida de valores económicos derivados por la paralización de actividades de

la organización.

· Escritorios de usuario final que requieren un nivel alto de mantenimiento:

Para el control de un entorno de escritorio distribuido y el cumplimiento con las

políticas de administración, acceso y seguridad, es necesario aplicar muchos

parches y llevar a cabo actualizaciones continuas en el entorno del escritorio.

Esto permitirá eliminar las vulnerabilidades de seguridad sin perjudicar la

capacidad del usuario de trabajar con eficacia. Sin embargo lograr este

escenario es complejo y costoso.

La virtualización aparece como una alternativa de solución ante estos desfíos.

1.1.2. FUNDAMENTACIÓN

De manera general, la idea de funcionamiento de la virtualización se basa en la

abstracción de los recursos físicos (ya sean estos de procesamiento, almacenamiento

o red) y las aplicaciones. Es decir busca añadir una capa de abstracción entre los

recursos para separar al hardware del software que se ejecuta sobre él.

En tal virtud, la virtualización permite que múltiples entornos se consoliden sobre una

única pieza de hardware. Así por ejemplo permite que en lugar de tener algunos

servidores con una aplicación en cada uno y un bajo porcentaje de utilización, utilizar

un único servidor para esas aplicaciones y que su porcentaje de uso sea

notablemente superior y sin impactar en el rendimiento de las aplicaciones.

4

Como consecuencia la virtualización da lugar a un mejor aprovechamiento de

recursos infrautilizados como servidores, recursos de almacenamiento y dispositivos

de red lo cual hace posible un centro de datos más dinámico. Así la virtualización nos

brinda la posibilidad de poder repartir los recursos en función de las necesidades del

negocio, maximizando el uso y a la vez simplificando las tareas y costos de

administración.

De esta forma, se consigue reducir los costos por equipamiento, espacio y

electricidad (con ello reducir las emisiones de CO2 resultando una tecnología

ecológica), así como una mayor flexibilidad en los sistemas de información y una

mejor utilización de los recursos de TI.

Por todo lo mencionado anteriormente, la idea de la virtualización se resume en algo

simple, y ahí radica su fuerza: hacer más con menos.

El objetivo final es:

· Posibilitar una reducción en costos y complejidad.

· Proporcionar un mejor alineamiento entre los procesos de las Tecnologías de

Información y los logros del negocio.

· Maximizar la utilización de los recursos.

Todo esto acompañado adicionalmente de la posibilidad de:

· Brindar confiabilidad y seguridad mejorada por medio del aislamiento de los

recursos computacionales.

· Optimizar tanto los niveles como la calidad de los servicios.

Actualmente, existen diferentes tipos y herramientas de virtualización que buscan

alcanzar estos objetivos. Así, con mucha frecuencia, encontramos referencias a la

virtualización de almacenamiento, virtualización de aplicaciones, virtualización de los

recursos de red, virtualización de sistemas operativos, etc. aunque sea su aplicación

al Centro de Datos donde ha logrado una mayor importancia en el mercado con la

virtualización de servidores.

5

En el presente trabajo de investigación se dará mayor énfasis a este último tipo de

virtualización.

1.1.3. ANTECEDENTES HISTÓRICOS DE LA VIRTUALIZACIÓN

La introducción de la virtualización no es una cuestión reciente, su aparecimiento data

de los años 60`s por IBM® en sus implementaciones mainframe.

La idea principal era particionarlos de manera lógica en máquinas virtuales

independientes logrando así un mayor aprovechamiento de la costosa inversión.

Estas particiones permitían a los mainframe la capacidad de realizar múltiples tareas

de forma simultánea y permitir además que un programador escriba el código fuente

de un programa mientras otro programador compilaba algún otro.

Esta técnica de virtualizar los recursos fue mejorándose durante los 60`s y 70`s con

proyectos como: CP/CMS, M44/44X, IBM® System 360 o el IBM® VM 370, logrando

crear varios entornos de máquinas virtuales (o VM por sus siglas en ingles de Virtual

Machine) sobre copias virtuales de hardware, todas manejadas por un monitor de

máquinas virtuales o Virtual Machine Monitor (VMM) que controlaba los recursos de

memoria, I/O y manejo de interrupciones.

El empleo de esta tecnología, sin embargo, no contó con una mayor difusión ni

masificación en el mercado debido en gran parte a la revolución de los ordenadores

personales de los 80´s y 90´s que provocaron que la industria pierda interés en los

sistemas operativos súper optimizados para mainframes. Es así que la virtualización

fue quedando al margen de la mayoría de consumidores.

La posterior reducción de costos en equipos x86 de los 90`s y de la última década así

como la creciente capacidad, velocidad y mejoras adicionales en procesadores,

memoria, dispositivos de almacenamiento, interfaces de red, dispositivos de

conectividad3 entre otros, ha traído consigo el incremento de implementaciones de

servidores y escritorios x86 estableciendo un modelo de informática distribuida. A 3 Al momento de realización del presente proyecto se dispone de Workstation' s con procesadores de cuatro núcleos, memoria RAM de 8GB, disco duro de 1TB, interfaces de red de 1Gbps a partir de 600 U.S.D. Adicionalmente se dispone de emuladores de routers y switches para una configuración económica sin necesidad de hardware adicional.

6

esto se añade, la adopción generalizada de Windows y el surgimiento de GNU Linux

como sistemas operativos de servidor; esta serie de factores convirtieron a los

servidores x86 en el estándar del sector (organizaciones pequeñas, medianas y

algunas grandes) en los 90´s.

Esta situación histórica, sin embargo, generó desafíos como:

· Incremento de costos de infraestructura física (aumento de servidores por

servicio) frente a la constante expansión de capacidades del hardware dando

la capacidad a realizar múltiples trabajos simultáneos sobre una misma

máquina.

· Esfuerzos para controlar costos y simplificar la administración a través de la

consolidación de servidores.

· La necesidad de controlar grandes instalaciones multiprocesador (granja de

servidores).

· La mejorada seguridad, confiabilidad e independencia de dispositivos posible

en la implementación de arquitecturas virtualizadas (hypervisor).

· La necesidad de correr aplicaciones complejas, dependientes del sistema

operativo en diferentes ambientes de hardware y S.O.

Por tal motivo, la solución de virtualización tuvo su re aparecimiento.

Así, las organizaciones abandonaron el uso compartido y centralizado del modelo de

mainframe para aprovechar posteriormente los bajos costos de los sistemas

distribuidos y luego dar lugar a la tendencia de esquemas consolidados. Éste último

hecho posible gracias a la virtualización.

1.1.3.1. Explosión de La Virtualización de 1990´S y 2000`S

Los mayores fabricantes de servidores en el mundo, incluyendo Sun® Microsystems,

HP®, IBM® y SGI®, han vendido hardware virtualizado desde inicios del 2000. Éstas

ofertas se las ha podido encontrar desde sistemas especializados de alto rango y de

alto costo (millón de dólares) hasta sistemas de rango medio (System-P de IBM®,

CoolThreads T1000, T2000 de Sun®, y T5x00 HP® 9000 Superdome series de HP®)

7

e inclusive sistemas de alto rendimiento y bajo costo sobre hardware x86 (lo cual es

el tema de tratamiento del presente trabajo de investigación).

Figura 1.1 Servidores de varias marcas de la actualidad. Fuente: bombayharbor.com

Especiales esfuerzos se han dado a proyectos open source para hardware

x86/x86_64 entre los que se tiene a proyectos como Xen® u otros del tipo propietario

como VMware® o Hyper-V™ de Microsoft®.

1.1.3.2. Virtualización y el Hardware x86

Durante los 90´s y la última década, a medida que el hardware x86 reducía en sus

costos, su capacidad y velocidad mejoraban. Es así que se han ido incorporando

cada vez mejoras adicionales en procesadores, memoria, dispositivos de

almacenamiento, interfaces de red, dispositivos de conectividad entre otros. Esta

8

situación ha traído consigo el incremento de implementaciones de servidores y

escritorios x86. A esto se añade, como ya se mencionó anteriormente, la adopción

generalizada de Windows y GNU Linux como sistemas operativos de servidor,

convirtiendo a los servidores x86 en dispositivos claramente populares, asequibles y

atractivos para las organizaciones en los 90´s y en el nuevo milenio.

Sin embargo, a medida que los usuarios optaban por las PCs y la computación

cliente-servidor, no existía una solución equivalente para la virtualización de la línea

de productos x86 en el mercado.

Esta situación histórica generó desafíos ya antes mencionados despertando el interés

en el altamente rentable sector del mercado para el desarrollo de plataformas de

virtualización para hardware x86.

La arquitectura x86 es particularmente difícil de virtualizar. Así por ejemplo, la

virtualización completa sobre la arquitectura x86 tiene un costo significativo en la

complejidad del hypervisor y en el rendimiento por la simulación total del hardware;

por otro lado la paravirtualización requiere de modificaciones del sistema operativo

anfitrión para dar lugar a su funcionamiento de simulación parcial del hardware

subyacente.

Más recientes introducciones al mercado han añadido asistencia a sus productos con

la finalidad de proveer soporte adicional para resolver aquellos componentes que son

difíciles de virtualizar. Así Intel® introdujo Intel® VT y AMD® introdujo AMD®-V. Estas

tecnologías expanden las posibilidades de virtualización mediante la adicción de 9

instrucciones al CPU que pueden ser utilizadas para administrar las máquinas

virtuales con ayuda directa del CPU.

Una de las primeras implementaciones en el mercado fue VMware®. Es así que en

1999 VMware® lanzó al mercado el primer producto de virtualización para estaciones

de trabajo x86 posteriormente extendida para servidores creando así un nuevo

mercado para la virtualización de servidores. VMware implementó en su software un

entorno 'fully virtualized' o de virtualización completa. Desde el lanzamiento de éste

primer producto, VMware® marcó su hegemonía en el mercado.

9

Por otro lado, otras ofertas de virtualización fueron desarrolladas; así por ejemplo se

tiene a compañías como SWsoft que lanzaron su producto Virtuozzo® para Linux en

2001; más adelante se fundaron Virtual Iron® (2003) y PlateSpin® Ltd. (2003). En

2005 Parallels®, Inc. Introdujo al mercado Parallels Workstation®, usado

principalmente en PCs y Parallels Desktop® for Mac, para Mac OS X, en 2006.

Sin embargo, dos hechos comenzaron a cambiar el espacio de mercado de la

virtualización de servidores convirtiéndolo en un campo de juego competitivo: El

software open source y Microsoft®.

Así aparece en 2003 un proyecto open source sobre virtualización de servidores

conducido por la Universidad de Cambridge. Este proyecto trajo consigo el

lanzamiento de la solución de virtualización open source: Xen®.

En 2006, el proyecto Xen® dio como resultado un hypervisor robusto, el Xen® 3.0.

Esta distribución fue desarrollada para tomar ventaja del hardware Intel® VT y

AMD®-V mejorados para virtualización (pudiendo usar paravirtualización y

virtualización completa). Con ello, Xen® llegó a posicionarse en el mercado

convirtiéndose en un hypervisor ampliamente usado y disponible gratuitamente. De

esta manera Xen®, captó la atención de los grandes de la industria de servidores

como IBM®, Sun®, HP®, y Novell®.

Figura 1.2 Línea de tiempo en el desarrollo de la virtualización en el hardware x86. Fuente: Focus Consulting

10

Dado que Xen® está licenciado bajo GPL el código no puede cerrarse, y no es solo

Xensource4 (a través de la Universidad de Cambridge) quien mantiene el código, sino

que varias empresas importantes como IBM®, Sun® (implementado Sun® xVM

Server.), HP®, Intel®, AMD®, Redhat® y Novell® están sumamente involucradas en

el desarrollo asignando programadores al mantenimiento de este software.

Por otra parte Microsoft®, sin quedarse atrás, adquirió en 2003 la compañía

Connectix®, encargada de desarrollar algunos productos de virtualización incluyendo

Virtual PC® para Mac, Virtual PC® para Windows, y un producto de virtualización de

servidores. Así Microsoft® entre 2004 y 2005 lanzó su hypervisor Virtual Server

comenzándolo a distribuir gratuitamente en 2006.

Este hecho anterior, al que se añadía la gratuidad de Xen®, influyó para que

VMware® y otros fabricantes sigan la tendencia de liberar algunos productos de su

línea de virtualización.

En 2008 Microsoft® lanza al mercado el Microsoft® Hyper-V™ Server® 2008, una

versión de su sistema operativo Windows Server 2008 el cual incluye el software de

virtualización Hyper-V™.

La virtualización de servidores ha logrado escalar significativamente en el espacio

empresarial sin embargo su implementación en el hardware x86 presentó grandes

restos y dificultades que cada uno de los mencionados fabricantes tuvieron que

afrontar.

Lograr virtualizar el hardware x86 no fue una tarea fácil y será explicada más

adelante en el presente trabajo de investigación.

4 El proyecto de investigación Xen® fue liderado por Ian Pratt, quien luego formó una empresa -junto con otras personas- para dar servicios de valor agregado como soporte, mantenimiento y capacitación sobre Xen® en Enero de 2005. Esta empresa es Xen source Inc. ahora propiedad de Citrix ®.

11

1.2. CONCEPTO

Una vez conocidos los elementos que fundamentaron la virtualización a través de su

posicionamiento histórico como una solución tecnológica en pro de la eficacia y

eficiencia, es posible ahora precisar un concepto de ésta:

El término de virtualización, en el campo de la informática, se refiere a la abstracción

de los recursos necesarios de un computador con el propósito de crear una versión

virtual de un dispositivo o recurso. Esta abstracción logra ocultar los detalles técnicos

de la virtualización mediante la encapsulación, para esto se crea un interfaz que

esconda la implementación mediante la combinación de recursos en locaciones

físicas diferentes, o por medio de la simplificación del sistema de control.

En una manera general la virtualización crea una capa de abstracción entre el

hardware de la máquina física y un sistema operativo virtual, esto logra que, aunque

físicamente se trate de un solo equipo, lógicamente se observen varios equipos. La

virtualización permite montar un sistema operativo virtual sobre una máquina física

anfitriona, es posible montar una gran diversidad de sistemas diferentes al mismo

tiempo, siendo el único limitante la capacidad de la máquina física. El sistema

operativo virtual, junto con el hardware que emplea recibe el nombre de máquina

virtual.

Figura 1.3 Representación de la virtualización en la que se encuentran muchas máquinas en un solo computador.

12

“Una máquina virtual (MV) es un duplicado de una máquina real, eficiente y aislado”5.

Esta definición de máquina virtual dice que: al ser un duplicado de una máquina real,

su comportamiento debe ser exactamente igual a una, considerando los recursos que

tenga asignados; al ser eficiente, su velocidad de ejecución debe de aproximarse a

una máquina física; y al ser aislada, todas las máquinas virtuales serán

independientes unas de otras, permitiéndose la ejecución simultánea. Se debe

destacar que aunque sean independientes todas aprovechan el hardware disponible

en la máquina anfitriona, además, los elementos principales de hardware de los que

necesita son solamente microprocesador, memoria RAM, disco y tarjeta de red.

Figura 1.4 Arquitectura de la virtualización

1.3. TIPOS DE VIRTUALIZACIÓN

En el presente trabajo de investigación se dará un énfasis mayor a la virtualización de

servidores y sus tipos; sin embargo como en la actualidad existen diversas formas de

virtualización, se ha creído pertinente dar un vistazo general a los diferentes tipos

existentes.

5 Gerald J. Popek and Robert P. Goldberg. Formal requirements for virtualizable third generation architectures. CACM, 17(7):413–421, 1974.

13

Las clases de virtualización pueden clasificarse de acuerdo a como se lleva a cabo su

proceso, es decir, que es lo que se busca simular para lograr el resultado deseado.

En el presente documento, para obtener una clasificación general se dividió a la

virtualización de acuerdo a si ésta se realizará para recursos específicos del sistema

computacional u orientada a la plataforma misma del sistema a través de máquinas

virtuales.

Es en este último tipo de virtualización donde la virtualización de servidores toma

lugar, tal como se verá posteriormente.

1.3.1. VIRTUALIZACIÓN DE RECURSOS

Este tipo de virtualización es aquel en el que el proceso de virtualización se da en

ciertos recursos específicos los que se emplearán para mejorar algunas

características determinadas de un sistema computacional. Así por ejemplo, es muy

común el hablar de la Virtualización de Almacenamiento, la cual es muy usada en las

Redes de Área de Almacenamiento (SAN6).

Este tipo de virtualización permite tanto agrupar diversos dispositivos de manera que

sean vistos por agentes externos como uno solo7, o dividir un recurso específico en

varios recursos del mismo tipo que se puedan considerar independientes8.

De acuerdo a los criterios presentados anteriormente, se puede hablar de diversos

tipos de virtualización de recursos, siendo los más importantes los que se presentan a

continuación.

1.3.1.1. Virtualización de Almacenamiento

La virtualización de almacenamiento es aquella que busca soluciones para brindar un

almacenamiento de alto rendimiento; para dicho fin se realiza una abstracción lógica

6 Storage Area Network.

7 Se generan los denominados clúster o grid, es decir que se combinan diversas computadoras para crear una supercomputadora.

8 Uno de los ejemplos más claros se da en la división del recurso Ancho de Banda.

14

del almacenamiento físico9. Este tipo de abstracción es altamente usado en las

Redes de Área de Almacenamiento (SAN) como método para distribuir la carga de

sus servidores. En este tipo de redes se extrae el concepto de almacenamiento de las

computadoras para añadirlo a la red en sí.

Para su funcionamiento se combinan discos físicos en las denominadas storage

pools10, el recurso de almacenamiento que contienen estas piscinas puede ser

dividido en volúmenes lógicos que se vendrían a comportar como particiones de

disco.

Con esto se logra que varios dispositivos de almacenamiento independientes

aparenten ante un usuario cliente como un único dispositivo con capacidad de ser

administrado localmente.

Se puede catalogar a la virtualización de almacenamiento en tres grupos, de acuerdo

al lugar exacto en que se realice la virtualización en sí, pudiendo ser: Virtualización

basada en el Dispositivo, Virtualización basada en la Red, y Virtualización basada en

el Host.

1.3.1.1.1. Virtualización basada en el Dispositivo

En este tipo, la virtualización se realiza en arreglos de dispositivos de

almacenamiento. Cada host dispone de un dispositivo virtual, el mismo que se

encuentra relacionado con una ubicación física dentro del arreglo de dispositivos de

almacenamiento.

1.3.1.1.2. Virtualización basada en la Red

En este tipo, la virtualización se realiza en la misma red, en la cual se emplean

switches inteligentes u otros equipos de virtualización. Esta categoría se emplea

9 Se separa el almacenamiento lógico del físico

10 Grupos de discos de almacenamiento a los que los clientes acceden para obtener información

15

principalmente para permitir la interacción de equipos de almacenamiento de distintas

casas comerciales que no puedan comunicarse entre sí de una manera directa.

1.3.1.1.3. Virtualización basada en el Host

En este tipo, la virtualización se realiza en el host (computador terminal del cliente).

Este computador tiene que disponer de cualquier tipo de software que permita el

virtualizar su almacenamiento tanto a través de la red como a través de los

dispositivos de almacenamiento. Esto brinda independencia de la red y de los

equipos.

1.3.1.2. Virtualización de Redes

La virtualización de redes permite la partición lógica o segmentación de una única red

física para usar los recursos de la red. Este tipo de virtualización trata a todos los

servicios en la red como un único grupo de recursos que pueden ser accedidos sin

considerar sus componentes físicos que la dan lugar.

Se pueden tener varios tipos de virtualización de redes entre los que se puede

mencionar principalmente: VLAN´s, VIP, VPN´s.

1.3.1.2.1. Virtual LAN (VLAN)

Este tipo de virtualización ha sido ratificado por la IEEE en su estándar 802.1Q. Su

funcionamiento consiste en un método para crear redes independientes a nivel lógico

mediante la compartición de la red a nivel físico. Su uso permite segmentar

lógicamente los dominios de broadcast controlando la interacción entre los

dispositivos de diferentes segmentos de red.

Brinda a los administradores de red la posibilidad de conectar múltiples dispositivos al

mismo switch pero posibilitando aislarlos unos de otros a través de la configuración

de segmentos de red mediante VLAN’s. Cada segmento utilizará una parte de los

recursos disponibles del switch (CPU, memoria, ancho de banda, etc.).

16

1.3.1.2.2. Virtual IP (VIP)

Virtual IP o IP Virtual constituye una dirección IP que no está conectada a un

computador específico o tarjeta de red (NIC) de un dispositivo.

Las VIPs son asignadas a dispositivos de red que se encuentran en el camino a

través del cual atraviesa el tráfico de la red. Todos los paquetes entrantes son

dirigidos a la IP Virtual pero luego redirigidos a la interface de red del dispositivo

receptor. VIP es usado frecuentemente en escenarios para brindar redundancia y

balanceo de carga donde múltiples sistemas están albergando una aplicación común.

Una dirección VIP podrá estar disponible aún si el equipo o NIC falla debido a que un

equipo alterno o NIC alterna responderá a las conexiones.

1.3.1.2.3. Virtual Private Network (VPN)

Una VPN constituye una red de comunicación privada usada para la transmisión de

datos de forma confidencial, íntegra, auténtica y segura sobre una red pública.

El tráfico VPN es a menudo transportado sobre un medio de red altamente inseguro,

como Internet, por lo que se crea un canal seguro para la información confidencial y

sensitiva a ser transmitida de un sitio a otro.

Para el establecimiento de la conexión, usualmente es necesario algún tipo de

software, sin embargo una vez establecida la conexión, la interacción con los

dispositivos del sistema privado es como si se la estuviera realizando

presencialmente sin requerir ninguna clase de modificaciones del sistema operativo

de la red.

1.3.2. VIRTUALIZACIÓN DE PLATAFORMA

Como se ha mencionado anteriormente, la virtualización puede ser clasificada de

acuerdo a si ésta se orienta a los recursos o la plataforma. La virtualización de

recursos como se ha podido explicar permite agrupar varios recursos para que éstos

17

sean vistos como uno solo, o al revés, dividir un recurso en múltiples recursos

independientes.

Por otra parte la virtualización de plataforma11, se encarga de brindar uno o más

entornos computacionales aproximadamente iguales al de una máquina real (servidor

o PC) con todos sus componentes necesarios: procesador, memoria, dispositivos de

entrada y salida, etc. (de acuerdo a lo que se requiera), y sobre la cual se puede

cargar un software, sistema operativo, aplicaciones, etc.

Así de esta manera, la tecnología de virtualización de plataforma permite a un equipo

computacional funcionar como si éste fuera dos o más plataformas independientes,

cada uno de manera “no física” es decir “virtualizada”. Estos entornos son más

comúnmente conocidos como máquinas virtuales o en inglés Virtual Machines (VM’s).

Para dar lugar al funcionamiento a ésta técnica, las características del hardware físico

deben ser recreadas a través del uso de software. Así cada uno de los entornos

virtuales es provisto de una arquitectura básica, la misma que un computador físico

genérico. Esto es logrado por una capa de software llamada capa de abstracción.

La Abstracción tanto en cuanto hace referencia a la virtualización, es la

representación de un set común de dispositivos hardware los cuales son enteramente

basados en software. Es decir, se trata básicamente de software que luce y actúa

como hardware. Así de esta manera, se permite la instalación de software en

hardware que realmente no existe, hardware que está virtualizado.

La virtualización de plataforma es aplicada en algunas líneas como virtualización de

aplicaciones, escritorio y la que compete en el presente trabajo de investigación: la

virtualización de servidores.

11 Una plataforma es precisamente el principio, en el cual se constituye un hardware, sobre el cual un software puede ejecutarse/desarrollarse.

18

1.3.2.1. Virtualización de Aplicaciones

La virtualización de aplicaciones es aquella que busca separar el entorno de

aplicación del sistema en sí. Para lograr esto, debe correr aplicaciones de servidor de

manera local, es decir que el equipo cliente empleará un sistema de virtualización

adecuado para ubicar aplicaciones y datos necesarios en lugar de realizar el proceso

de instalación tradicional en cada cliente. Con esto, cada equipo local empleará sus

propios recursos para correr una aplicación que no se encuentra propiamente

instalada en el cliente.

Para su funcionamiento las aplicaciones deben correr en un entorno virtual que actúe

como una capa entre la aplicación y el sistema operativo. Este entorno debe contener

todos los componentes necesarios para ejecutar la aplicación, por ejemplo entradas

de registros, archivos, objetos globales, entre otros.

En este tipo de virtualización las aplicaciones se consideran como servicios bajo

demanda que emplean los recursos del cliente sin estar instalados en el mismo y que

son independientes del sistema operativo en uso.

1.3.2.2. Virtualización de Escritorio

La virtualización de escritorio es aquella que permite la separación del medio de

procesamiento y almacenamiento local del escritorio del usuario y la máquina

personal que hace uso. Este tipo de virtualización da lugar a que el procesamiento y

almacenamiento de los datos del usuario se lo realice en un servidor central que

virtualiza su escritorio.

Mediante esta técnica de virtualización, el usuario utiliza en lugar de su PC de

escritorio, un thinclient12 constituido de monitor, teclado y mouse para su interacción

con el servidor. La experiencia obtenida por el usuario es orientada a que sea

12 Un thinclient es un dispositivo que depende primariamente del servidor central para las tareas de procesamiento, y principalmente se enfoca en transportar la entrada y la salida entre el usuario y el servidor remoto.

19

prácticamente la misma que si estuviera utilizando su computador personal estándar

pero desde un dispositivo thinclient o similar.

Es muy útil cuando las aplicaciones de usuario involucran tareas de contabilidad,

correo electrónico, procesadores de texto, y web browsers. Así de esta manera la

compañía puede ahorrar recursos en la provisión de computadores personales cada

vez más potentes y cuyo poder sería inutilizado en gran parte.

1.3.2.3. Virtualización de Equipos y Servidores

La virtualización de equipos y servidores es aquella que es capaz de correr una o

varias máquinas virtuales sobre una única pieza de hardware. Es decir que, en

términos generales, posibilita correr diversos equipos o servidores sobre un sistema

anfitrión.

La limitación del número de equipos virtuales que se pueden correr simultáneamente

viene dada por las capacidades de hardware y software del equipo anfitrión, se debe

considerar que cada máquina virtual es lógicamente independiente del resto y debe

acceder a una parte del hardware del equipo anfitrión.

Al ser independientes, estas máquinas virtuales pueden correr sus propios paquetes

de aplicaciones sobre un sistema operativo propio sin correr el riesgo de

incompatibilidades con los paquetes de aplicaciones o el sistema operativo

anfitriones.

Este tipo de virtualización es uno de los más importantes y usados, además de ser el

tipo de virtualización que se desarrollará en la presente tesis, esto es debido a que es

el único tipo de virtualización capaz de correr una máquina virtual completa que

pueda funcionar independientemente.

1.3.2.3.1. Arquitectura general

Para poder presentar la arquitectura de este entorno computacional virtualizado, se

presentará a continuación una comparación general de la organización básica de una

20

plataforma computacional física con la organización de un sistema computacional

corriendo una plataforma virtualizada.

La constitución de un computador típico hace referencia a un conjunto de hardware

(CPU, memoria, disco, dispositivos de red, etc.) sobre el cual es instalado un sistema

operativo (Windows®, GNU Linux, etc.) y una o más aplicaciones instaladas sobre

dicho sistema.

La figura 1.5 inferior hace referencia a lo mencionado:

Aplicaciones

de Software

Aplicaciones

de Software

Aplicaciones

de Software

Sistema Operativo

(Linux, Solaris, Windows, etc)

Hardware Físico

(CPU, Memoria, Discos, Red, etc)

Figura 1.5 Constitución básica de un computador típico. Fuente: Auerbach, Advanced Server Virtualization.

Por otro lado, dentro de un servidor o una PC que alberga una plataforma de

virtualización, la constitución del sistema es diferente. Así, en una primera

arquitectura virtualizada, el sistema operativo Host OS (que es instalado

directamente sobre el hardware real), posee una plataforma de virtualización

instalada; dentro de ésta una o más máquinas virtuales son creadas.

Cada máquina virtual actúa como un set separado de hardware y es capaz de tener

un sistema operativo -Guest OS- y aplicaciones instaladas en cada una de éstas de

manera independiente. La figura 1.6 hace referencia a lo mencionado.

Otro arreglo de un sistema computacional virtualizado es aquel en el cual la

plataforma de virtualización es instalada directamente sobre el hardware físico. Esta

forma de virtualización provee una plataforma sobre la cual una o más máquinas

21

virtuales pueden ser creadas, cada una capaz de tener su propio sistema operativo y

aplicaciones instaladas. Esta arquitectura es mostrada en la figura 1.7.

Máquina Virtual Máquina Virtual

Aplicaciones

de Software

Aplicaciones

de Software

Aplicaciones

de Software

Aplicaciones

de Software

Aplicaciones

de Software

Aplicaciones

de Software

Sistema Operativo

(Linux, Solaris, Windows, etc)

Sistema Operativo

(Linux, Solaris, Windows, etc)

Hardware Virtual Hardware Virtual

Capa de Virtualización

(Monitor de Máquina Virtual / Hypervisor)

Sistema Operativo

(Linux, Solaris, Windows, etc)

Hardware Físico

(CPU, Memoria, Discos, Red, etc)

Figura 1.6 Arquitectura 1 de una plataforma virtualizada. Fuente: Auerbach. Advanced. Server Virtualization.

Máquina Virtual Máquina Virtual

Aplicaciones

de Software

Aplicaciones

de Software

Aplicaciones

de Software

Aplicaciones

de Software

Aplicaciones

de Software

Aplicaciones

de Software

Sistema Operativo

(Linux, Solaris, Windows, etc)

Sistema Operativo

(Linux, Solaris, Windows, etc)

Hardware Virtual Hardware Virtual

Capa de Virtualización

(Monitor de Máquina Virtual / Hypervisor)

Hardware Físico

(CPU, Memoria, Discos, Red, etc)

Figura 1.7 Arquitectura 2 de una plataforma virtualizada. Fuente: Auerbach, Advanced Server Virtualization.

22

1.3.2.3.2. Virtual Machine (VM) o Máquina Virtual

Como se ha podido mencionar anteriormente, una parte constitutiva de la arquitectura

de virtualización de servidores es la llamada máquina virtual.

Una máquina virtual es un entorno lógico creado dentro de un entorno físico (equipo

computacional) provisto de hardware virtualizado -no real- necesario para permitir el

funcionamiento eficiente de software instalado sobre éste tal como lo haría sobre el

hardware real de un equipo físico.

El hardware virtual de una VM puede ser emulado e igual al hardware subyacente o

puede emular a hardware estándar para su funcionamiento. Así, estos entornos

computacionales –VM´s- cuentan con todos sus componentes necesarios

virtualizados: procesador, memoria, dispositivos de entrada y salida, etc. (de acuerdo

a lo que se requiera), y sobre la cual se puede cargar un software, sistema operativo,

aplicaciones, etc.

1.3.2.3.3. Hypervisor o Virtual Machine Monitor (VMM)

Otro componente fundamental de la arquitectura servidor virtualizado es una

plataforma de virtualización sobre la cual se proporciona funcionamiento total a las

máquinas virtuales; de una manera que el usuario pueda crear varias VM´s

presentando a cada una de ellas una interfaz del hardware que sea compatible con el

sistema operativo elegido. Este componente de abstracción es llamado Virtual

Machine Monitor (VMM) o hypervisor.

Existen dos clases de hypervisor; así se tiene: el que corre directamente sobre el

hardware físico de la máquina (figura 1.7) denominado tipo ‘Non hosted’ o de

traducción binaria, y el que corre sobre un sistema operativo anfitrión -Host OS-

(figura 1.6) denominado tipo ‘Hosted’.

Ambos tipos de hypervisor proveen dos funciones básicas. Primero, identifica

´traps´13, maneja, gestiona y distribuye dinámicamente CPU, memoria, red,

13 Instrucciones generadas por la máquina virtual para solicitar recursos del sistema. Ej.: System call, Memory access, Clock interrupt, etc.

23

almacenamiento y responde a operaciones de CPU protegidas o privilegiadas hechas

por cada máquina virtual. Segundo, maneja el encolamiento, scheduling14, y el

retorno de los resultados a las solicitudes hechas al hardware desde las VM´s. Es

decir, el VMM es la parte de ésta arquitectura de virtualización que se encarga de

manejar los recursos del sistema principal exportándolos a la máquina virtual.

1.3.2.3.4. Sistema Operativo Anfitrión (Host OS)

En la arquitectura de servidor virtualizado se puede encontrar directamente sobre el

hardware real un sistema operativo en el cual se da lugar a la instalación del

hypervisor tipo ‘Hosted’. Este sistema es llamado ‘Host OS‘ o sistema operativo

anfitrión y constituye el sistema operativo principal del servidor.

1.3.2.3.5. Sistema Operativo Visitante (Guest OS)

Otro elemento fundamental en la arquitectura de servidor virtualizado es el sistema

operativo de la máquina virtual. Las máquinas virtuales casi siempre albergarán una

instalación de un sistema operativo (GNU Linux, Windows®, etc.) y sobre éstos

aplicaciones. Estas instalaciones de sistema operativo son conocidas como Guest OS

(sistema operativo visitante).

1.3.2.3.6. Hardware Real o físico

Se tiene diferentes arquitecturas sobre las cuales se puede implementar servidores

virtualizados como por ejemplo arquitecturas x86, x86-64, PowerPC, MIPS, SPARC,

etc. Estas ofertas se las ha podido encontrar algunas variaciones, como soluciones

de sistemas especializados de alto rango, rango medio y de alto, mediano y bajo

costo.

Indudablemente el hardware x86 es el de menor costo, motivo por el cual se ha

tomado ventaja de ésta característica para el desarrollo tanto de hypervisors

14 Scheduling hace referencia a la manera como los procesos son asignados a correr en CPU disponible. Esta asignación es llevada a cabo por un scheduler.

24

específicos como de hardware especializado que permita dar a lugar a servidores

virtualizados de alto rendimiento y bajo costo sobre hardware x86.

Es así que Intel y AMD han desarrollado extensiones de virtualización para la

arquitectura x86; éstos son los procesadores Intel VT15 o Vanderpool y AMD-V16 o

Pacífica. Los procesadores mencionados permiten dar soporte a virtualización de

sistemas operativos no modificados (necesario en la paravirtualización), lo cual

amplía las soluciones de virtualización asistida por hardware.

El hardware real es fundamental en la determinación del hypervisor adecuado para

su virtualización; existen distintas distribuciones de hypervisor dependiendo de la

plataforma subyacente que se utilice. Así por ejemplo para el caso de la arquitectura

x86 se dispone de hypervisors como VMware (que puede correr sobre Windows®,

Linux, Bare Metal17), Hyper-V™ (que corre sobre Windows®) o Xen (que puede correr

sobre Linux, Bare Metal), etc.

1.3.2.3.7. Alternativas de Virtualización de Servidores (1) (2)

Existen diversas posibles implementaciones de virtualización de servidores,

pudiéndose clasificar en cuatro diferentes categorías claramente identificadas:

Virtualización de Sistema Operativo, Virtualización Nativa o Híbrida, Virtualización

Completa y Paravirtualización. Cada una de ellas con sus ventajas y desventajas

propias por lo que pueden resultar adecuadas o erróneas según la aplicación

requerida.

1.3.2.3.8. Virtualización de Sistema Operativo

Este tipo de virtualización realiza una virtualización completa al nivel del sistema

operativo, creando múltiples instancias del mismo. Cada instancia o entorno virtual

creado dispone de un ambiente propio con sus recursos de: memoria, CPU, ancho de

15 Revisar anexo A.

16 Revisar anexo A.

17 Hace referencia a que puede correr directamente sobre el hardware físico.

25

banda, entre otros, previamente asignados. Por este motivo las aplicaciones que

corran sobre una máquina virtual la considerarán como un sistema autónomo.

Tiende a ser muy eficiente, llegando a velocidades cercanas a la nativa, además sólo

se requiere de una única instalación de sistema operativo (en la máquina nativa) y es

compatible con todo el hardware que el sistema operativo anfitrión soporte.

Sin embargo el mismo kernel del sistema operativo de la máquina anfitriona es

empleado para cada máquina virtual. Esto quiere decir que el sistema operativo

anfitrión se “comparte” con las máquinas virtuales, cada una de las cuales tendrá su

propia copia del mismo. Por este motivo, la máquina virtual deberá tener el mismo

sistema operativo que la máquina anfitriona.

Este no es el único problema que hace que este tipo de virtualización no sea muy

usada. También se considera que la máquina virtual no queda tan aislada y segura

como en los otros tipos de virtualización, debido a que no se puede identificar

fácilmente las fuentes de cargas en los recursos, y que añade una sobrecarga y

complejidad por cuanto se emplea un sistema operativo completo en cada máquina

virtual en lugar de un micro-kernel18.

Como ejemplos de este tipo de virtualización se puede mencionar a Solaris

Conteiners para entornos Solaris, a Linux-VServer para entornos Linux, y a Virtuozzo

para entornos de Linux y Windows19.

1.3.2.3.9. Virtualización Completa

La virtualización completa es una de las técnicas de virtualización más usadas que se

caracteriza por brindar una simulación completa de todo el hardware disponible en el

equipo anfitrión. De esta forma se consigue que todo paquete de aplicaciones que

18 El término de Micro-kernel se refiere a una versión mínima de un kernel (núcleo) que brinda los mecanismos necesarios para la implementación de un sistema operativo como manejo de espacios de direccionamiento de nivel bajo, administración de hilos y comunicación entre procesos. Se suelen usar como Hypervisors

19 No se pueden correr ambos sistemas operativos, debe ser Linux sobre Linux o Windows sobre Windows

26

pueda correr en el hardware nativo, también podrá correr en sus máquinas virtuales;

además se logra que los sistemas operativos puedan ser instalados en las máquinas

virtuales sin modificación alguna, por esta razón se considera que posee el más

amplio rango de soporte para los sistemas operativos virtuales.

Este tipo de virtualización puede llegar a tener un rendimiento de CPU y memoria

cercana al del equipo nativo, además cada máquina virtual corre bajo su propio kernel

lo que aísla completamente cada máquina virtual del controlador de las mismas. En el

siguiente tema de este capítulo se tratará más a detalle las características y

arquitectura de la virtualización completa así como de la paravirtualización y

virtualización híbrida.

Como ejemplos de plataformas que dan lugar a este tipo de virtualización se puede

mencionar a VMware Workstation, VMware GSX server, Parallels Desktop, Virtual

Iron, Mac-on-Linux, Win4BSD, entre otros.

1.3.2.3.10. Paravirtualización

La paravirtualización es una técnica de virtualización que provee simulación parcial

del hardware subyacente. La mayoría, pero no todas, de las características son

simuladas.

Es capaz de proveer grandes mejoras en rendimiento referente a la virtualización de

servidores frente a otras soluciones de virtualización; para dar lugar a esta

característica, requiere de la modificación del o los sistemas operativos a correr sobre

el hypervisor.

Este hecho deja de lado al overhead asociado con la emulación requerida por otros

tipos de virtualización basados en hypervisor (como la virtualización completa) lo cual

optimiza su rendimiento.

Como ejemplo de plataformas que emplean paravirtualización tenemos a Xen®

(constituye su modelo principal aunque también emplea virtualización asistida por

hardware), VMware ESX®, VMware ESXi®, entre otros.

27

1.3.2.3.11. Virtualización Nativa o Virtualización Híbrida

Éste es el más reciente tipo de virtualización orientado a la virtualización de la

arquitectura x86. Es a menudo referido como virtualización ´híbrida´. Constituye una

combinación de la virtualización completa o de la paravirtualización en conjunto con

técnicas de aceleración de I/O y memoria20. Permite sacar ventaja de las últimas

tecnologías de la arquitectura x86, Intel VT y AMD-V diseñadas para virtualización

asistida por hardware.

Su funcionamiento es similar al de la virtualización completa, es así que los sistemas

operativos pueden ser instalados sin una modificación previa. Éste tipo de

virtualización maneja instrucciones ´no virtualizables´ por el uso de ´trap and-

emulate´21 en el hardware versus software.

La virtualización nativa emplea éstas técnicas de aceleración de I/O y memoria de

manera selectiva de acuerdo a la necesidad. Además soporta arquitectura de 64 bits

para ciertos sistemas operativos; tiene el mayor rendimiento de CPU, memoria, y I/O

de todos los tipos de virtualización x86.

Sin embargo requiere de una arquitectura de CPU capaz de soportar aceleración

asistida de hardware (Intel I/OAT). A esto se añade el requerimiento de modificar

algunos sistemas operativos para guest´s paravirtualizados, sin embargo en menor

número que con la paravirtualización pura.

20 Intel® I/O Acceleration Technology (Intel® I/OAT), es un componente de Intel® Virtualization Technology for Connectivity, el cual mejora el tráfico de datos a través de la plataforma para beneficiar el rendimiento del sistema.

21 Es el proceso por medio del cual el CPU es capaz de capturar (‘trap’) las instrucciones que varios sistemas operativos en máquinas virtuales deseen procesar (cada OS por naturaleza fue diseñado para tener control total del sistema), permitiendo al VMM emular (‘emulate’) el efecto que es deseado por el OS pero en forma que no interfiera con otro OS.

28

1.4. VIRTUALIZACIÓN DE SERVIDORES: VIRTUALIZACIÓN

COMPLETA, PARAVIRTUALIZACIÓN Y VIRTUALIZACIÓN

HÍBRIDA

El centro de datos actual, exige cada vez más la provisión de servidores optimizados

altamente confiables, seguros, disponibles, eficaces y eficientes y además que

permitan el ahorro de recursos como: equipos computacionales, cableado

estructurado, dispositivos de conectividad, equipos de refrigeración, energía, tiempo

de mantenimiento, personal de mantenimiento, etc. Es decir se busca obtener los

mayores resultados positivos con el menor número de recursos empleados lo cual se

traduce en mayores beneficios para las organizaciones.

La virtualización es una de las tecnologías actuales que permiten hacer más con

menos. En este caso en el campo de los servidores, la implementación de servidores

virtualizados en el centro de datos contribuye significativamente a dar lugar la

obtención de las premisas antes mencionadas.

Como se ha podido explicar en los temas anteriores del presente capítulo, la

virtualización de servidores forma parte de la virtualización de plataforma y existen

varias soluciones tecnológicas para su implementación, así tenemos las más usadas:

virtualización completa, paravirtualización y virtualización híbrida.

En el presente tema se enfocará con mayor detalle las características, ventajas y

desventajas de la utilización de cada uno de estos tipos de virtualización referentes a

la virtualización de servidores.

1.4.1. VIRTUALIZACIÓN COMPLETA

Como se mencionó en el capítulo anterior este tipo de virtualización se basa en la

simulación total del hardware del equipo anfitrión para brindarlo a sus máquinas

virtuales.

En la actualidad es uno de los tipos de virtualización más usados, principalmente

debido a que tiene un amplio rango de soporte de sistemas operativos y es la técnica

29

empleada por la empresa VMware que es la más representativa en los que a

virtualización se refiere.

1.4.1.1. Características

En el caso de la virtualización completa, se puede considerar que posee tres

características principales: el empleo de un Hypervisor, que cada máquina virtual

corre sobre su propio kernel, y que requiere de una simulación completa de todo el

hardware disponible en el sistema anfitrión.

1.4.1.1.1. Hypervisor

Tanto la virtualización completa como la paravirtualización hacen uso de esta

herramienta. Se trata de un monitor de máquina virtual (VMM22) que corre sobre el

hardware de la máquina anfitriona y actúa como capa intermedia entre la misma y las

máquinas virtuales.

Principalmente se define al hypervisor como el encargado de cumplir dos funciones

básicas. La primera consiste en identificar atrapar y responder a cualquier operación

privilegiada o protegida del CPU que sea hecha por alguna máquina virtual. La

segunda consiste en hacerse cargo de los procesos de encolamiento, despacho y

retorno de resultados de peticiones de hardware hechas por una máquina virtual.

Su hypervisor se diferencia del usado en la paravirtualización en que el de la

virtualización completa incluye cierto código para emular el hardware de la máquina

anfitriona en cuanto sea necesario. Esto permite el correr sistemas operativos sin

modificaciones sobre el hypervisor

1.4.1.1.2. Kernel de las Máquinas Virtuales

Al contrario de la virtualización de Sistema Operativo, la virtualización completa

brinda una especie de microkernel a cada una de sus máquinas virtuales. Esta

característica también es compartida por la paravirtualización, y permite brindar un

22 Por sus siglas en inglés: Virtual Machine Monitor

30

aislamiento total entre las máquinas virtuales y su VMM, es decir que cada máquina

virtual es capaz de correr un distinto sistema operativo, siendo el único limitante la

capacidad del hardware del equipo anfitrión.

1.4.1.1.3. Simulación Completa de todo el Hardware anfitrión

Esta es la característica que brinda la diferenciación con respecto a la

paravirtualización. La virtualización completa simula de una forma total el hardware

que dispone el equipo anfitrión. Esto hace que todo el software que puede correr

sobre el hardware anfitrión, podrá correr sobre las máquinas virtuales.

La unión de estas tres características hace que la virtualización completa sea el tipo

de virtualización con mayor soporte de sistemas operativos a instalarse en máquinas

virtuales y a que provea un rendimiento, tanto de memoria como de CPU, cercano al

de la máquina nativa. Sin embargo, se debe considerar que ciertas llamadas

privilegiadas del sistema operativo no pueden ser atrapadas, por lo que se requiere

de técnicas especiales de atrapado y emulación que pueden afectar el rendimiento

del sistema, además de requerir un balance adecuado entre los elementos de

hardware y software.

1.4.1.2. Arquitectura

En la arquitectura de la virtualización completa, el monitor de máquinas virtuales

(VMM) o hypervisor corre sobre el hardware de la máquina anfitriona, y cada máquina

virtual correrá directamente sobre dicho hypervisor.

Cada máquina virtual se encuentra formada por su sistema operativo propio, y las

aplicaciones que corren sobre este. Además, para la correcta administración de la

infraestructura virtual se añade un sistema operativo de administración que, al igual

que los de las máquinas virtuales, también corre sobre el hypervisor.

La arquitectura de este modelo de virtualización se detalla a continuación en la figura

1.8:

31

Figura 1.8 Arquitectura de la virtualización completa.

En la figura 1.9 se detalla un ejemplo del sistema de virtualización completo, en el

que se observa que sobre el hardware, con la ayuda del sistema de administración,

se desarrolla una infraestructura virtual con su sistema de almacenamiento,

servidores, redes, entre otros. Dicha infraestructura se encuentra dividida en las

distintas máquinas virtuales.

Figura 1.9 Infraestructura Virtual Completa.

Hardware

Hypervisor (VMM)

SO Virtual

(Sin Modificaciones)

Aplicaciones

SO Virtual

(Sin Modificaciones)

Aplicaciones

Interfaz de Administraci

ón

32

1.4.2. PARAVIRTUALIZACIÓN

Como se pudo mencionar en los temas previos, la paravirtualización es un tipo de

virtualización que permite correr múltiples sistemas operativos simultáneamente

sobre el mismo hardware; esta tarea la cumple mediante un uso más eficiente de los

recursos del sistema, tal como procesador y memoria a través de una compartición

efectiva de recursos.

La paravirtualización constituye una alternativa de virtualización de gran rendimiento

debido a que corre un pequeño y ligero Virtual Machine Monitor o hypervisor sobre el

hardware. Éste maneja todos los recursos de bajo nivel destinados para las máquinas

virtuales, y provee una interfaz para que las aplicaciones administrativas de nivel más

alto puedan realizar varias de sus tareas administrativas.

1.4.2.1. Características

Al contrario de la virtualización completa donde todo el sistema es emulado (BIOS,

disco, procesadores, NIC, etc.), en la paravirtualización solamente parte del hardware

subyacente es emulado. La abstracción creada con la paravirtualización

generalmente se traduce en que los sistemas operativos tendrán un mejor

desempeño que con un modelo de virtualización completa donde todos los elementos

deben ser emulados. Sin embargo, ésta eficiencia se obtiene a costa de flexibilidad y

seguridad.

La característica principal es el espacio de dirección de virtualización que es otorgado

a cada máquina virtual; teniendo su propio y único espacio de dirección.

Su implementación es más simple que con virtualización completa; sus Guest’s

paravirtualizados tienden a ser las máquinas virtuales de mayor rendimiento para red

y I/O de disco.

33

1.4.2.1.1. Modificación del Guest OS

La flexibilidad se pierde en la paravirtualización, debido a que el sistema operativo

que corre sobre una máquina virtual paravirtualizada requiere haber sido modificado

para poder trabajar con estas máquinas virtuales; esto significa que no todos los

sistemas operativos o distribuciones en particular pueden o no estar listas para ser

implementadas en esta solución.

La modificación del sistema operativo guest permite que éste pueda interactuar con el

hypervisor y así, las operaciones privilegiadas que el sistema operativo realizará en el

aro de protección 023 sean traducidos en ‘hypercalls’24 para el hypervisor.

Los cambios del sistema operativo, requerido para la interacción con el hypervisor, no

modifican la interfaz de aplicación binaria ABI25 (Application Binary Interface), y así

solamente el kernel y el código de nivel de kernel (tal como los drivers de

dispositivos) son los que requieren modificación para paravirtualización. Esto además

significa que las aplicaciones de usuario sobre el sistema operativo Guest no

requieren ser modificadas, lo cual es uno de los aspectos clave de un entorno de

virtualización.

1.4.2.1.2. Seguridad

En el campo de la seguridad, algo de ésta se pierde debido a que el sistema

operativo guest tiene mucho más control cercano del hardware subyacente;

23 Concepto usado en la arquitectura x86 para diferenciar los diferentes niveles de privilegios en cuanto al control de los recursos del sistema. El aro de protección 0 es el modo de ejecución en un procesador x86 en el cual se permite la ejecución de todas las instrucciones incluyendo instrucciones privilegiadas tal como de I/O y operaciones de manejo de memoria. Es en el aro 0 donde normalmente los sistemas operativos corren.

24 Constituyen un tipo especial de llamadas sincrónicas las cuales actúan como llamadas del sistema a pedidos de operaciones privilegiadas en el hypervisor.

25 ABI describe una interfaz de bajo nivel entre las aplicaciones y el sistema operativo. Abarca detalles como tamaño de los tipos de datos, convenciones de llamadas, llamadas de sistema, formato binario de archivos objeto, etc.

34

ligeramente se incrementa el riesgo de impactarlo y con ello el funcionamiento del

resto de sistemas Guest en el host.

1.4.2.1.3. Hypervisor

Con la paravirtualización se emplea el concepto de hypervisor o Virtual Machine

Monitor (VMM), el cual puede correr ya sea directamente sobre el hardware o sobre

un sistema operativo anfitrión. Sobre el hypervisor correrán las máquinas virtuales por

sí.

La característica de la VMM es brindar la capa de abstracción con el hardware y

también un sistema operativo de administración para que las máquinas virtuales

puedan comunicarse con el hypervisor; éste es usado para administrar las diferentes

instancias de VM´s.

El hypervisor es responsable del acceso directo al hardware del host físico anfitrión,

para el manejo de la memoria destinada y usada por cada dominio virtual.

Adicionalmente maneja los discos virtuales y el acceso a la red de todos los dominios

virtuales y del dominio de administración.

Entre las plataformas que emplean paravirtualización tenemos a Xen®, VMware

ESX®, etc.

1.4.2.1.4. Hypervisors de distintas plataformas

El hypervisor usado por VMware ESX® ejecuta el mismo set de instrucciones y

manejo que VMware Workstation (que emplea virtualización completa) pero provee

substancialmente mayor rendimiento debido a que corre a mucho más bajo nivel

cerca al hardware, evitando interactuar con procesos de nivel más alto.

Por otro lado, el hypervisor usado por Xen® es diferente. Éste requiere de la

modificación del sistema operativo guest. Las modificaciones del sistema operativo se

las realiza para impedir a instrucciones ´privilegiadas´ del sistema operativo, el uso de

un modelo de hardware abstracto que difiere del hardware específico que se

35

encuentra disponible en la máquina física, y las cuales pueden ejecutar con un nivel

inferior de privilegios que el hypervisor.

El hypervisor maneja la administración de memoria, manejadores de excepciones de

CPU, llamadas del sistema, interrupciones de hardware, timers, y todo el flujo de I/O

de los dispositivos.

1.4.2.2. Arquitectura

La arquitectura empleada por la paravirtualización puede ser basada en los dos tipos

de hypervisor conocidos: hosted y non hosted.

A continuación se presenta un ejemplo de arquitectura de paravirtualización en base

al hypervisor non hosted y comparándolo con la arquitectura de virtualización

completa.

La arquitectura mencionada se observa en la figura 1.10:

Figura 1.10 Virtualización completa contra arquitectura de paravirtualización. En ambos casos,

existe una capa de software denominada monitor del equipo virtual (VMM), que incluye un

planificador de equipo virtual y ofrece gestión general de memoria y virtualización de entrada y

salida. El modelo de paravirtualización incluye interfaces API que asisten al equipo virtual en

algunos casos. Fuente: Virtualización en el Centro de Datos, Informe Técnico, Novell Inc. ©, Pág.

4.

36

En esta arquitectura podemos observar al hypervisor corriendo directamente sobre el

hardware y sobre éste las máquinas virtuales.

Así como en el caso de la virtualización completa, en la paravirtualización se tiene un

sistema de administración de las máquinas virtuales (Dom 0 para Xen®), el cual corre

sobre el hypervisor como otra máquina virtual.

Ésta arquitectura se tratará con mayor detalle en el capítulo 3 del presente trabajo.

1.4.3. VIRTUALIZACIÓN HÍBRIDA

Como se mencionó en el punto 1.3.2.3.11., este tipo de virtualización es también

llamada nativa y se basa en una mezcla entre la virtualización completa y la

paravirtualización, empleando hardware especializado.

Este tipo de virtualización es considerado relativamente nuevo, apareciendo con los

nuevos avances de procesamiento que permiten brindar una aceleración asistida a la

virtualización clásica.

1.4.3.1. Características

La principal novedad en este tipo de virtualización son los requerimientos de

hardware que posee, es decir que, para lograr su implementación requiere de un

procesador adecuado diseñado específicamente para brindar una virtualización

asistida por hardware.

1.4.3.2. Hardware Especializado

Desde la aparición del primer chip x86, la capacidad de procesamiento para los

computadores ha estado en constante evolución y cada fabricante ha ido añadiendo

sus propias funciones características. Hoy en día tanto Intel como AMD, los más

grandes fabricantes, ya disponen de procesadores que incluyen grupos de

instrucciones para facilitar la virtualización x86. AMD desarrolló su procesador AMD-V

(antes conocido como Pacifica), mientras que Intel desarrolló su Virtualization

Technology (VT).

37

Con estas nuevas tecnologías se busca extender las instrucciones de la arquitectura

x86 para evitar los problemas de emulación de instrucciones. Para esto, el sistema

operativo virtualizado obtiene la autoridad que requiere para acceder directamente a

la plataforma sin compartir control del hardware, es decir que se añade un modo que

permite al sistema operativo un funcionamiento normal, mientras que las peticiones al

hardware pasarán al mismo directamente. Es decir que el hypervisor podrá atrapar y

emular las operaciones que antes hubieran fallado. Esto permitirá que las máquinas

virtuales tengan mayor capacidad y escalabilidad y dispongan de un soporte x64.

La aparición de estos procesadores permite el diseño de soluciones de virtualización

x86 más simplificadas, ya que la comunicación directa entre los sistemas operativos

virtuales y el hardware hace que las necesidades computacionales sean realizadas

por el hardware. Sin embargo se debe mencionar que este tipo de virtualización

requiere que los sistemas virtuales a instalarse sean modificados, aunque no en un

menor grado que para la paravirtualización

1.4.3.3. Arquitectura

La arquitectura que emplea la virtualización híbrida es la misma que la empleada en

la virtualización completa o en la paravirtualización. También se tiene el elemento del

hypervisor que corre sobre el sistema operativo nativo o directamente sobre el

hardware del equipo y las máquinas virtuales que se encuentran sobre el mismo.

Figura 1.11 Arquitectura de la Virtualización Híbrida.

Hardware

Hypervisor (VMM)

SO Virtual

(Sin Modificacion

es)

Aplicaciones

SO Virtual

(Sin Modificacion

es)

Aplicaciones

SO Virtual

(Sin Modificacion

es)

Aplicaciones

38

1.5. OPCIONES DE SOFTWARE PARA VIRTUALIZACIÓN

En la actualidad existen diversas casas fabricantes que brindan soluciones de

virtualización, cada una de las mismas disponen de sus paquetes de software

enfocados a un tipo de virtualización específica con sus respectivas ventajas y

desventajas. En este apartado se considerarán algunos de estos paquetes de

software más conocidos.

1.5.1. SOFTWARE DE VIRTUALIZACIÓN MÁS USADO

Se puede considerar que las soluciones de virtualización más usadas provienen de

tres fabricantes específicos: VMware®, Microsoft Hyper – V™ y Xen® (adquirido por

Citrix). De estos tres, tanto VMware como Microsoft emplean una virtualización

completa, mientras que Xen se enfoca en la paravirtualización.

Figura 1.12 Software de Virtualización más usado26

26 Datos tomados del paper “Unlocking Virtualization: Facing IT, Business Realities” de

InformationWeek Analytics, Noviembre de 2008

39

La figura 1.12 muestra los resultados de una encuesta realizada por InformationWeek

Analytics a varias empresas Norteamericanas. Se puede observar la alta penetración

en el mercado de los tres fabricantes mencionados. Esto se debe al renombre de sus

casas fabricantes y al alto desempeño que presentan los mismos. Se debe mencionar

que las empresas que respondieron son en su mayoría grandes por lo que se

evidencia la gran preferencia de herramientas propietarias27.

1.5.1.1. VMware®

VMware es uno de los mayores referentes en lo que a virtualización se refiere al ser

una de las compañías pioneras en el ofrecimiento de soluciones de virtualización.

Fundada en 1998 y con sede en Palo Alto, California, Estados Unidos, es

actualmente una filial de EMC Corporation que entregó su primer producto, VMware

Workstation para sistemas x86, en el año de 1999.

Figura 1.13 Logo de VMware.

El software de virtualización de VMware puede ser corrido sobre Microsoft Windows,

Linux y Mac OS X; además dispone de soluciones empresariales como VMware ESX

27 Las herramientas propietarias son las que no disponen de código abierto

40

Server el cual no requiere de ningún sistema operativo como base, ya que corre

directamente sobre el hardware de un servidor.

La empresa ha desarrollado un alto número de productos durante sus años de

operación, siendo algunos de ellos versiones gratuitas, con funcionalidades

limitadas28.

1.5.1.1.1. Virtualización de sistemas x86

Al haberse enfocado en la virtualización de sistemas x86, tratando de transformarlos

en “sistemas para uso general, en infraestructuras de hardware compartido que

ofrecen un aislamiento completo, movilidad y opciones de elección del sistema

operativo de los entornos de aplicación”29, VMware debió superar algunos problemas

a la virtualización x86 que se originan debido a que, a diferencia de los mainframes,

las máquinas x86 no fueron diseñadas para admitir la virtualización completa ofrecida

por VMware.

Para su correcto funcionamiento, los procesadores x86, emplean un conjunto de

instrucciones para cumplir las tareas encomendadas, de este conjunto de

instrucciones existen 17 que presentan problemas con la virtualización completa y

provocan diversos inconvenientes que pueden llegar a un fallo total de la aplicación.

Para solucionar este problema, VMware desarrolló una técnica de virtualización

adaptable que atrapa a estas 17 instrucciones en el momento de generación y las

convierte en otras que no traen problemas, mientras permite al resto de instrucciones

ejecutarse sin intervención.

Aunque esta técnica afecte al rendimiento del sistema, proporciona una máquina

virtual que se adapte al hardware del equipo anfitrión, permita la instalación de una

gran variedad de sistemas operativos y mantenga compatibilidad de software.

28 Ninguno de sus programas es Open Source (Código Abierto)

29 Tomado de: http://www.vmware.com/es/overview/history.html

41

1.5.1.1.2. Arquitectura

La arquitectura presentada por los diversos tipos de software de VMware

corresponde a la arquitectura de una virtualización completa presentada en el

apartado 1.4.1.2 del presente capítulo.

En el caso de VMware, el monitor de máquinas virtuales (VMM) se inserta en una

capa de software directamente en el hardware del ordenador o en el sistema

operativo host, dependiendo del tipo de producto VMware. Este hypervisor será el

encargado de asignar recursos de hardware, de forma dinámica y transparente, a las

diferentes máquinas virtuales posibilitando la ejecución simultánea de varios sistemas

operativos en un único ordenador físico.

Además de esta virtualización, VMware ofrece un alto grado de escalabilidad al

disponer de una sólida plataforma de virtualización que permite la ampliación de

ordenadores físicos virtualizados interconectados y dispositivos de almacenamiento lo

que permite formar una infraestructura virtual completa.

1.5.1.1.3. Productos

VMware presenta una gran cantidad de diversos productos, estos se suelen clasificar

de acuerdo a si su uso es para escritorio o servidor y según si son gratuitos o

pagados.

Los software de escritorio son soluciones de virtualización personales, aunque

muchas de estas soluciones sean adecuadas para un caso específico, no se han

diseñado para su uso en servidores por lo que no se recomiendan para el presente

caso de estudio enfocado en las PyMES. Los productos de escritorio de VMware son:

· VMware ThinApp (Thinstall), se trata de un producto de pago que se emplea

para la virtualización de aplicaciones.

· VMware ACE (Assured Computing Environment), se trata de un producto de

pago que se emplea para el desarrollo y distribución de escritorios virtuales

seguros a un grupo de clientes.

42

· VMware Fusion (para equipos Mac), se trata de un producto de pago, que se

encarga de brindar virtualización completa en equipos MAC.

· VMware Player, se trata de un producto gratuito que permite correr máquinas

virtuales generadas por otros productos de VMware.

· VMware View (VMware VDM), se trata de un producto de pago que permite

brindar una virtualización de escritorio.

· VMware Workstation, se trata de un producto de pago que permite realizar

virtualización completa. Es uno de los productos más empleados de VMware.

El software de servidores o productos de datacenter, es específicamente diseñado

para uso en todo tipo de empresas y sus datacenters. Los productos para servidores

de VMware son:

· VMware vSphere 4, es una solución pagada que emplea la virtualización para

transformar los centros de datos en infraestructuras de informática en nube

(cloud computing) extraordinariamente simplificadas.

· VMware Infrastructure 3, es una solución pagada que unifica recursos de

hardware para crear una plataforma dinámica compartida que brinde

disponibilidad, seguridad y escalabilidad a las aplicaciones.

· VMware ESXi (VMware ESX Server ESXi edition), se trata de la versión gratuita

de VMware ESX, brinda soluciones de virtualización completa.

· VMware Server (VMware GSX Server), es una plataforma de virtualización

gratuita que se instala como una aplicación en cualquier tipo de servidor físico y

lo particiona en varias máquinas virtuales.

· VMware vCenter Site Recovery Manager, es una solución pagada para

simplificar el proceso de recuperación de máquinas virtuales.

· VMware vCenter Lab Manager (VMware Lab Manager).

· VMware Capacity Planner, permite la planeación de capacidades de los

servidores para proceder a una virtualización adecuada.

· VMware vCenter Lifecycle Manager, es una solución pagada que permite la

administración y procesamiento automático de los ciclos de vida de las

máquinas virtuales.

· VMware vCenter Stage Manager (VMware Stage Manager).

43

· VMware vCenter Server Heartbeat, es una solución pagada que brinda alta

disponibilidad a VMware vCenter Server.

· VMware vCenter AppSpeed, solución pagada que permite medir el desempeño

antes y después de virtualizar una aplicación.

· VMware vCenter Update Manager (ESX Patch Management), solución de pago

que facilita la administración de VMware Sphere, facilita la búsqueda y

parchado de los host VMware ESX.

· VMware vCenter Server (VMware VirtualCenter), solución de pago que brinda

una plataforma escalable para la administración de la virtualización.

· VMware Data Recovery, brinda una solución de respaldos basados en disco.

· VMware vCenter Orchestrator, automatiza las tareas de VMware Sphere.

· VMware vCenter Converter (VMware Converter), automatiza y simplifica la

conversión de máquinas físicas a máquinas virtuales.

· VMware ESX (VMware ESX Server), se trata de un sistema complejo de

virtualización que forma parte de VMware Infrastructure. No requiere de un

sistema operativo base sobre el cual correr, ya que dispone de un kernel propio

dedicado al manejo y administración de máquinas virtuales.

Para su funcionamiento debe primero iniciar un kernel Linux, el cual se usa para

cargar una variedad de componentes de virtualización especializados incluyendo el

kernel de VMware llamado vmkernel. Entonces el kernel de Linux se convierte en la

primera máquina virtual y no puede ser terminada a menos que se apague el sistema

completo.

Figura 1.14 Arquitectura empleada por VMware ESX, la capa de virtualización no corre sobre un sistema operativo

44

El software se encuentra enfocado en la centralización y virtualización de servidores

con la cual tiene un gran desempeño, sin embargo no es compatible con ciertos

dispositivos de hardware doméstico. Su administración se realiza de modo remoto

mediante la instalación de un software en una máquina remota, que se conecta por

entorno web.

1.5.1.2. Microsoft® (4) (5)

Otro software que permite dar lugar a la virtualización de servidores es el introducido

por Microsoft® llamado Hyper-V™.

Figura 1.15 Logotipo de Windows Server® 2008 Hyper-V™. Fuente: www.microsoft.com

Hyper-V™ aprovecha los nuevos procesadores de 64 bits de la arquitectura x86

introducidos por Intel® (Intel VT) y AMD® (AMD –V) principalmente.

Su introducción al mercado es relativamente reciente siendo así que su versión

definitiva fue incluida en el nuevo sistema operativo de servidor Windows Server

2008® a fines de junio del 2008. Cabe indicar que existieron programas de

virtualización anteriores a Hyper-V™ como por ejemplo versiones beta de Hyper-V™

y versiones también de Microsoft® Virtual Server.

La forma de distribución del software de virtualización se ha dado principalmente

como una funcionalidad del sistema operativo de la edición x64 de Windows Server

2008 Enterprise, por lo cual su costo está incluido en el paquete.

Adicionalmente existe la posibilidad de descargar dicho software gratuitamente con

cualquier licencia de un producto de instalación de Microsoft® Windows® Server.

45

1.5.1.2.1. Características

Hyper-V™ de Microsoft así como sus versiones anteriores como Microsoft® Virtual

Server disfrutan de los mismos beneficios de los servidores virtuales asociados con

un ambiente stand-alone ESX.

Incorpora además una arquitectura de hypervisor basada en microkernel con una

mínima superficie de ataque y está disponible en el rol de Servidor Básico.

Posee herramientas de gestión integradas que permiten a los clientes disponer de un

conjunto unificado de herramientas para la gestión tanto de los recursos virtuales

como de los físicos.

Posee las siguientes características:

§ Migración rápida. Permite el traspaso de máquinas virtuales en ejecución desde

un host a otro con mínimas pérdidas de servicio.

§ Alta disponibilidad. Hyper-V™ beta incluye soporte para conectividad host-a-host

y permite organizar en clúster todas las máquinas virtuales que se ejecutan en un

host.

§ Backups en vivo, con VSS. Se incorpora soporte para los Servicios de Copia de

Volumen en Segundo Plano (Volume Shadow Copy Services, VSS) que permiten

realizar backups en vivo de las máquinas virtuales en ejecución por medio de

instantáneas de volumen.

§ Herramientas para VHD. Hyper-V™ incorpora soporte para herramientas para el

manejo de VHD, con las que puede compactar, expandir e inspeccionar el

contenido de HVDs creados con Hyper-V™.

§ Administración de VM. Facilita la importación o exportación de las configuraciones

de máquina virtual para hacer copia de seguridad y poder clonar las

características de las VM’s entre distintas máquinas host.

§ Componentes de integración de Linux. Disponibles para las ediciones x86 y x64

de SUSE Linux Enterprise Server 10 SP1. Estos componentes de integración

permiten aprovechar desde Linux compatible con Xen todas las ventajas de la

arquitectura VSP/VSC y obtener un mejor rendimiento.

46

§ Mejoras en el rendimiento. Hyper-V™ beta incluye distintas modificaciones para

mejorar su rendimiento.

§ Gestión remota. Permite la gestión remota y ofrece la opción de instalación de

Hyper-V™ basada únicamente en MMC para una gestión independiente de los

nodos.

§ Mejoras del soporte para SCSI Virtual. Soporte para un máximo de cuatro

controladoras SCSI virtuales por máquina virtual, permitiendo un soporte más

amplio de dispositivos de almacenamiento.

§ Soporte para tamaños de memoria mayores. Hyper-V™ beta puede direccionar

hasta 64 GB de memoria por máquina virtual.

§ Reset rápido. Hyper-V™ beta da la opción de reseteo rápido de checkboxes y

eliminación de las credenciales almacenadas que se hayan utilizado para

conectarse a las máquinas virtuales.

1.5.1.2.2. Arquitectura

Figura 1.16 Arquitectura de Windows Server® 2008 Hyper-V™. Fuente: Understanding

Microsoft Virtualization Solution, Pág. 29. Microsoft Corporation ©, 2009.

47

Como se puede ver en la figura anterior, Hyper-V™ consiste del componente

Hypervisor de Microsoft® el cual corre directamente sobre el hardware (haciendo uso

de virtualización asistida por hardware). El tipo de hypervisor Hyper-V es non hosted.

Sobre el hypervisor corre una partición30 primaria y una o más particiones hijas.

La partición padre es la encargada de controlar las otras particiones en las cuales

corren los entornos virtualizados. Esta partición inclusive es la dueña de los

dispositivos de hardware y manejo de recursos de las particiones hijas.

Una partición hija es cualquier partición que ha sido creada por la partición padre. Los

sistemas operativos Guest´s y sus respectivas aplicaciones corren en particiones

hijas.

Adicionalmente, sobre la partición padre debe correr una instalación de Windows

Server® 2008 como su sistema operativo.

Cada partición se comunica con el hypervisor mediante el uso de hypercalls, las

cuales como, ya se ha dicho anteriormente, son API´s (Application Programming

Interfaces)31 que los sistemas operativos pueden utilizar para dar lugar a

optimizaciones que provee el hypervisor.

1.5.1.3. Xen® Hypervisor (6)

Figura 1.17 Logotipo del hypervisor Xen®. Fuente: www.xen.org 30 Constituye una unidad aislada entre el hypervisor, direcciones de memoria física y procesos virtuales.

31 Una API constituye una interfaz de comunicación entre componentes de software. Son un grupo de llamadas a bibliotecas que ofrecen acceso a ciertos servicios desde los procesos proporcionando un conjunto de funciones de uso general. Representa un método para conseguir abstracción en la programación generalmente entre los niveles o capas inferiores y los superiores del software. Fuente: http://msdn.microsoft.com/es-es/library/172wfck9(VS.80).aspx

48

Fruto de un proyecto de investigación de la Universidad de Cambridge nace Xen® el

cual es considerado como el hypervisor estándar para virtualización de la industria

open source.

Xen® permite la ejecución de múltiples sistemas operativos sobre un único equipo

servidor y con altos niveles de rendimiento, cercanos al rendimiento nativo. Su

funcionamiento se basa en la paravirtualización.

1.5.1.3.1. Características

Xen® ofrece un conjunto de características de gran potencia, eficiencia y seguridad

para la virtualización de arquitecturas x86, x86_64, IA64, ARM entre otras.

Trabaja tanto en tecnologías de procesadores optimizados para virtualización (Intel

VT® o AMD-V®) como en aquellos chipsets que no.

Su funcionamiento se basa en la paravirtualización corriendo sistemas operativos

Guest modificados (XVM) así como sistemas operativos no modificados (HVM). Es

así que Xen® soporta un amplio rango de sistemas operativos Guest incluyendo

Windows®, Linux®, Solaris® y varias versiones de BSD, facilitando el cumplimiento

de varias necesidades actuales del nivel empresarial.

Entre sus características principales se incluyen:

§ Aprovisionamiento de máquinas virtuales de rendimiento cercano al hardware

nativo.

§ Migración en vivo (Live Migration) de máquinas virtuales en caliente entre

hosts físicos.

§ Soporte de hasta 32 CPU´s virtuales por máquina virtual Guest, mediante

VCPU hotplug (con IA 64 se soporta hasta 64 CPU´S virtuales por Guest VM).

§ Soporte de plataformas x86/32 con PAE, x86/64, y IA64.

§ Soporte de las tecnologías de virtualización de Intel® y AMD® para sistemas

operativos no modificados (incluyendo Microsoft® Windows®).

§ Excelente soporte de hardware, soportando así casi todos los drivers de Linux.

49

Entre sus distintas aplicaciones se incluyen la consolidación de servidores, desarrollo

de kernel, soporte de hardware para sistemas operativos tradicionales, independencia

de hardware, clúster computing y múltiples configuraciones de sistemas operativos

con propósitos de pruebas.

Adicionalmente, una característica importante de Xen® es su carácter open source y

de software libre. Su última versión puede ser descargada gratuitamente desde

xen.org. Así también Xen puede ser encontrado en versiones pagadas como

XenEnterprise que incluye varias herramientas de administración gráfica entre otros.

A éstas características se puede añadir el hecho que Xen® viene ya desde hace

algunas versiones como un componente incluido en varias distribuciones de Linux

como CentOS 5.2, Debian, Open SUSE, etc.

1.5.1.3.2. Arquitectura

Figura 1.18 Arquitectura Básica de Xen®. Fuente: Xen and the Art of Virtualization. Paul Barham, Boris Dragovic, Keir Fraser, Steven Hand, Tim Harris, Alex Ho, Rolf Neugebauery, Ian

Pratt, Andrew Wareld, University of Cambridge Computer Laboratory. Pág. 5.

50

En la figura anterior se puede observar una arquitectura básica del hypervisor Xen®.

Este sistema tiene varias capas; la capa más baja y de mayores privilegios es la capa

Xen por sí misma.

Sobre la capa Xen (hypervisor) se hospeda la capa de Guest OS los cuales son

ejecutados en una máquina virtual segura. Este entorno de máquina virtual se

denomina ‘domain’ en la terminología de Xen; así de esta manera se tiene que sobre

el hypervisor se ejecutan los domains: un domain 0 Guest que tiene funciones

especiales y uno o más domain U Guest que corresponden a las instalaciones de

Guest OS del sistema virtualizado.

Estos domains son administrados por Xen repartiendo el CPU entre las máquinas

virtuales; lográndose así un uso efectivo del o los CPU´s físicos disponibles. Cada

Guest OS (domain U Guest) maneja sus propias aplicaciones; este manejo incluye la

responsabilidad de planificar cada aplicación en función del tiempo destinado por Xen

a cada máquina virtual.

El primer domain, es el llamado domain 0, el cual es creado automáticamente cuando

el sistema es iniciado. Éste tiene privilegios especiales de administración del sistema

de virtualización. Es así que el domain 0 es el que “permite crear” a los otros

dominios y administra sus dispositivos virtuales. Éste, de igual manera, se encarga de

realizar tareas administrativas tal como la “suspensión”, “reinicialización” y migración

de el resto de máquinas virtuales.

Entre el domain 0, corre un proceso llamado xend, un demonio para administrar el

sistema. Xend es responsable del manejo de las máquinas virtuales así como de

proveer el acceso a sus consolas. Los comandos necesarios para la ejecución de

xend pueden ser enviados tanto a través de la línea de comandos como a través de

una interfaz HTTP.

Este tema se lo podrá encontrar con mayor profundidad en el capítulo 3 del presente

trabajo de investigación.

51

1.5.2. OTRAS OPCIONES DE SOFTWARE DE VIRTUALIZACIÓN

En adición al software de virtualización anterior se cuenta con otras alternativas

menos difundidas pero que es preciso mencionarlas.

1.5.2.1. KVM®

El software de virtualización Kernel-based Virtual Machine (KVM), brinda una solución

de virtualización completa para las distribuciones de Linux que corren en hardware

x86 con soporte para virtualización32.

Figura 1.19 Logo de KVM.

KVM es un software de código abierto que permite correr versiones sin modificar de

sistemas operativos Linux y Windows. Para su funcionamiento emplea un módulo de

kernel propio llamado kvm.ko, un módulo de procesador específico de acuerdo al

procesador empleado (para los procesadores Intel se emplea el kvm-intel.ko y para

los AMD el kvm-amd.ko) y finalmente un QEMU33 modificado.

En la actualidad KVM se ejecuta como un módulo de kernel, el componente KVM

para el mismo está incluido en Linux desde la versión 2.6.20, sin embargo las futuras

versiones emplearán llamadas al sistema que se integrarán directamente en el kernel.

Se espera mucho de este software de virtualización, siendo sus principales

características el ser de código abierto y el integrarse perfectamente con el kernel de

Linux, por lo que no se necesitan modificaciones en el mismo para correrlo. Sin

32 Los procesadores que soportan virtualización por hardware son las AMD-V o Intel VT los cuales deben tener habilitado la virtualización por hardware.

33 QEMU es un emulador de procesadores basado en la traducción dinámica de binarios

52

embargo aún existe una falta de soporte y su rendimiento, aunque resulta ser muy

bueno sigue siendo inferior al de otras herramientas como Xen34.

1.5.2.2. Microsoft Virtual PC®

Microsoft Virtual PC es un paquete de virtualización desarrollado para los sistemas

operativos de Microsoft Windows, aunque también dispone de una suite de emulación

para los Mac OS X que corren sobre sistemas basados en PowerPC35. Originalmente

el software fue escrito por Connectix, sin embargo fue adquirido por Microsoft quien

en Julio de 2006 sacó una versión de Windows gratuita y en Agosto del mismo año

anunció que no se desarrollará una versión para Mac con procesador Intel.

Actualmente, para la nueva versión de sistema operativo de Microsoft, Windows 7 se

cambiará el nombre del software a Windows Virtual PC.

Figura 1.20 Logo de Microsoft Virtual PC.

Para su funcionamiento Virtual PC virtualiza una PC estándar y su hardware

asociado, soportando la virtualización de sistemas operativos Windows, es posible

que pueda correr sistemas como Linux, sin embargo los mismos no son soportados

oficialmente. 34 Phoenix Media realizó comparaciones de desempeño entre las herramientas QEMU, KVM y Xen, estas se encuentran en la página http://www.phoronix.com/scan.php?page=article&item=623&num=3 y se observa que la herramienta con mayor desempeño es Xen

35 PowerPC (Power Performance Computing) es una arquitectura RISC creada en 1991 por AIM (Apple, IBM y Motorola)

53

Virtual PC basa su virtualización en la emulación del hardware, específicamente

emula una placa madre con un chipset Intel 440BX, una tarjeta de video SVGA VESA

Estándar S3 Trío32/64 con 8 MB de memoria VRAM, un chip de BIOS de American

Megatrends, una tarjeta de sonido SoundBlaster 16 y una tarjeta de red DEC 21140.

Además, para la versión de Mac OS emula un procesador Intel Pentium III (32-bit), en

cambio para la versión de Windows no emula el procesador sino que deja que el

mismo ejecute las instrucciones en el entorno emulado.

1.5.2.2.1. Windows Virtual PC

Se ha anunciado que Microsoft Virtual PC cambiará su nombre para el nuevo sistema

operativo Windows 7. El sucesor de Microsoft Virtual PC 2007 llevará por nombre

Windows Virtual PC. Esta nueva versión ya sacó su versión beta para pruebas a

finales de abril del presente año.

Esta versión sólo correrá sobre Windows 7 y necesita soporte a virtualización del

hardware36. La característica principal que tiene esta nueva versión es que permitirá

la ejecución transparente, esto permitirá a Windows 7 correr aplicaciones en modo

Windows XP directamente desde el escritorio, por lo que toda aplicación compatible

con Windows XP también lo será con Windows 7 y el usuario ni siquiera se enterará

de la virtualización de la aplicación.

Además de esta característica Windows Virtual PC tendrá soporte para USB, smart

cards y será multi-hilo, esto permitirá a cada máquina virtual corriendo

simultáneamente tener su propio hilo para dar una mayor estabilidad y rendimiento.

También se brindará una integración con el Explorador de Windows, lo cual permitirá

administrar rodas las máquinas virtuales desde una única carpeta del explorador

(%USER%\Virtual Machines).

36 Los procesadores que soportan virtualización por hardware son las AMD-V o Intel VT los cuales deben tener habilitado la virtualización por hardware.

54

1.5.2.2.2. Sistemas Operativos Soportados

Oficialmente, Virtual PC solo puede ser instalado en sistemas operativos Windows y,

de la misma forma, los sistemas operativos virtuales que soporta también son

limitados.

Virtual PC 2007 soporta los siguientes sistemas operativos como huésped:

§ Windows Server 2008 (Todas las ediciones de 32-bits)

§ Windows Vista37 (Todas las ediciones de 32-bits)

§ Windows XP (Todas las ediciones de 32-bits)

§ Windows Server 2003 (Todas las ediciones de 32-bits)

§ Windows 2000 (Todas las ediciones)

§ Windows 98 Segunda Edición

§ Windows NT Server 4.0 (Todas las ediciones)

§ IBM OS/2 Warp

Además Virtual PC 2007 es compatible, pero no tiene soporte a los siguientes

sistemas operativos:

§ Windows 98 Versión original

§ Windows 95 (Todas las ediciones)

§ Windows Me

§ Windows NT 4.0 Workstation

§ Windows 3.1

§ MS-DOS 6.22

37 En el caso de correr Windows Vista como sistema operativo huésped en Virtual PC 2007, se deshabilita el tema gráfico aero debido a las limitaciones de la tarjeta emulada de los gráficos S3. Sin embargo, El tema aero puede ser ejecutado mediante una conexión con una máquina física, que soporte el tema, mediante escritorio remoto.

55

1.5.2.2.3. Sistemas Operativos Linux como Huésped

Aunque oficialmente Virtual PC no soporte a Linux como huésped, es posible realizar

esta instalación, aunque no de una manera transparente. Esto se debe a que

Microsoft Virtual Server soporta aditamentos para Linux, los cuales deberían trabajar

también con Virtual PC.

Sin embargo se debe tomar en cuenta algunos parámetros, por ejemplo que ciertas

distribuciones de Linux con gráficos de 24 bits deben de ser instaladas en modo de

texto debido a que Microsoft Virtual PC sólo emula gráficos de 16 o 32 bits. Entonces,

para correr una interfaz gráfica se debe especificar el uso de colores de 16 bits en el

archivo de configuración xorg.conf del sistema operativo virtual.

Las diferentes distribuciones de Linux pueden tener sus propios inconvenientes para

correr sobre Virtual PC sin embargo existe una gran cantidad de páginas web

dedicadas a brindar soporte para estas instalaciones ya que no existe tal por parte de

Microsoft.

56

CAPÍTULO DOS

2. ANÁLISIS DE LOS REQUERIMIENTOS

TECNOLÓGICOS DE LAS PyMES Y LA

APLICABILIDAD DE LA ARQUITECTURA

SERVIDOR VIRTUALIZADO PARA FACILITAR SU

OPERACIÓN.

57

2.1. FUNDAMENTOS GENERALES DE LAS PyMES

Dentro del amplio ámbito productivo empresarial, la clasificación de las empresas que

lo conforman puede hacerse de acuerdo a su tamaño. Esta clasificación vincula a

factores como por ejemplo el número de empleados, la cantidad de ganancias

obtenidas, el volumen de producción, etc. Tomando en cuenta estos parámetros ya

sean en conjunto o de manera individual, las empresas pueden clasificarse en:

grandes, medianas, pequeñas y microempresas.

En este ámbito tratado, surge una especial atención por aquellas empresas con

grandes posibilidades de crecimiento y expansión pero que debido a sus limitaciones

ocupacionales, financieras o ambas requieren de un mayor apoyo económico-

financiero, organizativo, administrativo, de educación y capacitación, y tecnológico,

etc. Estas empresas son las denominadas como PyMES por su acrónimo de

pequeñas y medianas.

El panorama socio económico del Ecuador actual, está caracterizado, entre varios

factores por la tendencia hacia la globalización de mercados, una balanza comercial

en déficit, una economía transitoriamente sostenida por los recursos petroleros y las

remesas de los inmigrantes, y tradicionalmente por el sector agropecuario. En esta

estructura económica, más del 90% de las empresas son pequeñas y medianas

(PyMES) las cuales aportan aproximadamente un 25% de la economía nacional38.

A esta situación se suma el hecho de que en el ámbito internacional los países y las

empresas exitosas son aquellas que basan su ventaja competitiva en factores

innovadores y tecnológicos, que cuentan con un recurso humano capacitado y que

realizan inversiones en investigación y desarrollo con carácter de largo plazo. Estas

condiciones limitan el accionar de las PyMES en Ecuador debido a la carencia de

recursos pero que al mismo tiempo las impulsa a encontrarse en una etapa evolutiva

de desarrollo económico; para ello necesitan alcanzar altos niveles de competitividad

y productividad.

38Fuente: Fomento a las PyMES y al emprendimiento, http://www.conesup.net/propasamblea/MpTOFu_FOMENTO%20A%20LAS%20%20PYMES%20Y%20AL%20%20%20EMPRENDIMIENTO.doc.

58

Es ahí, en la productividad y competitividad, donde la introducción de las Tecnologías

de Información y Comunicación (TIC´s) cumple un papel decisivo en el cumplimiento

eficiente de la naturaleza del negocio y con ello el objetivo de desarrollo de las

PyMES.

Así, la implementación de canales de información y comunicación tanto internos

como externos dan una ayuda fundamental para el mejoramiento de procesos

administrativos, productivos, comerciales, de extensión y crecimiento, etc.

Lamentablemente y debido a la naturaleza inicial tanto económica como organizativa

y administrativa de las PyMES, el acceso a las TIC´s no es una realidad generalizada

para la mayoría de éstas, situación que se ve acentuada en nuestro país39.

Estos hechos justifican la implantación de una Política de Estado que brinde mayor

apoyo a las PyMES tendientes a alcanzar objetivos de innovación, desarrollo de

tecnología y emprendimiento mediante la masificación del acceso al uso de nuevas

tecnologías, las TIC´s y redes digitales.

En tal virtud es imprescindible vincular fuertemente a las pequeñas y medianas

empresas con un ambiente organizativo en el que el uso de Internet, correo

electrónico, comercio electrónico, etc. sea un hecho cotidiano que aporte a una mejor

gestión de su organización productiva.

Es así que la introducción de una solución económica, de fácil uso y mantenimiento

(pues por añadidura no se cuenta con personal de TI fijo) y por tanto confiable,

segura, y eficaz que permita a las PyMES acceder a las Tecnologías de la

Información y Comunicación, constituye un factor preponderante a ser implementado

en el camino para conseguir su desarrollo y además como estrategia de

supervivencia comercial.

Es aquí donde los servidores virtualizados toman parte en la escena de las PyMES

ofreciendo un entorno de TI ajustado con mayor precisión a las necesidades

organizacionales y contribuyendo así a la constitución de un centro de datos más 39 Referirse al anexo B: Estado de las Tic´s en Ecuador.

59

eficiente, manejable, confiable, seguro, disponible y de menor costo que facilitará la

operación de estas empresas.

2.2. CONCEPTO (7) (8) (9)

En Ecuador, no hay una definición exacta ni exclusiva de lo que es una PYME, sin

embargo se cuenta con ciertos parámetros que permiten determinarla.

§ Número Personal que labora.

§ Ventas netas anuales e impuestos externos.

Así de acuerdo a su tamaño, las empresas tienen las categorías siguientes:

§ Microempresas: emplean hasta 10 trabajadores, y su capital fijo (descontado

edificios y terrenos) puede ir hasta 20 mil dólares.

§ Talleres artesanales: se caracterizan por tener una labor manual, con no más

de 20 operarios y un capital fijo de 27 mil dólares.

§ Pequeñas empresas: pueden tener hasta 50 trabajadores.

§ Medianas empresas: albergan de 50 a 99 trabajadores, y el capital fijo no debe

sobrepasar de 120 mil dólares.

§ Grandes Empresas: son aquellas que tienen más de 100 trabajadores y 120

mil dólares en activos fijos.

Categoría De Empresas

Valor De Activos No. De Trabajadores

Microempresa Hasta 20 mil dólares Hasta 10 Pequeña Hasta 60 mil dólares Entre 11 y 50 Mediana Hasta 120 mil dólares Entre 50 y 99

Tabla 2.1 Clasificación de las MiPyMES Ecuador. Fuente: Asociación Latinoamericana de Integración ALADI.40

Éste concepto puede ser reforzado con la definición de PyMES en otros países de la

región y del resto del mundo:

40 Fuente: http://www.aladi.org/nsfaladi/reuniones.nsf/dab401eea2e85cea03256ac6004de835/5a4879fcc06d040b03256ac6004e0a11/$FILE/ecuador.doc.

60

Colombia: “Se entiende por pequeña y mediana empresa (Artículo 2, Ley 905 de

2004), toda unidad de explotación económica, realizada por persona natural o

jurídica, en actividades empresariales, agropecuarias, industriales, comerciales o de

servicios, rural o urbana, que responda a dos (2) de los siguientes parámetros:

§ Mediana empresa: a) Planta de personal entre cincuenta y uno (51) y

doscientos (200) trabajadores, o, b) Activos totales por valor entre cinco mil

uno (5.001) a treinta mil (30.000) salarios mínimos mensuales legales

vigentes.

§ Pequeña empresa: a) Planta de personal entre once (11) y cincuenta (50)

trabajadores, o b) Activos totales por valor entre quinientos uno (501) y menos

de cinco mil (5.000) salarios mínimos mensuales legales vigentes.”41

Categoría De Empresas

Valor De Activos No. De Trabajadores

Microempresa Hasta 500 smlmv42 equivalentes a $204.000.000

Hasta 10

Pequeña Entre 501 y 5000 smlmv equivalentes a $204.408.000 y $2040.000.000

Entre 11 y 50

Mediana Entre 5001 y 30.000 equivalentes a $2040.408.000 y 12.240.000.000

Entre 51 y 200

Tabla 2.2 Clasificación de las MiPyMES Colombia. Fuente: Ley 905 de 2004 http://www.miPyMES.gov.co/microempresario/newsdetail.asp?id=86&idcompany=45

Mercosur: “…se determina la categorización de las PyMES que regirá en Argentina,

Brasil, Paraguay y Uruguay (…) en tal sentido se acordó la determinación de un

coeficiente de tamaño según la siguiente fórmula:

41 Fuente: http://www.miPyMES.gov.co/PyME/newsdetail.asp?id=225&idcompany=43

42 Termino usado en Colombia para referirse a Salarios Mínimos Legales Mensuales Vigentes

61

Donde:

§ P cantidad de empleados de la empresa.

§ Pref cantidad de empleados de referencia.

§ V ventas de la empresa en dólares estadounidenses.

§ Vref ventas de referencia en dólares estadounidenses.

Este coeficiente, establecido a partir de una definición de los límites máximos de

número de empleados y facturación anual se debe adecuar a la realidad empresarial

de cada uno de los países miembros y a las necesidades del MERCOSUR, tomando

en cuenta los siguientes valores definidos en diciembre de 1992: ”43

Tipo de empresa Pref Vref (en dólares) Coef. de tamaño

Microempresa hasta 20 hasta 400.000 hasta 0,52

Pequeña Empresa hasta 100 hasta 2.000.000 hasta 2,58

Mediana Empresa hasta 300 hasta 10.000.000 hasta 10

Tabla 2.3 Clasificación de las PyMES Mercosur. Fuente: http://www.rau.edu.uy/mercosur/faq/pre24.merco.htm

Unión Europea: Según la Recomendación de la Comisión Europea de la Unión

Europea “(…) se define a una mediana empresa como una empresa que ocupa a

menos de 250 personas y cuyo volumen de negocios anual no excede de 50 millones

de euros o cuyo balance general anual no excede de 43 millones de euros y (…) se

define a una pequeña empresa como una empresa que ocupa a menos de 50

personas y cuyo volumen de negocios anual o cuyo balance general anual no supera

los 10 millones de euros”44

43 Fuente: http://www.rau.edu.uy/mercosur/faq/pre24.merco.htm

44 Fuente:http://europa.eu/legislation_summaries/enterprise/business_environment/n26026_es.htm

62

Tipo de empresa Empleados Facturación (Millones de €)

Total de Balance (Millones de €)

Microempresa < 10 y ≤ 2 o ≤ 2

Pequeña empresa < 50 y ≤ 10 o ≤ 10

Media empresa < 250 y ≤ 50 o ≤ 43

Tabla 2.4 Clasificación de las PyMES Unión Europea. Fuente: http://europa.eu/legislation_summaries/enterprise/business_environment/n26026_es.htm

Es así que se puede inferir el siguiente concepto que se hará uso en el presente

trabajo de investigación:

Son pequeñas y medianas empresas (PyMES) aquellas unidades productivas con un

número de trabajadores comprendido de 11 a 50 y de 51 a 300 respectivamente y

cuyo capital fijo no sobrepase los 120 mil dólares.45

2.3. SITUACIÓN ACTUAL DE LAS TIC´S EN LAS PyMES

ECUATORIANAS

Como ya se ha podido mencionar, la adopción de las Tecnologías de Información y

Comunicación (TIC´s46) constituye una parte fundamental como factor de progreso

para las PyMES. Este hecho constituye una realidad que ha sido respaldada por

varios estudios internacionales.

45 Para esta definición se ha precisado el número máximo de trabajadores a fin de satisfacer el caso crítico de aplicación.

46 Se define como TIC´s o tecnologías de la información y comunicación al conjunto de técnicas, desarrollos y dispositivos avanzados que integran funcionalidades de almacenamiento, procesamiento y transmisión de datos. Tienen como fin la mejora de la calidad de vida de las personas dentro de un entorno, y que se integran a un sistema de información interconectado y complementario. Algunas finalidades concretas son por ejemplo: formación educativa, organización y gestión empresarial, toma de decisiones, etc. Fuente: Las Tic y sus aportaciones a la sociedad: http://www.pangea.org/peremarques/tic.htm.

63

Así por ejemplo en un esfuerzo combinado por Dinamarca, Irlanda y Grecia47 se

condujo un estudio sobre las razones por los cuales las TIC deben ser adoptadas en

las PyMES (Small and Medium Enterpises SME en inglés) concluyéndose que éstas

son48:

§ Incremento de la productividad (Increased productivity).

§ Modernización y orden de los procedimientos de trabajo (Streamlining work

procedures).

§ Mejorada atención y servicio al cliente (Better client service).

§ Mejor mantenimiento de la información (Record keeping).

Estos factores se ven complementados en otro estudio49 donde se añade que la

adopción de las TIC´s en las PyMES permiten: “hacer lo correcto”, “hacerlo correcto”

y “mejorar los aspectos fundamentales de la empresa” (“doing the right thing,” “doing

things right,” and “improving the bottom line”.)56

Figura 2.1 Criterios para la adopción de las TIC`s en las PyMES. Fuente: E-commerce in Regional Small to Medium Enterprises. Pág. 11

Considerando estos factores que demuestran la importancia de la adopción de las

tecnologías de información y comunicación en las PyMES, la situación actual

ecuatoriana no muestra una adopción mayoritaria de las TIC´s.

Estos hechos se muestran con una serie de datos presentados a continuación gracias

al apoyo de la CAPEIPI, MIPRO, CORPEI, CONQUITO, entre otros entes del sector

productivo.

47 Estudio conducido por Neergaard a inicios de los 90´s.

48 Fuente: MacGregor & Vrazal c, E-commerce in Regional Small to Medium Enterprises Pág 11.

49 Estudio conducido por Fink y Tjarka et al. (1994).

64

2.3.1. ESTADÍSTICAS DE LAS TIC´s EN LAS PyMES ECUATORIANAS

Según datos recogidos por el estudio de investigación INFOPYME50, las estadísticas

de las TIC´s en las PyMES son las siguientes:

§ Número promedio de computadoras en las PyMES: 2 a 15.

§ Uso del computador en las empresas: 80%.

§ Presupuesto aproximado de cada empresa para uso de TIC´s: 10%.

§ Presupuesto para investigación de TIC´s en las PyMES: 0.5%.

§ Número de Server´s51 en las PyMES: 15.

§ Conexión a Internet en las PyMES: 40%.

§ Software de seguridad en las PyMES: 20%.

§ Licenciamiento en las PyMES: 2%.

§ Hardware de última generación: 50%.

§ Portales Web: 20%.

§ ERP52: 0.5%.

§ CRM53: 0.5%.

§ Correo electrónico propio: 25%.

§ Uso de las TIC´s en procesos de producción: 5% - 10% empírico.

Así mismo un estudio realizado por la Corporación de Promoción de las

Exportaciones y la Inversión (CORPEI) y la Consultora RGX a 530 empresas de

Ecuador, Argentina, Chile, Colombia, Costa Rica, México, Perú, Paraguay, Panamá y

Venezuela concluye que “(…) las PyMES dependen de las TIC para fortalecer sus

50 Estudio realizado por la Cámara de la Pequeña Industria de Pichincha (CAPEIPI) a 3000 PyMES por el Ing. Christian Villarroel, M.Sc (2008).

51 Número total de servidores de entre el todo de las 3000 empresas estudiadas.

52 ERP, Enterprise Resource Planning, son sistemas de gestión de información que integran y

automatizan muchas de las prácticas de negocio asociadas con los aspectos operativos o productivos de una empresa: Fuente: es.wikipedia.org/wiki/Planificaci%C3%B3n_de_recursos_empresariales

53 CRM, es parte de una estrategia de negocio centrada en el cliente; su idea es recopilar la mayor cantidad de información posible sobre los clientes, para poder dar valor a la oferta: Fuente: http://es.wikipedia.org/wiki/Customer_relationship_management

65

exportaciones (…)”. Sin embargo, el estudio muestra que, en el Ecuador, solo el 30%

de las Pequeñas y Medianas Empresas (PyMES) utiliza las ventajas tecnológicas de

información y comunicación (TIC), cifra muy baja en relación al 50% registrado en

otros países de América Latina.

Incluso, de acuerdo a los datos obtenidos del estudio, el 100% de las PyMES

ecuatorianas encuestadas, que utilizan las TIC, afirman que estas tuvieron un

impacto positivo en su crecimiento empresarial. Por otra parte “las 530 PyMES

exportadoras en Iberoamérica que no realizaron este proceso en los dos últimos

años, tienen resultados nefastos, pero la aplicación de las TIC les está ayudando a

progresar”54.

A todo esto se suma el hecho que Ecuador ocupa el puesto 116 de entre 134 países

analizados por el uso e introducción de las Tecnologías de Información y

Comunicación (TIC). Así lo confirma el Networked Readiness Index 2008–2009,55

indicador que mide la adopción tecnológica de las economías a escala mundial.

Estos datos muestran una gran deficiencia en la adopción de TIC´s en las PyMES

ecuatorianas, impidiendo alcanzar los beneficios mencionados en el apartado 2.3 del

presente proyecto. Esta situación ha influido indudablemente en los índices de

competitividad, productividad, innovación, desarrollo de tecnología y

emprendimiento de las PyMES, hecho que se refleja en una participación en el PIB

insignificante siendo el promedio de ésta en 9,28%56.

En el cuadro posterior se observa la participación por cada año del sector industrial

de la economía ecuatoriana demostrando la fragilidad y poca planificación de las

empresas.

54 Fuente: José Manuel Parceiro, director del proyecto RGX-CORPEI “La innovación como motor para el desarrollo competitivo exportador de las PyMES”.

55 Fuente: www.hoy.com.ec. Publicado el 08/Abril/2009

56 Fuente: Proyecto INFOPYME 2008, Cámara de la Pequeña Industria de Pichincha (CAPEIPI), Ing. Christian Villarroel, M.Sc (2008) Pág. 2.

66

Actividad

2002 2003 2004 2005 2006 2007 2008

INDUSTRIAS 2593049 2734904 2881168 3295962 3725253 4062621 4445226

PIB 24899481 28635909 32642225 37186942 41401844 44489915 48507688

% PARTICIP. 10,41% 9,55% 8,83% 8,86% 9,00% 9,13% 9,16%

Tabla 2.5 Participación de las PyMES en el PIB. Fuente: Cámara de la Pequeña Industria de Pichincha, Proyecto INFOPYME 2008, Resumen Ejecutivo Pág. 2.

De los datos obtenidos se puede concluir lo siguiente:

§ El acceso a las tecnologías de información (TIC´s) en las PyMES de

Ecuador es en un porcentaje del 30%, inferior al resto de países de la

región (50%), hecho que se ve reflejado en la balanza comercial negativa.

§ La relación de las PyMES con la innovación e investigación y las

universidades es insuficiente por lo que sus procesos administrativos,

productivos, logísticos, etc. permanecen sin mayor cambio que les

posibilite su desarrollo.

§ Las fuentes de financiamiento para el acceso a las TIC´s es un factor que

influye en la adopción de éstas.

§ No existe suficiente personal capacitado en las PyMES para el manejo y

administración de las TIC´s.

§ El licenciamiento (software) en las PyMES es sumamente reducido,

mayormente por sus limitaciones económicas.

§ Se desconoce las ventajas que aportan las TIC´s como Internet, correo

electrónico, comercio electrónico, portales Web, herramientas de ERP y

CRM en los procesos administrativos, comerciales, logísticos y por ende

productivos de las PyMES.

§ Las exportaciones de las PyMES se ven limitadas por su baja adopción de

las TIC´s, las cuales las relaciona con un mundo comercial globalizado.

67

Esta serie de estadísticas presentadas permiten plantear un inminente acceso de las

PyMES a las TIC´s; la mayor penetración de las tecnologías de la información y

comunicación permitirá fomentar su desarrollo comercial.

Para tal efecto es necesaria la introducción de una solución tecnológica que permita

satisfacer las necesidades de información y comunicación de las PyMES, de manera

económica, eficiente, segura, simple, de fácil mantenimiento, entre otras

características.

Es así que en el presente proyecto se plantea a los servidores virtuales como medios

de introducción de las TIC´s en las PyMES y al que se suman los factores adicionales

característicos de la virtualización como ventajas adicionales en su camino para la

adopción en las pequeñas y medianas empresas.

2.3.2. SOLUCIONES Y REQUERIMIENTOS TECNOLÓGICOS

ACTUALES PARA LAS PyMES ECUATORIANAS (10) (11)

Estos hechos presentados en el apartado anterior muestran un claro grado inferior de

adopción de las TIC´s en Ecuador por parte de las PyMES. Los motivos son varios

entre los que se puede recalcar entre otros:

§ Retraso tecnológico.

§ Falta de formación e información de nuevas tecnologías.

§ Falta de difusión de los beneficios de las TIC´s para las PyMES.

§ Falta de asesoramiento tecnológico.

§ Costo de las soluciones tecnológicas para TIC´s, etc.

Ante esta situación, diferentes organismos ecuatorianos como la Cámara de la

Pequeña Industria de Pichincha (CAPEIPI) en su Plan 2010, se ha trazado una serie

de lineamientos y estrategias para incrementar el grado de adopción de las TIC´s en

las PyMES ecuatorianas en los siguientes parámetros57.

57 Datos proporcionados por el Ing. Christian Villarroel, proyecto INFOPYME 2008, CAPEIPI.

68

§ Al final del periodo de ejecución del Plan (2010), el porcentaje de empresas

con conexión a Internet deberá alcanzar el 99% para empresas con más de 10

empleados y 79% para las microempresas y autónomos con menos de 10

empleados. Además, un 98% de las de más de 10 empleados y un 68% de las

de menos de 10 dispondrán de banda ancha.

§ Estos lineamientos además apuntan al aumento del negocio electrónico, esto

es, a la incorporación de las TIC´s en los procesos de negocio de las

empresas: relación con proveedores y cliente, organización interna y

compraventa a través de la red (comercio electrónico). El objetivo para 2010

es que el 87% de las PyMES dispongan de sitio Web y que el 55% realicen

actividades de comercio electrónico.

§ Se añade a todo esto el impulsar la implantación de la factura electrónica,

como uno de los resortes más eficaces para promover el uso eficiente de las

TIC´s en las PyMES, facilitando el desarrollo del comercio electrónico.

E-Learning

CRM ERP

-ning

Software Libre

Innovación

Investigación

ware Libre

In

Figura 2.2 Proyectos de solución de TIC`s en las PyMES. Fuente: InfoPyME 2008.

69

A estos requerimientos se suman los resultados obtenidos del estudio “Las

tecnologías de la información y las comunicaciones en la competitividad de Quito”

realizado por Santa Fe Associates International y la Corporación de Promoción

Económica (CONQUITO) con los consultores Econ. Hernando López Guerrero e Ing.

Hugo Carrión Gordón.

En este trabajo se realizó un proceso de encuesta58 sobre el uso de las TIC en

empresas industriales Pequeñas, Medianas y Grandes del Distrito Metropolitano de

Quito que luego de ser depuradas terminaron en 202 encuestas efectivas.

Tabla 2.6 Distribución de las empresas encuestadas. Fuente: Las Tecnologías de la Información y las Comunicaciones en la Competitividad de Quito, Santa Fe Associates International.

Con este estudio se evidencia que el uso de la computadora y la conexión a Internet

es una situación generalizada para la mayoría de las empresas para diversos

propósitos; esto es particularmente evidente en las empresas grandes mas no así en

el denominador común de las PyMES.

Además, se recalca en el estudio que, “(…) aunque no se puede afirmar que el

sistema de información es el centro nervioso de gestión de las empresas, poco a

poco, las empresas grandes y medianas van transitando hacia mejores prácticas de

gestión que tienen encarnadas la gestión de conocimiento, es decir la transformación

de la información en conocimiento para mejorar el negocio”59.

58 Cuestionario puede ser revisado en el anexo C.

59 Tomado de Las Tecnologías de la Información y las Comunicaciones en la Competitividad de

Quito, Santa Fe Associates International. Pág. 120.

70

Finalmente el estudio evidenció que de las 202 empresas consultadas, sólo 44 de

ellas se encuentran dentro de características básicas de requerimientos de TIC´s, de

las cuales 30 fueron grandes empresas.

Al respecto se puede observar la siguiente tabla:

Tabla 2.7 Empresas con características de uso avanzado de TIC Fuente: Las Tecnologías de la Información y las Comunicaciones en la Competitividad de Quito, Santa Fe Associates

International.

Se concluye que como características clásicas para toda empresa que hace uso de

las TIC´s como elemento en el incremento de su productividad son:

§ Disponer de Internet, su uso como una herramienta básica para la gestión.

§ Poseer de sitio web.

§ Poseer correo empresarial.

§ Disponer de servicio de mensajería. (Chat empresarial)

§ Utilización de servicios bancarios electrónicos.

71

El estudio finalmente añade que las empresas deben caminar hacia negocios

electrónicos haciendo uso de herramientas disponibles para vender por Internet. No

basta con un sitio informativo con una dirección electrónica de contacto sino que es

necesario proveer de sitios Web que se constituyan como elementos fundamentales

en el sistema nervioso del negocio.

En cuanto a conectividad, el 11% de las empresas no cuentan con conectividad local.

El 57% de las empresas tienen red de área local con cableado. Es difícil encontrar

una red exclusivamente inalámbrica.

Si se tiene una red alámbrica y además se tiene un router sencillo, las computadoras

se pueden beneficiar de los dos tipos de conexión: alámbrica e inalámbrica. Lo

normal es la utilización de ambas, sobre todo si se cuenta con computadoras

portátiles.

Tabla 2.8 Tipo de red LAN. Fuente: Las Tecnologías de la Información y las Comunicaciones en la Competitividad de Quito, Santa Fe Associates International.

En conjunto con estos datos presentados tanto por la CAPEIPI como por CONQUITO

y Santa Fe Associates International, se establecen los requerimientos tecnológicos

básicos para facilitar la operación de las PyMES a continuación.

72

2.3.3. ANÁLISIS DE REQUERIMIENTOS DE LAS PyMES PARA LA

CONSTITUCIÓN DEL CENTRO DE DATOS

En base al trabajo realizado por la Cámara de la Pequeña Industria de Pichincha

(CAPEIPI) (11) con encuestas a más de 3000 empresas y a lo que se suma un

estudio realizado por CONQUITO y Santa Fe Associates (10) con encuestas

realizadas 206 empresas, se puede determinar de manera general los requerimientos

básicos sobre TIC´s en las PyMES.

En tal virtud, se presenta a continuación, producto del análisis de los datos anteriores

del presente capítulo, los requerimientos de las PyMES en la implantación de las

TIC´s como medio de incremento de su productividad y como facilitador de su

operación productiva.

73

REQUERIMIENTOS

BÁSICOS DE TIC´s

EN LAS PyMES

Fundamentales Deseables Valor

Agregado

Extranet / Internet § Conexión a

Internet de

banda ancha.

§ Dominio

propio.

§ Portal Web

público.

§ Correo

electrónico

propio (para

contacto

clientes).

§ Comercio

electrónico.

§ Portal web

seguro.

§ Webmail.

§ Servicios

bancarios

electrónicos /

Declaración

impuestos vía

Internet.

§ Factura

electrónica.

§ Telefonía.

§ Conexión

segura con

otras

sucursales.

§ Acceso

remoto.

Intranet § Correo

electrónico

empresarial.

§ Mensajería

instantánea.

§ Base de

datos.

§ Control de

usuarios.

§ Portal Web

empresarial

(interno).

§ Transferencia

de archivos.

§ E-Learning.

§ Telefonía.

Otros § Seguridad

informática

extranet /

intranet

§ ERP.

§ CRM.

§ Control de

de

producción,

ventas, etc.

Tabla 2.9 Requerimientos básicos de TIC´s en las PyMES.

Para poder dar lugar a la satisfacción de los requerimientos antes mencionados, se

analizan los requerimientos técnicos necesarios y se propone a continuación la

implementación de los siguientes servicios:

74

RE

QU

ER

IMIE

NT

OS

CN

ICO

S B

ÁS

ICO

S E

N L

AS

PyM

ES

Servicios Relación con Requerimientos PyMES

§ Stack de protocolos TCP/IP. § Conexión a Internet, Todos los

requerimientos Intranet /Extranet.

§ Servicio de DHCP. § Intranet, configuración dinámica de

equipos.

§ Servicio DNS: Intranet,

Extranet.

§ Portales web (Internos, Externos),

Correo electrónico, Acceso otras

sucursales, manejo de dominio, etc.

§ Servidor de páginas Web § Portales Web (Internos, Externos),

Comercio electrónico, Webmail.

§ Servidor de correo

electrónico.

§ Correo Electrónico (Contacto clientes

y Empresarial), Webmail.

§ Servidor de Mensajería

Instantánea.

§ Mensajería instantánea.

§ Servidor de Base de Datos. § Comercio electrónico, control de

producción, ventas, etc.

§ Servicio de directorio. § Control de usuarios, Seguridad

informática

§ Proxy / Firewall. § Seguridad extranet / intranet,

Conexión a Internet.

§ Establecimiento de DMZ.

§ Seguridad extranet / intranet.

§ Detección de virus y spam

con scanner de mails.

§ Seguridad extranet / intranet.

§ Acceso remoto con SSH.

§ Conexión segura con otras

sucursales, Acceso remoto.

§ Servidor FTP.

§ Transferencia de archivos.

§ Establecimiento de VPN. § Conexión segura con otras

sucursales, Acceso remoto.

§ Aplicaciones de servicio de

Voz sobre IP.

§ Telefonía.

Tabla 2.10 Requerimientos técnicos para TIC´s en las PyMES.

75

A continuación se presenta una descripción más detallada de los servicios a

implementarse para las PyMES.

2.3.3.1. Internet

Como se ha podido mencionar en los estudios preliminares, el acceso a Internet

constituye un aspecto fundamental en el desarrollo de las PyMES.

El Internet es una “Red de Redes Global”, la cual mediante el uso del stack de

protocolos TCP/IP, permite la unificación de redes físicas heterogéneas para el

intercambio de información.

Sobre ésta red global circulan diversos tipos de protocolos de aplicación; uno de ellos

y posiblemente el más popular es el conjunto de protocolos World Wide Web (WWW)

el cual hace posible el despliegue de contenido Web mediante el uso de navegadores

de Internet.

Sin embargo, no solamente contenido Web puede viajar sobre Internet, sino que

también lo hacen protocolos de transmisión de Correo Electrónico (SMTP),

Transferencia de Archivos (FTP, P2P), Mensajería Instantánea, Acceso remoto,

Telefonía IP, Juegos en línea, etc.

Según los datos presentados en el estudio realizado por Santa Fe Associates y

CONQUITO, en las empresas grandes y medianas una conexión de Internet es

general; en cambio el 11,5% de las microempresas encuestadas no tienen conexión a

Internet.

Tabla 2.11 Tipo de Conexión a Internet por tamaño de empresa. Fuente: Las Tecnologías de la Información y las Comunicaciones en la Competitividad de Quito, Santa Fe Associates

International.

76

Adicionalmente, se presentan los siguientes datos referentes a la velocidad de

conexión. Así se puede observar que el 10% de las empresas utiliza conexión de

Internet mayor a 512 Kbps. El 61% utiliza conexión de 256 Kbps o menores.

Tabla 2.12 Velocidad de conexión a Internet. Fuente: Las Tecnologías de la Información y las Comunicaciones en la Competitividad de Quito, Santa Fe Associates International.

Con un acceso a Internet de 256 Kbps permite a las PyMES enviar y recibir correo,

chatear e incluso para establecer conexión de voz por Internet. Este valor deberá ser

planificado en función del número de usuarios a utilizar la red. Así por ejemplo la

gerencia de las empresas en un 88% utiliza Internet para enviar y recibir correos

electrónicos; el 69% para revisar información de negocios; y el 50% para ver

información de mercados.

Tabla 2.13 Usos de Internet en la gerencia. Fuente: Las Tecnologías de la Información y las Comunicaciones en la Competitividad de Quito, Santa Fe Associates International.

Una de las manifestaciones sobre el uso de las TIC, por parte de la empresa, es el

grado de aprovechamiento de las posibilidades de interacción con sitios Web de su

interés, en especial en el ámbito de los negocios. Al respecto, la encuesta evidenció

que el 90% de las empresas utiliza el sitio Web para hacer consultas con los bancos y

el 52% para observar el mercado.

77

Tabla 2.14 Usos de Internet por la empresa. Fuente: Las Tecnologías de la Información y las Comunicaciones en la Competitividad de Quito, Santa Fe Associates International.

Otra de las necesidades inminentes para las PyMES es el acceso al Portal de

Compras Públicas de Ecuador definido como el Sistema Informático Oficial de

Contratación Pública del Estado Ecuatoriano.

Éste constituye una iniciativa del Sistema Nacional de Contratación Pública y su

funcionamiento se da en base a una aplicación Web

(http://www.compraspublicas.gov.ec) para la adquisición de bienes y servicios a

través de subastas inversas electrónicas en las cuales los proveedores de bienes y

servicios equivalentes pujan el precio ofertado, hacia la baja. Para ello el acceso a

Internet cumple un papel imprescindible.

Entre otras iniciativas para las PyMES en Internet se pueden mencionar:

Diagnóstico y Estrategia de Gobierno Electrónico. Fuente CONATEL, marzo 2005.

78

Tabla 2.15 Diagnóstico y Estrategia de Gobierno Electrónico. Fuente CONATEL, marzo 2005.

A continuación se presentan de manera general otros requerimientos tecnológicos de

las PyMES.

2.3.2.1.1. Correo electrónico

El correo electrónico es un servicio de red que permite a sus clientes el envío y

recepción de mensajes. Para lograr este acometido, cada cliente debe disponer de

una dirección de correo única conformada por un nombre de usuario y un dominio

separados por el signo de arroba (@). Los clientes proporcionan su usuario y

contraseña para asociarse a su respectivo buzón de correo en un servidor, este

buzón se encarga de almacenar, enviar y recibir todos los mensajes del respectivo

usuario.

Para enviar un mensaje electrónico, el cliente debe enviar el correo hacia el servidor

de correo de su dominio mediante el protocolo SMTP, este a su vez traslada el

mensaje hacia otro servidor de correo empleando el mismo protocolo, el mensaje

puede pasar por varios servidores hasta que finalmente llegue al servidor del dominio

correspondiente a la dirección de correo del destinatario. Entonces en el momento en

79

que el destinatario se asocie a su cuenta obtendrá el mensaje mediante el protocolo

POP3 o IMAP.

El correo electrónico se ha convertido en un servicio de red de gran importancia

debido a que ha desplazado en gran medida a otros medios de comunicación

tradicionales por su mayor velocidad, eficiencia, conveniencia y bajo costo.

Para el caso de las empresas el correo electrónico se ha vuelto un servicio

fundamental, al permitir no solo la comunicación entre sus miembros, sino también

con distintos clientes y posibles socios de negocios.

En el siguiente cuadro proporcionado en el estudio de Santa Fe Associates y

CONQUITO, se observa que en general el 68% de las empresas tienen correo

empresarial. En la pequeña empresa los correos electrónicos se distribuyen entre

correo empresarial y correo asociado a un proveedor de Internet casi en partes

iguales. Un 39% de las microempresas tienen correos gratuitos. El 19% de los

microempresarios no posee correo electrónico.

Tabla 2.16 Tipo de cuentas de correo electrónico en la empresa. Fuente: Las Tecnologías de la Información y las Comunicaciones en la Competitividad de Quito, Santa Fe Associates

International.

Otro factor que hace deseable el implementar el servicio de correo electrónico es el

ecológico, en la actualidad coda vez son más las empresas que buscan reducir el uso

de papeles instaurando incluso políticas “cero papeles” bajo este concepto todas las

instrucciones y comunicaciones entre empleados se puede realizar mediante el uso

del correo electrónico sin necesidad de imprimir los tradicionales memos e informes.

80

2.3.2.1.2. Comercio electrónico

Figura 2.3 Caricatura e-Commerce.

El comercio electrónico se refiere a la compra y venta de productos y servicios a

través de un medio electrónico. Principalmente se realiza utilizando como medio el

Internet, en este caso los clientes acceden al portal web de la empresa y tienen la

posibilidad de adquirir sus productos y servicios que son generalmente cancelados

mediante una transferencia de fondos electrónica.

Para establecer un comercio electrónico lo único que se necesita es el disponer de

una página web segura en la cual un cliente pueda crear una cuenta, autenticarse,

buscar el producto o servicio requerido y realizar las transacciones de transferencia

de dinero.

Las ventajas ofrecidas por el negocio electrónico dependen en gran medida de las

que ofrece trabajar con Internet. La Red está disponible en cualquier parte del mundo,

veinticuatro horas al día y siete días por semana; es fácil de utilizar; hacer llegar las

transacciones al usuario final no requiere una gran inversión. Los costes de conectar

con el cliente son bajos en comparación con los relativos a canales de distribución

convencionales; es sumamente fácil integrar procesos, productos y servicios una vez

que estos hayan sido informatizados.60

60 Fuente: Internet en las PyMES, Luis Arroyo Galán (2005). Pág 59, 60, 61.

81

2.3.2.1.3. Páginas web

Las páginas web son documentos de hipertexto que pueden ser visualizados a través

de navegadores web o web browsers. En éstas se puede incluir contenido estático

(informativo, contacto, etc.) como contenido dinámico (consultas a bases de datos,

aplicaciones web, streaming de audio y video, etc.)

Las páginas web constituyen la interfaz que da la cara al usuario; detrás de éstas

puede existir una serie de aplicaciones trabajando y cuyos resultados son

presentados en un browser.

En el caso de las PyMES, las páginas web permiten brindar el acceso, a clientes

potenciales alrededor del mundo, a conocer la organización, realizar pedidos en línea,

contactarse con representantes, etc. Es decir que una página web es la “cara” que da

al mundo nuestra organización.

Adicionalmente las páginas web son utilizadas al interno de la organización,

prestando soluciones de webmail, bibliotecas de información, aplicaciones web

empresariales, etc.

Para dar funcionamiento a las páginas web, se hace uso del protocolo de capa

aplicación HTTP (Hypertext Transfer Protocol) que mediante el uso de un servidor

Web, permite el despliegue de la información en los clientes a través de sus

navegadores.

En este sentido en el estudio de Santa Fe Associates y CONQUITO, el 57% de las

empresas manifiestan no tener un sitio Web. Si tomamos sólo las empresas que

exportan, el 74% de ellas no lo tiene.

Tabla 2.17 Disponibilidad de Sitio Web. Fuente: Las Tecnologías de la Información y las Comunicaciones en la Competitividad de Quito, Santa Fe Associates International.

82

Las páginas web se encuentran asociadas a un dominio de Internet, y en el caso de

las PyMES éste les da la posibilidad de posicionarse como una marca global. Sin

embargo, las empresas que tienen un dominio no necesariamente implica que tengan

un sitio Web. Algunas de las empresas no tienen el sitio corporativo como tal y están

usando el dominio para Webmail. Otras empresas están en proceso de creación del

sitio.

En una revisión de los sitios web de las PyMES61, se encontró que por lo menos el

20% de ellos no funciona correctamente y/o tienen problemas de usabilidad. Algunos

de estos sitios no son manejados directamente por la empresa, o no están a nombre

de la misma, sino a nombre del proveedor de servicios tecnológicos.

Tabla 2.18 Disponibilidad de dominio propio. Fuente: Las Tecnologías de la Información y las Comunicaciones en la Competitividad de Quito, Santa Fe Associates International.

El uso que se le da a los sitios Web es el siguiente:

Tabla 2.19 Utilización del sitio Web empresas no exportadoras. Fuente: Las Tecnologías de la Información y las Comunicaciones en la Competitividad de Quito, Santa Fe Associates

International.

61 Estudio adicional realizado por Santa Fe Associates y CONQUITO que sin embargo no formó parte de su estudio principal.

83

Tabla 2.20 Utilización del sitio Web empresas exportadoras. Fuente: Las Tecnologías de la Información y las Comunicaciones en la Competitividad de Quito, Santa Fe Associates

International.

Los datos presentados muestran que el sitio está destinado mayormente para brindar

información de productos y de contacto. El estudio también presentó que aquellos

sitios de comercio electrónico adolecen de las características necesarias de

mecanismos electrónicos de pago.

2.3.3.2. Intranet

Como se ha podido identificar en los enunciados anteriores, los impactos de Internet

en las PyMES se producen en dos niveles, uno interno y el otro externo. Por un lado,

Internet permite obtener una mayor productividad al interior de la organización con un

menor tiempo de respuesta a clientes, reducción de costos, mayor rentabilidad, etc.;

por otro lado, exteriormente, Internet permite mejores relaciones con los clientes,

proveedores, mercado y administración de varias tareas.

Sin embargo, todos estos beneficios que produce Internet de nada sirven si al interior

de la empresa no se manejan canales de comunicación internos que permitan

coordinar las tareas institucionales, la planificación y la toma de decisiones en base a

los datos proporcionados por cada una de las áreas de la organización.

Es así de esta manera que Internet en las PyMES se ve complementado con una

Intranet corporativa.

Mediante el establecimiento de una intranet con el empleo del stack de protocolos

TCP/ IP, las empresas pueden poner en funcionamiento redes internas para el uso

84

exclusivo de sus empleados convirtiendo a la red interna en el sistema nervioso de la

empresa.

Así los atributos de una intranet podrían condensarse en los siguientes (12):

§ Red propia: a precio bajo.

§ Ahorro de tiempo: Proporciona herramientas para agilizar el trabajo diario.

§ Cultura corporativa: Potencia la identidad corporativa.

§ Fidelización: Herramienta para implicar al empleado con la empresa.

§ Reducción de costes: Ahorrar en costes derivados de la comunicación

(papelería, distribución, telefonía, etc.), mayor rendimiento de los

empleados y una mejora en la productividad.

§ Inmediatez: Es un canal de comunicación rápido y directo.

§ Accesibilidad: Desde cualquier parte del mundo.

§ Feedback: Comunicación interactiva con el entorno.

§ Integridad: Coordina el trabajo a distancia y une a los empleados.

§ Operatividad: Sirve para integrar una red de comerciales.

Para dar lugar a una intranet corporativa en las PyMES son necesarios algunos

servicios, los cuales permitirán tanto el funcionamiento de Internet en la organización

como de la intranet misma.

A continuación se mencionarán los servicios requeridos por las PyMES.

2.3.2.2.1. DHCP

El Protocolo de Configuración Dinámica de Hosts, DHCP (Dynamic Host

Configuration Protocol) es un protocolo de red que permite la asignación dinámica y

automática de todos los parámetros de configuración de una red IP, es decir,

dirección IP, máscara, ruta de enlace predeterminada, dirección del DNS, entre otros.

85

Figura 2.4 Diagrama indicando a un servidor DHCP brindando a los hosts los datos para conectarse a la red. Fuente: http://adrian15.wordpress.com/2007/10/07/protocolo-dhcp/

Para brindar este servicio se debe configurar un servidor de DHCP que contenga una

lista de direcciones IP y todos los parámetros requeridos para acceder a la red.

Cuando un cliente se conecta al servidor se le asigna una de las direcciones

disponibles por un tiempo determinado.

Este servicio facilita enormemente el proceso de configuración y administración de

una red, ya que evita la necesidad de asignar direcciones IP a cada una de las

máquinas que conforman una red, además que permite un control centralizado de las

mismas.

En el caso de las redes empresariales de las PyMES en que se enfoca el presente

proyecto, se puede considerar que estas tienden a un crecimiento tecnológico por lo

que es recomendable la implementación de este protocolo desde el inicio de la

implementación de la red.

2.3.2.2.2. DNS

El Sistema de Nombres de Dominio, DNS (Domain Name System) es un sistema

jerárquico de nomenclatura para todo tipo de recurso conectado a una red. Su función

se basa en la traducción de los nombres de dominio de dichos recursos en su

86

correspondiente dirección IP y viceversa. La creación de este servicio se dio debido a

que resulta complicado recordar muchas direcciones IP, mientras que se facilita el

proceso si lo que se tiene que recordar es un nombre relacionado con el recurso

buscado.

Además de brindar información de direcciones IP y nombres de dominio, un servidor

DNS también almacena otro tipo de información, como una lista de los servidores que

aceptan correos electrónicos para un determinado dominio.

El servicio de DNS es un componente esencial para el funcionamiento de Internet y

de una Intranet, por lo que es necesaria su existencia para cualquier equipo que

requiera conexión a Internet (en este caso el Proveedor de Servicios de Internet es

quien se encarga de proporcionar el DNS). En el caso de una red corporativa es

necesaria la existencia de un servidor DNS propio para poder direccionar todas las

consultas internas como para que se pueda acceder a los recursos desde una red

externa.

Figura 2.5 Funcionamiento típico de una consulta de DNS recursiva. Fuente: http://nirlog.com/2006/03/28/dns-amplification-attack/

87

2.3.2.2.3. Proxy

Un Proxy es un servidor intermediario que permite a otros equipos conectarse a una

red a través de él, es decir, de una forma indirecta. Para lograr esto, cuando un

equipo trata de acceder a un recurso, pasa primero por el proxy quien se encarga de

establecer la comunicación aparentando ser el equipo que necesitaba el recurso

primeramente.

Figura 2.6 Ubicación del proxy para brindar a la intranet seguridad y conexión con el Internet.

Fuente: http://www.computerrepairmaintenance.com/tag/anonymous-web-surfing-with-a-proxy

Este tipo de servicio brinda algunos tipos de funcionalidades distintas, pero sobretodo

se emplea para permitir el acceso a internet a todos los miembros de una red

mediante el empleo de solo una dirección IP pública.

Además de esto, el proxy permite el almacenamiento en caché en el servidor, es

decir que, cuando un usuario accede a una página web esta puede ser almacenada

en el servidor de manera que las futuras consultas de todos los usuarios hacia esa

página serán respondidos por el proxy sin la necesidad de que la consulta pase a

Internet.

88

Finalmente, otra de las características más usadas del proxy es para filtrar

contenidos. El proxy representa un equipo centralizado de acceso a redes, por lo que

todo contenido que entre o salga de la red debe pasar por él, es decir que al añadir

filtros en el proxy se puede bloquear ciertas peticiones prohibidas.

El proxy es un servicio altamente valorado en todo tipo de organizaciones y

empresas, debido a que permite reforzar las políticas de uso de la red y brindar una

mayor seguridad a la misma.

Mediante el uso adecuado de un proxy con reglas de filtrado claramente definidas, es

posible controlar que los empleados no accedan a páginas con contenidos peligrosos

o no relacionadas con su ámbito laboral. Esto reduce el tráfico en la red e incrementa

significativamente la seguridad de la misma.

2.3.2.2.4. Directorio

Un servicio de directorio se refiere a una base de datos especializada que se

encuentra optimizada para búsquedas y permite almacenar información organizada

acerca de los recursos de una red (usuarios, impresoras, computadores, entre otros).

Esto permite el centralizar la administración de los mismos, facilitando el control del

nivel de acceso que tengan los usuarios a ciertos recursos compartidos además de

permitir a los mismos el cambiar de equipo de trabajo por otro en el mismo dominio y

mantener sus permisos en la red sin la necesidad de realizar ninguna configuración.

El servicio de directorio brinda un sinnúmero de beneficios para las organizaciones,

así: permite la administración de los accesos a los recursos de una forma

centralizada y segura, además permite almacenar información de cada recurso

disponible como por ejemplo las cuentas de correo y las listas de distribución.

Además puede ser accedido por distintas aplicaciones para la obtención de

información.

Cada recurso del que se dispone corresponde a un objeto en la base de datos, que

se halla plenamente identificado por un espacio de nombres. El diseño de este

89

espacio de nombres de directorio sigue reglas para asegurar que cada nombre sea

único e inequívoco.

2.3.2.2.5. Firewall

Un firewall o cortafuegos es un equipo o programa de seguridad que se coloca entre

varias redes y que se encarga de filtrar el tráfico que intente pasar a través de él,

bloqueando todos los accesos que no cumplan con los criterios de seguridad

configurados. Su principal función es la de brindar seguridad a una intranet evitando

que usuarios no autorizados puedan entrar.

Cada mensaje que quiera salir o entrar de la red deberá pasar por el firewall el cual lo

analizará de acuerdo a las políticas de acceso que tenga configuradas, y de acuerdo

a estas puede dejar pasar, bloquear o desechar al mensaje.

Para el ámbito empresarial, se puede considerar que la información almacenada en la

intranet es altamente sensible y privada, por lo que resulta fundamental la inclusión

de un sistema de seguridad perimetral como el firewall.

Figura 2.7 Representación de algunas de las ventajas que puede brindar un servicio de directorio. Fuente: http://www.quest.com/identity_management/images/idm_diagram_web.jpg

90

Figura 2.8 Representación del firewall para brindar seguridad a una red LAN.

Otra aplicación muy útil del firewall es la creación de zonas desmilitarizadas DMZ ().

Estas zonas se crean cuando se conecta una red adicional al firewall en la que se

encuentren los equipos y datos a los que se requiera tener acceso por todas las

redes involucradas. Con esto se logra que estos recursos se compartan entre las

redes pero ninguna red accederá directamente a otra sino que se encontrarán en una

zona intermedia DMZ.

2.3.2.2.6. Telefonía ip

El servicio de telefonía IP es aquel que brinda una comunicación telefónica en la cual

se transmite la voz sobre IP (VoIP), esto quiere decir que, para poder establecer una

comunicación, la señal auditiva debe ser previamente digitalizada en paquetes. Con

esto se elimina la intervención de una compañía telefónica convencional para realizar

llamadas internas en una misma red, esta línea telefónica externa sólo se emplea la

PSTN (Public Switched Telephone Network)62 cuando se requiere realizar llamadas

externas a la misma con lo que se abaratan los costos de comunicación.

62 PSTN es la red telefónica pública conmutada

91

Para poder establecer un servicio de telefonía IP, el estándar VoIP define una

estructura basada en tres elementos fundamentales: Terminales, Gatekeepers y

Gateways. Un terminal se refiere al equipo telefónico que se empleará en la telefonía

IP, no son los equipos tradicionales sino que funcionan en base a los protocolos de

VoIP, se pueden implementar tanto en software como en hardware. Los Gatekeepers

son los equipos en que se centra la organización de VoIP, estos vienen a reemplazar

a las centrales telefónicas, por lo general se tratan de aplicaciones de software por

las que pasan todas las comunicaciones. Finalmente los Gateways son las puertas de

acceso por las que se enlaza la red telefónica convencional con la red de telefonía IP

Figura 2.9 Estructura de una arquitectura básica de un servicio de telefonía IP. Fuente: http://www.e-advento.com/soluciones/telefoniaip.php

Los protocolos típicos empleados para VoIP son H.323 y SIP, pero también se

disponen de protocolos propietarios como Skinny Client Control Protocol de Cisco,

92

MiNet de Mitel, CorNet-IP de Siemens, Skype que es un protocolo peer-to-peer de la

aplicación del mismo nombre e IAX que es el protocolo para la comunicación entre

las PBXs de Asterisk, una de las soluciones más empleadas en lo que se refiere a

telefonía IP y un estándar para los demás sistemas de comunicaciones de datos.

Para todo tipo de empresa, el empleo de telefonía IP trae grandes ventajas, siendo la

principal la gratuidad de todas las comunicaciones internas, además de la posibilidad

de disponer tantas de estas líneas telefónicas como sea necesario sin perder las

comunicaciones con la red telefónica tradicional. También se debe considerar que el

desarrollo de codecs (Codificadores/Decodificadores) para VoIP ha permitido que la

voz se codifique en paquetes de datos de pequeño tamaño, por lo que las

comunicaciones de voz sobre IP requieren anchos de banda muy reducidos por lo

que no afecta de manera significativa el rendimiento de la red.

2.3.3.3. Otros Servicios (10)

2.3.2.3.1. Mensajería instantánea

La mensajería instantánea (IM) constituye una forma de comunicación en tiempo real

entre dos o más personas basada en texto. El texto es enviado a través de

dispositivos conectados a una red, pudiendo funcionar tanto en la Intranet corporativa

como en Internet.

La mensajería instantánea requiere el uso de un cliente de mensajería instantánea

que realiza el servicio. Éste permite satisfacer necesidades de comunicación

inmediata entre diferentes áreas de la organización, ya sea con clientes así como

dentro de la organización.

2.3.2.3.2. Seguridad Informática

Una de las preocupaciones centrales, y que a veces es un obstáculo para el

desarrollo del comercio electrónico, está relacionada con los problemas de seguridad

de la empresa.

93

Para ello es necesaria la implementación de medidas anti-hacking, firewall, proxy,

antivirus, transmisión segura y backups de datos, en conjunto de una política general

de seguridad, etc.

Por ello se muestra que el 94% de las empresas tienen protección antivirus y un 59%,

algún mecanismo de respaldo de la información.

Tabla 2.21 Disponibilidad de sistemas de seguridad informática. Fuente: Las Tecnologías de la Información y las Comunicaciones en la Competitividad de Quito, Santa Fe Associates

International.

2.3.2.3.3. Software de Gestión Organizacional

Según los datos de Santa Fe Associates y CONQUITO, el 85% de las empresas

posee un sistema de contabilidad. A esto le siguen los sistemas de inventarios y de

recursos humanos. Por otra parte los microempresarios tienen tercerizado el sistema

de contabilidad; sin embargo su contador tercerizado hace uso de software de

contabilidad.

Se destaca también el alto porcentaje de utilización de sistemas de información como

ERPs63 como por ejemplo SAP.

63 Para alternativas de software libre de ERP y CRM referirse al anexo D.

94

2.4. APLICABILIDAD DE LA ARQUITECTURA SERVIDOR

VIRTUALIZADO PARA FACILITAR LA OPERACIÓN DE

LAS PyMES

En base a los requerimientos analizados en el tema anterior, es imprescindible el

posibilitar una solución tecnológica que brinde todos estos servicios para las PyMES

y a la vez que esté acorde a su situación económica, técnica, de recursos humanos,

entre otros.

Como se ha podido ver en el capítulo 1, la virtualización de servidores permite la

implementación de aplicaciones y servicios a través de varias máquinas virtuales

sobre un mismo hardware; sobre cada una de las cuales corre un sistema operativo

que posibilita su funcionamiento

Cabe indicar además que de acuerdo a los datos proporcionados en la tabla 2.7, las

empresas que emplean de manera avanzada las TIC´s constituyen un porcentaje

limitado (8 PyMES de entre 206 empresas entre Grandes, Medianas, Pequeñas y

Micro); es por este motivo que es imprescindible el proporcionar una solución

prototipo para ser adoptada por las PyMES y así mejorar su rendimiento productivo.

Es así de esta manera que los servidores virtualizados pueden constituirse en

plataformas para la implementación de los requerimientos de TIC´s en las PyMES a

través de los servicios necesarios para su operación.

A continuación se establecerán las razones del porqué la virtualización de servidores

beneficia a las pequeñas y medianas empresas en la satisfacción de sus

requerimientos de TIC´s, dando lugar así a la aplicabilidad de esta tecnología.

95

2.4.1. IMPACTO DE LA ARQUITECTURA SERVIDOR

VIRTUALIZACIÓN EN LAS PyMES

2.4.1.1. Ventajas y aplicaciones brindadas por los servidores

virtualizados para las PyMES

A continuación se presentan las ventajas de la aplicación de la virtualización de

servidores en las PyMES. Cabe indicar que en el capítulo 1, puede encontrarse otras

ventajas de la virtualización de servidores las cuales son aplicables no solo a las

PyMES, sino a diferentes tipos de organizaciones.

2.4.1.1.1. Centralización, Descentralización, Consolidación

La adopción del tipo de infraestructura tecnológica para la implementación de los

servicios en las organizaciones puede hacerse en función de tres paradigmas:

centralización, descentralización y consolidación.

De manera general, la centralización, típicamente basada en la era Mainframe, brinda

altos índices de rendimiento computacional, sin embargo necesita de grandes

requerimientos de equipamiento así como de sistemas de refrigeración, consumo de

energía, etc., por lo cual constituye una solución de muy alto costo.

Por otra parte, con la reducción de costos del hardware x86, se da paso a la

descentralización. Con un sistema descentralizado, se permite la implementación de

servicios en varios servidores físicos lográndose obtener beneficios de estabilidad de

los mismos, así como aislamiento de aplicaciones entre cada servidor y seguridad del

sistema por consecuencia de su aislamiento, entre otros beneficios.

Sin embargo, producto de la necesidad de varios servidores físicos, los costos de

equipamiento continúan siendo elevados (se requiere de mayor cableado, equipos de

conectividad, equipos de refrigeración, etc.). A esto se suma el incremento en el

consumo de energía por cada servidor, reducción del espacio físico, mayor

complejidad de administración y aumento en gastos de mantenimiento anual por cada

equipo.

96

Adicionalmente, a medida que las características del hardware x86 mejoraban, la

implementación de una aplicación o servicio por servidor mostraban cada vez una

reducción de la eficiencia de cada máquina. Así cada servidor pasa a un estado de

subutilización del 85 al 90 por ciento del tiempo, siendo el uso de procesamiento en

un promedio del 15%.64

Así un ejemplo simple de una configuración descentralizada compuesta de cinco

servidores x86 de doble núcleo, con licencia por cada uno y equipamiento de

conectividad sería el siguiente:

Figura 2.10 Implementación descentralizada de cinco servidores. Fuente: Virtualization with Xen, Syngress 2007, pág 11.

64 Datos obtenidos de: (13), pág. 9.

97

En cuanto a los costos de un ambiente descentralizado, éstos se ven multiplicados

por el número de servidores requeridos; estos factores son producto del crecimiento

horizontal del centro de datos, así en base al ejemplo anterior se tiene:

Componente Costo Unitario en Dólares (C.U.)

Costo Total en Dólares (C.U. x5)

Hardware65 $670.00 $3350.00 Software*66 $2000.00 $10000.00

Energía por año67 $116.00 $580.00 Refrigeración por año77 $150.00 $750.00

Total * (excluyendo licencias) $936.00 $4680.00 Total $2936.00 $14680.00

Tabla 2.22 Costo de un ejemplo de implementación descentralizada de cinco servidores.

Por otro lado, se tiene a la consolidación la cual es introducida con la virtualización de

servidores.

El logro de la consolidación es la unificación y combinación de los sistemas. Así en el

caso de la virtualización, las cargas de trabajo son unificadas en menor número de

plataformas físicas capaces de obtener su demanda de recursos computacionales

como CPU, memoria, y I/O de un mismo hardware. Así también, la consolidación

permite la combinación de varias instancias de servidores y con ello posibilitando

combinar sistemas operativos y sus cargas en una forma estratégicamente

localizadas en un hardware con características adecuadas. Con esto se logra una

mejor utilización del hardware mediante una disminución del desperdicio de recursos

por servicios que no requieren del 100% de utilización del hardware.

Adicionalmente, la consolidación favorece al mantenimiento de aplicaciones críticas

del negocio que tienen un nexo vinculante a un sistema operativo o hardware

específico. Con esto se elimina una atadura a un determinado fabricante de

hardware.

65 Revisar anexo I, costo del hardware implementado.

66 Datos obtenidos en (13), pág. 11.

67 Dato calculado en base a un consumo de 0.1 kW mensuales o 74.4 kWh mensuales a 13 centavos de dólar por kWh. Fuente: http://www.conelec.gov.ec/calculokw.php?menu=41&submenu1=42&nummes=31&ind=8

98

Se añade que la virtualización sobre el hardware x86, admite diversos sistemas

operativos, entre ellos Windows, Linux, Unix, convivir en un mismo hardware

reduciendo así costos de adquisición y mantenimiento.

Así, con la consolidación se permite participar de los beneficios de cada uno de los

tipos de paradigmas de descentralización y centralización:

§ Sobre un mismo hardware x86 (, se implementan varias máquinas virtuales

o servidores virtuales en un ambiente descentralizado.

§ Cada servidor virtual conserva las propiedades de la descentralización:

cada servidor conserva su aislamiento entre sí, brindándole seguridad,

estabilidad, rendimiento y facilidad de administración del software.

§ Se obtiene una administración centralizada de los servicios en un solo

servidor, lo cual la hace más simple y de menor costo.

§ El crecimiento horizontal del sistema se lo realiza de manera lógica con la

implementación de servidores virtuales, lo cual ahorra significativamente

los costos de equipos, sistemas de refrigeración, consumo de energía, etc.

§ Se obtiene un mejor rendimiento de los servidores, aprovechando las

potencialidades de CPU, memoria, virtualización del hardware x86 actual.

§ Los costos de mantenimiento anuales se reducen significativamente a

solamente el número de servidores virtuales aprovisionados.

A todo esto se añade:

§ Mejor retorno de la inversión y menor costo total de propiedad (TCO)

§ Ahorro de dispositivos de conectividad (puertos de switches, routers, hubs,

etc.), infraestructura de soporte incluyendo cableado, tarjetas de red, cada

uno por máquina virtual etc.

§ Creación de un ambiente de pruebas.

§ Rápida recuperación frente a fallas de software (debido a la rápida carga

de backups de máquinas virtuales).

§ Reducción en la emisión de emisiones de CO2 (producto del menor

consumo de energía).

99

§ Rendimiento de cada máquina virtual se acerca al rendimiento nativo, a

una fracción del costo de todo el hardware.

§ Una sola licencia requerida por servidor virtual.68

Tomando el mismo ejemplo tratado anteriormente, y aplicando un esquema

consolidado, se tiene:

Figura 2.11 Implementación virtualizada de cinco servidores. Fuente: Virtualization with Xen, Syngress 2007, pág 12.

En la imagen anterior se puede observar que el porcentaje de utilización del servidor

virtualizado sube al 75% frente a un 15% de una implementación eminentemente

descentralizada69, así como menor número de uso de puertos y dispositivos de

conectividad.

68 Dependiendo de la plataforma de virtualización y el sistema operativo Host – Guest.

69 Datos obtenidos de: (13), pág. 13.

100

Un cálculo simple sobre la implementación de un esquema de virtualización de

servidores muestra los siguientes resultados.

Componente Costo Unitario (C.U.) Costo Total (C.U.x1) Hardware70 $670.00 $670.00 Software*71 $2000.00 $2000.00

Energía por año72 $116.00 $116.00 Refrigeración por año74 $150.00 $150.00

Total * (excluyendo licencias) $936.00 $936.00 Total $2936.00 $2936.00

Tabla 2.23 Costo de un ejemplo de implementación virtualizada de cinco servidores.

Como se ha podido observar en los resultados anteriores y a lo largo del presente

tema, la implementación de una solución virtualizada para las PyMES, permitirá no

solamente satisfacer sus necesidades tecnológicas básicas antes mencionadas, sino

también sus económicas pues está acorde a su situación económica característica,

ahorrándole una cantidad considerable de recursos, impulsando así la adopción de

las TIC´s.

A continuación presentamos una breve comparación entre las diferentes

implementaciones a lo que se suma un factor adicional como es el ahorro en

licenciamiento del software (componente que encarece la implementación).

Implementación Costo Unitario Costo Total

Virtualizada $2936.00 $2936.00 Descentralizada $2936.00 $14680.00

Ahorro Implementación Virtualizada (Software Licenciado)

- $11744.00

Tabla 2.24 Ahorro en implementación virtualizada de cinco servidores con software licenciado.

70 Revisar anexo I, costo del hardware implementado.

71 Datos obtenidos en (13), pág. 11.

72 Dato calculado en base a un consumo de 0.1 kW mensuales o 74.4 kWh mensuales a 13 centavos de dólar por kWh. Fuente: http://www.conelec.gov.ec/calculokw.php?menu=41&submenu1=42&nummes=31&ind=8

101

Implementación Costo Unitario Costo Total

Virtualizada $936.00 $936.00 Descentralizada $936.00 $4680.00

Ahorro Implementación Virtualizada (Software Libre)

- $3744.00

Tabla 2.25 Ahorro en implementación virtualizada de cinco servidores con software libre.

2.4.1.1.2. Confiabilidad y Disponibilidad

La virtualización dispone de confiabilidad a través de tres áreas: contención ante

fallas, simple recovery, y capacidades built-in en las diferentes herramientas de

virtualización.

En el aspecto de la contención ante fallas, la virtualización de servidores permite a las

PyMES asegurar la continuidad de sus operaciones. Esto se produce aprovechando

la capacidad de aislamiento de cada máquina virtual. Así ante cualquier fallo

producido en una VM, el funcionamiento de las otras máquinas virtuales no se ve

afectado gracias a la abstracción del hardware subyacente.

Adicionalmente hay que indicar que cada máquina virtual dispone

independientemente de la misma confiabilidad del hardware sobre el que se ejecuta.

Por otra parte, la disponibilidad de una arquitectura servidor virtualizado es

consecuencia de un entorno computacional confiable. Con esto se logra ahorrar

costos en equipamiento de servidores de failover para mantener la disponibilidad del

sistema durante los periodos planeados o no de para.

102

Figura 2.12 Implementación virtualizada de alta confiabilidad. Fuente: Virtualization with Xen, Syngress 2007, pág 319.

Para dar lugar a un entorno de disponibilidad también es requerido el

acompañamiento de equipamiento adicional de conectividad, almacenamiento, etc.,

como se puede observar en la figura anterior.

La virtualización satisface esta característica mediante la provisión “just-in-time” o por

demanda de particiones virtuales adicionales. Así las capacidades de bulit-in de las

herramientas de virtualización así como el simple recovery, permiten disponer de

máquinas virtuales de back-up que se pueden activar cuando se produce el fallo de

una o varias máquinas virtuales de producción. Así de ésta manera se asegura

mediante un repositorio de máquinas virtuales previamente configuradas disponer de

su actividad en cuestión de minutos.

2.4.1.1.3. Escalabilidad

La escalabilidad es otro beneficio producido por la virtualización de servidores. Ésta

permite la utilización del servidor virtual de acuerdo a las necesidades de la

organización; diferentes máquinas virtuales pueden funcionar en un mismo servidor

de acuerdo a parámetros, permitiendo el funcionamiento de varios servicios de

103

acuerdo a las necesidades incurrentes. Así, un servidor virtual puede aumentar o

disminuir sus capacidades de servicio de acuerdo a lo requerido.

La escalabilidad permite también aumentar la eficiencia del sistema dando lugar a

una mejor utilización de los recursos y con ello disminuir el procesamiento

desperdiciado.

Por ejemplo es posible con la virtualización de servidores, dar lugar a una aplicación

para clientes en un determinado tiempo y en determinados días de una semana

laboral, y ocupar el potencial desocupado del servidor en otras aplicaciones durante

la noche o fines de semana.

2.4.1.1.4. Seguridad

La virtualización de servidores provee de seguridad a cada una de las máquinas

virtuales, haciendo uso de su propiedad de aislamiento entre VM´s. Así, en caso de

verse afectada una máquina virtual mediante la intrusión de un visitante desconocido,

éste no sabrá de la existencia de las otras máquinas virtuales.

Así, en caso de infecciones de virus, ataques de hackers, crackers, spyware,

malware, troyanos, etc. la afección se verá dirigida exclusivamente a una máquina

determinada, aislando al resto de la infraestructura virtual; esto posibilita la restitución

en poco tiempo del sistema mediante la aislación de la máquina, carga de una nueva

máquina virtual de back-up (limpia de ataques) y de aplicaciones o parches de

seguridad, etc.

Adicionalmente, con la virtualización, las configuraciones de seguridad pueden ser

aplicadas exclusivamente a una o varias máquinas virtuales en lugar del resto de

VM´s que pueden necesitar de una configuración de seguridad diferente. Esto permite

diferenciar en un mismo hardware de permisos de seguridad, credenciales, y acceso

de diferentes usuarios.

104

2.4.1.2. Desventajas de la virtualización de servidores

2.4.1.2.1. Fallos de hardware

Con la virtualización se diseña en su mayoría un completo centro de datos sobre un

mismo hardware. Así, un mismo servidor virtual puede contener servidores virtuales

de base de datos, correo electrónico, DNS, dhcp, páginas web, etc.

En caso de un daño general del hardware sobre el cual corren las máquinas virtuales,

la afectación sería sobre todos los servidores virtuales que corren sobre éste.

Entre los daños pueden indicarse: fuentes de alimentación, placa madre, disco duro,

memoria RAM, etc.

Para remediar este posible escenario, es recomendable tener un servidor virtual de

back-up, lo cual incrementaría el costo de una implementación virtualizada.

2.4.1.2.2. Congestión en varios dispositivos

Como las máquinas virtuales hacen uso de los dispositivos de red (tarjetas de red)

reales, dependiendo del número de VM´s, se puede llegar a una pérdida de eficiencia

en la velocidad de respuesta de las mismas.

Es por ello que la configuración de un equipo real sobre el cual correrán servidores

virtuales, debe ser planificada en función del número de VM´s a implementarse, los

servicios a dar, entre otros parámetros.

Este problema es solucionado con un adecuado dimensionamiento del servidor real.

2.4.1.3. Comentario sobre la adopción de la arquitectura servidor

virtualizado en las PyMES

Como se ha podido mostrar a lo largo del capítulo, los beneficios y aplicaciones de la

virtualización de servidores son motivantes de peso para dar lugar a su aplicación,

tanto por costos como por características técnicas que permiten a las organizaciones

satisfacer algunas de sus necesidades de comunicación. Por otro lado, las

desventajas encontradas pueden ser solucionadas con una adecuada planificación

105

del centro de datos virtual y como se pudo observar, éstas son considerablemente

menores frente a los beneficios obtenidos.

Así, la aplicación de una arquitectura servidor virtualizado permitirá a las PyMES

facilitar sus operaciones haciendo uso de las Tecnologías de Información y

Comunicación lo cual como ha sido visto en los temas anteriores da lugar al

incremento de su productividad.

106

CAPÍTULO TRES

3. INSTALACIÓN, CONFIGURACIÓN, Y PRUEBAS

DE XEN® HYPERVISOR COMO BASE EN LA

IMPLEMENTACIÓN DE SERVIDORES

VIRTUALES.

107

3.1. DISEÑO DE UN PROTOTIPO DE SERVIDOR

VIRTUALIZADO PARA PyMES

A lo largo del capítulo 2, se pudo conocer la definición, situación, soluciones y

requerimientos de las pequeñas y medianas empresas (PyMES) en Ecuador. Así

también, se prestó especial interés acerca de la introducción de las tecnologías de la

información TIC´s como elementos clave en el incremento de su productividad.

En base al trabajo realizado por la Cámara de la Pequeña Industria de Pichincha

(CAPEIPI) (11) con encuestas a más de 3000 empresas y a lo que se suma un

estudio realizado por CONQUITO y Santa Fe Associates (10) con encuestas

realizadas 206 empresas, se pudo determinar de manera general los requerimientos

básicos sobre TIC´s en las PyMES.

Finalmente en base a estas premisas se presentó a la virtualización como alternativa

para la implementación de un prototipo de servidor virtualizado que brinde todas las

características deseadas referentes a sus requerimientos y esté acorde a la situación

típica de las pequeñas y medianas empresas.

En este capítulo se procederá a la selección del tipo de virtualización a usarse y con

ello la herramienta tecnológica a utilizarse en base a lo conocido en el capítulo 1.

Para dar lugar a este objetivo, sin embargo, es necesario presentar una primera

propuesta de diseño de Centro de Datos para las PyMES, el cual luego será

implementado en base a la arquitectura servidor virtualizado haciendo uso de la

herramienta y tipo de virtualización seleccionados.

En primer lugar se toma en cuenta un diseño sin virtualización y posteriormente se

presentará el prototipo para el caso expuesto en este proyecto en el que todos los

servidores se hallan virtualizados dentro de un solo equipo físico, esto viene a

constituir la arquitectura servidor virtualizado.

Cada uno de los servidores virtuales tiene exactamente el mismo comportamiento

que un servidor físico, por lo que el diseño del prototipo de servidor virtual para

108

PyMES se debe realizar de una forma similar a como se realizaría el diseño de la

granja de servidores de la empresa.

3.1.1. DISEÑO DE UN CENTRO DE DATOS PARA PyMES (13)

Una vez que se tienen en claro los requerimientos de las PyMES, expuestos en

temas anteriores, se puede a proceder al diseño de su centro de datos, para este

diseño se debe considerar que una vez que se implemente la red, esta debe cumplir

con ciertos parámetros que se detallan a continuación:

· Debe facilitar y agilizar el trabajo de los usuarios, de esta manera se logra

incrementar la productividad de los mismos.

· Se debe mantener un costo asequible para la empresa, tanto en el proceso de

implementación como en el mantenimiento de la red.

· Debe tener un buen rendimiento de manera que pueda realizar sus

operaciones de manera rápida y segura

· Debe brindar confiabilidad, es decir que los errores no deben ser frecuentes y

en caso que se presente alguno en un componente del sistema, no debería

afectar al resto (tolerancia a errores).

· Debe brindar disponibilidad, es decir que los servicios que brinde la red deben

poder ser accedidos por cualquier usuario autorizado en el momento que lo

requiera.

Considerando estos detalles se puede proceder a escoger la topología de red

adecuada para los servicios a implementarse.

Primeramente se considerarán los servicios básicos necesarios para la intranet

empresarial de la tabla 3.2: Servidor DHCP, Servidor DNS, Servidor HTTP que

permita la implementación de comercio electrónico, Servidor de Correo Electrónico

con detección de virus y correo SPAM, Servidor de Mensajería Instantánea, Servidor

de Base de Datos, Servidor FTP, Proxy y Firewall, Servicio de Directorio que permita

un control de usuarios y Servicio de Telefonía sobre IP. Para todos estos servicios se

109

requiere de una topología multiacceso en la que se permita la comunicación entre

varios nodos a través de un mismo medio físico73.

3.1.1.1. Consideraciones de Seguridad, Disponibilidad y Confiabilidad

En todo tipo de red pueden presentarse ataques de personas mal intencionadas o

fallas debido a errores humanos o sobrecarga del sistema, para minimizar la

interferencia de estos con el buen funcionamiento de la red, se deben implementar

ciertos mecanismos para brindar una mayor seguridad, disponibilidad y confiabilidad.

3.1.1.1.1. Seguridad

El principal mecanismo de seguridad es la implementación de un firewall, este equipo

de seguridad perimetral deberá permitir solo las conexiones que las políticas de la

empresa consideren seguras. De esta manera se evita que cualquier persona pueda

ingresar a la red interna de la empresa.

Otro mecanismo de seguridad es el proxy, este permite el bloqueo de contenidos

inadecuados en el uso de protocolos como HTTP, FTP o SSL. Además ayuda a un

mejor control de los empleados al permitir la creación de restricciones de acceso web

por usuario o hacia páginas web específicas.

Finalmente una de las consideraciones más importantes en lo que se refiere a

seguridad de redes es la creación de zonas desmilitarizadas (DMZ). Una zona

desmilitarizada es una red perimetral local que se ubica entre la intranet de la

organización y una red externa como Internet. La DMZ permite que se realicen ciertas

conexiones desde las redes interna y externa a la DMZ, pero restringe el acceso de la

DMZ a la red interna. Con esto se logra que los usuarios de la red externa puedan

acceder a los servicios ubicados en la DMZ de una organización, pero no puedan

ingresar a su intranet.

73 Consideraciones de diseño del Servidor Virtualizado en función de las recomendaciones de HP, Microsoft y Xen. Ver anexo E.

110

Intranet

DMZ

Internet

Figura 3.1 Ejemplo de una zona desmilitarizada (DMZ) y su ubicación en la red.

En el caso en estudio, los servidores que se ubicarán en la DMZ serán los de Correo,

Web, y DNS, que son los que habitualmente se encuentran en ella ya que es

necesario que sean accedidos desde fuera de la red.

3.1.1.1.2. Disponibilidad

El método más común para implementar una alta disponibilidad consiste en brindar

una redundancia de servicios, así por ejemplo, en el caso en estudio, todos los

servicios que se encuentran en la DMZ también se hallarán replicados en la intranet,

de esta forma aunque falle el servicio para la red externa la intranet podrá seguir

funcionando.

111

Se debe recalcar que una de las grandes ventajas que brinda la virtualización es la

facilidad de replicar los equipos y por lo tanto aumentar su disponibilidad, es decir que

con la virtualización se podrían generar copias exactas de los servidores que entrarán

en funcionamiento en el momento en que los principales fallen.

3.1.1.1.3. Confiabilidad

Para lograr tener un buen nivel de confiabilidad se deben de seguir buenas prácticas

para el diseño de las redes, brindando tolerancia a errores y evitando que los mismos

s (2) se presenten.

La tolerancia a errores se puede lograr al hacer cada servicio independiente de los

otros, de esta manera si uno de ellos falla no afectará al resto. En cambio, para evitar

que los errores se presenten se pueden emplear un sinnúmero de consideraciones,

de las que cabe mencionar el configurar cuidadosamente cada servicio, crear réplicas

de los equipos para que reemplacen a los servidores en caso de fallo y el empleo de

mecanismos de control como el firewall y proxy para restringir el acceso a contenidos

inadecuados.

3.1.1.2. Prototipo del Centro de Datos para las PyMES

En virtud de lo presentado, se muestra a continuación una primera propuesta del

Centro de Datos prototipo para PyMES. Para dicho prototipo se consideró que todos

los servidores, tanto de la intranet como de la DMZ, deben estar interconectados

entre sí en un mismo equipo de core y que se emplearán dos equipos de firewall para

brindar protección, un firewall para separar la intranet de la DMZ y otro para separarla

de la extranet74. El diseño seleccionado se basó en el diseño especificado por Cisco

como “DMZ Intranet Server Farm” en el libro Data Center Fundamentals75

74 Las consideraciones para la configuración de estos equipos se detallará en el Capítulo 4 del presente trabajo

75 Un resumen de los tipos de granjas de servidores se encuentran en la página web http://www.ciscopress.com/articles/article.asp?p=102268

112

Figura 3.2 Arquitectura “DMZ Intranet Server Farm” presentada por Cisco.

Este diseño muestra a los servidores en una Intranet conectándose a varios equipos

de core para brindar redundancia, además de detallar la existencia de una zona

desmilitarizada, una red para los usuarios internos y una red WAN privada que

permitiría la comunicación con otras sucursales mediante métodos como VPNs.

Este diseño parece ser el que más se ajusta a las necesidades de una Intranet

mediana o pequeña, en la que la mayoría de los servidores se encuentran dentro de

la misma y sólo pueden ser accedidos por sus usuarios, por otro lado dispone de

servidores en una zona desmilitarizada que pueden ser accedidos tanto por la

intranet como por la extranet.

En base a estas consideraciones se presenta a continuación una primera propuesta

del Centro de Datos prototipo para PyMES. Posteriormente en este capítulo en el

punto 3.3.4 se presentará la propuesta final haciendo uso de una solución

virtualizada.

113

Prototipo de DataCenter para PyMES.

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

11

113

Fig

ura

3.3

Pro

totip

o d

e D

ata

Ce

nte

r p

ara

PyM

ES

.

114

3.1.2. ELECCIÓN DE LA SOLUCIÓN DE VIRTUALIZACIÓN

ADECUADA PARA EL DISEÑO

En base al Centro de Datos (DataCenter) propuesto anteriormente, se procede al

diseño de una solución virtualizada que posibilite proveer los distintos tipos de

servicios requeridos por las PyMES de manera eficiente, flexible, escalable y

económica. Para dicho fin es necesario elegir el tipo y herramienta de virtualización

adecuado de acuerdo a lo visto en el Capítulo 1.

3.1.3. ANÁLISIS DE LOS TIPOS Y HERRAMIENTAS DE

VIRTUALIZACIÓN DE SERVIDORES

Entre los tipos de virtualización considerados para la virtualización de servidores se

tiene:

§ Virtualización Completa.

§ Paravirtualización.

§ Virtualización Híbrida.

Estas alternativas para la virtualización de servidores (vistos con mayor detalle en el

capítulo 1) muestran pros y contras en cuanto a rendimiento, flexibilidad, seguridad,

costo, etc.

La correcta adopción del hypervisor de virtualización deberá estar en función de las

ventajas y desventajas que éste preste a la solución de la implementación a realizar.

Es así que, con la finalidad de elegir el tipo de virtualización más adecuado se

presenta a continuación un análisis comparativo de ventajas y desventajas entre

éstos.

115

3.1.4. ANÁLISIS COMPARATIVO: VIRTUALIZACIÓN COMPLETA VS.

PARAVIRTUALIZACIÓN VS. VIRTUALIZACIÓN HÍBRIDA

A continuación se presenta de manera general dichas ventajas y desventajas

encontradas tanto en la Virtualización Completa como en la Paravirtualización y en la

recientemente introducida Virtualización híbrida.

3.1.4.1. Ventajas y Desventajas de la Virtualización Completa

Tanto la virtualización completa como la paravirtualización, al ser ambas basadas en

hypervisor, disponen de ventajas similares, sin embargo disponen de ciertas

características específicas que hacen que se justifique su clasificación en dos

categorías distintas.

Ambos tipos de virtualización brindan un aislamiento total entre las máquinas virtuales

y el monitor de las mismas (VMM) permitiendo correr distintos sistemas operativos en

las máquinas virtuales de manera independiente, de la misma forma, ambas tienen

un excelente rendimiento, sin embargo el de la virtualización completa puede verse

afectado por ciertas instrucciones que requiere emular.

La principal ventaja presentada por la virtualización completa es que posee el más

amplio soporte en lo que se refiere a los sistemas operativos. Al simular todo el

hardware del equipo anfitrión proporciona una abstracción total del sistema físico

subyacente y crea un nuevo sistema virtual en el cual se soporta la instalación de casi

todos los sistemas operativos sin modificación alguna, siendo la única restricción que

los sistemas operativos virtuales soporten la arquitectura de hardware utilizada.

Las principales desventajas de la virtualización completa se dan sobre todo en lo

relacionado con los sistemas x86, así por ejemplo, pese a que emplea técnicas

avanzadas para atrapar y emular instrucciones propias de las arquitecturas x86 en el

runtime, vía parchado binario76, esto afecta el rendimiento del sistema, como se

76 Un parche es una sección de código que se aplica a un programa para actualizarlo solucionando problemas o agregar funciones. El parchado puede ser binario o de código fuente, siendo el binario el que se aplica en los archivos ejecutables.

116

mencionó en párrafos anteriores, al requerir un mayor procesamiento. El rendimiento

puede caer hasta en un 50 por ciento77.

Adicionalmente, en la arquitectura x86, con la virtualización completa no se es capaz

de atrapar ciertas llamadas privilegiadas por lo que se requiere un balance adecuado

entre el hardware y el software. Todo esto dificulta su correcta implementación y uso.

Esto se ve agravado si se considera también que la virtualización completa no

permite la compartición de recursos entre varios equipos virtuales corriendo

simultáneamente y que el sistema operativo anfitrión puede convertirse en un punto

de fallas.

3.1.4.2. Ventajas y Desventajas de la Paravirtualización (3)

Una desventaja principal constituye que las instancias paravirtualizadas de los

sistemas operativos de los equipos virtuales deben ser modificadas para que

reconozcan la capa de virtualización. Ésta necesidad quita flexibilidad a los sistemas

operativos que puedan instalarse sobre el hypervisor; es por esta razón que no

cualquier sistema operativo puede estar listo para ser paravirtualizado.

Este hecho sin embargo trae consigo una de las ventajas más importantes de la

paravirtualización. Puesto que la modificación del sistema operativo Guest ayuda al

hypervisor a evitar las instrucciones difíciles de virtualizar de los procesadores, así el

resultado es un mejor desempeño que el de los equipos virtuales de virtualización

completa. Dichas instrucciones difíciles de virtualizar son reemplazadas con una

llamada de procedimiento que proporciona esa funcionalidad.

La paravirtualización es una tendencia emergente porque logra un mejor rendimiento

de chips existentes; así en el caso de ser implementado sobre hardware anterior a él

presentado por Intel® y AMD® como Intel VT® y AMD-V®, la paravirtualización

proporciona Guest´s que tienden a ser los de mayor rendimiento en cuanto a red y

I/O de disco.

77 Según documento de Novell: “Virtualización en el centro de datos” que se encuentra en

http://passthrough.fw-notify.net/download/035043/http://www.eaktio.com/downloads/FolletoXEN.pdf

117

Hypervisors que proporcionan entornos paravirtualizados como Xen® a la vez que

aprovechan los chips existentes, así también ofrecen potentes ventajas con la

próxima generación de chips x86 que admiten virtualización (los mencionados Intel

VT® y AMD-V®) proporcionando un entorno de virtualización híbrida.

Adicionalmente se puede mencionar que la implementación de paravirtualización es

más fácil que una implementación de virtualización completa; permite compartir

memoria en forma cooperativa entre equipos sin la necesidad de modificar el sistema

operativo host y también mantiene la promesa de ofrecer equipos virtuales

optimizados a la perfección con el sistema operativo host Linux.

A todo esto se suma el hecho que el hypervisor líder en cuanto a paravirtualización es

Xen®, el cual constituye una plataforma de código abierto y software libre78 frente a

desventajas de licenciamiento y costo de soluciones de virtualización completa como

VMware79.

3.1.4.3. Ventajas y Desventajas de la Virtualización Híbrida

La virtualización híbrida, o también llamada nativa, es la técnica de virtualización más

nueva basada en la arquitectura x86. Como ventaja principal se puede mencionar que

constituye una combinación de paravirtualización o virtualización completa con

técnicas de aceleración de I/O.

Otra de las ventajas constituye el hecho que los sistemas operativos Guest no

requieren ser modificados (como sí en la paravirtualización) para poder funcionar en

un este entorno de máquina virtual.

78 Xen® viene incluido gratuitamente en numerosas distribuciones de Linux como CentOS, Debian, Open Suse, etc. Además puede ser descargado en http://www.xen.org/products/xen_source.html.

79 Una distribución empresarial de VMware como VMware ESX puede llegar a costar hasta 3495 U.S.D. :http://www.vmware.com/products/vsphere/buy/overview.html

118

Esta técnica de virtualización saca provecho de las nuevas tecnologías de CPU para

x86 como los ya mencionados Intel VT y AMD –V; a esto se suma el hecho que Xen®

soporta éste tipo de virtualización asistida por hardware.

Permite desestimar las desventajas encontradas en la virtualización completa (en

cuanto a diecisiete instrucciones no virtualizables de la arquitectura x86) mediante el

empleo de trap-and-emulate directamente en el hardware en lugar de realizarlo en

software como lo hacen algunas plataformas de virtualización completa80; éste hecho

permite incrementar su rendimiento.

Por otra parte en combinación con la paravirtualización, la virtualización híbrida saca

el mayor provecho de Hypervisors como Xen®. Así se puede desestimar la

desventaja principal de la paravirtualización en cuanto a la falta de flexibilidad al

momento de elegir el sistema operativo Guest; así es que sistemas operativos

modificados como una distribución de Linux como por ejemplo CentOS® pueden

correr sobre el hypervisor de paravirtualización de Xen® al mismo tiempo que se

puede correr un sistema operativo no modificado como por ejemplo Windows® XP en

un ambiente híbrido con el mismo hypervisor, todo esto mediante el empleo de la

tecnología Intel® VT o AMD- V®.

Este hecho al que se suman las ventajas antes mencionadas de la paravirtualización

convierten a Xen® en un fuerte candidato para la virtualización de servidores.81

Entre otras ventajas adicionales se tiene que con esta técnica de virtualización se

tiene la capacidad de emplear técnicas de aceleración para operaciones de I/O;

además soporta virtualización de sistemas operativos de 64 bits y tiene el mayor

rendimiento en cuanto a CPU, memoria e I/O de entre las máquinas virtuales x86.

80 Es el hecho que en la virtualización “completa” implementada por plataformas como VMware

existen 17 instrucciones no virtualizables que son tratadas mediante procedimientos especiales. Este hecho reduce significativamente el rendimiento de la máquina virtual.

81 Se retomará este tema en el siguiente capítulo.

119

Sin embargo todos estos beneficios se encuentran siempre alrededor de un factor:

requiere de la tecnología de procesador Intel VT® o AMD-V® y además deberán

soportar aceleración asistida de hardware.

Este hecho implica que equipos servidores anteriores a esta tecnología no podrán

emplear la virtualización híbrida. Por este motivo la técnica en cuestión es aplicable

desde algunas últimas versiones de Intel® Pentium 4 en adelante (Para mayor detalle

se puede revisar el anexo A) restringiendo la reutilización de chipset antiguo.

Sin embargo de lo mencionado, el costo de estos últimos procesadores ha reducido

considerablemente, hecho por el cual es muy factible su utilización82.

82

Para revisar los costos de las diferentes alternativas remitirse al anexo A.

120

3.1.

4.4.

C

uad

ro c

omp

arat

ivo

de

los

tip

os p

rin

cip

ales

de

virt

uali

zaci

ón d

e se

rvid

ores

TIP

OS

DE

V

IRT

UA

LIZ

AC

IÓN

D

E S

ER

VID

OR

ES

Ven

taja

s D

esve

nta

jas

Vir

tual

izac

ión

Co

mp

leta

§

Pos

ee

el

más

am

plio

so

port

e en

lo

q

ue

se

refie

re a

los

sist

emas

ope

rativ

os.

§

Pro

porc

ion

a un

a a

bstr

acci

ón t

otal

del

sis

tem

a fí

sico

sub

yace

nte

. §

Per

mite

la

coe

xist

enci

a d

e va

rias

ins

tanc

ias

del

si

stem

a op

erat

ivo,

in

clus

o de

si

stem

as

oper

ativ

os in

com

patib

les

en u

n so

lo s

ervi

dor.

§

No

requ

iere

la

m

odifi

caci

ón

de

sist

emas

op

erat

ivos

invi

tado

s.

§

Req

uier

e d

e té

cnic

as

avan

zad

as

para

at

rap

ar

y em

ular

ins

truc

cion

es p

ropi

as d

e la

s ar

quite

ctur

as

x86

en e

l ru

ntim

e, v

ía p

arch

ado

bina

rio,

lo

cual

af

ecta

el r

endi

mie

nto

del s

iste

ma.

§

No

perm

ite

com

part

ir re

curs

os

en

form

a co

oper

ativ

a a

l ej

ecut

ar d

os e

qui

pos

virt

uale

s e

n la

m

ism

a ca

ja a

l mis

mo

tiem

po.

§

Exi

sten

lim

itaci

one

s re

spec

to

al

cost

o y

la

com

plej

idad

de

las

lice

nci

as.

P

arav

irtu

aliz

ació

n §

Mej

or

dese

mpe

ño

que

el

de

los

equ

ipo

s vi

rtua

les

de v

irtua

lizac

ión

com

plet

a.

§

Logr

a

un

mej

or

rend

imie

nto

de

los

chip

s ex

iste

ntes

ant

erio

res

a In

tel V

y A

MD

-V®

. §

Per

mite

co

mpa

rtir

mem

oria

en

fo

rma

coop

erat

iva

ent

re e

quip

os.

§

Sop

orte

op

timiz

ado

de

Linu

x y

pres

enta

n

plat

afor

mas

de

códi

go a

bier

to y

sof

twar

e lib

re.

§

Sis

tem

as

oper

ativ

os

de

los

equ

ipos

vi

rtua

les

debe

n se

r m

odifi

cad

os.

§

No

cual

qui

er s

iste

ma

oper

ativ

o p

ued

e es

tar

listo

pa

ra s

er

para

virt

ualiz

ad

o.

§

Alg

o de

seg

urid

ad s

e pi

erde

deb

ido

a qu

e to

dos

los

sist

emas

oper

ativ

os

Gue

st´s

tie

ne m

ucho

más

co

ntro

l cer

cano

de

l har

dw

are

sub

yace

nte.

Vir

tual

izac

ión

Híb

rid

a

§

Sis

tem

as

oper

ativ

os

Gue

st

no

requ

iere

n se

r m

odifi

cado

s.

§

Sac

a pr

ove

cho

de

Inte

l VT

® y

AM

D –

. §

Em

pleo

de

trap

-and

-em

ulat

e di

rect

amen

te e

n el

ha

rdw

are

lo

cua

l au

men

ta e

l re

ndim

ient

o en

el

uso

de v

irtua

lizac

ión

com

plet

a.

§

Es

com

patib

le c

on h

yper

viso

rs g

ratu

itos

com

o X

en®

pu

dien

do

corr

er

sist

em

as

para

virt

ualiz

ados

y

sist

emas

op

erat

ivos

n

o m

odifi

cado

s.

§

Req

uier

e de

la t

ecno

log

ía d

e pr

oces

ado

r In

tel V

o

AM

D-V

® y

ade

más

deb

erán

sop

orta

r ac

eler

aci

ón

asis

tida

de h

ard

war

e.

§

Se

rest

ring

e la

reu

tiliz

ació

n de

chi

pset

ant

iguo

.

Tab

la 3

.1 C

ua

dro

co

mp

ara

tivo

de

los

prin

cip

ale

s tip

os

de

virt

ua

liza

ció

n d

e s

erv

idor

es.

121

3.1.5. ANÁLISIS COMPARATIVO ENTRE LAS HERRAMIENTAS DE

VIRTUALIZACIÓN

La elección del tipo de virtualización a utilizar debe estar en acuerdo con la

herramienta que permita darla lugar. Esta situación se ve acentuada en mayor forma

debido a la naturaleza de las herramientas de virtualización, es decir debido a sus

características tanto técnicas como económicas, de soporte y mantenimiento, etc.

que se ajusten en mejor medida a la situación clásica de las PyMES.

De acuerdo a las herramientas de virtualización estudiadas en el primer capítulo, se

ha escogido las más representativas en función de la trayectoria en el mercado, el

porcentaje de utilización por las organizaciones y el respaldo de la casa fabricante.

Estos hechos se ven reflejados en casos de éxito en la aplicación de las mismas y

muestra de buenas características generales de desempeño.

Estas herramientas de virtualización son:

§ VMware®.

§ Microsoft Hyper-V™.

§ Xen®.

A continuación se presenta un cuadro comparativo con las principales características

que nos permitirán la elección de la herramienta adecuada:

122

3.1.

5.1.

C

uad

ro c

omp

arat

ivo

de

los

tip

os p

rin

cip

ales

de

virt

ual

izac

ión

de

serv

idor

es

H

ER

RA

MIE

NT

AS

DE

VIR

TU

AL

IZA

CIÓ

N

VM

war

Mic

roso

ft H

yper

-V™

X

en®

Cre

ado

r /

Fu

nd

ado

r §

VM

war

e

§

Mic

roso

ft

§

Uni

vers

idad

de

Cam

brid

ge

Ho

st C

PU

§

x86

§

x86_

64

§

x86_

64

§

x86

§

x86_

64

§

IA-6

4 §

Po

wer

PC

G

ues

t C

PU

§

x86

§

x86_

64

§

x86

§

x86_

64

§

x86

§

x86_

64

§

IA-6

4 H

ost

OS

§

Linu

x §

Win

dow

s §

Bar

e-m

etal

(E

SX

-Ser

ver)

§

Win

dow

s S

erve

r® 2

008

. §

Net

BS

D

§

Linu

x §

Sol

aris

§

Bar

e-m

etal

(X

en-S

erve

r83)

Gu

est

OS

(O

fici

alm

ente

so

po

rtad

os)

§

Fre

eBS

D

§

Linu

x §

Net

war

e

§

Sol

aris

§

Win

dow

s §

Mac

OS

§

Linu

x84

§

Win

dow

s §

xBS

D

§

Linu

x §

Sol

aris

§

Win

dow

s X

P

§

Win

dow

s S

erve

SM

P85

§

Si

§

Si

§

Si

83 C

read

o p

or X

en

So

urc

e p

rop

ied

ad d

e C

itrix

en

ba

se a

l pro

yect

o o

pe

nso

urc

e X

en

de

la U

niv

ers

ida

d d

e C

am

bridg

e.

84 L

imita

do a

SU

SE

y R

ed

Ha

t.

85 S

op

ort

e p

ara

ltip

les

pro

cesa

dore

s e

n la

s m

áqu

inas

virt

ual

es

123

Tip

o d

e V

irtu

aliz

ació

n §

Virt

ualiz

ació

n co

mpl

eta

§

Par

avirt

ualiz

ació

n86

§

Virt

ualiz

ació

n hí

brid

a

§

Virt

ualiz

ació

n co

mpl

eta

§

Par

avirt

ualiz

ació

n87

§

Virt

ualiz

ació

n H

íbrid

a

§

Par

avirt

ualiz

ació

n

§

Virt

ualiz

ació

n hí

brid

a

Tip

o d

e lic

enci

a §

Pro

piet

aria

: R

etai

l y F

ree

Ret

ail (

VM

war

e E

SX

i)

§

Pro

piet

aria

: R

etai

l (ne

cesa

rio

Win

dow

s S

erve

r® 2

008

) §

GP

L

Co

sto

típ

ico

89 §

$100

0 -

$575

0

§

$299

9 -

$399

9

§

Gra

tuito

88

Uso

típ

ico

§

Des

arro

llo

§

Pru

ebas

§

Ent

rena

mie

nto

§

Con

solid

ació

n de

ser

vid

ores

§

Des

arro

llo

§

Pru

ebas

§

Ent

rena

mie

nto

§

Con

solid

ació

n de

ser

vid

ores

§

Des

arro

llo

§

Pru

ebas

§

Ent

rena

mie

nto

§

Con

solid

ació

n de

ser

vid

ores

V

elo

cid

ad r

elat

iva89

§

Cer

cana

a n

ativ

a c

on V

M

addi

tions

. §

Cer

cana

a n

ativ

a co

n V

M

addi

tions

. §

Más

cer

can

a a

nativ

a90.

So

po

rte

com

erci

al §

Si

§

Si

§

Si9

1

Tab

la 3

.2 C

ua

dro

co

mp

ara

tivo

de

los

pri

nci

pa

les

tipo

s d

e h

erra

mie

nta

s d

e vi

rtu

aliz

aci

ón

de

se

rvid

ore

s.

86 A

tra

vés

de

pa

ravi

rt_

op

s /

VM

I (V

irtu

al M

ach

ine

Int

erf

ace

).

87 P

osi

ble

me

nte

elim

inad

o e

n e

l ke

rne

l 2.6

.33

Fu

en

te:

^ G

reg

Kro

ah

-Ha

rtm

an

(2

009-0

9-0

3).

"S

tag

ing

tre

e st

atu

s fo

r th

e .3

2 k

ern

el m

erg

e".

Lin

ux k

ern

el

ma

ilin

g lis

t.

http

://g

rou

ps.

goo

gle

.co

m/g

rou

p/fa

.lin

ux.

kern

el/b

row

se_

thre

ad/

thre

ad

/65

82a

78d

f3cf

629

1/9

6a

3fd

9cb

a5

77a

ec?

hl=

en

&ln

k=g

st&

q=

Hyp

er+

V#

96a

3fd

9cb

a57

7aec.

88 V

ers

ion

es p

aga

das

co

rre

spon

de

n a

Xe

nS

our

ce d

e C

itrix

co

n u

n p

reci

o p

rom

edi

o d

e $

249

9 (inc

luye

her

ram

ient

as d

e ad

min

istr

ació

n).

El p

roye

cto

Xe

n d

e la

Un

ive

rsid

ad d

e C

am

bridg

e p

ue

de c

ons

eg

uir

se g

ratu

itam

ent

e e

n:

htt

p://

ww

w.x

en.

org

/pro

duc

ts/d

ow

nlo

ads

.htm

l

89E

n c

om

par

aci

ón

con

la v

elo

cid

ad

de

l ha

rdw

are

re

al.

90F

uen

te:

htt

p://

ww

w.it

com

par

iso

n.co

m/V

irtu

aliz

atio

n/X

en

vsvi

3/x

en

vsvm

wa

re3

esx

.htm

y

http

://w

ww

.itco

mp

aris

on.

com

/Virt

ual

iza

tion

/MS

20

05R

2vs

xen/

MS

20

05R

2vs

Xe

n.h

tm

91 P

ara

ve

rsio

nes

de

Xe

nS

erv

er.

Pa

ra X

en

no

exi

ste

so

por

te c

om

erc

ial,

sin

em

bar

go

po

r su

na

tura

leza

op

en s

our

ce, e

l so

por

te d

e la

co

mu

nid

ad x

en.

org

es

cla

ram

ent

e id

ent

ifica

ble

.

124

De las herramientas de virtualización antes vistas se puede observar en el cuadro

una gran mayoría de características comunes; sin embargo en las diferencias

encontradas se marca la decisión para la adopción de una de éstas tres

herramientas.

Así, entre los principales aspectos que difieren estas herramientas son:

§ Tipo de virtualización

§ Soporte de sistemas operativos Host OS

§ Soporte de sistemas operativos Guest OS

§ Velocidad relativa o desempeño

§ Tipo de licenciamiento

§ Costos

Entre las características concluyentes se puede destacar lo siguiente:

Hyper-V™ de Microsoft ofrece una solución de virtualización que aprovecha las

características de los nuevos procesadores Intel-VT y AMD-V; por tal motivo su

modelo se basa en la virtualización híbrida asistida por hardware.

Éste hecho, sin embargo, limita la aplicación de la infraestructura únicamente a

equipos servidores nuevos que empleen las nuevas tecnologías introducidas por Intel

y AMD, dejando de lado así a servidores funcionales y de rendimiento óptimo pero

que no poseen este hardware en cuestión.

Si por otro lado el datacenter a implementar es nuevo, los precios de adquisición de

equipos Intel® y AMD® con soporte para virtualización es cada vez más asequible.

Así con este requerimiento fundamental, Hyper-V de Microsoft proporciona

funcionalidades muy interesantes como migración rápida, alta disponibilidad o

backups en vivo, etc. las cuales junto con las herramientas de administración

incluidas, le dan una ventaja competitiva.

Todo este hecho, por otra parte, va de la mano con la característica de software

licenciado como lo es Windows Server® 2008 (que debe ser instalado en un parent

125

partition de Hyper-V™), cuyos costos de licenciamiento lo hacen menos atractivo

frente a otras ofertas de virtualización.

Adicionalmente es muy importante tomar en cuenta que esta nueva oferta de

Microsoft® se encuentra dando sus primeros pasos, que aunque ya ha pasado por

versiones beta y otras versiones anteriores, sin embargo tiene aproximadamente 3 o

más años de retraso en investigación y soporte frente a proyectos como Xen® o

VMware® de rendimiento probado.

A todo esto se añade el hecho que son limitadas las distribuciones de Linux que

pueden correr sobre Hyper-V™, hecho que quita flexibilidad a la implementación y

tiende a elevar costos (por el hecho de orientarse a virtualización de Guest Oses

propietarios como Windows) por cada licencia del sistema operativo Guest. En una

implementación básica los costos pueden llegar a sobrepasar los 50000 dólares92 con

herramientas de licencia Retail.

Por otra parte, VMware presenta una amplia gama de productos de gran desempeño

(gratuitos y no gratuitos), destacándose VMware ESX que no requiere de un sistema

operativo base, sin embargo, los productos gratuitos son solo útiles para uso personal

y los que presentan las mejores funcionalidades para las empresas tienen un costo

relativamente alto el cual es un factor muy importante a considerar.

VMware presenta una solución muy atractiva, inclusive proporcionando virtualización

completa, híbrida y paravirtualización. Sin embargo el desempeño no es el mismo

comparado a con otras herramientas de uso de paravirtualización; la

paravirtualización utilizada es la llamada “paravirtualización transparente”, la cual es

diferente a la paravirtualización “tradicional” (usada por Xen) la cual se encuentra

todavía en desarrollo. Además el performance obtenido aún no llega a ser semejante

al de un entorno paravirtualizado.

92 Tal como se puede demostrar en http://www.microsoft.com/windowsserver2008/en/us/server-calculator/default.aspx, con una arquitectura básica de virtualización con cuatro máquinas virtuales de sistema operativo propietario Windows.

126

VMware es una excelente opción para grandes empresas93 pero resulta poco

accesible e inconveniente para las pequeñas y medianas, si se considera el alto costo

que representa su licenciamiento.

Finalmente se tiene a Xen® hypervisor, el cual constituye una solución muy

interesante para la implementación de servidores virtuales. Sus características de

licenciamiento, soporte de Guest OS, costos, sistema operativo anfitrión Linux y

rendimiento convierten a Xen en un candidato perfecto para las PyMES como se

podrá mostrar a continuación.

3.1.6. CONCLUSIÓN SOBRE LA ELECCIÓN DE LA SOLUCIÓN DE

VIRTUALIZACIÓN

Por los datos proporcionados en los temas precedentes se procede a la selección de

la siguiente solución de virtualización:

Implementación Servidor Virtualizado para PyMES

Tipo de Virtualización Paravirtualización Virtualización Híbrida

Herramienta de Virtualización Xen® Sistema operativo anfitrión

(Host OS) GNU - Linux

Tabla 3.3 Selección de la solución de virtualización

Es así que el prototipo de servidor virtualizado se implementará en basa a la

paravirtualización y virtualización híbrida sobre una distribución de GNU-Linux a

través del hypervisor que permite dichas características: Xen®, por los siguientes

motivos:

§ Permite obtener los beneficios característicos de rendimiento de la

paravirtualización y el aprovechamiento de la virtualización híbrida propio de

las nuevas tecnologías de procesadores con soporte para virtualización. Es

93 “Las soluciones de VMware se utilizan en más de 150.000 organizaciones de TI de todo el mundo, incluidas todas las empresas de la lista Fortune 100” Tomado de:

http://www.vmware.com/es/overview/why.html

127

así que se implementa una solución de compatibilidad con Intel-VT, AMD-V,

así como con tecnologías precedentes;

§ Se brinda soporte de sistemas operativos modificados para entornos

paravirtualizados de alto rendimiento así como también de sistemas operativos

no modificados dando así la posibilidad de correr eficientemente Linux y

Windows® en un mismo equipo;

§ Se proporciona una solución de naturaleza open source y de software libre

que permite abaratar costos sin estar acosta de altas características técnicas

de rendimiento y estabilidad permitiéndose incluso obtener las últimas

versiones y actualizaciones totalmente gratis o inclusive pre instalado en

varias distribuciones de Linux;

§ La solución de virtualización corre sobre un sistema operativo Host de

características de software libre y open source, hecho que también abarata los

costos para una implementación en las PyMES y brinda altas características

de estabilidad;

§ Posee herramientas de administración de las máquinas virtuales o incluso se

abre la posibilidad de poder generales (por el hecho open source); A esto se

añade características de alta disponibilidad como Live Migration de VM´s;

§ Se brinda soporte a varias arquitecturas tanto como x86, x86_64 IA64, entre

otras;

§ El soporte técnico está respaldado por la cada vez creciente comunidad de

software libre y open source alrededor del mundo, así como de empresas

(Citrix, Novell) que han adoptado a Xen® como su principal herramienta de

virtualización.

§ Finalmente, la paravirtualización en conjunto con la virtualización híbrida,

Xen® y Linux® permiten la creación de un sistema de alta estabilidad que

permite alcanza las características objetivas del presente proyecto como son:

128

ü Eficiencia a través de un entorno de virtualización al que se suman las

características de ser paravirtualizado y de virtualización híbrida.

ü Flexibilidad a través de la virtualización Híbrida y Xen® que permiten

correr sistemas operativos Guest ya sean modificados o no modificados

ajustándose de acuerdo a los requerimientos de la organización.

ü Escalabilidad a través de la naturaleza de la virtualización y de Xen®

que permite en tiempo real disponer de Máquinas Virtuales según el

crecimiento o las necesidades de carga requeridas por la organización

ü Solución Económica94 a través del uso de herramientas de software

libre y open source y de altas características técnicas como son Xen® y

GNU-Linux.

Por los motivos anteriores la solución presentada brinda una plataforma de

virtualización con muy buenas características tanto técnicas como económicas para

su implementación en organizaciones, abriendo así una gran puerta de solución para

las pequeñas y medianas empresas PyMES.

3.2. XEN

3.2.1. INTRODUCCIÓN

Como se mencionó en el capítulo 1, Xen es una solución de virtualización de código

abierto para procesadores de 32 y 64 bits, desarrollada en la Universidad de

Cambridge que basa su funcionamiento en la paravirtualización y en la virtualización

híbrida.

El objetivo del proyecto fue el desarrollar una infraestructura poderosa y flexible para

la computación distribuida, una parte clave de esto fue el permitir a las máquinas

correr múltiples y diferentes instancias de sistemas operativos con sus respectivas

aplicaciones de manera independiente una de otra. Una vez que se consideró que

dichos objetivos se estaban cumpliendo, se liberó al público la primera versión del

VMM de Xen en el año de 2003 por parte de la compañía XenSource que continuó

94 Para mayor información referirse al Capítulo 2: Aplicabilidad de la arquitectura servidor virtualizado para facilitar la operación de las PyMES.

129

desarrollando el sistema hasta el año 2007 en el que el proyecto fue vendido a Citrix

Systems que continúa con el mismo.

Para su funcionamiento, un sistema Xen dispone de múltiples capas, siendo la más

baja y con más privilegios Xen, para comprender como obtiene sus privilegios, se

explicará brevemente los modos de acceso de los procesadores:

Los procesadores suelen correr en diferentes modos de protección para restringir el

acceso al procesador físico y los recursos de dispositivos, en la arquitectura x86

existen tres modos de acceso principales para acceder a los recursos: Real mode,

System Management Mode (SMM) y Protected Mode; este último presenta múltiples

niveles de acceso que se conocen como Anillos (Rings) numerados desde el 0 hasta

el 3 en los procesadores actuales.

Figura 3.4 Anillos de protección del Modo Protegido de un Procesador.

En los sistemas operativos, el kernel corre sobre el anillo 0 o modo supervisor que

tiene acceso ilimitado, esto le permite controlar todo el hardware y la memoria del

equipo. Por otro lado las aplicaciones y procesos corren en el anillo 3 denominado

modo de usuario.

130

Xen corre su hypervisor en el anillo 0, esto le permite mediar el acceso al hardware

por parte de las máquinas virtuales. Por otro lado los kernels parchados corren en

anillos menos privilegiados. Es decir que Xen administra los accesos a los recursos

de memoria y hardware mediante la combinación de su hypervisor y un kernel

modificado Xen con privilegios, este kernel viene a recibir el nombre de domain0

(dom0).

Un dominio es una instancia de una máquina virtual de Xen corriendo sobre un

hardware específico, y su función es la de hacer un uso efectivo de los recursos

disponibles. El dominio 0 es el primer dominio que se crea automáticamente cuando

se inicia el sistema y es el encargado de la creación de otros dominios llamados

huéspedes (domainU - domU) y sus dispositivos virtuales, al igual que de ciertas

tareas administrativas como las migraciones de máquinas virtuales. El dom0 es capaz

de crear, modificar, conectar o terminar a un domU; para lograr esto emplea ciertos

archivos de configuración que brindan información detallada del dominio huésped.

Dentro del dom0 es donde corre el proceso de Xen, llamado xend (/usr/sbin/xend),

este es el responsable de la administración de las máquinas virtuales y del acceso a

sus consolas. Además de esto Xen brinda una aplicación administrativa vía línea de

comandos para la realización de distintos tipos de configuraciones, esta recibe el

nombre de Xen Managment (xm).

En la mayoría de los casos Xen emplea la paravirtualización como su método de

virtualización, como se vio anteriormente, esto quiere decir que emplea un sistema

operativo huésped modificado para lograr obtener un rendimiento muy similar al

nativo y excelentes capacidades administrativas. Sin embargo también es capaz de

emplear una virtualización híbrida, esto quiere decir que puede correr un sistema

operativo sin modificaciones. Para lograr esto se requiere el empleo de procesadores

especiales por lo que se le denomina virtualización asistida por hardware (Intel VT o

AMD-V). Estos procesadores disponen de nuevas instrucciones para permitir

llamadas directas de un huésped paravirtualizado.

131

3.2.1.1. Problemas de la Virtualización en x86

Uno de los más serios problemas de la virtualización es la dificultad de hacerlo en las

arquitecturas x86, como se mencionó en el capítulo 1, esto es debido a que este tipo

de arquitectura no está enfocada para la virtualización, específicamente la

virtualización completa, debido a que no es capaz de atrapar ciertas llamadas cuando

son ejecutadas con privilegios insuficientes entre los sistemas operativos huéspedes

y el hardware.

En la mayoría de soluciones de virtualización lo que se hace para solucionar este

problema es el monitoreo constante de las instrucciones que envía la máquina virtual,

sin embargo esto presenta un impacto en el rendimiento. Xen, por otro lado, ataca el

problema empleando la paravirtualización, es decir que emplea un pequeño VMM que

corre directamente en el hardware y se encarga de las complejidades de nivel bajo,

dejando lo de nivel superior al sistema operativo huésped.

Cuando el hardware no brinda soporte para virtualización, el VMM de Xen requiere

que sus máquinas virtuales usen una versión modificada del sistema operativo para

evitar instrucciones privilegiadas. Aunque se debe modificar el kernel del sistema

operativo para soportar Xen, este es el único cambio requerido, es decir que no se

deben modificar las aplicaciones y librerías.

3.2.2. ARQUITECTURA

La arquitectura de Xen® es la de una infraestructura paravirtualizada a la que se

agregan elementos específicos para el funcionamiento de éste hypervisor.

Así, ésta se encuentra formada por:

§ Hypervisor

§ Guest OS

§ Aplicaciones

132

La estructura de una infraestructura de paravirtualización se la realiza en base al

manejo de los aros de seguridad o ring´s de una arquitectura computacional.

Así, como se mencionó anteriormente, en una arquitectura x86 se cuenta con varios

aros de seguridad numerados de 0 a 3 dependiendo del grado de privilegios que

éstos tengan. Éstos aros permiten la asignación de privilegios a las diferentes capas

de un sistema (SO, aplicaciones, procesos) para su acceso a recursos del sistema. El

aro 0 es el de mayor privilegio y el aro 3 es el de menor privilegio. Comúnmente los

aros más usados son el 0 y 3, quedando libres los aros 1 y 2.

En una implementación tradicional donde el Sistema Operativo corre directamente

sobre el hardware, éste se encuentra ejecutándose en el aro de mayor privilegios (aro

0) y las aplicaciones se encuentran ejecutándose en el aro de seguridad 3. Así de

esta manera se brinda al SO el control de los recursos de hardware y a las

aplicaciones acceso restringido por cuestiones de seguridad.

Para que un ambiente virtualizado funcione, sin embargo, es necesario ubicar a los

varios SO Guest en otro aro de seguridad (a fin de que no todos éstos corran sobre el

aro de mayor privilegio causando conflictos entre sí por la ejecución directa de

instrucciones privilegiadas y perdiendo aislamiento mutuo) y así corran sobre el

hypervisor ubicado en un aro con el mayor grado de privilegios y permitir

virtualizarlos.

La solución implementada en la paravirtualización y por Xen® es el ubicar al SO

Guest en el aro de seguridad 1 y al hypervisor en el aro 0. Las aplicaciones se

mantienen en el aro 3; como se muestra en la figura 3.4.

Así el resultado es una arquitectura formado por 3 capas:

§ ARO 0: Hypervisor

§ ARO 1: Guest OS

§ ARO3: Aplicaciones

133

Cabe indicar que Xen® puede ir embebido en un sistema operativo anfitrión

modificado95 (Host OS), en cuyo caso en el aro 0 se encuentra el SO Host (dom0);

esta implementación constituye un tipo de hypervisor Non Hosted.

Figura 3.5 Aros de seguridad Arquitectura Nativa vs. Paravirtualizada. Fuente: The Definitive Guide to Xen® Hypervisor. David Chisnall, Prentice Hall 2007. Pág. 17.

Ésta organización de la paravirtualización se ve complementada con los

componentes que Xen® implementa para el manejo de la infraestructura virtualizada.

Estos componentes básicos son:

§ Virtual CPU

§ Virtual Memory

§ Virtual Block Devices (Disco)

§ Virtual Device I/O

La función de los componentes anteriores es la de proporcionar una máquina virtual a

cada instancia de SO creada a fin de emular el hardware real sobre el que se debe

95 Por ejemplo CentOS 5.3 incluye un kernel modificado en el que se incluye una versión de Xen ®Hypervisor.

134

ejecutar. Cabe recordar que no todo el hardware es emulado en un ambiente de

paravirtualización lo cual le brinda un mejor rendimiento.

Los componentes mencionados anteriormente: Virtual CPU, Virtual Memory son

manejados por el hypervisor y los dispositivos virtuales Virtual Device I/O por un

dominio especial llamado Dom0. Estas consideraciones se explicarán más adelante.

La arquitectura de Xen® se ve complementada con el dominio de administración y

control de las máquinas virtuales Dom0. Éste control permite la creación y

terminación de dominios, control de parámetros de scheduling, creación y eliminación

de dispositivos de red y almacenamiento, muestra de estadísticas básicas de

rendimiento de las VM´s entre otros aspectos.

Cada una de las máquinas virtuales VM´s que yacen sobre el hypervisor son

llamadas dominios (DomU). Así es posible tener Dom1, Dom2, Dom3, etc. todas bajo

la administración y control del Dom0.

Así una primera arquitectura de Xen® es la vista en la figura 3.5:

Figura 3.6 Arquitectura básica de Xen®. Fuente: The Definitive Guide to Xen® Hypervisor. David Chisnall, Prentice Hall 2007. Pág. 24.

135

Sin embargo para que un sistema operativo Guest pueda funcionar sobre un

ambiente de paravirtualización (en función que no se implementa una emulación

completa del hardware subyacente), éste debe ser modificado a fin de poder manejar

correctamente elementos de Memoria, CPU y Dispositivos de I/O limitándose así la

utilización de sistemas operativos no modificados.

Xen® permite trabajar con las nuevas tecnologías de procesadores como Intel VT® o

AMD – V® que prestan la introducción de la virtualización asistida por hardware o

como se ha conocido en el presente trabajo de investigación como virtualización

Híbrida.

En este caso la solución de Xen® es el combinar la técnica de paravirtualización con

la asistencia del hardware para virtualización. Así de esta manera se permite la

inclusión de virtualización de sistemas operativos no modificados (HVM Guest´s, o

Hardware Virtual Machine Guest´s) ofreciendo una capa común de abstracción.

Así de lo visto, la arquitectura de Xen® se sintetiza en la siguiente figura:

Figura 3.7 Arquitectura de Xen®, SO modificados (color verde) y SO no modificados (color naranja). Fuente: (13). Pág. 5.

136

3.2.3. IMPLEMENTACIÓN DE LA ARQUITECTURA SERVIDOR

VIRTUALIZADO CON LA HERRAMIENTA XEN

En base al diseño principal del prototipo de centro de datos para PyMES (figura 3.3),

se presenta a continuación una solución de prototipo virtualizado haciendo uso de la

herramienta elegida en el punto 3.1.6.

Recalcando lo visto a lo largo de los capítulos 1, 2 y 3, en esta implementación de la

arquitectura servidor virtualizado se busca consolidar los servidores necesarios sobre

una única pieza de hardware a fin de obtener los beneficios de la virtualización de

servidores: escalabilidad, seguridad, confiabilidad, disponibilidad, ahorro de recursos,

mejor utilización de la infraestructura. Las características técnicas que el hardware

real debe tener serán analizadas en el capítulo 5.

137

Prototipo de DataCenter Virtualizado para PyMES.

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13

13777777777777777777777777777777777777777777777777777777777777777777777

Fig

ura

3.8

Pro

totip

o d

e D

ata

Ce

nte

r V

irtu

aliz

ad

o p

ara

PyM

ES

.

138

3.2.3.1. Instalación

La distribución de Xen tiene tres componentes principales: Xen, puertos de Linux y

NetBSD para correr en Xen y las herramientas de usuario para administrar un

sistema basado en Xen.

3.2.3.1.1. Requerimientos para la instalación

Los requerimientos de hardware para correr el dom0 de Xen son:

· CPU: Pentium - 4 (o mejor) de 1.5 GHz o mejor. Actualmente Xen soporta

sistemas de hasta 32 procesadores. Se debe recalcar que para correr

sistemas Hardware Virtual Machine (HVM) se requiere un procesador con

soporte de virtualización vía hardware como Intel VT o AMD-V.

· Motherboard: Si el procesador tiene soporte de virtualización vía hardware,

también debe activarse el mismo en el BIOS del motherboard.

· Memory: 1GB o más es sugerido, se recomienda 2GB o más. El valor depende

del número de máquinas virtuales a correr simultáneamente y su cantidad de

memoria.

· Disco Duro: Depende del tamaño de las máquinas virtuales existentes.

· Tarjeta de Red: 100 Mbps o mejor.

También se requieren de paquetes de software para correr Xen:

· Bridge utilities: Permite configurar las interfaces de red virtuales y hacer

puentes entre la tarjeta física u la virtual.

· GRUB: GRUB (GRand Unified Bootloader) es el cargador de inicio para los

sistemas Linux.

· SSL cryptographic libraries

· iproute: brinda utilidades para administrar a IP y las opciones de ruteo, esto se

usa para configurar las comunicaciones entre sistemas dom0 y domU y otras

redes.

· Python: Lenguaje de Programación Orientado a Objetos en que se han escrito

varias herramientas de Xen.

139

· zlib: librería de compresión Open Source usada por Xen.

Para tener acceso gráfico a las consolas domU se necesita el sistema de ventanas X

y uno de los siguientes paquetes:

· libvncserver: Librería para hacer visible la consola gráfica de una máquina

virtual en aplicaciones que usan el protocolo VNC (Virtual Network Computing)

· libsdl: La Simple DirectMedia Layer (SDL) es una librería para indicar

directamente la consola gráfica en un sistema de ventanas X sin requerir

conexión remota como con VNC.

3.2.3.1.2. Instalación

Una vez comprobados que se cumplan todos los requisitos se puede proceder a la

instalación de Xen. Lo primero que se requiere son los paquetes de instalación de

Xen, esto se puede conseguir desde la página

http://www.xen.org/products/xen_source.html, vale la pena mencionar que al ser una

aplicación de virtualización tan popular el paquete suele venir embebido en la

mayoría de las distribuciones de Linux más populares.

Figura 3.9 Descarga del paquete de Xen.

140

Los paquetes de instalación de Xen pueden conseguirse en formato de paquete RPM

o una distribución de la fuente en un archivo tar. Para realizar una instalación de un

paquete descargado vía consola de comandos, en el caso de disponer del archivo tar,

se procede a descomprimir e instalar:

# tar zxvf xen-x.x-install.tgz

# cd xen-x.x-install

# sh ./install.sh

Figura 3.10 Descompresión del paquete de Xen.

Figura 3.11 Instalación del paquete de Xen.

En el caso de disponer de los RPMs, se emplea el comando rpm:

# rpm -iv rpmname

Una vez instalado el paquete se debe comprobar la creación del kernel modificado y

la correcta instalación de Xen.

141

Figura 3.12 Comprobación de la correcta instalación del paquete de Xen.

A continuación se muestra la instalación de Xen empleando la interfaz gráfica del

Administrador de Paquetes que dispone CentOS. Se tiene dos formas de localizar los

paquetes necesarios, se puede buscar la categoría de Virtualización y seleccionarla:

Figura 3.13 Búsqueda e instalación de los paquetes requeridos para virtualización en CentOS.

También se puede buscar a Xen Hypervisor, una vez que se seleccione el paquete de

Xen automáticamente se seleccionarán todos los paquetes requeridos.

142

Figura 3.14 Búsqueda de los paquetes de Xen Hypervisor.

Una vez concluida la instalación se puede comprobar la ubicación del kernel

modificado para Xen.

Figura 3.15 Comprobación del aparecimiento del kernel modificado de Xen en /boot/.

143

3.2.3.2. Configuración del GRUB

Una vez instalado Xen, es necesario el añadir una entrada al GRUB para permitir la

carga del kernel modificado de Linux que permite la ejecución de Xen. Esta entrada

debe añadirse en el archivo /boot/grub/menu.lst (también puede ser /boot/ grub.conf

en ciertas distribuciones).

La entrada que debe añadirse es una similar a:

En esta entrada, la palabra title precede al título que se mostrará en el menú de

elección del sistema operativo, root indica el disco a emplearse, kernel dice al GRUB

el lugar donde encontrará a Xen y los parámetros de arranque, module indica la

ubicación del kernel modificado a cargarse junto con sus respectivos parámetros.

Una vez añadida esta entrada, cada vez que se encienda el equipo aparecerá en el

menú la opción de cargar esta versión de Linux con el kernel modificado para su uso

con Xen.

3.2.3.3. Configuración y creación de Máquinas virtuales

Al arrancar el sistema con Xen, automáticamente arranca el dominio de

administración dom0, a través del cual se pueden crear y cargar otros dominios. Para

la creación de un nuevo dominio es necesario realizar tres acciones: inicializar el

demonio de Xen (xend start), preparar un archivo de sistema o partición a actuar

como disco duro de la nueva máquina virtual (se puede emplear un archivo de

imagen, una partición completa de Linux, un LVM, entre otros), y finalmente se debe

crear un archivo de configuración con los parámetros de la máquina virtual.

title CentOS (2.6.18-164.el5xen) root (hd0,0) kernel /xen.gz-2.6.18-164.el5 module /vmlinuz-2.6.18-164.el5xen ro root=LABEL=/ pci=nommconf rhgb quiet module /initrd-2.6.18-164.el5xen.img

Espacio de Código 3.1 Código a introducirse en el archivo menu.lst para permitir el inicio del kernel de Xen.

144

3.2.3.3.1. Archivo de configuración de dominio

El archivo de configuración del dominio es aquel que contiene los parámetros para

brindar a la máquina virtual los recursos requeridos y configurar sus parámetros. Al

instalar Xen se incluyen archivos de configuración de ejemplo que pueden resultar

muy útiles.

Los archivos de configuración tienen un formato del tipo variable = valor en el que

cada línea corresponde a un parámetro de configuración. Los parámetros de

configuración son:

· kernel: El path a la imagen del kernel.

· ramdisk: El path a la imagen del ramdisk.

· memory: Tamaño de la memoria en megabytes.

· vcpus: El número de CPUs virtuales.

· console: Puerto para exportar la consola del dominio (por default es 9600 + el

ID del dominio).

· vif: Configuración de la interfaz de red. Aquí se puede configurar la dirección

IP, MAC, el tipo de puente, el nombre, entre otros. Cada cadena de caracteres

representa a una interfaz y si no se especifican los parámetros Xen pondrá

valores por default inteligentes. Ej.

vif = [ 'mac=00:16:3E:00:00:11, bridge=xen-br0', 'bridge=xen-br1' ]

· disk: Lista de los dispositivos de bloque a exportar al dominio. Ej.

disk = [ 'phy:hda1,sda1,r' ]

En este caso se dice que el medio físico de dom0 llamado /dev/hda1

(phy:hda1) se exportará al domU con el nombre de /dev/sda1 (sda1) y

tendrá derechos de lectura y escritura (r). Se puede emplear

tap:aio:/path/al/archivo para emplear el driver blktap en lugar del de

loopback en los file-backed VBD esto permite entrada y salida

asincrónica (aio - asynchronous I/O). Al usar esto se debe exportar al

domU con el nombre xvda.

· dhcp: Establece DHCP.

· netmask: Configura una máscara de red de manera manual.

145

· gateway: Configura una ruta de enlace predeterminada de manera manual.

· name: Configura un nombre de host para la máquina virtual.

· root: Identifica el dispositivo root en el kernel del domU y especifica los

argumentos para el montaje inicial.

· nfs: Dirección IP del servidor NFS.

· nfs root: Path hacia el archivo de sistema root del servidor NFS.

· extra: Cadena de caracteres extra para añadir a la línea de comandos del

kernel.

· pci: Se necesita añadir este parámetro si se está escondiendo dispositivos de

hardware del dom0 pero se desea usarlos en el domU. Ej.

pci= [ ‘00:09:0’ ]

Esto quiere decir que el dispositivo PCI con la identificación 00.09.0 se

usará en el domU

· on_poweroff, on_reboot, on_crash: Especifican el comportamiento que

debe tener el dominio en caso de apagado, reiniciado, o caída

respectivamente. El dominio puede destruirse (destroy) o reiniciarce (restart).

A continuación se muestra el archivo de configuración de una de las máquinas

virtuales creadas para el presente proyecto. La máquina corresponde a un servidor

http:

# # Archivo de configuracion para la instancia de Xen # vhttp_lc_256_10.img creado por JJBS y DSCA el # Thu Aug 6 19:36:31 ECT 2009. # # # Kernel + tamaño de memoria # kernel = '/boot/vmlinuz-2.6.18-92.1.22.el5xen' memory = '256' bootloader = "/usr/bin/pygrub" # # Dispositivo(s) de disco. # disk = [ "tap:aio:/vm/servidores/vhttp/vhttp_lc_256_10.img,xvda,w" ] # # Hostname # name = 'vhttp'

146

# # Networking # dhcp = 'dhcp' vif = [ 'ip=192.168.0.204,mac=00:16:3e:3b:c0:cf,bridge=xenbr0' ] # # Comportamiento # on_poweroff = 'destroy' on_reboot = 'restart' on_crash = 'restart' # # Visualización # vnc = 1 sdl = 0

3.2.3.3.2. Configuración de la Red

Las comunicaciones de la red de las máquinas virtuales son manejadas a través del

Dom0. El Dom0 permite la asociación de las interfaces reales con las interfaces

virtuales. Este proceso se da mediante la utilización de drivers de backend

correspondientes a los drivers del hardware real en el Dom0 y dirvers front-end en los

DomU correspondientes a dispositivos genéricos. Este hecho permite la

independencia del hardware real, en cuanto a dispositivos de red, de los emulados en

la VM.

Cada máquina virtual denomina a sus interfaces de red como eth#. Así por ejemplo

una VM con dos interfaces de red las denominará por defecto eth0 y eth1.

Estas interfaces son asociadas a interfaces virtuales creadas en el Dom0 denomindas

vif´s o virtual interfaces.

Cada dominio posee su interfaz asociada a su Dom#Id (identificador creado al

momento de la inicialización de una VM). Así el Dom0 posee las interfaces vif0.x, el

Dom1 las interfaces asociadas a vif1.x, etc. El valor correspondiente a la x es definido

por el número de interfaces creadas en los dominios virtuales; así por ejemplo si en

un dominio Dom#ID crea dos interfaces de red (eth0 y eth1), las interfaces asociadas

Espacio de Código 3.2 Archivo de configuración del dominio para un servidor

147

en el Dom0 serán vif#ID.0 y vif#ID.1, y así para un Dom3 con dos interfaces tendrá

las interfaces virtuales vif3.0 y vif3.1.

Cuando un DomU es apagado las interfaces de red virtuales creadas son eliminadas,

pudiendo ser usadas por otro dominio que posea el mismo identificador.

Las interfaces del Dom0 (vif0.x) son asociadas a las interfaces reales y usadas de

acuerdo a lo que se requiera en la configuración de la red. Estas interfaces son

llamadas veth o eth.

Esta descripción se puede observar en la figura siguiente:

Figura 3.16 Diagrama de dispositivos de red de los Dominios virtuales. Fuente: wiki.xensource.com/xenwiki/XenNetworking

Las direcciones MAC de las tarjetas Ethernet creadas pueden ser especificadas en el

archivo de configuración de las VM; la configuración en el archivo de creación de las

VM´s deberá especificarse por ejemplo así: vif = ['mac=aa:00:00:00:00:11'] o bien no

incluir en cuyo caso será configurado dinámicamente por Xen.

En base a estas configuraciones iniciales es posible realizar tres tipos de

configuraciones de red las cuales son:

148

§ Bridged Networking

§ Routed with Nat Networking

§ Two way Routed Network

La configuración del tipo de configuración se lo hace a través de scripts localizados

en: /etc/xen/xend-config.sxp

§ Bridged Networking

Esta configuración permite conectar múltiples redes correspondientes a las VM´s

directamente a un dispositivo de red físico a través de la asociación a una tarjeta de

red real del hardware subyacente.

La noción de Bridged Networking es la de un switch virtual a la que se conectan las

VM´s configuradas a pertenecer a éste. El nombre que Xen asigna por defecto a esta

configuración es la de xenbr.

El funcionamiento se da mediante la asociación de las tarjetas de red de las VM´s

(DomU) a las interfaces virtuales vif`s del Dom0 y éstas a una abstracción de la

tarjeta real denominada eth o veth. Un diagrama general de la presente configuración

es la siguiente:

Figura 3.17 Ilustración 2 de Bridged Networking. Fuente: wiki.xensource.com/xenwiki/XenNetworking

149

Como se puede observar, todas las máquinas (virtuales y no virtuales) se encuentran

configuradas dentro del mismo rango de direcciones IP. El Dom0 actúa como un hub

virtual haciendo un forwarding del tráfico.

La configuración se la realiza agregando las siguientes líneas al archivo

/etc/xen/xend-config.sxp, las cuales llaman a los scripts network-bridge y vif-bridge.

§ Routed with Nat Networking

Esta configuración permite que los equipos virtuales servidores provean de sus

servicios mediante un Nateo realizado a través del Dom0.

La noción de Nat Networking es la de un switch virtual a la que se conectan las VM´s

configuradas a pertenecer a éste.

Un diagrama general de la presente configuración es la siguiente:

Figura 3.18 Ilustración de Routed with Nat Networking. Fuente: wiki.xensource.com/xenwiki/XenNetworking

(network-script network-bridge)

(vif-script vif-bridge)

Espacio de Código 3.3 Código para configuración tipo bridge.

150

En el diagrama anterior se puede observar que las VMs están en una difieren red

privada LAN. Para alcanzar el tráfico de las otras redes las VM´s deben ser nateadas

desde el Dom0.

Esta configuración permite a las VM´s pertenecer a redes privadas independientes y

que los servicios sean entregados a nombre de la IP configurada en el Dom0; así de

esta manera se impide a los host´s de la red ver directamente a los servidores. Esta

situación agrega más seguridad a la configuración.

La configuración se la realiza agregando las siguientes líneas al archivo

/etc/xen/xend-config.sxp, las cuales llaman a los scripts network-nat y vif-nat.

§ Two Way Routed Network

Esta configuración brinda las mismas características de independencia de la red

privada de los servidores tal como la configuración anterior. La diferencia es que los

servidores pueden ser alcanzados directamente por los host´s mediante el uso de

rutas configuradas en Dom0 que permitan interconectar redes diferentes.

Figura 3.19 Ilustración de Routed Networking. Fuente: wiki.xensource.com/xenwiki/XenNetworking

(network-script network-nat)

(vif-script vif-nat)

Espacio de Código 3.4 Código para configuración de Network Nat.

151

En el diagrama se observan a los DomU´s en una red diferente a la de la red

corporativa. El tráfico de cada DomU necesita ser ruteado para ser enviado fuera de

su red.

La configuración se la realiza agregando las siguientes líneas al archivo

/etc/xen/xend-config.sxp que llaman a los scripts network-route y vif-route.

3.2.3.3.3. Configuración utilizada

De los tipos de configuración analizados, se ha escogido para el presente diseño del

prototipo el tipo Bridged al que se le añade un router virtual. Esta configuración nos

permitirá obtener los siguientes beneficios:

§ Facilidad de configuración de los dispositivos de red de las VM´s para dar

lugar a la agrupación de los servidores virtuales en redes diferentes.

§ Se reduce el efecto de broadcasts por la segmentación de la red a través

del router virtual.

§ Se agrega mayor seguridad tanto a la red interna como a la red externa y

mediante la aplicación de reglas especiales de control de tráfico entre los

diferentes dominios y los hosts de la red mediante el router virtual

§ Posibilidad de balanceo de carga de las interfaces de red mediante la

especialización de las mismas a cada necesidad de las VM´s.

Con esto se logra cumplir con los siguientes puntos del diseño como se ven a

continuación:

(network-script network-route)

(vif-script vif-route)

Espacio de Código 3.5 Código para configuración de Two Way Routed

152

Figura 3.20 Bridges configurados según diseño.

La configuración de Bridged Networking por defecto permite utilizar una sola NIC y un

Bridge. En la presente implementación se usarán dos NIC´s (eth0 y eth1) asociadas a

dos Bridge (xenbr0 y xenbr1). Estos cambios se lo hacen a través de Scripts

localizados en la máquina anfitriona en: /etc/xen/xend-config.sxp, en la cual se

reemplaza el script network/bridge por el creado denominado script-PyMES. Éste

último se localiza en: /etc/xen/Scripts/script-pymes como se muestra a continuación:

Espacio de Código 3.6 Archivos de configuración de Bridged Networking

153

Espacio de Código 3.7 Script script-PyMES para una Bridged Networking

En este script se especifican los dispositivos de red físicos eth0 y eth1 del equipo real

asociados a los bridges xenbr0 y xenbr1. Éstos permitirán la configuración de las

VM´s respectivas en los bridges de acuerdo a su archivo de configuración.

Es posible realizar la configuración de tipo Two Way Routed la cual puede ser vista

en el anexo F.

3.2.3.3.4. Configuración de Dispositivos de Almacenamiento

La configuración de los dispositivos de almacenamiento puede hacérsela ya sea en

tiempo de configuración inicial de la VM o en caliente.

Así, al momento de la configuración inicial de la VM se especifica en su archivo de

configuración el disco principal con el cual funcionará dicha instancia de máquina

virtual. En este primer caso lo que se hace es exportar un dispositivo físico o “physical

block device” como un disco duro, una partición o un archivo de imagen96 desde el

Dom0 directamente al DomU. Este nuevo dispositivo añadido a la máquina virtual es

conocido como virtual block device (VBD) o file-backed VBD para el caso de

imágenes.

96 Un archivo de imagen corresponde a un espacio de memoria creado para la utilización de una máquina virtual en el cual típicamente se instala el sistema operativo guest con su correspondiente espacio de disco para archivos y carpetas de los usuarios. Su utilización permite la rápida copia de VM´s en base a la imagen creada.

154

disk = [ 'phy:dom0,domU,mode' ]

xm block-attach <Domain Id> <Backend Device> <Frontend Device> <Mode>

El Domain0 permite el acceso a los DomU mediante el parámetro 'disk' (del archivo

de configuración de las VM´s):

donde:

§ dom0: es el path del dispositivo del Domain0.

§ domU: representa como el dominio U reconocerá al dispositivo.

§ Mode: 'r' para read-only, 'w' para read-write.

Esto se muestra en la siguiente línea:

En este caso se está añadiendo el archivo de imagen vhttp_lc_256_10.img localizado

en el Dom0 el cual es exportado en el modo de “read-write” al nuevo dominio como

/dev/xvda.

Por otra parte, es posible agregar un dispositivo de almacenamiento una vez

encendida la máquina. Esto se conoce como agregación en caliente.

Para dar lugar a este procedimiento es necesario que el dispositivo a ser añadido

deba estar montado en el Dom0 y no ser utilizado al mismo tiempo por varios

dominios.

Se hace uso de la herramienta xm con su opción block-attach.

La sintaxis para añadir un dispositivo de almacenamiento es la siguiente:

disk = [ "tap:aio:/vm/servidores/vhttp/vhttp_lc_256_10.img,xvda,w" ]

Espacio de Código 3.8 Configuración de un dispositivo de almacenamiento para VM.

155

donde:

§ <Domain Id> es el ID del DomU

§ <Backend Device> Representa el dispositivo del Dom0; por ejemplo:

/dev/sr0

§ <Frontend Device> es el nombre del dispositivo para el DomU. Debe

poseer el prefijo xvd, por ejemplo: /dev/xvda2

§ <Mode> Corresponde a si es read/write. Las opciones son r para read-only,

w para read/write y w! para read/write compartido.

Esto se muestra en la siguiente línea:

En este caso se añade en caliente al Dom3 el dispositivo del Dom0 /dev/sr0 (que

puede ser cualquier dispositivo de almacenamiento inclusive una unidad de DVD) y

accesible en /dev/xvda2 del DomU con permisos de solamente lectura.

Una vez añadido el dispositivo debe ser montado en el DomU:

Una vez finalizado su uso deberá ser desmontado:

Luego de lo cual debe ser desañadido del domU con el ID utilizado y el dispositivo

respectivo:

xm block-attach 3 phy:/dev/sr0 /dev/xvda2 r

mkdir /tmp/mnt

mount /dev/xvda2 /tmp/mnt

umount /tmp/mnt

xm block-detach 3 /dev/xvda2

Espacio de Código 3.9 Código para añadir en caliente un dispositivo de almacenamiento

Espacio de Código 3.10 Código para desvincular en caliente un dispositivo de almacenamiento

156

Finalmente, Xen soporta protocolos estándar de almacenamiento en red com NBD,

iSCSI, NFS, etc., los cuales pueden ser usados para proveer almacenamiento a las

máquinas virtuales; sin embargo en la configuración del presente prototipo no se han

usado este tipo de configuraciones.

3.2.3.3.5. Comandos de XEN

§ Xend

Xend es el demonio de control de nodos y ejecuta ciertas funciones de administración

de sistemas relacionadas con las máquinas virtuales. Este constituye un punto

central de control de los recursos virtualizados y debe ser ejecutado para dar lugar al

inicio y manejo de las máquinas virtuales.

Los parámetros de operación de xend pueden ser configurados editando el archivo de

configuración de xend, xend-config.sxp, ubicado en el directorio /etc/xen.

A continuación se presentan los parámetros editables en el archivo de configuración

xend-config.sxp:

Ítem Descripción console-limit Determina el límite del buffer de memoria del servidor de consola y

asigna valores para cada sistema

min-mem Determina el número mínimo de megabytes reservados para domain0 (el valor no cambia si se introduce 0)

dom0 cpus Determina el número de CPU que domain0 usa (al menos una CPU se asigna por defecto)

enable-dump Determina que un error ha ocurrido y activa el volcado (0 es el valor predeterminado)

external-migration-tool

Determina el script o la aplicación que controla la migración de dispositivos externos (los script deben estar en etc/xen/scripts/external-device-migrate)

logfile Determina la ubicación del archivo del registro (por defecto está en /var/log/xend.log)

loglevel Filtra los valores para los modos de registro: DEBUG, INFO, WARNING, ERROR o CRITICAL (por defecto es DEBUG)

157

network-script Determina el script que activa el entorno de red (los script deben estar en el directorio etc/xen/scripts )

xend-http-server

Activa el servidor de administración de paquetes de flujo http (el valor predeterminado es no)

xend-unix-server

Activa el servidor de socket de dominio unix (un servidor de socket es un punto de comunicación que maneja conexiones de red de bajo nivel y acepta o rechaza conexiones entrantes)

xend-relocation-server

Activa el servidor de ubicación para las migraciones entre máquinas (el valor por defecto es no)

xend-unix-path

Determina la ubicación a donde el comando xend-unix-server envía mensajes de salida (el valor por defecto es var/lib/xend/xend-socket)

xend-port Determina el puerto que el servidor de administración http utiliza (el valor predeterminado es 8000)

xend-relocation-port

Determina el puerto que el servidor de ubicación utiliza (el valor predeterminado es 8002)

xend-relocation-address

Determina las direcciones de la máquinas virtuales a las cuales se les permite la migración de sistemas

xend-address Determina la dirección a la cual el servidor de socket del dominio está vinculado.

Tabla 3.4 Parámetros configurables de xend. Fuente: http://www.redhat.com/docs/manuals/enterprise/RHEL-5-manual/es-ES/Virtualization/ch-virt-task-

virsh-config-max-mem.html

Una vez iniciado el demonio xend, puede administrarse la arquitectura virtual

mediante la herramienta xm.

§ Xm

La aplicación xm es una herramienta de administración robusta que permite la

administración del entorno de virtualización. Antes de utilizar xm es necesario que el

demonio xend este siendo ejecutado en el sistema.

El formato general de utilización es el siguiente:

# xm comando [switches] [argumentos] [variables]

Los switches y argumentos dependen del comando elegido.

158

3.2.3.4. Migración de Máquinas Virtuales

Una de las ventajas que brinda la virtualización es la facilidad de migración de las

máquinas virtuales. La migración es el transferir un dominio entre equipos físicos.

Existen varios métodos para realizar este procedimiento, que puede ir desde la

simple copia del archivo imagen del disco duro y archivo de configuración (migración

regular) hasta una migración en vivo.

Una de las formas de migración es mediante la grabación y restauración del dominio.

Es posible emplear el comando xm save para suspender el estado de una máquina

virtual y grabarlo en un archivo. Así por ejemplo:

# xm save VM1 VM1.chk

Este comando suspende la máquina virtual VM1 y graba su estado de en el archivo

VM1.chk.

Una vez terminada la migración, se puede emplear el comando xm restore para

restaurar la máquina virtual. Así por ejemplo:

# xm restore VM1.chk

Este comando restaura la máquina virtual cuyo estado estaba grabado en el archivo

VM1.chk. Otra forma de realizar la migración es simplemente emplear el comando xm

migrate el cual pausa la máquina virtual, la copia y reanuda la misma.

Por otro lado la migración en vivo corresponde a la copia del dominio pero sin la

necesidad de suspender la máquina virtual, de hecho para dicho equipo la migración

debe parecer imperceptible.

Para poder realizar una migración en vivo, ambos hosts deben estar corriendo xend y

el destino debe de tener los suficientes recursos, además, debido que al mover una

máquina virtual también se moverá sus direcciones MAC e IP, actualmente se

requiere que ambas máquinas se encuentren en la misma subred. El comando para

realizar la migración es xm mígrate y para que sea en vivo se añade el parámetro –

live. Así por ejemplo:

# xm migrate --live VM destino.red.com

159

3.2.3.5. Configuración de VM´s para Unmodified OS

Además de brindar una solución de paravirtualización Xen también puede ser

empleado para virtualizar sistemas operativos sin modificaciones, para esto requiere

de la asistencia de procesadores especializados (Intel VT y AMD-V) por lo que la

virtualización recibe el nombre de virtualización asistida por hardware y a la

tecnología se denomina Hardware Virtual Machine (HVM).

Además de requerir procesadores especializados, el soporte HVM de Xen requiere

disponer de unos paquetes adicionales que no vienen incluidos en ciertas

distribuciones de Linux. Estos paquetes son:

dev86: Se trata de un ensamblador para instrucciones x86 de modo real. Este

paquete es el que permite armar el código de BIOS que corre en el modo real (virtual)

SDL-devel: Brinda otra forma de virtualizar consolas huéspedes no modificadas.

Brinda una ventana X para la misma.

La instalación de Xen trae consigo un ejemplo de archivo de configuración para HVM,

el archivo es /etc/xen/xmexample.hvm. Este archivo de configuración, además de

aceptar las opciones comunes especificadas en el punto 3.3.4.3.1., puede aceptar

otras opciones características solo para este tipo de virtualización. Así, las opciones

más importantes son:

· kernel: En el caso de HVM esta opción especifica el cargador de firmware

HVM, /usr/lib/xen/boot/hvmloader

· builder: Es el creador del dominio, en el caso de HVM se emplea el creador

hvm.

· acpi: Habilita ACPI de huéspedes HVM, el valor por default es 1 (habilitado)

· apic: Habilita APIC de huéspedes HVM, el valor por default es 1 (habilitado)

· pae: Habilita PAE de huéspedes HVM, el valor por default es 1 (habilitado)

· hap: Habilita el paginado asistido por hardware existente tanto en Intel VT

como en AMD-V.

· vif: En el caso de HVM se puede definir en esta opción el valor de

type=ioemu, esto quiere decir que para virtualizar la tarjeta de red HVM se

160

empleara ioemu, si no se especifica se emplea vbd que es el default para la

paravirtualización.

· disk: Al igual que en la paravirtualización define los dispositivos de disco a

emplearse y el nombre con el que podrán ser accedidos. En el caso de HVM

cada entrada de disco debe tener la forma:

phy:UNAME,ioemu:DEV,MODE,

Siendo ‘UNAME’ el archivo de dispositivo anfitrión, ‘DEV’ es el nombre

de dispositivo visto por domU, y ‘MODE’ puede ser ‘r’ para solo lectura,

y ‘w’ para lectura y escritura. ‘ioemu’ significa que el disco empleará

‘ioemu’ para virtualizar el disco HVM. Si se usa un archivo de imagen se

debe intercambiar ‘phy’ por ‘file’

Es posible emular dispositivos ópticos añadiendo el cdrom al dispositivo de

tipo ',hdc:cdrom,r'

· boot: Dispositivos de arranque. Arranca desde disco floppy (a), disco duro (c)

o CD-ROM (d). Por ejemplo para intentar arrancar primero desde el CD-ROM

y luego desde el disco duro:

boot='dc'

· vnc: Habilita librerías VNC para la interfaz gráfica. El default = 0 significa

deshabilitada.

· sdl: Habilita librerías SDL para la interfaz gráfica. El default = 0 significa

deshabilitada.

· vncconsole Permite generar vncviewer (sólo es válido cuando vnc=1), default

= 0 (deshabilitado).

· usb: Permite el soporte USB sin definir un dispositivo USB específico.

· usbdevice: Permite el soporte USB y habilita el soporte para el dispositivo

dado. Se pueden especificar: mouse, tablet y host:id1:id2 (un dispositivo USB

físico en la máquina anfitriona cuyos ids son id1 e id2). La opción tablet tiene

la ventaja de que en sistemas huéspedes Windows reconocerá y soportará el

dispositivo automáticamente

· localtime: Configura la hora local.

· soundhw: Habilita el soporte a la tarjeta de sonido y especifica el hardware a

emular. Acepta valores de: sb16, es1370, all y none (default).

· full-screen: Inicia en pantalla completa.

161

Una vez creado el archivo de configuración se puede crear y destruir el dominio HVM

de la misma manera que se hace con los dominios paravirtualizados.

3.2.3.6. Pruebas

Para el propósito del presente proyecto se ha utilizado archivos de configuración

similares al presentado como ejemplo en el punto 3.2.3.3.1., para virtualizar cada

unos de los servidores propuestos en el diseño de la granja de servidores del centro

de datos presentado en el punto 3.2.3. del presente capítulo. Cabe recalcar que aún

no se han configurado los servicios requeridos, sólo se ha procedido a la creación de

los dominios requeridos (La configuración de los servicios puede observarse en el

siguiente capítulo).

En la Figura 3.21 se muestra una ventana de la interfaz gráfica del administrador de

máquinas virtuales incluido con Xen en la distribución CentOS de GNU/Linux. Se

pueden observar varias máquinas virtuales corriendo de manera simultánea.

Figura 3.21 Ventana de un administrador de máquinas virtuales que muestra a las mismas

ejecutándose de manera simultánea en un único servidor físico.

162

En la figura 3.22 se muestra la consola del servidor virtual vhttp arrancando:

Figura 3.22 Ventana de la consola de una máquina virtual que muestra su inicio.

En la figura 3.23 se muestran las pruebas de conectividad de la máquina virtual con el

servidor físico de dirección 192.168.15.10.

Figura 3.23 Ventana de la consola de una máquina virtual que muestra su conectividad con el servidor físico.

163

En la figura 3.24 se muestran dos ventanas de consola correspondientes a dos

servidores virtuales probando la conectividad entre los mismos. Por el momento, al no

estar configurados los servicios, las únicas pruebas que se pueden realizar son las de

conectividad y el comprobar el inicio sin problemas de las máquinas.

Figura 3.24 Ventanas de dos consolas de máquinas virtuales que muestran su conectividad entre ellas.

Finalmente, en la figura 3.25 se muestran ciertos detalles de la carga de la máquina

virtual mientras esta se encuentra corriendo.

Figura 3.25 Ventanas de detalle de una máquina virtual.

164

CAPÍTULO CUATRO

4. INSTALACIÓN, CONFIGURACIÓN, Y PRUEBAS

DE LOS SERVICIOS NECESARIOS PARA

SATISFACER LAS NECESIDADES

TECNOLÓGICAS GENÉRICAS DE LAS PyMES.

165

En base a los requerimientos analizados en el capítulo 2 y en base al esquema de

diseño de servidor virtualizado presentado en el capítulo 3, en el presente capítulo se

presenta la instalación, configuración y pruebas de los servicios requeridos por las

PYMES.

Con la finalidad de referenciar los servidores a crearse, a continuación se retoman los

servicios requeridos para las PYMES.

4.1. CUADRO DE SERVICIOS PARA PYMES

RE

QU

ER

IMIE

NT

OS

CN

ICO

S B

ÁS

ICO

S E

N L

AS

P

yME

S

Servicios Relación con Requerimientos PyMES

§ Stack de protocolos

TCP/IP.

§ Conexión a Internet, Todos los

requerimientos Intranet /Extranet.

§ Servicio de DHCP. § Intranet, configuración dinámica de

equipos.

§ Servicio DNS: Intranet,

Extranet.

§ Portales web (Internos, Externos),

Correo electrónico, Acceso otras

sucursales, manejo de dominio, etc.

§ Servidor de páginas Web § Portales Web (Internos, Externos),

Comercio electrónico, Webmail.

§ Servidor de correo

electrónico.

§ Correo Electrónico (Contacto clientes

y Empresarial), Webmail.

§ Servidor de Mensajería

Instantánea.

§ Mensajería instantánea.

§ Servidor de Base de Datos. § Comercio electrónico, control de

producción, ventas, etc.

§ Servicio de directorio. § Control de usuarios, Seguridad

informática

§ Proxy / Firewall. § Seguridad extranet / intranet,

Conexión a Internet.

§ Establecimiento de DMZ.

§ Seguridad extranet / intranet.

§ Detección de virus y spam § Seguridad extranet / intranet.

166

con scanner de mails.

§ Acceso remoto con SSH.

§ Conexión segura con otras

sucursales, Acceso remoto.

§ Servidor FTP.

§ Transferencia de archivos.

§ Establecimiento de VPN. § Conexión segura con otras

sucursales, Acceso remoto.

§ Aplicaciones de servicio de

Voz sobre IP.

§ Telefonía.

Tabla 4.1 Requerimientos técnicos para TIC´s en las PyMES

4.2. ESQUEMA DE SOLUCIÓN DE SERVIDOR VIRTUALIZADO

PARA EL DATACENTER

Tal como lo presentado en el capítulo 3, el diseño del servidor virtualizado para el

cetro de datos de las PyMEs se conforma por tres subsistemas identificables:

§ Datacenter de datos

§ Datacenter de Infraestructura

§ Datacenter dmz

El Datacenter de datos agrupa los servidores correspondientes al manejo,

almacenamiento y distribución de la información necesaria para el desenvolvimiento

de las actividades de la organización productiva. Estos son los servidores de Base de

datos, FTP, Servidor de archivos, Web empresarial, Impresión.

Este módulo del datacenter hace parte de una red independiente del resto, la cual

puede configurarse su acceso de acuerdo a las necesidades de la organización

mediante el router de la intranet.

El Datacenter de infraestructura agrupa los servidores correspondientes a la

habilitación de la operabilidad de la red. Estos servidores brindan las características

básicas de conectividad para usuarios así como comunicación entre ellos. Está

conformado por los servidores de DNS primario y su correspondiente Backup,

Directorio, Mail empresarial, DHCP y el Router de la Intranet.

167

De igual forma el datacenter de infraestructura forma parte de una red independiente

en el servidor virtualizado.

El datacenter de la dmz agrupa y separa los servidores que serán expuestos a

Internet de los servidores antes descritos en infraestructura y datos. Agrupa los

servidores que realizaran funciones de Gateway y dan la cara a los clientes de la

organización. Aquí se encuentran los servidores de Mail Gateway, DNS primario y

secundario exclusivamente para la dmz y como relay para servidores de mayor

autoridad, servidores de Comercio electrónico y web para Internet.

La finalidad de estos tres subsistemas es la de garantizar el mejor desempeño

posible del servidor virtualizado de acuerdo a su uso ya sea por los usuarios de la

Intranet como por los usuarios de Internet. A la vez se proporciona un ambiente

seguro mediante la implantación de la dmz la cual permite determinar la separación

de los servidores críticos de la organización con los servidores que van a tener

acceso desde Internet.

En el lado de la Intranet se busca obtener la separación de los servidores que

requieren de alta disponibilidad y se les da alto uso como son los servidores de DNS,

DHCP y correo electrónico de los servidores no tan críticos como son los servidores

de archivos, impresión, web interna, ftp, etc.

Finalmente se proporciona mayor seguridad al sistema mediante la implementación

servidores de firewall, proxy, NAT, y routing tanto para la intranet como par internet. A

esto se suma la implantación de la dmz ya mencionada.

Del lado del usuario, la configuración del servidor router de la intranet permitirá la

separación de los servicios y accesos entre los diferentes departamentos

administrativo-productivos de la PyME mediante un proceso de separación por redes

o dominios de broadcast. Este hecho permite obviar el impedimento de insuficiencia

de interfaces disponibles en routeadores para la creación de redes mediante la

creación de tantas interfaces virtuales como redes de la organización. Con ello no

será indispensable la configuración de vlans para garantizar seguridad, reducción de

dominios de broadcast, y especialización de departamentos.

168

Con lo mencionado se presenta el diagrama correspondiente al prototipo de Servidor

Virtualizado para PyMEs.

Figura 4.1 Esquema de solución de Servidor Virtualizado para PyMES.

4.2.1. ESQUEMA DE DIRECCIONAMIENTO DEL DATACENTER

Como se mencionó en el punto anterior el centro de datos dispone se compone de

tres niveles, el de datos, infraestructura y la zona desmilitarizada. Cada una de estas

zonas dispondrá de su propia subred, de la misma forma, el rango de direcciones de

la red de la empresa es independiente de las redes del servidor. Esta independencia

de redes de cada zona se puede lograr debido a que, para el enrutamiento, se

emplearán routers virtuales por lo que no se requiere la compra de equipos

especiales, además de esta manera el servidor virtualizado se vuelve más abierto al

poder emplearse en cualquier red empresarial independientemente de su sistema de

direccionamiento, únicamente se debe configurar esta red en el router de ingreso al

servidor.

169

Como se puede ver en el diagrama del centro de datos, cada una de estas redes

requiere de siete direcciones IP ya que cada una cuenta con cinco servidores con una

interfaz de red cada uno y además se conecta a dos servidores de ruteo.

Para el direccionamiento se decidió emplear la red 10.0.0.0/24 para la zona de datos,

la 10.0.1.0/24 para la zona de infraestructura y la red 10.0.2.0/24 para la zona

desmilitarizada. Con estas redes se podrían conectar hasta 254 dispositivos en cada

una, sin embargo se debe mencionar que el limitante en este caso sería la capacidad

del servidor físico y del software de virtualización Xen. Pese a la cantidad de

direcciones que quedarían sin utilizar, se decidió emplear dicho direccionamiento ya

que brinda gran facilidad y al ser independiente de la red interna de la empresa no

genera problema de desperdicio de direcciones.

El direccionamiento final para el centro de datos es el que se muestra a continuación:

Zona Dirección IP Servidor

Datos 10.0.0.1/24 firewallproxy

10.0.0.2/24 basededatos

10.0.0.3/24 webempresarial

10.0.0.4/24 impresion

10.0.0.5/24 servidordearchivos

10.0.0.6/24 ftp

10.0.0.254/24 routerintranet

Infraestructura 10.0.1.1/24 firewallproxy

10.0.1.2/24 dnsiprimario

10.0.1.3/24 dnsisecundario

10.0.1.4/24 directorio

10.0.1.5/24 mailempresarial

10.0.1.6/24 dhcp

10.0.1.254/24 routerintranet

DMZ 10.0.2.1/24 firewallproxy

10.0.2.2/24 comercioelectronico

170

10.0.2.3/24 mailgateway

10.0.2.4/24 webinternet

10.0.2.5/24 dnseprimario

10.0.2.6/24 dnsesecundario

10.0.2.254/24 firewallinternet

Internet Dirección IP en la red del

modem de salida a Internet

firewallinternet

Red Interna Dirección IP en la red

interna de la empresa

routerintranet

Tabla 4.2 Direccionamiento del Centro de Datos

171

Servidor Virtualizado con esquema de direccionamiento IP

171

Fig

ura

4.2

Se

rvid

or

virt

ua

liza

do

con

esq

ue

ma

de

dir

ecc

iona

mie

nto

IP

.

172

4.2.2. INSTALACIÓN DEL SERVIDOR VIRTUAL BASE

Para la implementación de los servidores virtualizados con sus servicios respectivos,

se utilizará como base una máquina virtual de instalación de sistema operativo GNU-

Linux CentOS 5.2 sobre el Hypervisor Xen 3.1 en función de las características

analizadas en el capítulo 3. Ésta base de servidor virtual permitirá acoplarse de

manera general eficientemente y con flexibilidad para los requerimientos específicos

de la instalación de cada servicio a implementarse.

Se presenta en tal virtud, a continuación la instalación de la máquina virtual que

servirá de plantilla para el resto de servidores a configurar. Consideraciones

adicionales y más específicas sobre el dimensionamiento de los recursos de cada

servidor, serán analizados en el capítulo 5 de la presente investigación.

4.2.2.1. Consideraciones de instalación de la VM

Para la instalación de una máquina virtual, el primer paso es la asignación de los

recursos de hardware necesarios para el funcionamiento de la máquina virtual.

Principalmente se debe asignar un espacio de disco duro, una cantidad de memoria y

una o más tarjetas de red.

Aunque existen herramientas para realizar la instalación de una máquina virtual

mediante un entorno gráfico, es probable que no sea posible acceder a este entorno

en el servidor por lo que en este punto se analizará la instalación de la máquina

virtual desde un medio de consola. Principalmente esto se puede hacer usando las

herramientas básicas de Xen y realizando modificaciones en archivos de

configuración o se puede emplear la herramienta virt-install.

4.2.2.2. Asignación de Disco Duro

En cualquiera de las opciones para instalar una máquina virtual, lo primero que debe

hacerse es seleccionar un espacio en el disco duro para asignar a la misma. Una de

las formas más sencillas es el asignar como disco duro de la máquina virtual a una

partición cualquiera existente en el disco, siendo lo más recomendable emplear

particiones lógicas LVM al ser estas las más sencillas de manipular. La otra forma

173

para asignar un espacio de disco duro es mediante la creación y formateo de un

archivo imagen, esto se logra empleando los siguientes comandos:

# dd if=/dev/zero of=discoMV1.img bs=1k seek=10240k count=0

# mkfs -t ext3 discoMV1.img

4.2.2.3. Instalación sin el uso de herramientas adicionales

En este caso, lo primero que se debe hacer es bajarse una copia de la imagen del

sistema operativo a instalarse, así por ejemplo:

wget http://mirror.centos.org/centos/5.2/os/i386/images/xen/vmlinuz -O /tmp/

wget http://mirror.centos.org/centos/5.2/os/i386/images/xen/initrd.img -O /tmp/

Entonces se procede a crear el archivo de configuración de la máquina virtual.

# # Archivo de configuracion para la instancia de Xen # vdns_lc_256_10.img creado por JJBS y DSCA el Thu Aug 6 19:20:56 # ECT 2009. # # # Kernel + tamano de memoria # kernel = '/tmp/vmlinuz' ramdisk = '/tmp/initrd.img' memory = '256' # # Dispositivo(s) de disco. # disk = [ "tap:aio:/vm/servidores/vdns/vdns_lc_256_10.img,xvda,w" ] # # Hostname # name = 'vdns' # # Networking # dhcp = 'dhcp' vif = [ 'mac=00:16:3e:0a:34:f1,bridge=xenbr0' ] #

174

# Behaviour # on_poweroff = 'destroy' on_reboot = 'restart' on_crash = 'restart' vnc = 1 sdl = 0

Espacio de Código 4.1 Archivo de configuración para la creación de una Máquina Virtual

Finalmente se procede a la creación de la máquina virtual mediante el comando:

xm create -c configuration.cfg

Y se prepara el archivo de configuración para el boot reemplazando las dos primeras

líneas, en que se define kernel y ramdisk como se indica en el siguiente espacio de

código.

# Archivo de configuracion para la instancia de Xen # vdns_lc_256_10.img creado por JJBS y DSCA el Thu Aug 6 19:20:56 # ECT 2009. # Kernel + tamano de memoria kernel = '/boot/vmlinuz-2.6.18-92.1.22.el5xen' memory = '256' bootloader = "/usr/bin/pygrub" # # Dispositivo(s) de disco. # disk = [ "tap:aio:/vm/servidores/vdns/vdns_lc_256_10.img,xvda,w" ] # # Hostname # name = 'vdns' # # Networking # dhcp = 'dhcp' vif = [ 'mac=00:16:3e:0a:34:f1,bridge=xenbr0' ] # # Behaviour # on_poweroff = 'destroy' on_reboot = 'restart' on_crash = 'restart' vnc = 1 sdl = 0

Espacio de Código 4.2 Archivo de configuración de una Máquina Virtual.

175

4.2.2.4. Instalación con la herramienta virt-install

La herramienta virt-install suele venir por defecto en las distribuciones de CentOS, sin

embargo se la puede instalar con el paquete python-virtinst o también viene incluido

con las herramientas de administración y desarrollo de xen: xen-devel y virt-manager.

Una vez que se tiene instalada la herramienta se puede emplear el comando virt-

install.

# virt-install What is the name of your virtual machine? ejemploCentOS How much RAM should be allocated (in megabytes)? 256 What would you like to use as the disk (file path)? /vm/ejemploCentOS.img How large would you like the disk (/home/virtual/test01.img) to be (in gigabytes)? 10 Would you like to enable graphics support? (yes or no) no What is the install location? ftp://ftp.vserver.ec/pub/centos/5.2/os/i386/ Starting install...

Espacio de Código 4.3 Instalación de una Máquina Virtual con la herramienta virt-install

Entonces iniciará la descarga e instalación de la imagen de la distribución del Sistema

Operativo.

Figura 4.3 Instalación del servidor virtual base CentOS 5.2

176

Figura 4.4 Selección del disco para el particionamiento del servidor Base.

Figura 4.5 Esquema de particionamiento servidor virtual base.

177

Figura 4.6 Configuración general de la tarjeta de red del servidor base.

Figura 4.7 Selección de componentes de instalación en modo Server.

178

Figura 4.8 Selección de software de servidor base.

Para optimizar el rendimiento de las VM, se desactivarán los servicios innecesarios

como por ejemplo:

§ acpid

§ anacron

§ apmd

§ autofs

§ bluetooth

§ cups

§ firstboot

§ gpm

§ haldaemon

§ messagebus

§ mdmonitor

§ hidd

§ ip6tables

§ kudzu

§ lvm2-monitor

§ netfs

§ nfslock

§ pcscd

§ portmap

§ rpcgssd

§ rpcidmapd

§ smartd

§ yum-updatesd

Dependiendo del servidor virtual que se implemente, se deberá activar ciertos

servicios, esto se aplica de igual modo para configuraciones especiales de tamaño de

disco, memoria ram asignada, tarjetas de red, entre otras.

179

Finalmente se verifica el proceso de instalación:

Figura 4.9 Progreso de instalación de CentOS 5.2

Figura 4.10 Instalación final de CentOS 5.2

180

4.3. INSTALACIÓN Y CONFIGURACIÓN DEL DATACENTER DE

INFRAESTRUCTURA

La red de infraestructura se creó para albergar controladores de dominio donde se

ejecuta Linux CentOS 5.2, el servicio de directorio LDAP, DNS y DHCP. Según el

diseño del servidor virtualizado, la red de infraestructura también puede usarse para

contener servidores en los que se ejecuten componentes y objetos del negocio, en

este caso contiene al servidor de correo electrónico interno. Los servidores

correspondientes al datacenter de Infraestructura son:

§ Servidores de ruteo y proxy

§ DNS primario y secundario

§ DHCP

§ Directorio

§ Controlador de dominio

§ Correo electrónico (interno)

Figura 4.11 Datacenter de infraestructura

181

4.3.1. SERVIDORES DE RUTEO: ROUTER INTRANET, FIREWALL

PROXY Y ROUTER INTERNET

De acuerdo al esquema de la solución empleada, se requieren de tres servidores de

ruteo en el centro de datos. El primer servidor, denominado ROUTERINTRANET, es

el encargado de brindar el acceso a los servidores por parte de los usuarios en la

intranet de la empresa, además de brindar un nivel de seguridad básico mediante

ciertas políticas de firewall.

El otro servidor de ruteo es el denominado FIREWALLPROXY, a este servidor se

conectaran las tres zonas del centro de datos (datos, infraestructura y

desmilitarizada), este será el encargado del enrutamiento entre estas zonas,

cumpliendo las funciones de firewall y de proxy y brindando el aislamiento necesario

a la zona desmilitarizada.

Finalmente, el último servidor de ruteo es el denominado FIREWALLINTERNET el

cual será el encargado de brindar la protección de borde del centro de datos y

realizando las funciones de NAT (Network Address Translation) para permitir que el

tráfico que se dirija al exterior de la intranet de la empresa salga con una sola

dirección IP.

4.3.1.1. Software

Para los servidores de ruteo que se instalarán en el servidor virtualizado, se

necesitarán paquetes de software que brinden los servicios de: firewall, enrutamiento,

NAT, proxy y VPN.

El ROUTER INTRANET necesita un paquete de firewall y enrutamiento, el

FIREWALL PROXY necesita paquetes que cumplan las funciones de firewall,

enrutamiento y proxy, finalmente el FIREWALL INTERNET necesita firewall,

enrutamiento, NAT y VPN. Como en el presente punto se está analizando la zona de

infraestructura, no se tratará a mayor profundidad el FIREWALL INTERNET, el cual

se detallará en el punto 4.5., que trata de la zona desmilitarizada, por este motivo en

los siguientes puntos no se considerará las conexiones VPN.

182

4.3.1.1.1. Alternativas de software

· Firewall:

Para el caso del firewall, la opción por defecto que viene incluida en las distribuciones

de Linux es el paquete iptables, el cual se emplea para todos los requerimientos de

filtrado de paquetes a nivel del kernel y NAT.

No existen otras opciones destacadas para la configuración de firewalls, pero existen

paquetes adicionales que se pueden emplear como frontends de iptables, estos

frontends se ubican entre el usuario e iptables y buscan simplificar la configuración de

los firewalls, entre estos paquetes se encuentran: FWBuilder, Guarddog, Kmyfirewall,

Knetfilter, Firestarter, Shorewall, entre otros. Además de estos paquetes existen

scripts ya desarrollados para la configuración del firewall como es el caso de arno-

iptables-firewall.

· Proxy:

Para el caso del servicio de proxy, la opción más ampliamente usada en las

diferentes distribuciones de Linux es el paquete squid. Este paquete permite realizar

un gran número de configuraciones, todo mediante la modificación de un único

archivo de configuración, funciona como proxy HTTP/FTP y tiene soporte para ICP

(Internet Cache Protocol)

Otra solución disponible para un servidor proxy es untangle, que es un sistema

completo que brinda soluciones de firewall, proxy, DHCP y antivirus, sin embargo

este sistema no permite la instalación de aplicaciones adicionales y su

documentación no se encuentra tan ampliamente difundida como en el caso de squid.

También es factible emplear como proxy a Apache, el servidor web más utilizado, que

soporta el servicio de proxy para HTTP y FTP en un módulo separado.

4.3.1.1.2. Selección alternativa

· Firewall:

En el caso del firewall, la opción que se empleará es el paquete iptables debido a que

es la solución más ampliamente usada y documentada para los entornos GNU/Linux.

183

Además se debe recalcar que esta solución incluye la traducción de direcciones NAT

y al realizar el filtrado de paquetes a nivel del kernel tiene un excelente rendimiento.

También se decidió evitar el uso de frontends, debido a que no son paquetes

necesarios para el servicio por lo que solo vendrían a consumir los recursos del

sistema.

· Proxy:

En el caso del servicio de proxy, la opción que se empleará es el paquete squid,

debido a que es una solución exclusiva para proxy ampliamente documentada y

probada. El uso de soluciones como untangle y Apache resulta inadecuado debido a

que no son soluciones exclusivas para el servicio de proxy por lo que su instalación

significaría el instalar opciones innecesarias para estos tipos de servidores.

4.3.1.2. Instalación

4.3.1.2.1. Instalación Máquina Virtual

El presente servidor virtual se basa en la plantilla de instalación de la VM basada en

GNU-Linux CentOS 5.2, en el que se incluyen los componentes necesarios como

Iptables, Networking y software de Routing y Proxy (Squid). El hostname configurado

es: routerintranet y firewallproxy respectivamente pertenecientes al FQDN97

routerintranet.vserver.ec y firewallproxy.vserver.ec.

4.3.1.2.2. Instalación Servicio

El servicio de iptables suele venir incluido en todas las distribuciones de Windows,

caso contrario para instalar basta ubicar el paquete correspondiente a iptables en el

administrador de paquetes o el emplear el comando yum install iptables, también se

puede descargar una copia del paquete de la página oficial del proyecto

http://www.netfilter.org/projects/iptables/index.html.

97 Fully Qualified Domain Name: nombre que incluye el nombre de la computadora y el nombre de dominio asociado a ese equipo.

184

Figura 4.12 Instalación de iptables mediante el comando yum install

De la misma forma, para instalar el paquete squid basta con ubicarlo en el

administrador de paquetes, emplear el comando yum install squid o descargarlo de la

página del proyecto http://www.squid-cache.org/.

Figura 4.13 Instalación de squid mediante el comando yum install.

185

4.3.1.3. Configuración

En este punto se detallarán la configuración de los dos servidores de enrutamiento

que se pueden considerar en la zona de infraestructura: routerintranet y firewallproxy.

En los dos servidores se deben configurar las características de firewall, pero solo en

el firewallproxy se configurará el servidor proxy.

4.3.1.3.1. Router Intranet

En el servidor routerintranet solo es necesario establecer las rutas que permitan el

enrutamiento de las direcciones y configurar un firewall que brinde seguridad.

Primeramente se configurarán las rutas, se necesita la creación de una ruta que

permita la llegada a la DMZ (red 10.0.2.0), es decir que se dirija al servidor

firewallproxy (10.0.1.1) y una ruta por defecto para las direcciones no conocidas, que

permitirá la llegada a internet. Con estos parámetros se procedió a configurar las

rutas que se muestran a continuación:

echo 1 >/proc/sys/net/ipv4/ip_forward route add -net 10.0.2.0 netmask 255.255.255.0 gw 10.0.1.1 route add -net default gw 10.0.1.1

Espacio de Código 4.4 Rutas del Servidor routerintranet

Para la configuración del firewall se procedieron a configurar las siguientes reglas de

filtrado de paquetes:

# Script de configuración de Iptables – DSCA, JJBS – vserver 2009. # Limpiar reglas del firewall iptables -X iptables -F # Establecer política DROP por default iptables -P INPUT DROP iptables -P OUTPUT DROP iptables -P FORWARD DROP # Permitir tráfico en interfaz loopback iptables -A INPUT -i lo -j ACCEPT iptables -A OUTPUT -o lo -j ACCEPT # Permitir tráfico interno

186

iptables -A INPUT -i eth2 -j ACCEPT iptables -A OUTPUT -o eth2 -j ACCEPT # Permitir acceso de ciertos mensajes ICMP iptables -A INPUT -i eth0 -p icmp -s 0.0.0.0/0 -d 10.0.0.254 --icmp-type 8 -j ACCEPT iptables -A OUTPUT -o eth0 -p icmp -s 10.0.0.254 -d 0.0.0.0/0 --icmp-type 0 -j ACCEPT iptables -A OUTPUT -o eth0 -p icmp -s 10.0.0.254 -d 0.0.0.0/0 --icmp-type 8 -j ACCEPT iptables -A INPUT -i eth0 -p icmp -s 0.0.0.0/0 -d 10.0.0.254 --icmp-type 0 -j ACCEPT iptables -A INPUT -i eth0 -p icmp -s 0.0.0.0/0 -d 10.0.0.254 --icmp-type 3 -j ACCEPT iptables -A OUTPUT -o eth0 -p icmp -s 10.0.0.254 -d 0.0.0.0/0 --icmp-type 3 -j ACCEPT iptables -A INPUT -i eth0 -p icmp -s 0.0.0.0/0 -d 10.0.0.254 --icmp-type 4 -j ACCEPT iptables -A OUTPUT -o eth0 -p icmp -s 10.0.0.254 -d 0.0.0.0/0 --icmp-type 4 -j ACCEPT iptables -A INPUT -i eth0 -p icmp -s 0.0.0.0/0 -d 10.0.0.254 --icmp-type 11 -j ACCEPT iptables -A OUTPUT -o eth0 -p icmp -s 10.0.0.254 -d 0.0.0.0/0 --icmp-type 11 -j ACCEPT iptables -A INPUT -i eth0 -p icmp -s 0.0.0.0/0 -d 10.0.0.254 --icmp-type 12 -j ACCEPT iptables -A OUTPUT -o eth0 -p icmp -s 10.0.0.254 -d 0.0.0.0/0 --icmp-type 12 -j ACCEPT iptables -A INPUT -i eth1 -p icmp -s 0.0.0.0/0 -d 10.0.1.254 --icmp-type 8 -j ACCEPT iptables -A OUTPUT -o eth1 -p icmp -s 10.0.1.254 -d 0.0.0.0/0 --icmp-type 0 -j ACCEPT iptables -A OUTPUT -o eth1 -p icmp -s 10.0.1.254 -d 0.0.0.0/0 --icmp-type 8 -j ACCEPT iptables -A INPUT -i eth1 -p icmp -s 0.0.0.0/0 -d 10.0.1.254 --icmp-type 0 -j ACCEPT iptables -A INPUT -i eth1 -p icmp -s 0.0.0.0/0 -d 10.0.1.254 --icmp-type 3 -j ACCEPT iptables -A OUTPUT -o eth1 -p icmp -s 10.0.1.254 -d 0.0.0.0/0 --icmp-type 3 -j ACCEPT iptables -A INPUT -i eth1 -p icmp -s 0.0.0.0/0 -d 10.0.1.254 --icmp-type 4 -j ACCEPT iptables -A OUTPUT -o eth1 -p icmp -s 10.0.1.254 -d 0.0.0.0/0 --icmp-type 4 -j ACCEPT iptables -A INPUT -i eth1 -p icmp -s 0.0.0.0/0 -d 10.0.1.254 --icmp-type 11 -j ACCEPT iptables -A OUTPUT -o eth1 -p icmp -s 10.0.1.254 -d 0.0.0.0/0 --icmp-type 11 -j ACCEPT iptables -A INPUT -i eth1 -p icmp -s 0.0.0.0/0 -d 10.0.1.254 --icmp-type 12 -j ACCEPT iptables -A OUTPUT -o eth1 -p icmp -s 10.0.1.254 -d 0.0.0.0/0 --icmp-type 12 -j ACCEPT

# Permitir conexiones TCP y UDP válidas iptables -A OUTPUT -o eth0 -p tcp -s 10.0.0.254 --sport 1024: -d any/0 --dport :1023 -j ACCEPT iptables -A INPUT -i eth0 -p tcp -s any/0 --sport :1023 -d 10.0.0.254 --dport 1024: -j ACCEPT iptables -A OUTPUT -o eth0 -p udp -s 10.0.0.254 --sport 1024: -d any/0 --dport :1023 -j ACCEPT iptables -A INPUT -i eth0 -p udp -s any/0 --sport :1023 -d 10.0.0.254 --dport 1024: -j ACCEPT iptables -A OUTPUT -o eth1 -p tcp -s 10.0.1.254 --sport 1024: -d any/0 --dport :1023 -j ACCEPT iptables -A INPUT -i eth1 -p tcp -s any/0 --sport :1023 -d 10.0.1.254 --dport 1024: -j ACCEPT iptables -A OUTPUT -o eth1 -p udp -s 10.0.1.254 --sport 1024: -d any/0 --dport :1023 -j ACCEPT iptables -A INPUT -i eth1 -p udp -s any/0 --sport :1023 -d 10.0.1.254 --dport 1024: -j ACCEPT # Rechazo protocolo IDENTD iptables -A INPUT -i eth0 -p tcp -s 0.0.0.0/0 -d 10.0.0.254 --dport 113 -j REJECT iptables -A INPUT -i eth1 -p tcp -s 0.0.0.0/0 -d 10.0.1.254 --dport 113 -j REJECT # Reglas de Forward TCP, UDP e ICMP iptables -A FORWARD -i eth2 -o eth0 -p tcp -s 192.168.0.0/24 --sport 1024: -d ! 192.168.0.0/24 --dport :1023 -j ACCEPT iptables -A FORWARD -i eth0 -o eth2 -p tcp -s ! 192.168.0.0/24 --sport :1023 -d 192.168.0.0/24 --dport 1024: -j ACCEPT iptables -A FORWARD -i eth2 -o eth0 -p udp -s 192.168.0.0/24 --sport 1024: -d ! 192.168.0.0/24 --dport :1023 -j ACCEPT iptables -A FORWARD -i eth0 -o eth2 -p udp -s ! 192.168.0.0/24 --sport :1023 -d 192.168.0.0/24 --dport 1024: -j ACCEPT iptables -A FORWARD -i eth2 -o eth0 -p icmp -s 192.168.0.0/24 -d ! 192.168.0.0/24 -j ACCEPT iptables -A FORWARD -i eth0 -o eth2 -p icmp -s ! 192.168.0.0/24 -d 192.168.0.0/24 -j ACCEPT iptables -A FORWARD -i eth2 -o eth1 -p tcp -s 192.168.0.0/24 --sport 1024: -d ! 192.168.0.0/24 --dport :1023 -j ACCEPT iptables -A FORWARD -i eth1 -o eth2 -p tcp -s ! 192.168.0.0/24 --sport :1023 -d 192.168.0.0/24 --dport 1024: -j ACCEPT iptables -A FORWARD -i eth2 -o eth1 -p udp -s 192.168.0.0/24 --sport 1024: -d ! 192.168.0.0/24 --

187

dport :1023 -j ACCEPT iptables -A FORWARD -i eth1 -o eth2 -p udp -s ! 192.168.0.0/24 --sport :1023 -d 192.168.0.0/24 --dport 1024: -j ACCEPT iptables -A FORWARD -i eth2 -o eth1 -p icmp -s 192.168.0.0/24 -d ! 192.168.0.0/24 -j ACCEPT iptables -A FORWARD -i eth1 -o eth2 -p icmp -s ! 192.168.0.0/24 -d 192.168.0.0/24 -j ACCEPT #Reglas para abrir algunos puertos iptables -A INPUT -i eth0 -p tcp -s any/0 --sport 1024: -d 10.0.0.254 --dport 22 -j ACCEPT iptables -A OUTPUT -o eth0 -p tcp -s 10.0.0.254 --sport 22 -d any/0 --dport 1024: -j ACCEPT iptables -A INPUT -i eth0 -p tcp -s any/0 --sport 1024: -d 10.0.0.254 --dport 53 -j ACCEPT iptables -A OUTPUT -o eth0 -p tcp -s 10.0.0.254 --sport 53 -d any/0 --dport 1024: -j ACCEPT iptables -A INPUT -i eth0 -p udp -s any/0 --sport 1024: -d 10.0.0.254 --dport 53 -j ACCEPT iptables -A OUTPUT -o eth0 -p udp -s 10.0.0.254 --sport 53 -d any/0 --dport 1024: -j ACCEPT iptables -A INPUT -i eth0 -p tcp -s any/0 -d 10.0.0.254 --dport 25 -j ACCEPT iptables -A OUTPUT -o eth0 -p tcp -s 10.0.0.254 --sport 25 -d any/0 -j ACCEPT iptables -A INPUT -i eth1 -p tcp -s any/0 --sport 1024: -d 10.0.1.254 --dport 22 -j ACCEPT iptables -A OUTPUT -o eth1 -p tcp -s 10.0.1.254 --sport 22 -d any/0 --dport 1024: -j ACCEPT iptables -A INPUT -i eth1 -p tcp -s any/0 --sport 1024: -d 10.0.1.254 --dport 53 -j ACCEPT iptables -A OUTPUT -o eth1 -p tcp -s 10.0.1.254 --sport 53 -d any/0 --dport 1024: -j ACCEPT iptables -A INPUT -i eth1 -p udp -s any/0 --sport 1024: -d 10.0.1.254 --dport 53 -j ACCEPT iptables -A OUTPUT -o eth1 -p udp -s 10.0.1.254 --sport 53 -d any/0 --dport 1024: -j ACCEPT iptables -A INPUT -i eth1 -p tcp -s any/0 -d 10.0.1.254 --dport 25 -j ACCEPT iptables -A OUTPUT -o eth1 -p tcp -s 10.0.1.254 --sport 25 -d any/0 -j ACCEPT

Espacio de Código 4.5 Ejemplo de reflas para filtrado de paquetes en el routerintranet

4.3.1.3.2. Firewallproxy

En el servidor firewallproxy se debe configurar tanto las rutas necesarias como el

firewall con NAT y el servidor de proxy squid. Primeramente se presentarán las rutas

necesarias:

echo 1 >/proc/sys/net/ipv4/ip_forward route add -net 192.168.0.0 netmask 255.255.255.0 gw 10.0.1.254 route add -net 192.168.1.0 netmask 255.255.255.0 gw 10.0.1.254 route add -net 192.168.2.0 netmask 255.255.255.0 gw 10.0.1.254 route add -net 192.168.4.0 netmask 255.255.255.0 gw 10.0.1.254 route add -net default gw 10.0.2.254

Espacio de Código 4.6 Rutas del Servidor firewallproxy

Para la configuración del firewall con la traducción NAT se procede a configurar las

siguientes reglas de filtrado de paquetes:

# Script de configuración de Iptables Nat – DSCA, JJBS – vserver 2009. iptables -t nat -A POSTROUTING -o eth1 -p tcp -s 10.0.1.0/24 --sport 1024: -d ! 10.0.1.0/24 --dport :1023 -j MASQUERADE iptables -t nat -A POSTROUTING -o eth1 -p udp -s 10.0.1.0/24 --sport 1024: -d ! 10.0.1.0/24 --dport :1023 -j MASQUERADE iptables -t nat -A POSTROUTING -o eth1 -p icmp -s 10.0.1.0/24 -d ! 10.0.1.0/24 -j MASQUERADE iptables -t nat -A POSTROUTING -o eth1 -p tcp -s 192.168.0.0/24 --sport 1024: -d !

188

192.168.0.0/24 --dport :1023 -j MASQUERADE iptables -t nat -A POSTROUTING -o eth1 -p udp -s 192.168.0.0/24 --sport 1024: -d ! 192.168.0.0/24 --dport :1023 -j MASQUERADE iptables -t nat -A POSTROUTING -o eth1 -p icmp -s 192.168.0.0/24 -d ! 192.168.0.0/24 -j MASQUERADE # Reglas de Forward TCP, UDP e ICMP iptables -A FORWARD -i eth0 -o eth1 -p tcp -s 10.0.0.0/24 --sport 1024: -d ! 10.0.0.0/24 --dport :1023 -j ACCEPT iptables -A FORWARD -i eth0 -o eth1 -p tcp -s 192.168.0.0/24 --sport 1024: -d ! 192.168.0.0/24 --dport :1023 -j ACCEPT iptables -A FORWARD -i eth1 -o eth0 -p tcp -s ! 10.0.0.0/24 --sport :1023 -d 10.0.0.0/24 --dport 1024: -j ACCEPT iptables -A FORWARD -i eth1 -o eth0 -p tcp -s ! 192.168.0.0/24 --sport :1023 -d 192.168.0.0/24 --dport 1024: -j ACCEPT iptables -A FORWARD -i eth0 -o eth1 -p udp -s 10.0.0.0/24 --sport 1024: -d ! 10.0.0.0/24 --dport :1023 -j ACCEPT iptables -A FORWARD -i eth0 -o eth1 -p udp -s 192.168.0.0/24 --sport 1024: -d ! 192.168.0.0/24 --dport :1023 -j ACCEPT iptables -A FORWARD -i eth1 -o eth0 -p udp -s ! 10.0.0.0/24 --sport :1023 -d 10.0.0.0/24 --dport 1024: -j ACCEPT iptables -A FORWARD -i eth1 -o eth0 -p udp -s ! 192.168.0.0/24 --sport :1023 -d 192.168.0.0/24 --dport 1024: -j ACCEPT iptables -A FORWARD -i eth0 -o eth1 -p icmp -s 10.0.0.0/24 -d ! 10.0.0.0/24 -j ACCEPT iptables -A FORWARD -i eth0 -o eth1 -p icmp -s 192.168.0.0/24 -d ! 192.168.0.0/24 -j ACCEPT iptables -A FORWARD -i eth1 -o eth0 -p icmp -s ! 10.0.0.0/24 -d 10.0.0.0/24 -j ACCEPT iptables -A FORWARD -i eth1 -o eth0 -p icmp -s ! 192.168.0.0/24 -d 192.168.0.0/24 -j ACCEPT iptables -A FORWARD -i eth2 -o eth1 -p tcp -s 10.0.1.0/24 --sport 1024: -d ! 10.0.1.0/24 --dport :1023 -j ACCEPT iptables -A FORWARD -i eth2 -o eth1 -p tcp -s 192.168.0.0/24 --sport 1024: -d ! 192.168.0.0/24 --dport :1023 -j ACCEPT iptables -A FORWARD -i eth1 -o eth2 -p tcp -s ! 10.0.1.0/24 --sport :1023 -d 10.0.1.0/24 --dport 1024: -j ACCEPT iptables -A FORWARD -i eth1 -o eth2 -p tcp -s ! 192.168.0.0/24 --sport :1023 -d 192.168.0.0/24 --dport 1024: -j ACCEPT iptables -A FORWARD -i eth2 -o eth1 -p udp -s 10.0.1.0/24 --sport 1024: -d ! 10.0.1.0/24 --dport :1023 -j ACCEPT iptables -A FORWARD -i eth2 -o eth1 -p udp -s 192.168.0.0/24 --sport 1024: -d ! 192.168.0.0/24 --dport :1023 -j ACCEPT iptables -A FORWARD -i eth1 -o eth2 -p udp -s ! 10.0.1.0/24 --sport :1023 -d 10.0.1.0/24 --dport 1024: -j ACCEPT iptables -A FORWARD -i eth1 -o eth2 -p udp -s ! 192.168.0.0/24 --sport :1023 -d 192.168.0.0/24 --dport 1024: -j ACCEPT iptables -A FORWARD -i eth2 -o eth1 -p icmp -s 10.0.1.0/24 -d ! 10.0.1.0/24 -j ACCEPT iptables -A FORWARD -i eth2 -o eth1 -p icmp -s 192.168.0.0/24 -d ! 192.168.0.0/24 -j ACCEPT iptables -A FORWARD -i eth1 -o eth2 -p icmp -s ! 10.0.1.0/24 -d 10.0.1.0/24 -j ACCEPT iptables -A FORWARD -i eth1 -o eth2 -p icmp -s ! 192.168.0.0/24 -d 192.168.0.0/24 -j ACCEPT #Reglas para abrir puertos necesarios iptables -A INPUT -i eth1 -p tcp -s any/0 --sport 1024: -d 10.0.2.1 --dport 22 -j ACCEPT iptables -A OUTPUT -o eth1 -p tcp -s 10.0.2.1 --sport 22 -d any/0 --dport 1024: -j ACCEPT iptables -A INPUT -i eth1 -p tcp -s any/0 --sport 1024: -d 10.0.2.1 --dport 53 -j ACCEPT iptables -A OUTPUT -o eth1 -p tcp -s 10.0.2.1 --sport 53 -d any/0 --dport 1024: -j ACCEPT iptables -A INPUT -i eth1 -p udp -s any/0 --sport 1024: -d 10.0.2.1 --dport 53 -j ACCEPT iptables -A OUTPUT -o eth1 -p udp -s 10.0.2.1 --sport 53 -d any/0 --dport 1024: -j ACCEPT iptables -A INPUT -i eth1 -p tcp -s any/0 -d 10.0.2.1 --dport 25 -j ACCEPT iptables -A OUTPUT -o eth1 -p tcp -s 10.0.2.1 --sport 25 -d any/0 -j ACCEPT

Espacio de Código 4.7 Configuraciones para filtrado de paquetes en el firewallproxy

189

Finalmente, para la configuración del proxy se debe modificar el archivo

/etc/squid/squid.conf, especificando el servidor proxy, el puerto en que se ejecutará,

las direcciones que pueden acceder a Internet, entre otros parámetros. Un archivo de

configuración común es similar al que se muestra a continuación:

# Ubicación del Proxy http_port 10.0.0.1:8080 icp_port 0 # Características de Caché cache_mem 32 MB cache_dir ufs /var/spool/squid 6000 16 256 cache_access_log /var/log/squid/access.log cache_log /var/log/squid/cache.log pid_filename /var/run/squid.pid # Creación de listas de control de acceso (ACL) acl all src 0.0.0.0/0.0.0.0 acl allowed_hosts src 192.168.0.0/255.255.255.0 #Permisos dados a las ACL http_access allow allowed_hosts http_access deny all icp_access deny all miss_access allow all cache_effective_user squid cache_effective_group squid snmp_port 0

Espacio de Código 4.8 Archivo de configuración squid.conf

En el espacio de código se puede apreciar que squid primeramente bloquea todo el

tráfico (deny all) y en las líneas superiores sólo da el permiso de acceder a las IP de

la lista allowed_hosts (192.268.0.0/24), este es un archivo de configuración genérico,

de acuerdo a las necesidades específicas de la empresa en la que se vaya a

implementar el servidor virtualizado se pueden añadir listas de control de acceso con

sus respectivos permisos.

4.3.2. SERVIDOR DNS

Según el esquema de solución planteado, el centro de datos dispondrá de cuatro

servidores DNS, un servidor primario y uno secundario se ubican en la zona de

infraestructura y otros servidores primario y secundario se ubican en la zona

desmilitarizada.

4.3.2.1. Software

190

Como tanto los servidores primarios y secundarios se deben de configurar con el

mismo paquete de software, al igual que los servidores de la zona de infraestructura y

la desmilitarizada, solo se necesita seleccionar un paquete de software que se

instalará en los cuatro servidores, requiriéndose solamente cambios mínimos en la

configuración de los mismos.

4.3.2.1.1. Alternativas de software

La principal alternativa para configurar un servidor de nombres de dominio es

mediante el paquete bind, el cual es indiscutiblemente el más usado en los servidores

de dominio, del que más documentación se puede obtener y un estándar de-facto en

los sistemas Unix.

Pese a la gran aceptación de bind, existen otras alternativas al paquete, como por

ejemplo PowerDNS y Unbound, soluciones gratuitas que no están tan ampliamente

difundidas. PowerDNS es una buena opción para servidores autoritativos, es decir

para responder consultas del dominio que le corresponde, sin embargo las funciones

de servidor recursivo, para consultas de otros dominios, se deben instalar por

separado. Por otro lado Unbound no realiza funciones de servidor autoritativo, sino

que solo realiza consultas recursivas y actúa como servidor de caché.

4.3.2.1.2. Selección alternativa

La opción que se empleará para todos los servidores DNS del centro de datos será el

paquete bind. La razón para esta elección es que es la solución más ampliamente

probada y sobre la que existe mayor documentación, realizando tanto funciones de

servidor autoritativo como de recursivo.

4.3.2.2. Instalación

4.3.2.2.1. Instalación Máquina Virtual

Para la instalación de la VM correspondiente se toma como base la instalación del

servidor virtual indicado en el punto 4.2.1.5, en el que se incluyen los componentes

191

del servidor DNS Bind sobre un servidor GNU-Linux CentOS 5.2. El hostname

configurado es: dnsiprimario (DNS principal) y dnsisecundario (DNS de backup)

pertenecientes al FQDN dnsiprimario.vserver.ec y dnsisecundario.vserver.ec

respectivamente.

4.3.2.2.2. Instalación Servicio

La instalación del servicio Bind se puede realizar añadiendo el paquete en la

administrador de paquetes, empleando el comando yum install bind o simplemente

mediante la descarga del paquete de la página del proyecto en

https://www.isc.org/downloadables/11.

Figura 4.14 Instalación de bind mediante el comando yum install.

4.3.2.3. Configuración

En la zona de infraestructura se disponen de dos servidores DNS que actuaran como

servidor DNS primario y secundario. En cada servidor DNS se debe configurar el

archivo named.conf que es el archivo de configuración y sus correspondientes

192

archivos de zona de nombres, zonas de IP y zonas locales a los que hace referencia

named.conf.

Para dar mayor seguridad a los servidores de dominio, se decidió también instalar el

paquete bind-chroot, este paquete permite que el demonio named se ejecute en un

ambiente enjaulado, lo que hace que los archivos de configuración de bind ya no se

encuentren en su ubicación original de /etc/named, sino en /var/named/chroot/.

4.3.2.3.1. Dnsiprimario

Como su nombre lo indica el servidor dnsiprimario corresponde al servidor de

nombres primario de la intranet, es decir de la zona de infraestructura. El archivo de

configuración principal es /var/named/chroot/etc/named.conf y su configuración se

muestra a continuación:

# Archivo de configuración named.conf. – DSCA , JJBS – vserver.ec 2009. options { directory "/var/named"; forward only; forwarders { 10.0.2.5; 10.0.2.6; } ; }; controls { inet 127.0.0.1 allow { localhost; } keys { rndckey; }; }; zone "vserver.ec" IN { type master; file "named.vserver.ec"; allow-update { none; }; allow-query { any; }; allow-transfer { 10.0.1.3; }; }; zone "1.0.10.in-addr.arpa" IN { type master; file "named.10.0.1"; allow-update { none; }; allow-query { any; }; allow-transfer { any; }; }; zone "0.0.10.in-addr.arpa" IN { type master; file "named.10.0.0"; allow-update { none; }; allow-query { any; }; allow-transfer { any; }; }; zone "2.0.10.in-addr.arpa" IN { type master; file "named.10.0.2"; allow-update { none; };

193

allow-query { any; }; allow-transfer { any; }; }; zone "0.168.192.in-addr.arpa" IN { type master; file "named.192.168.0"; allow-update { none; }; allow-query { any; }; allow-transfer { any; }; }; zone "2.168.192.in-addr.arpa" IN { type master; file "named.192.168.2"; allow-update { none; }; allow-query { any; }; allow-transfer { any; }; }; zone "0.16.172.in-addr.arpa" IN { type master; file "named.172.16.0"; allow-update { none; }; allow-query { any; }; allow-transfer { any; }; }; zone "localhost" IN { type master; file "localhost.zone"; allow-update { none; }; allow-query { any; }; allow-transfer { none; }; }; zone "0.0.127.in-addr.arpa" IN { type master; file "named.local"; allow-update { none; }; allow-query { any; }; allow-transfer { none; }; }; include "/etc/rndc.key";

Espacio de Código 4.9 Archivo de configuración DNS primario named.conf

A continuación se muestran los archivos de zonas

/var/named/chroot/var/named.vserver.ec:

$TTL 86400 @ IN SOA dnsiprimario.vserver.ec. root.dnsiprimario.vserver.ec. ( 2009102412 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum

194

IN NS dnsiprimario.vserver.ec. IN MX 10 mailempresarial.vserver.ec. firewallproxy-datos IN A 10.0.0.1 basededatos IN A 10.0.0.2 webempresarial IN A 10.0.0.3 impresion IN A 10.0.0.4 servidordearchivos IN A 10.0.0.5 ftp IN A 10.0.0.6 routerintranet-datos IN A 10.0.0.254 firewallproxy IN A 10.0.1.1 dnsiprimario IN A 10.0.1.2 dnsisecundario IN A 10.0.1.3 directorio IN A 10.0.1.4 mailempresarial IN A 10.0.1.5 dhcp IN A 10.0.1.6 routerintranet-infraestructura IN A 10.0.1.254 firewallproxy-dmz IN A 10.0.2.1 webinternet IN A 10.0.2.2 mailgateway IN A 10.0.2.3 comercioelectronico IN A 10.0.2.4 dnseprimario IN A 10.0.2.5 dnsesecundario IN A 10.0.2.6 firewallinternet-dmz IN A 10.0.2.254 routerintranet-0 IN A 192.168.0.1 routerintranet-2 IN A 192.168.2.1 mainserver IN A 192.168.0.99 danielserver-lan IN A 192.168.0.98 danielserver-wlan IN A 192.168.2.102 routerinternet IN A 172.16.0.2 firewallinternet IN A 172.16.0.1

Espacio de Código 4.10 Archivo de zona de nombres primario named.vserver.ec

$TTL 86400 @ IN SOA dnsiprimario.vserver.ec. root.dnsiprimario.vserver.ec. ( 2009102402 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum IN NS dnsiprimario.vserver.ec. 1 IN PTR firewallproxy-datos.vsever.ec. 2 IN PTR basededatos.vserver.ec. 3 IN PTR webempresarial.vserver.ec. 4 IN PTR impresion.vserver.ec. 5 IN PTR servidordearchivos.vserver.ec. 6 IN PTR ftp.vserver.ec. 254 IN PTR routerintranet-datos.vserver.ec.

Espacio de Código 4.11 Archivo de zona IP named.10.0.0

$TTL 86400 @ IN SOA dnsiprimario.vserver.ec. root.dnsiprimario.vserver.ec. ( 2009102402 ; Serial 28800 ; Refresh

195

14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum IN NS dnsiprimario.vserver.ec. 1 IN PTR firewallproxy.vsever.ec. 2 IN PTR dnsiprimario.vserver.ec. 3 IN PTR dnsisecundario.vserver.ec. 4 IN PTR directorio.vserver.ec. 5 IN PTR mailempresarial.vserver.ec. 6 IN PTR dhcp.vserver.ec. 254 IN PTR routerintranet-infraestructura.vserver.ec.

Espacio de Código 4.12 Archivo de zona IP primario named.10.0.1

$TTL 86400 @ IN SOA dnsiprimario.vserver.ec. root.dnsiprimario.vserver.ec. ( 2009102401 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum IN NS dnsiprimario.vserver.ec. 1 IN PTR firewallproxy-dmz.vsever.ec. 2 IN PTR webinternet.vserver.ec. 3 IN PTR mailgateway.vserver.ec. 4 IN PTR comercioelectronico.vserver.ec. 5 IN PTR dnseprimario.vserver.ec. 6 IN PTR dnsesecundario.vserver.ec. 254 IN PTR firewallinternet-dmz.vserver.ec.

Espacio de Código 4.13 Archivo de zona IP primario named.10.0.2

$TTL 86400 @ IN SOA dnsiprimario.vserver.ec. root.dnsiprimario.vserver.ec. ( 2009102406 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum IN NS dnsiprimario.vserver.ec. 1 IN PTR routerintranet-0.vserver.ec. 98 IN PTR danielserver-lan.vserver.ec. 99 IN PTR mainserver.vserver.ec.

Espacio de Código 4.14 Archivo de zona IP primario named.192.168.0

$TTL 86400 @ IN SOA dnsiprimario.vserver.ec. root.dnsiprimario.vserver.ec. ( 2009102408 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum IN NS dnsiprimario.vserver.ec. 1 IN PTR routerintranet-2.vserver.ec.

196

102 IN PTR danielserver-wlan.vserver.ec.

Espacio de Código 4.15 Archivo de zona IP primario named.192.168.2

$TTL 86400 @ IN SOA dnsiprimario.vserver.ec. root.dnsiprimario.vserver.ec. ( 2009102403 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum IN NS dnsiprimario.vserver.ec. 1 IN PTR firewallinternet.vserver.ec. 2 IN PTR routerinternet.vserver.ec.

Espacio de Código 4.16 Archivo de zona IP primario named.172.16.0

$TTL 86400 @ IN SOA dnsiprimario.vserver.ec. root.dnsiprimario.vserver.ec. ( 2009102401 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum IN NS dnsiprimario.vserver.ec. 1 IN PTR localhost.

Espacio de Código 4.17 Archivo de zona local primario named.local

$TTL 86400 @ IN SOA dnsiprimario.vserver.ec. root.dnsiprimario.vserver.ec. ( 2009102401 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum IN NS dnsiprimario.vserver.ec. localhost. IN A 127.0.0.1

Espacio de Código 4.18 Archivo de zona local primario localhost.zone

4.3.2.3.2. Dnsisecundario

Como su nombre lo indica el servidor dnsisecundario corresponde al servidor de

nombres secundario de la intranet, es decir de la zona de infraestructura. El archivo

de configuración principal es /var/named/chroot/etc/named.conf y su configuración se

muestra a continuación:

197

# Archivo de configuración named.con dnsisecundario, - DSCA , JJBS – vserver.ec 2009. options { directory "/var/named"; forward only; forwarders { 10.0.2.5; } ; }; controls { inet 127.0.0.1 allow { localhost; } keys { rndckey; }; }; zone "vserver.ec" IN { type slave; file "named.vserver.ec.bck"; masters { 10.0.1.2; }; }; zone "1.0.10.in-addr.arpa" IN { type slave; file "named.10.0.1.bck"; masters { 10.0.1.2; }; }; zone "0.0.10.in-addr.arpa" IN { type slave; file "named.10.0.0.bck"; masters { 10.0.1.2; }; }; zone "2.0.10.in-addr.arpa" IN { type slave; file "named.10.0.2.bck"; masters { 10.0.1.2; }; }; zone "0.168.192.in-addr.arpa" IN { type slave; file "named.192.168.0.bck"; masters { 10.0.1.2; }; };

zone "0.16.172.in-addr.arpa" IN { type slave; file "named.172.16.0.bck"; masters { 10.0.1.2; }; }; zone "localhost" IN { type master; file "localhost.zone"; }; zone "0.0.127.in-addr.arpa" IN {

198

type master; file "named.local"; }; include "/etc/rndc.key";

Espacio de Código 4.19 Archivo de configuración DNS secundario named.conf

$TTL 86400 @ IN SOA dnsisecundario.vserver.ec. root.dnsisecundario.vserver.ec. ( 2009102401 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum IN NS dnsisecundario.vserver.ec. 1 IN PTR localhost.

Espacio de Código 4.20 Archivo de zona local secundario named.local

$TTL 86400 @ IN SOA dnsisecundario.vserver.ec. root.dnsisecundario.vserver.ec. ( 2009102401 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum IN NS dnsisecundario.vserver.ec. localhost. IN A 127.0.0.1

Espacio de Código 4.21 Archivo de zona local primario localhost.zone

4.3.3. SERVIDOR DHCP

El servidor DHCP permitirá la configuración automática de los parámetros de

dirección IP, máscara de red, dirección de broadcast, gateway, las direcciones de

DNS, entre otros. El servicio DHCP acelerará y facilitará la configuración de muchos

ordenadores en la red de usuarios de la PyME, evitando en gran medida los posibles

errores humanos.

4.3.3.1. Software

Para le implementación del servidor de DHCP, se requieren opciones de software que

permitan configurar parámetros como los siguientes:

199

§ Configuración de servicio para múltiples redes.

§ Soporte de Dhcp relay.

§ Asignación de direcciones por dirección MAC.

§ Configuración de nombres de dominio.

§ Trabajo con DNS para agregación dinámica de hosts en registros dns.

4.3.3.1.1. Alternativas de software

A continuación se presentan tres alternativas de software para configuración del

servidor dhcp. Las opciones escogidas se realizaron en función de su difusión y

soporte.

Característica Tiny DHCP Server

DHCP Server ISC

Dual DHCP DNS Server

Sistema Operativo Windows 95

o superior GNU – Linux GNU - Linux

Gratuito Ö Ö Configuración de servicio para múltiples redes

Ö Ö Ö

Soporte Dhcp relay Ö Ö Ö Asignación de direcciones por dirección MAC

Ö Ö

Configuración de nombres de dominio Ö Ö Ö Trabajo con DNS para agregación dinámica de hosts en registros dns.

Ö Ö

Tabla 4.3 Alternativas de software para dhcp.

4.3.3.1.2. Selección alternativa

De las alternativas antes mencionadas, dos de ellas se ajustan a los requerimientos

establecidos para las PyMEs tanto desde el punto de vista económico como desde le

punto de vista técnico. Estas alternativas son DHCP Server ISC y Dual DHCP DNS

Server.

Se ha escogido la opción de DHCP Server ISC por cuanto constituye la versión más

usada en servidores Linux y cuenta con la mayor cantidad de documentación de

200

soporte para configuración, mantenimiento y resolución de conflictos. Además su

larga trayectoria de uso muestra ser una alternativa robusta y de fácil configuración.

4.3.3.2. Instalación

4.3.3.2.1. Instalación Máquina Virtual y Servicio

La instalación del servidor virtual basa su funcionamiento en la distribución CentOS

5.2 siguiendo el proceso ya visto en los servidores anteriores.

La instancia de VM tiene su archivo de configuración localizado en el archivo

dhcp.conf (/etc/xen/dhcp.conf).

Ésta distribución de Linux nos permite incluir en su proceso de instalación al servidor

DHCP Server ISC. Utilizando la herramienta de instalación yum, este procedimiento

también puede ser realizado como se muestra a continuación:

Figura 4.15 Instalación del Servidor de DHCP con la herramienta yum.

La instalación incluye el agente dhcrelay que nos permitirá la configuración del

servicio para múltiples redes. Este agente se instalará en el servidor de routerintranet

que da la cara a la red interna de la PyME. El hostname configurado es: dhcp

perteneciente al FQDN dhcp.vserver.ec.

201

4.3.3.3. Configuración

4.3.3.3.1. Archivo de configuración dhcpd.conf

El servidor DHCP usar el archivo de configuración dhcpd.conf

(/etc/sysconfig/dhcpd.conf). En el archivo de configuración se especifican los

parámetros de rango de direcciones IP, gateways, direcciones DNS, etc. En el

archivo se especifica además la asignación de direcciones fijas de acuerdo a la

dirección MAC de las máquina indicadas por la organización de acuerdo a sus

requerimientos.

En el prototipo se configura la asignación de direcciones de las redes: 192.168.0.x,

192.168.2.x, 192.168.4.x para uso de las diferentes áreas administrativas de las

PyMEs.

Estos parámetros pueden ser fácilmente modificados de acuerdo a características

específicas de la organización.

A continuación se muestra el archivo de configuración:

# # DHCP Server Configuration file. # see /usr/share/doc/dhcp*/dhcpd.conf.sample max-lease-time 3600; default-lease-time 600; ddns-update-style none; ddns-updates off; option domain-name "vserver.ec"; option domain-name-servers 10.0.1.2, 10.0.1.3; # Gerencia subnet 192.168.0.0 netmask 255.255.255.0 { option routers 192.168.0.1; option subnet-mask 255.255.255.0; range 192.168.0.100 192.168.0.199;

# Subgerente host host subgerente { hardware ethernet 00:21:91:79:6b:2c; fixed-address 192.168.0.99; }

202

# Gerente host host gerente { hardware ethernet 00:23:8b:90:dc:cf; fixed-address 192.168.0.98; } } # Ventas subnet 192.168.2.0 netmask 255.255.255.0 { option routers 192.168.2.1; option subnet-mask 255.255.255.0; range 192.168.2.100 192.168.2.199; # Vendedor host host vendedor { hardware ethernet 00:24:2c:05:d1:65; fixed-address 192.168.2.102; } } # Contabilidad subnet 192.168.4.0 netmask 255.255.255.0 { option routers 192.168.4.1; option subnet-mask 255.255.255.0; range 192.168.4.100 192.168.4.199; # Contador host host contador { hardware ethernet 00:1c:c0:22:60:63; fixed-address 192.168.4.99; } } subnet 10.0.1.0 netmask 255.255.255.0 { }

Espacio de Código 4.22 Archivo de configuración dhcpd.conf

4.3.3.3.2. Configuración dhcrelay

La opción de dhcrelay, permite la asignación de rangos de direcciones IP a múltiples

redes en donde el servidor dhcp no se encuentre directamente conectado. El proceso

de broadcast característico de un cliente dhcp, enviará su solicitud hasta el

routerintranet en donde se encuentra instalado el dhcrelay. Este servicio permitirá re

direccionar la solicitud hacia el servidor dhcp (10.0.0.6) posibilitando asignar

direcciones de las redes 192.168.0.x, 192.168.2.x y 192.168.4.x

203

Figura 4.16 Routerintranet actuando como dhcrelay.

El archivo de configuración es /etc/sysconfig/dhcrelay. En éste configuramos la

dirección del servidor dhcp (10.0.1.6) y las interfaces del servidor routerintranet por

las que escuchará: eth2, eth3, eth4, correspondientes a la red corporativa.

# Archivo de configuración dhcrelay # Interfaces por las que escucha las peticiones dhcp INTERFACES="eth2 eth3 eth4" # Direccion ip del servidor dhcp DHCPSERVERS="10.0.1.6"

Espacio de Código 4.23 Archivo de configuración dhcrelay.

4.3.4. SERVIDOR DE CORREO ELECTRÓNICO

El servidor de correo electrónico permitirá a la PyME el contacto electrónico entre los

diferentes actores involucrados en su actividad organizativa y comercial. El servicio

proporcionado debe estar implementado de tal manera que garantice el objetivo que

es la comunicación escrita por correo a la vez que se brinde la protección de Correo

Basura (Spam), virus, y demás amenazas electrónicas.

204

4.3.4.1. Software

Entre las alternativas de software se debe distinguir entre software para el envío de

correo MTA´s98 y de recepción.

4.3.4.1.1. Alternativas de software

Entre las alternativas de MTA´s se tiene las siguientes:

MTA´s Características

QMAIL

Configuración automática para cada máquina. Control de Relay (retransmisión): acaba con los reenvíos o retransmisiones que usuarios externos sin autorización hacen gracias a nuestra máquina. Reconocimiento automático de direcciones IP locales. Tratamiento instantáneo de los mensajes que se agregan a la cola. Encolamiento automático seguro (no se pierde correo en caso de que el sistema falle). Filtrado condicional.

Sendmail

Ha mejorado enormemente seguridad y funcionamiento a partir del 2000, y ha adquirido nuevas características. Es instalado por defecto en la mayoría de los sistemas operativos del Unix comercial. Trabaja con poco o nada de modificación con las configuraciones por defecto. Es un nombre conocido de MTA, dado su trayectoria Entrega inmediata de mensajes. Cambio de direccionamiento inmediato. Interacción con el DNS a través de registros MX. Las máquinas pueden ser renombradas o movidas y la entrega de mensajes es procesada normalmente. Es el servidor de mail más popular de todo el mundo UNIX. Permite el uso de "alias" entre los usuarios del sistema; lo posibilita (entre otras funciones) crear y mantener listas de correo entre grupos. Ejecución como agente de usuario (MUA). Uso de la plataforma de mensajería unificada confiable ( TrUMP - Trusted Unified Messaging Platform) Soporte para autenticación. Soporte para ipv6. Tipo de licenciamiento.

Postfix

Diseño modular (no es un único programa monolítico). La seguridad ha sido un condicionante desde el comienzo de su diseño. El rendimiento (se diseñó pensando que algún día habría sitios necesitaran procesar gran cantidad de mensajes al día).

98 Mail Transfer Agent: Agente de transferencia (agente de transferencia de correo)

205

Soporte para las tecnologías más usadas hoy día: LDAP, Bases de datos (MySQL), autentificación mediante SASL, LMTP, etc. Estricto cumplimiento de los estándares de correo-e Soporte muy bueno para dominios virtuales. Facilidad de configuración. Compatibilidad hacia/desde fuera con Sendmail (.forward, aliases, suplanta mailq, newaliases, /usr/lib/sendmail con versiones equivalentes). Abundante documentación, y de calidad. Fácil integración con antivirus. Uso sencillo de listas negras. Soporta direccionamiento con IPv6 Filtrado de cabeceras y cuerpos de mensajes por expresiones regulares.

Tabla 4.4 Alternativas de software MTA´s. Fuente: http://gluc.unicauca.edu.co/wiki/index.php/Documentaci%C3%B3n_MTAs_y_Tabla_comparativa

Entre las alternativas de software para la recepción de correo se tienen algunas

distribuciones entre las que se puede destacar qpop y dovecot; sin embargo la más

difundida en el software libre es dovecot y entre las características principales que

brinda éste son el soporte de los protocolos pop3, pop3s, imap e imaps de fácil

configuración.

4.3.4.1.2. Selección alternativa

Para el prototipo de servidor virtualizado para PyMEs se ha optado por la alternativa

Sendmail – Dovecot. Si bien Postfix es una alternativa muy sólida y de muy buenas

características, el trabajo con Sendmail es suficiente para las PyMEs – considerando

el flujo de información analizado en el capítulo 2, y al instalarlo en conjunto con Sasl,

MailScanner y Clamav constituye una alternativa estable y segura con control de

correo basura spam, virus y autentificación SMTP.

4.3.4.2. Instalación

4.3.4.2.1. Instalación Máquina Virtual

El servidor virtual de correo electrónico brinda el servicio intranet corporativa a través

del servidor Mailempresarial y su servicio se extiende para su envío a otros dominios

a través del Gateway de correos Mailgateway.

206

La máquina virtual incluye el servicio de Sendmail y Dovecot sobre una distribución

de Linux CentOS 5.2 en base a la plantilla de VM.

El hostname configurado para el servidor de correo corporativo es: mailempresarial

perteneciente al FQDN mailempresarial.vserver.ec.

4.3.4.2.2. Instalación Servicio

El servicio Sendmail puede ser instalado fácilmente incluyéndolo como servidor

dentro del programa de instalación de CentOS 5.2. De igual manera puede ser

instalado con la herramienta yum mediante el comando yum install, así

yum -y install sendmail sendmail-cf dovecot m4

Figura 4.17 Instalación de Sendmail y sus dependencias con la herramienta yum.

Con ello se instala sendmail, sendmail-cf, dovecot y el procesador de macros m4

necesario para la configuración de Sendmail junto a dependencias específicas.

207

4.3.4.3. Configuración

Sendmail utiliza los siguientes archivos de configuración:

Filename Función /etc/mail/access Base de datos de accesos de sendmail /etc/mail/aliases Carpeta de alias /etc/mail/local-host-names

Listados de máquinas para las que sendmail acepta correo

/etc/mail/mailer.conf Configuración del programa de correo /etc/mail/mailertable Tabla de entregas de correo /etc/mail/sendmail.cf Archivo de configuración principal de sendmail /etc/mail/virtusertable Usuarios virtuales y tablas de dominio

Tabla 4.5 Archivos de configuración de Sendmail.

4.3.4.3.1. Mailempresarial

Para la configuración del servidor de correo empresarial, se editará el archivo de

configuración de Sendmail correspondiente a /etc/mail/sendmail.mc; en este archivo

se editan las siguientes líneas de la siguiente manera, presentándose a continuación

un extracto99:

dnl # Archivo de configuración Sendmail – DSCA, JJBS – vserver.ec 2009 dnl # CONFIGURACIÓN COMO SMART HOST A mailgateway.vserver.ec define(`SMART_HOST', `mailgateway.vserver.ec')dnl dnl # LíNEA COMENTADA PARA PERMITIR ACEPTAR EMAIL DESDE INTERNET Y LA INTRANET dnl DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl dnl # CORREOS ENVIADOS CON OTRO NOMBRE DE DOMINIO SERÁN ENMASCARADOS MASQUERADE_DOMAIN (vserver.ec)dnl

Espacio de Código 4.24 Archivo de configuración sendmail.mc

La finalidad de configurar a mailgateway como Smart Host es para cumplir su función

como agente MTA para el envío de correo electrónico hacia Internet.

99 Código completo puede encontrarse en anexo J.

208

Finalmente es necesario ejecutar el editor de macros m4 para la creación del archivo

sendmail.cf.

m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf

Para la configuración del acceso de envío de correos se modifica el archivo

/etc/mail/access y /etc/mail/local-host-names, donde se agregan las direcciones IP de

las personas que van a poder entregar correo al exterior (a hotmail, yahoo, etc...) o a

su vez el dominio en este caso vserver.ec:

# Archivo /etc/mail/local-host-names # Dominios locales de los cuales se acepta el envío de correo vserver.ec

Espacio de Código 4.25 Archivo de configuración local-host-names.

# Se permite el envío de correos para las máquinas del dominio vserver.ec # Check the /usr/share/doc/sendmail/README.cf file for a description # of the format of this file. (search for access_db in that file) # The /usr/share/doc/sendmail/README.cf is part of the sendmail-doc # package. # # by default we allow relaying from localhost... Connect:localhost.localdomain RELAY Connect:localhost RELAY Connect:127.0.0.1 RELAY vserver.ec RELAY

Espacio de Código 4.26 Archivo de configuración access.

Cabe indicar que se debe configurar en el servidor dns los registros correspondientes

de las máquinas de la red interna con el dominio vserver.ec garantizando así su envío

y seguridad del Relay.

Cuando se actualiza este fichero se debe ejecutar make dentro de /etc/mail/ para que

se actualice la base de datos.

Para el manejo de SMTP autentificado se inicia el servicio saslauthd y se descomenta

la siguiente línea en el archivo sendmail.mc

209

dnl # Activar servicio SMTP autentificado TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl

Espacio de Código 4.27 Activación del servicio SMTP autentificado

El servicio SMTP autentificado agrega una capa más de seguridad para evitar el uso

de nuestro MTA como generador de correo no autorizado.

En cuanto a la configuración de Dovecot, se debe editar el archivo de configuración

/etc/dovecot.conf, y en la línea "Protocols" especificar los protocolos (pop3, pop3s,

imap).

# Archivo de configuración /etc/dovecot.conf – DSCA, JJBS – vserver 2009 # Configuración de los protocolos para recpeción de correo protocols = pop3 pop3s imap

Espacio de Código 4.28 Archivo de configuración dovecot.conf

Con esto se permite el uso de los protocolos pop3 e imap.

Para la configuración e instalación de los complementos de sendmail: Mail Scanner y

Clamav el proceso es el siguiente:

Para la instalación de clamav, se descarga el archivo binario de la web:

http://sourceforge.net/projects/clamav/files/clamav/0.95.3/clamav-

0.95.3.tar.gz/download con la versión clamav-0.95.3

Es necesaria la agregación del usuario y grupo clamav. Para mantener actualizada la

base de virus se realiza un cron diario que haga referencia al archivo freshclam.

Para la instalación de Spamassassin se lo descarga de los repositorios por defecto

del sistema mediante:

rpm –ihv spamassassin*

210

Para la instalación del MailScanner se descarga el archivo rpm de la web

http://www.mailscanner.info/downloads.html

Para la configuración, el archivo correspondiente es

/etc/MailScanner/MailScanner.conf

Y se editan los parámetros más importantes como son:

# Configuración de MailScanner – DSCA, JJBS – vserver 2009 %org-name% = vserver %org-long-name% = Virtualserver %web-site% = www.vserver.ec %etc-dir% = /etc/MailScanner %report-dir% = /etc/MailScanner/reports/es # Se indica el software antivirus con el que se trabajará Virus Scanners = clamav # Se indicant las listas de spam a tomar en cuenta Spam List = SBL + XBL + SORBS + spamhaus-ZEN # Correo spam será enviado a la cuenta spam Spam Actions = forward spam@vserver.ec # Valor mínimo para ser considerado spam Required SpamAssassin Score = 5.5 # Valor máximo para no ser eliminado el mensaje spam High SpamAssassin Score = 10

Espacio de Código 4.29 Archivo de configuración de MailScanner

Con ello el servicio a administrar será MailScanner, el cual levanta y baja el servicio

Sendmail.

4.3.5. SERVIDOR DE DIRECTORIO

El servicio de directorio se empleará para mantener un registro de la información

sobre los usuarios de la red de ordenadores de la empresa, al igual que sobre los

211

recursos de red, de esta manera se logra facilitar a los administradores la gestión de

acceso de usuarios a los recursos de la red. En el centro de datos diseñado, este

servicio se ubicará en la red de infraestructura

4.3.5.1. Software

Existen diversas soluciones de software que permiten brindar un servicio de directorio

centralizado, en el caso de una red para pequeñas y medianas empresas lo más

importante es el mantener una lista actualizada de los usuarios que tiene la red y sus

respectivos permisos para brindar un alto grado de escalabilidad, permitiendo el

crecimiento de la empresa de una manera sencilla y controlada sin la necesidad de

configurar cada equipo por separado.

4.3.5.1.1. Alternativas de software

Existen diversas alternativas para la implementación de este tipo de servicio, estando

basadas la mayoría de implementaciones en el estándar X.500. La solución más

empleada para los sistemas Windows es Active Directory, mientras que para entornos

UNIX se suele usar el paquete OpenLDAP. También se disponen de otras soluciones

menos empleadas como Lotus Domino o Red Hat Directory Server.

Todas las soluciones presentadas se basan en el protocolo LDAP por lo que

presentan un funcionamiento similar, disponiendo de buenas características en su

desempeño. Es importante señalar que los paquetes de Active Directory y OpenLDAP

son de los que más documentación hay disponible y que los paquetes Active

Directory y Lotus Domino son directorios propietarios que requieren la compra de la

solución.

4.3.5.1.2. Selección alternativa

Para la implementación del servicio de directorio se empleará el paquete OpenLDAP,

esto debido a su amplia documentación y a sus características de código abierto, lo

que permite un costo muy inferior al de las otras soluciones disponibles.

212

4.3.5.2. Instalación

4.3.5.2.1. Instalación Máquina Virtual

El servidor de directorio se basa en una instalación de GNU-Linux CentOS 5.2 con el

software OpenLDAP instalado. Su FQDN es: directorio.vserver.ec.

4.3.5.2.2. Instalación Servicio

Para el funcionamiento de OpenLDAP se deben de instalar los paquetes de

openldap, openldap-servers y openldap-clients. Dicha instalación se puede realizar

añadiendo los paquetes en la administrador de paquetes, empleando el comando

yum install o descargando los paquetes de la página http://www.openldap.org/.

Figura 4.18 Instalación de openldap mediante el comando yum install

Figura 4.19 Instalación de openldap-servers mediante el comando yum install

213

Figura 4.20 Instalación de openldap-clients mediante el comando yum install

4.3.5.3. Configuración

Para la configuración del servicio de directorio se emplearán los paquetes OpenLDAP

y gq como cliente gráfico de LDAP. Primeramente para la configuración del servidor

se debe ubicar su archivo de configuración llamado /etc/openldap/slapd.conf.

4.3.5.3.1. Archivo de configuración

Lo primero que se debe hacer para la configuración del equipo es acceder al archivo

/etc/openldap/slapd.conf y verificar que solamente se encuentren incluidos los

esquemas necesarios (core, cosine, inetorgperson, nis y misc), una vez que se han

incluido estos esquemas se deben agregar líneas de autenticación y cambiar los

parámetros suffix, rootdn y rootpwcomo como se muestra a continuación:

# Lista de esquemas incluidos include /etc/openldap/schema/core.schema include /etc/openldap/schema/cosine.schema include /etc/openldap/schema/inetorgperson.schema include /etc/openldap/schema/nis.schema include /etc/openldap/schema/misc.schema # Líneas de autenticación access to attrs=userPassword by self write

214

by anonymous auth by dn.base="uid=root,ou=People,dc=vserver,dc=ec" write by * none access to attrs=gecos by self write by dn.base="uid=root,ou=People,dc= vserver,dc=com" write by * read access to attrs=loginShell by self write by dn.base="uid=root,ou=People,dc= vserver,dc=com" write by * read access to * by dn.base="uid=root,ou=People,dc= vserver,dc=com" write by * read #Cambios adicionales suffix "dc= vserver,dc=com" rootdn "uid=root,ou=People,dc= vserver,dc=com" rootpw secret

Espacio de Código 4.30 Cambios en el archivo de configuración slapd.conf

Una vez realizados estos cambios se debe cambiar el archivo

/usr/share/openldap/migration/migrate_common.ph para asegurar que el dominio de

correo sea el indicado (vserver.ec) al igual que el sufijo base.

$DEFAULT_MAIL_DOMAIN = "example.com"; $DEFAULT_BASE = "dc=example,dc=com";

Espacio de Código 4.31 Cambios en el archivo de migración migrate_common.ph

4.4. INSTALACIÓN Y CONFIGURACIÓN DEL DATACENTER DE

DATOS

La red de datos se creó para albergar los servidores que proporcionan la información

del negocio. Los sistemas de servicios de fondo contienen el almacenamiento de los

datos de las aplicaciones o bien proporcionan la conectividad con otros sistemas que

mantienen los recursos de datos. La base para los servidores virtuales es una

distribución de GNU-Linux CentOS 5.2.

215

Figura 4.21 Datacenter de datos.

Los servidores que forman parte del datacenter de datos son:

§ Base de datos

§ Web empresarial

§ Impresión

§ Servidor de archivos

§ Ftp

4.4.1. SERVIDOR DE BASE DE DATOS

La base de datos es uno de los principales servicios de la empresa ya que

almacenará todo tipo de información concerniente a la misma. Este servidor se

encuentra protegido por el firewall en el servidor routerintranet de conexiones

indeseadas provenientes de la red interna y por el firewall del servidor firewallproxy

de conexiones indeseadas provenientes de la zona desmilitarizada.

216

4.4.1.1. Software

Para la implementación de un servidor de base de datos se requiere de un sistema

administrador de base de datos (DBMS, por sus siglas en inglés), estos sistemas son

una interfaz entre el usuario y las bases de datos que maneja.

4.4.1.1.1. Alternativas de software

Existen muchas opciones para la administración de bases de datos, siendo algunas

soluciones libres como: MySQL, PostgreSQL, entre otros; y algunos propietarios o

privados como: Oracle, Microsoft SQL Server, FoxPro, entre otros.

MySQL es uno de los gestores más usados siendo un sistema de gestión de base de

datos relacional, multihilo y multiusuario. Las bases de datos MySQL son muy rápidas

en la lectura y consumen muy pocos recursos del sistema, y además presentan una

gran facilidad de instalación y configuración.

Por otro lado PostgreSQL es un sistema que presenta gran escalabilidad mucho

mayor que la de MySQL, pero de la misma forma genera una gran carga para los

recursos del sistema.

4.4.1.1.2. Selección alternativa

La opción elegida para el servicio de base de datos es MySQL, esto es debido a que

se ha considerado que el gestor PostgreSQL consume gran cantidad de recursos lo

que le puede llevar a ser de dos a tres veces más lento que MySQL100, además pese

a que MySQL no posee la gran escalabilidad de PostgreSQL, es capaz de soportar

inmensas bases de datos como las de Facebook101 y Wikipedia102, siendo mucho más

que suficiente para una pequeña o mediana empresas.

100 Datos tomados del artículo PostgreSQL vs. MySQL de Daniel Pecos que se puede encontrar en la página web http://www.netpecos.org/docs/mysql_postgres/x108.html.

101 Según los artículos en las páginas web: http://blog.facebook.com/blog.php?post=7899307130 y http://gigaom.com/2008/04/25/facebooks-insatiable-hunger-for-hardware/

217

4.4.1.2. Instalación

4.4.1.2.1. Instalación Máquina Virtual

El servidor de base de datos se basa en la instalación base de GNU-Linux CentOS

5.2 sobre la cual se han instalado los componentes de MySQL necesarios. Su FQDN

es: basededatos.vserver.ec.

4.4.1.2.2. Instalación Servicio

La instalación del servicio MySQL se puede realizar añadiendo el paquete en la

administrador de paquetes, empleando el comando yum install mysql o simplemente

mediante la descarga del paquete de la página del proyecto en

http://www.mysql.com/?bydis_dis_index=1.

Figura 4.22 Instalación de MySQL mediante el comando yum install

102 Según artículo en la página web http://meta.wikimedia.org/wiki/Wikimedia_servers#Overall_system_architecture

218

4.4.1.3. Configuración

4.4.1.3.1. Archivo de configuración

El primer paso para configurar una base de datos es el asignar una clave al usuario

root, para esto se emplea el comando:

mysqladmin -u root password nueva-clave-de-acceso

A partir de este momento ya no basta con escribir mysql para acceder al sistema sino

que se requiere poner:

mysql -u root –p

para que se pida la clave de acceso.

Figura 4.23 Configuración de clave para MySQL

Para crear una base de datos se emplea el comando create database mientras que

para eliminarla se emplea drop. Cuando se genera una base de datos conviene

determinar con que usuario y desde que equipo en la red local, se podrá tener

219

acceso, así como los privilegios para modificar esta, para esto se emplea el comando

GRANT.

Figura 4.24 Creación de bases de datos y asignación de permisos

4.4.2. SERVIDOR DE ARCHIVOS

La implementación del servidor de archivos permitirá compartir a través de la red

tanto los recursos físicos de disco como también de dispositivos de almacenamiento

como disqueteras, CD-ROM, etc. Esto puede reducir la inversión en dichos

dispositivos y mejorar el aprovechamiento del hardware existente en la PyME.

4.4.2.1. Software

4.4.2.1.1. Alternativas de software

Entre las alternativas disponibles se tienen entre otros a Samba y NFS.

SAMBA es un conjunto de programas, bajo la Licencia Publica General GNU, y que

implementan en sistemas basados sobre UNIX® el protocolo SMB mediante el cual

se pueden realizar entre otras funciones las de compartir archivos e impresoras (entre

otras cosas) entre nodos de una red. Es utilizado principalmente en ordenadores con

Microsoft Windows.

220

Por otra parte, NFS está basado en RPC (Remote Procedure Call) y en la

arquitectura cliente/servidor. Fue creado por Sun como una alternativa para compartir

transparentemente fichero entre máquinas Unix, sin necesidad de utilizar ftp o ssh.

Ambas alternativas cumplen la función de servidor de archivos, sin embargo la

utilización de NFS se ve limitada para su uso entre computadores de sistema

operativo Linux, mientras que Samba permite dar servicio tanto a computadores

cliente Linux como Windows.

4.4.2.1.2. Selección alternativa

En base a los datos obtenidos en el capítulo 2, en las PyMEs en las que ya se cuenta

con algún tipo de servicio de TI, el sistema operativo que es acogido por la mayoría

de los equipos cliente es Windows. Ante esta situación es Samba la mejor alternativa

la cual además de poder también brindar servicio a eventuales clientes que utilicen

Linux (a través del protocolo SMB), permitirá entre otras opciones la convivencia de

sistemas Linux y Windows en el mismo dominio a través de:

§ Compartición de Carpetas, Archivos y dispositivos de almacenamiento.

§ Compartición de Impresoras.

§ Controlador de dominio.

§ Integración con LDAP para DC103 con capacidad de trabajo para

autenticación de clientes Windows y Linux.

4.4.2.2. Instalación

4.4.2.2.1. Instalación Máquina Virtual

La distribución de Samba con la que se trabaja corre sobre cualquier distribución de

GNU-Linux. En tal virtud se hará uso de la plantilla de servidor virtual basada en un

sistema operativo GNU-Linux CentOS 5.2 en la cual se instalarán los componentes

necesarios para el funcionamiento adecuado.

103 Domain Controller o Controlador de Dominio.

221

El hostname configurado es: servidordearchivos perteneciente al FQDN

servidordearchivos.vserver.ec y al que se le ha agregado un CNAME para facilidad

de uso como: samba.vserver.ec.

4.4.2.2.2. Instalación Servicio

Para la instalación del servidor de archivos se requieren los siguientes elementos de

software:

§ samba: Servidor SMB.

§ samba-client: Diversos clientes para el protocolo SMB.

§ samba-common: Ficheros necesarios para cliente y servidor.

Con la distribución 5.2 de CentOS, bastará con utilizar yum para la instalación de los

paquetes requeridos, así:

yum -y install samba samba-client samba-common

4.4.2.3. Configuración

4.4.2.3.1. Archivo de configuración

Los archivos de configuración correspondientes al servicio son principalmente:

/etc/samba/smb.conf, /etc/samba/lmhosts.

Para la creación de usuarios que podrán compartir los recursos disponibles, son

agregados como típicamente se lo hace en Linux y a los que se les asigna su clave

smb correspondiente.

Cabe indicar que con fines de sincronización se deberá configurar tantos usuarios en

el servidor como usuarios a los que solo se les permita acceder (tanto en Windows o

Linux).

useradd -s /sbin/nologin centaurus

smbpasswd -a centaurus

222

Es necesario empezar resolviendo localmente los nombres NetBIOS asociándolos

con direcciones IP correspondientes. Esto se lo hace en el archivo lmhosts.

#Archivo de configuración /etc/samba/lmhosts 127.0.0.1 localhost 10.0.0.5 servidor de archivos

Espacio de Código 4.32 Configuración de archivo lmhosts en Samba.

La configuración de los grupos de trabajo, carpetas o recursos a compartir, usuarios

permitidos entre otras cuestiones de seguridad se los configura a partir del archivo

smb.conf

El grupo de trabajo se lo edita cambiando el valor del parámetro workgroup

asignando un grupo de trabajo deseado:

workgroup = Samba server

El parámetro server string es de carácter descriptivo.

server string = Servidor Samba

El parámetro hosts allow sirve para determinar el acceso a las diferentes máquinas

de la red, en este caso de la red interna.

hosts allow = 192.168.0. 192.168.2. 192.168.4. 10. 127.

Entre las opciones disponibles para configuración de las carpetas a compartir se

tienen las siguientes:

path = /cualquier/ruta/que/desee/compartir

223

El volumen puede utilizar cualquiera de las siguientes opciones:

Opción Descripción guest ok Define si se permitirá el acceso como usuario

invitado. El valor puede ser Yes o No. public Es un equivalente del parámetro guest ok, es

decir define si ser permitirá el acceso como usuario invitado. El valor puede ser Yes o No.

browseable Define si se permitirá mostrar este recurso en las listas de recursos compartidos. El valor puede ser Yes o No.

writable Define si se permitirá la escritura. Es el parámetro contrario de read only. El valor puede ser Yes o No. Ejemplos: «writable = Yes» es lo mismo que «read only = No». Obviamente «writable = No» es lo mismo que «read only = Yes»

valid users Define que usuarios o grupos pueden acceder al recurso compartido. Los valores pueden ser nombres de usuarios separados por comas o bien nombres de grupo antecedidos por una @. Ejemplo: danielserver, @administradores

write list Define que usuarios o grupos pueden acceder con permiso de escritura. Los valores pueden ser nombres de usuarios separados por comas o bien nombres de grupo antecedidos por una @. Ejemplo: danielserver, @administradores

admin users Define que usuarios o grupos pueden acceder con permisos administrativos para el recurso. Es decir, podrán acceder hacia el recurso realizando todas las operaciones como super-usuarios. Los valores pueden ser nombres de usuarios separados por comas o bien nombres de grupo antecedidos por una @. Ejemplo: danielserver, @administradores

directory mask Es lo mismo que directory mode. Define que permiso en el sistema tendrán los subdirectorios creados dentro del recurso. Ejemplos: 1777

create mask Define que permiso en el sistema tendrán los nuevos ficheros creados dentro del recurso. Ejemplo: 0644

Tabla 4.6 Opciones para la configuración de recursos compartidos en Samba. Fuente: Alcance Libre, © 1999-2009 Joel Barrios Dueñas – Configuración de Samba.

Así el archivo de configuración del servidor de archivos con Samba es el siguiente:

224

# Archivo de configuración /etc/samba/smb.conf - DSCA, JJBS - vserver.ec 2009. #======================= Global Settings ===================================== [global] #Se define el grupo de trabajo y el string de descripción workgroup = sambagroup server string = samba server %L #Se permite el acceso de las redes del datacenter y red corporativa hosts allow = 127. 192.168.0. 192.168.2. 192.168.4. 10. #Se indica la base de información a utilizar passdb backend = tdbsam # --------------------------- Printing Options ----------------------------- cups options = raw username map = /etc/samba/smbusers #============================ Share Definitions ============================== #Archivos y recursos compartidos [homes] comment = Home Directories browseable = no writeable = yes [printers] comment = Impresoras de vserver.ec path = /var/spool/samba browseable = no writeable = no printable = yes public = yes print command = lpr -P %p -o raw %s -r lpq command = lpstat -o %p lprm command = cancel %p-%j [compartido] comment = Carpeta de prueba path = /home/compartido/ public = yes writeable = yes browseable = yes [ftp] comment = Directorio del servidor FTP path = /var/ftp/pub guest ok = Yes read only = Yes #Se permite el permiso de escirtura únicamente al usuario centaurus con los parámetros 755 para directorio y 644 para ficheros write list = centaurus directory mask = 0755 create mask = 0644 #Se agrega la unidad de cdrom montada en /mnt como recurso compartido de la red [cd] comment = Unidad de cdrom path = /mnt

225

guest ok = Yes read only = Yes public = yes browseable = yes

Espacio de Código 4.33 Archivo de configuración smb.conf de Samba.

Una vez en Windows (equipos de los usuarios de la PyME) se puede observar los

resultados de la compartición de los recursos mediante Mis Sitios de Red o vía

Browser

Figura 4.25 Recursos compartidos desde Linux vistos en Windows XP.

4.4.3. SERVIDOR WEB EMPRESARIAL

El servidor web empresarial, es el encargado de brindar a la PyME un portal para la

intranet corporativa y la cual podrán acceder los distintos departamentos de la

organización.

La función de la web empresarial es la de brindar mediante el protocolo HTTP y

browsers, información interna de la organización ya sea de carácter administrativo,

financiero, gerencial, gestión documental, entre otros; además de abrir la posibilidad

para la implementación de aplicaciones web propias al negocio de cada PyMEs, lo

cual facilita su operación por su característica de adaptabilidad a los usuarios finales.

En el presente prototipo se proporciona la infraestructura adecuada para que la PyME

pueda implementar el sitio web correspondiente a sus necesidades internas en base

a las distintas posibilidades comentadas previamente.

226

4.4.3.1. Software

En cuanto a servidores web, en el mercado se encuentran algunas alternativas entre

las que se pueden destacar Apache como representante del software libre y gratuito e

Internet Information Services IIS como representante del software licenciado.

4.4.3.1.1. Alternativas de software

Sofware Características

Apache

Apache es el servidor Web por excelencia, con algo más de un 60% de los servidores de Internet utilizándolo a nivel mundial. Entre sus principales características podemos mencionar: rapidez, potente, eficaz, fiable, gratuito y extenso. Existen una gran variedad de módulos, que permiten generar contenido dinámico con PHP, Java, Perl, Pyton, etc., monitorizar el rendimiento del servidor, atender peticiones encriptadas por SSL, módulos que permiten crear servidores virtuales por IP o por nombre y limitar el ancho de banda para cada uno de ellos. Dichos módulos incluso pueden ser creados por cualquier persona con conocimientos de programación. Permite trabajo conjunto con MySql y php. Producto distribuido bajo Licencia GPL.

Internet Information

Services (IIS)

Es una serie de servicios para las computadoras que utilizan Windows como sistema operativo. Entre los servicios más comúnmente utilizados tenemos: FTP, SMTP, NNTP y HTTP/HTTPS. La computadora que tiene este servicio instalado se puede utilizar para publicar páginas Web tanto local (dentro de la red interna de la empresa) como remotamente (servidor Web, acceso desde cualquier lugar en Internet). El servidor Web se basa en varios módulos que le dan capacidad para procesar distintos tipos de páginas, por ejemplo Microsoft incluye los de Active Server Pages (ASP) y ASP.NET, pero también pueden ser incluidos otros módulos de otros fabricantes, como PHP o Perl. En definitiva Internet Information Server (IIS) es el componente de Windows que facilita la publicación de información y la ejecución de aplicaciones en el Web, con el objetivo de brindar mayor

227

seguridad, fiabilidad y rendimiento, se instala completamente bloqueado por defecto. Producto bajo Licencia incluido en las distribuciones de Windows Server.

Tabla 4.7 Características principales de alternativas de software servidor web. Fuente: Fuente: Diseño de la intranet de la empresa MEGAREDES Cía. Ltda., Tesis de Grado Ing. Trelles Segovia,

César Alfredo, Ing.Vallejo Cifuentes, Ricardo Patricio.

4.4.3.1.2. Selección alternativa

Apache es el servidor web más extendido y se ha convertido en estándar de los

sistemas Unix y Linux con gran cantidad de documentación de soporte disponible en

la web.

Se selecciona la alternativa del servidor Apache debido a que a demás de lo

mencionado anteriormente, cumple con las características técnicas necesarias para

dar soporte a las actuales páginas web basadas tanto en contenido estático como en

contenido dinámico adaptándose completamente con PHP, CGI, Perl y además

MySQL (constituyendo un servidor LAMP), todo esto en base a un proceso de

configuración simple.

Además su carácter de licenciamiento GPL beneficia de sobre manera la idea de

reducción de costos que tienen las PyMEs ofreciendo un servidor potente, rápido,

eficaz, flexible y escalable.

4.4.3.2. Instalación

4.4.3.2.1. Instalación Máquina Virtual

Apache corre sobre cualquier distribución de Linux y viene incluido por defecto en

varias versiones entre las que se encuentra CentOS 5.2. En tal virtud se hará uso de

la plantilla de servidor virtual basado en la distribución de GNU-Linux CentOS 5.2.

El hostname configurado es: webempresarial perteneciente al FQDN

webempresarial.vserver.ec y al CNAME web.vserver.ec.

228

4.4.3.2.2. Instalación Servicio

Cuando el servicio no viene instalado por defecto, se puede instalarlo mediante la

herramienta yum. Para dar soporte adecuado para PHP/MySQL, Perl, Python y

SSL/TLS, solo bastará ejecutar:

yum -y install httpd php php-mysql mod_perl mod_python mod_ssl

4.4.3.3. Configuración

4.4.3.3.1. Archivo de configuración

La configuración del servicio se lo realiza en base al archivo httpd.conf localizado en

/etc/httpd/conf/httpd.conf. En este archivo se encuentran las configuraciones por

defecto, las cuales por sí funcionan bastante bien, por lo cual no será necesario

modificar parámetros. En caso que se desee utilizar funciones adicionales del

servidor apache, en este archivo se encuentra comentado las modificaciones que se

pueden realizar como por ejemplo configuración de Servidores web virtuales para

poder dar servicio con la misma IP a varias webs, modificación del puerto en el que

se escucha por defecto, modificación de las carpetas en donde se leerá por defecto,

lenguajes, tipo de codificación, usuario y grupo de acceso, entre otros.

Para el presente prototipo se ha diseñado una página web informativa, la cual deberá

ser ubicada en el directorio /var/www/html/ en donde se deberá incluir el archivo de

referencia inicial de la web: index.html. En el archivo httpd.conf pueden modificarse

parámetros adicionales como para la lectura de archivos index.htm, default.html, etc.

A continuación se presenta un extracto del archivo de configuración principal del

servidor web:

# Archivo de configuración httpd.conf - DSCA , JJBS - vserver.ec 2009. # This is the main Apache server configuration file. It contains the # configuration directives that give the server its instructions. # See <URL:http://httpd.apache.org/docs/2.2/> for detailed information. # In particular, see # <URL:http://httpd.apache.org/docs/2.2/mod/directives.html> # for a discussion of each configuration directive. # # Don't give away too much information about all the subcomponents

229

# we are running. Comment out this line if you don't mind remote sites # finding out what major optional modules you are running ServerTokens OS ServerRoot "/etc/httpd" PidFile run/httpd.pid Timeout 120 KeepAlive Off MaxKeepAliveRequests 100 KeepAliveTimeout 15 ## ## Server-Pool Size Regulation (MPM specific) ## # prefork MPM # StartServers: number of server processes to start # MinSpareServers: minimum number of server processes which are kept spare # MaxSpareServers: maximum number of server processes which are kept spare # ServerLimit: maximum value for MaxClients for the lifetime of the server # MaxClients: maximum number of server processes allowed to start # MaxRequestsPerChild: maximum number of requests a server process serves <IfModule prefork.c> StartServers 8 MinSpareServers 5 MaxSpareServers 20 ServerLimit 256 MaxClients 256 MaxRequestsPerChild 4000 </IfModule> # worker MPM # StartServers: initial number of server processes to start # MaxClients: maximum number of simultaneous client connections # MinSpareThreads: minimum number of worker threads which are kept spare # MaxSpareThreads: maximum number of worker threads which are kept spare # ThreadsPerChild: constant number of worker threads in each server process # MaxRequestsPerChild: maximum number of requests a server process serves <IfModule worker.c> StartServers 2 MaxClients 150 MinSpareThreads 25 MaxSpareThreads 75 ThreadsPerChild 25 MaxRequestsPerChild 0 </IfModule> # # Listen: Allows you to bind Apache to specific IP addresses and/or # ports, in addition to the default. See also the <VirtualHost> # directive. # # Change this to Listen on specific IP addresses as shown below to # prevent Apache from glomming onto all bound IP addresses (0.0.0.0) # #Listen 12.34.56.78:80 Listen 80 # # Load config files from the config directory "/etc/httpd/conf.d".

230

# Include conf.d/*.conf User apache Group apache ServerAdmin root@vserver.ec # # ServerName gives the name and port that the server uses to identify itself. # This can often be determined automatically, but we recommend you specify # it explicitly to prevent problems during startup. ServerName web.vserver.ec:80 UseCanonicalName Off DocumentRoot "/var/www/html" # # Each directory to which Apache has access can be configured with respect # to which services and features are allowed and/or disabled in that # directory (and its subdirectories). # # First, we configure the "default" to be a very restrictive set of # features. # <Directory /> Options FollowSymLinks AllowOverride None ... </Directory> # # This should be changed to whatever you set DocumentRoot to. # <Directory "/var/www/html"> Options Indexes FollowSymLinks AllowOverride None Order allow,deny Allow from all </Directory> ...

Espacio de Código 4.34 Archivo de configuración httpd.conf (extracto).

Como se ha podido indicar previamente, el hostname del servidor web interno es:

webempresarial, siendo el path para uso interno en un software browser:

webempresarial.vserver.ec. Por tal motivo (y como es evidente) se cambiará el

nombre a uno más amigable como: web.vserver.ec, info.vserver.ec y

intranet.vserver.ec; para tal efecto se agregará como entrada DNS CNAME al archivo

named.vserver.ec del servidor dnsiprimario de la intranet, así (extracto):

# Archivo de configuración named.vserver.ec

231

. . . webempresarial IN A 10.0.0.3 web IN CNAME webempresarial intranet IN CNAME webempresarial info IN CNAME webempresarial . . .

Espacio de Código 4.35 Agregación de CNAME para webempresarial.vserver.ec

Una vez hecho este cambio se presenta a continuación el despliegue de la

webempresarial: web.vserver.ec

Figura 4.26 Sitio web.vserver.ec – webempresarial.

4.4.4. SERVIDOR FTP

El servidor FTP actúa como un medio para el intercambio y distribución de archivos

entre los usuarios de la red empresarial. Su implementación es un complemento y

respaldo al servicio dado por el servidor de archivos y está orientado para archivos

comunes típicamente de corto tamaño (a diferencia del servidor de archivos en donde

es posible hacer uso extensivo de gran cantidad de disco e incluso montar el recurso

compartido) y de interés general

El servicio permite a la empresa considerar publicar en este servicio por ejemplo:

listas de materiales de un proyecto, hojas de cálculo, documentos, presentaciones

232

electrónicas, archivos en formato PDF, entre otros. Adicionalmente y en conjunto con

el servidor web puede ser de gran utilidad para la actualización de la web

empresarial.

El acceso a la información mediante el servicio de FTP debe estar protegido mediante

el uso de usuarios y passwords tomando en cuenta la disponibilidad de la información

en función de los usuarios del servicio.

4.4.4.1. Software

Existen varias alternativas bajo licencia GPL y gratuitas, entre las que tenemos se

destacan VsFTPD y ProFTPD.

4.4.4.1.1. Alternativas de software

Software Características

ProFTPD

Un solo fichero de configuración. Posibilidad de configurar múltiples servidores virtuales. Puede ejecutarse en los modos standalone o inetd. No requiere estructuras especiales de directorios para el directorio raíz anónimo. El servidor no ejecuta ningún programa externo. Oculta directorios y ficheros basándose en los permisos y propietarios de Unix. No necesita permisos de root para ejecutarse. Soporte de contraseñas shadow.

VSFTPD

Configuración de direcciones IP Virtuales. Usuarios Virtuales. Operación por medio de inetd o Standalone. Poderosa configuración por usuario. Control de ancho de banda. Limite de conexiones IP por usuario. Encripción por medio de SSL Asigna permisos mínimos. Utiliza entorno chroot Seguridad, estabilidad y performance

Tabla 4.8 Alternativa de software para FTP. Fuente: http://vsftpd.beasts.org/#security y http://www.informaticabosco.com/phpnuke/linuxavanzado/curso/bloque04/12.ProFTPD.pdf

4.4.4.1.2. Selección alternativa

233

Las alternativas presentadas poseen características similares, sin embargo el factor

decisivo para la elección de uno u otro es la seguridad. El servidor ProFTPD tiene un

hueco de seguridad el cual puede ser explotado y perjudicar la integridad del servidor

en sí; por otra parte Vsftpd o Very Secure FTPD no ha presentado hasta la fecha

fallas de seguridad y es usado por grandes empresas que confían en su diseño como

Red Hat, Suse, Debian, FreeBSD.

Es así que la alternativa vsftpd posee características importantes como simplicidad de

configuración y seguridad. Sus características técnicas referentes al control de

acceso a los recursos en base a usuarios anónimos y locales así como

características de seguridad adicionales como por ejemplo enjaular la carpeta de

acceso de cada usuario, manejo de user y password, especificación de recursos de

acceso común, entre otros hacen de ésta una muy buena alternativa.

A todo lo mencionado se suma su carácter gratuito bajo su licencia GPL ubicándolo

acorde con la línea seguida para las PyMEs.

4.4.4.2. Instalación

4.4.4.2.1. Instalación Máquina Virtual

El servidor virtual sobre el cual corre el servicio ftp está basado en la plantilla de

instalación de GNU-Linux en su distribución CentOS 5.2 con el hostname

ftp.vserver.ec.

4.4.4.2.2. Instalación Servicio

Para la instalación del servicio se hace uso de la herramienta yum, de la siguiente

manera:

yum –y vsftpd

Creándose el usuario ftp dentro del grupo nogroup. Directorio /home/ftp propiedad de

root en donde se alojarán los archivos para usuarios anónimos.

234

4.4.4.3. Configuración

4.4.4.3.1. Archivo de configuración vsftpd.conf

El archivo de configuración se localiza en /etc/vsftpd/vsftpd.conf. La configuración

puede realizarse de igual forma mediante la herramienta Webmin, en la cual se le

agrega el módulo de configuración del servidor vsftpd.

Los parámetros configurables más importantes son los siguientes:

Proceso independiente (standalone): listen=YES

Para la gestión de usuarios se tienen parámetros para usuarios anónimos y locales:

Anónimos: anonymous_enable=YES

Usuarios locales: local_enable=YES

Descarga de archivos:

El usuario anónimo está recluido al home del usuario ftp.

Los usuarios locales se conectan como usuarios del sistema, pero confinados a su

directorio home:

chroot_local_user=YES

Para que no todos los usuarios queden recluidos en su directorio home se incluyen

sus nombres en un archivo con esta directiva:

chroot_list_file=/etc/vsftpd.chroot_lista

Carga de archivos para usuarios locales:

Permite subir archivos: write_enable=YES

Permisos del archivo subido: local_umask=022

235

Carga de archivos para usuarios anónimos:

Desactivada por defecto: anon_upload_enable=YES

Para permitir modificar archivos y creación de direcciones:

anon_other_write_enable=YES

anon_mkdir_write_enable=YES

Estos parámetros configurables pueden ser modificados, como se ha mencionado

anteriormente, mediante el uso de Webmin.

Figura 4.27 Configuración de vsftpd vía Webmin.

El archivo de configuración básico es el que se presenta a continuación; en éste se

ha configurado acceso únicamente para usuarios registrados en el sistema en modo

chroot, impidiendo así el uso de usuarios anónimos:

# Archivo de configuración FTP – DSCA , JJBS – vserver.ec 2009. ftp_username=ftp

236

# Allow anonymous FTP? (Beware - allowed by default if you comment this out). anonymous_enable=NO local_enable=YES # # Uncomment this to enable any form of FTP write command. write_enable=YES # # Default umask for local users is 077. You may wish to change this to 022, # if your users expect that (022 is used by most other ftpd's) local_umask=022 # # Uncomment this to allow the anonymous FTP user to upload files. This only # has an effect if the above global write enable is activated. Also, you will # obviously need to create a directory writable by the FTP user. anon_upload_enable=NO # # Uncomment this if you want the anonymous FTP user to be able to create # new directories. anon_mkdir_write_enable=NO # # Activate directory messages - messages given to remote users when they # go into a certain directory. dirmessage_enable=YES # # The target log file can be vsftpd_log_file or xferlog_file. # This depends on setting xferlog_std_format parameter xferlog_enable=YES # # Make sure PORT transfer connections originate from port 20 (ftp-data). connect_from_port_20=YES # Switches between logging into vsftpd_log_file and xferlog_file files. xferlog_file=/var/log/vsftpd.log xferlog_std_format=YES # # You may change the default value for timing out an idle session. idle_session_timeout=600 # # You may change the default value for timing out a data connection. data_connection_timeout=120 # # You may fully customise the login banner string: ftpd_banner=Bienvenidos, servidor FTP de vserver.ec, -JJBS , DSCA - 2009 # # You may specify an explicit list of local users to chroot() to their home chroot_local_user=YES # When "listen" directive is enabled, vsftpd runs in standalone mode and # listens on IPv4 sockets. This directive cannot be used in conjunction # with the listen_ipv6 directive. listen=YES pam_service_name=vsftpd userlist_enable=YES tcp_wrappers=YES

Espacio de Código 4.36 Archivo de configuración vsftpd.conf

4.4.5. SERVIDOR DE IMPRESIÓN

237

El servidor de impresión es el dispositivo que permitirá la conexión de una o varias

impresoras en la intranet empresarial. Es decir que cualquier dispositivo autorizado

que pueda acceder a la red interna de la empresa podrá conectarse a la impresora

para la impresión de trabajos.

4.4.5.1. Software

Para la implementación del servidor de impresión, únicamente se requiere de

software que permita la acceder a las impresoras, ya sean conectadas en la red o

localmente al servidor, desde cualquier otro dispositivo de red independientemente de

su sistema operativo, es decir que se deben emplear protocolos comunes.

4.4.5.1.1. Alternativas de software

La alternativa de software empleada para los sistemas operativos de tipo Unix es el

paquete cups (Common Unix Printing System). Se trata del sistema de impresión

modular por defecto en Linux que permite al computador actuar como un servidor de

impresión, aceptando o rechazando las tareas de impresión desde otros clientes en la

red y dirigiendo las peticiones a la impresora adecuada.

Adicionalmente a este paquete, existen herramientas adicionales para interfaz de

usuario. De esta forma se puede controlar y monitorear el servicio mediante una

interfaz web en el puerto 631, mediante GNOME CUPS Manager o mediante

KDEPrint.

4.4.5.1.2. Selección alternativa

La alternativa a emplearse para el servidor de impresión es cups junto con la interfaz

web de usuario. Esto se debe no solo a que cups es la alternativa por defecto en los

sistemas Unix, sino que permite dos cosas importantes: primero, el trabajar con el

Protocolo de Impresiones de Internet IPP (Internet Printing Protocol) lo que asegura

compatibilidad; y segundo, que los clientes se conecten a las impresoras de manera

Plug & Play y sin la necesidad de configuraciones complicadas.

238

4.4.5.2. Instalación

4.4.5.2.1. Instalación Máquina Virtual

El servidor de impresión se basa en el servidor virtual base instalado sobre el cual se

activa el servicio CUPS. El hostname correspondiente al servidor es: impresion

perteneciente al FQDN impresion.vserver.ec.

4.4.5.2.2. Instalación Servicio

La instalación del servicio cups se puede realizar añadiendo el paquete en la

administrador de paquetes, empleando el comando yum install cups o simplemente

mediante la descarga del paquete de la página del proyecto en http://www.cups.org/.

Figura 4.28 Instalación de cups mediante el comando yum install.

4.4.5.3. Configuración

La configuración de cups se suele realizar mediante una interfaz gráfica empleando

un navegador web pero también es posible su configuración mediante el archivo

cupsd.conf.

239

Para acceder al modo web se debe emplear el puerto 631. Desde esta interfaz se

puede seleccionar en Administrar Impresoras, aquí se puede seleccionar Añadir

Impresora, esto se realiza indicando el nombre, ubicación o descripción. Finalmente

se debe especificar el tipo de impresora y el fabricante y el modelo. Con esto

aparecerá un vínculo con el nombre de la impresora en el que se puede configurarla.

Figura 4.29 Pantalla de administración de cups vía web

4.4.5.3.1. Archivo de configuración

El archivo de configuración de cups es /etc/cups/cupsd.conf, y para su configuración

se emplean directivas de permisos que permiten definir que direcciones tienen

acceso a que parte de CUPS. Cada parte se corresponde a una sección de la interfaz

web de administración. Un ejemplo de directiva se muestra a continuación:

<Location /printers/>

Order Deny,Allow

Deny From All

Allow From 192.168.0.*

240

</Location>

Espacio de Código 4.37 Cambios en el archivo de migración migrate_common.ph

Location define la configuración para un directorio y sus hijos. La localización / da

permiso a todo el directorio raíz y todos sus hijos, es decir brinda acceso a todo cups.

/printers da acceso a las impresoras, /admin a la interfaz de administración y /job a la

gestión de trabajos.

Order define el tipo de permiso de acceso, así Allow,Deny permite el acceso a todas

las IP excepto aquellas listadas en las directivas Deny, y Deny,Allow solo permite el

acceso a las IP listadas en directivas Allow

En el ejemplo indicado sólo los equipos con una dirección IP de la red interna

(192.168.0.0/24) tienen acceso a las impresoras.

4.5. INSTALACIÓN Y CONFIGURACIÓN DE LA DMZ

Con la finalidad de brindar mayor seguridad a los servidores virtualizados del

Datacenter de Datos e Infraestrcutrua, que tienen información vital de la organización,

y para el funcionamiento de la infraestructura interna, los servidores virtuales que

serán publicados en Internet son agrupados en una Zona Desmilitarizada o DMZ. De

esta manera se busca aislar los servidores críticos para el negocio y que dan servicio

a la Intranet y a usuarios conocidos de los servidores que pueden ser accedidos a

través de Internet.

La DMZ está delimitada por dos servidores de ruteo, firewall y NAT que son:

firewallproxy el cual da la cara a la Intranet y el servidor firewallinternet que es a

través del cual viajan los datos hacia el mundo de Internet.

Adicionalmente a esto, se ha considerado la creación de una VPN con la finalidad de

brindar a la PyME la posibilidad de conexión para usuarios de la organización en

otras sucursales; la VPN permitirá el acceso a través de Internet a la Intranet

corporativa mediante un túnel seguro.

241

Figura 4.30 DMZ corporativa.

Los servidores que forman parte de la DMZ son:

§ Firewall-proxy

§ Firewall-internet

§ Dns (externo) primario

§ Dns (externo) secundario

§ Mail Gateway

§ Web

§ Comercio electrónico

§ VPN

4.5.1. SERVIDOR WEB INTERNET

242

El servidor Web Internet permitirá a la PyME mostrarse al mundo a través de un sitio

web que permita a los clientes conocer la empresa, sus productos, su filosofía, así

como también poder contactarse e incluso posibilitar realizar compras en línea. Para

ello es fundamental la adquisición de un dominio el cual identificará a la PyME y será

el nombre con el cual se de a conocer. Hoy en día el poseer una página Web es

fundamental para poder crecer en un ambiente competitivo.

4.5.1.1. Software

El software utilizado corresponde a la alternativa Apache tal como lo visto en el tema

4.4.3.1 sobre el servidor web empresarial.

4.5.1.2. Configuración

La página web principal correspondiente a la organización se aloja en el servidor

webinternet.vserver.ec. Se configurará a continuación el CNAME para webinternet

como www, de tal manera que el despliegue de la web a través de Internet sea

mediante la dirección www.vserver.ec; esto se lo hace en el servidor DNS de la DMZ.

Adicionalmente, se brinda la posibilidad a la PyME a ofrecer uno o varios productos

adicionales con dominios propios para cada uno y webs independientes

correspondientemente; esto se logra mediante la configuración de servidores virtuales

a través de apache. Así se tiene webs independientes para buy.vserver.ec, via-

net.vserver.ec y viadmin.vserver.ec (el cual servirá como portal de administración).

En adición es posible albergar webs de dominios diferentes posibilitando brindar el

servicio a varias PyMEs mediante un único servidor configurado, así se configurará la

web para el dominio www.aeie.ec como otra PyME alojada en el servidor web.

Para cada dominio configurado se crean ficheros correspondientes en

/var/www/html/nombre_del_dominio, y se configura en el servidor Web la lectura del

archivo index de los ficheros correspondientes.

243

Figura 4.31 Ficheros de webs alojadas.

4.5.1.2.1. Archivo de configuración

A continuación se presenta la configuración de los servidores virtuales en el archivo

/etc/httpd/conf/httpd.conf. Por extensión del archivo a continuación se presenta un

extracto.

# Archivo de configuración httpd.conf – DSCA , JJBS – vserver.ec 2009. . . . # Configuracion de webs virtuales en base al mismo servidor web webinternet.vserver.ec # Apache mostrara por defecto la webinternet.vserver.ec ServerName webinternet.vserver.ec NameVirtualHost 10.0.2.2 DocumentRoot /var/www/html/www.vserver.ec/ # Se configura el virtual host www.aeie.ec correspondiente a la segunda alternativa de web que la PyME puede ofrecer con el mismo servidor <VirtualHost 10.0.2.2> ServerName www.aeie.ec DocumentRoot /var/www/html/www.aeie.ec/ DirectoryIndex index.html index.htm index.php </VirtualHost> # Se configura el virtual host www.vserver.ec que corresponde al CNAME de webinternet.vserver.ec <VirtualHost 10.0.2.2> ServerName www.vserver.ec DocumentRoot /var/www/html/www.vserver.ec/ DirectoryIndex index.html index.htm index.php </VirtualHost> # Se configura el portal de comercio electronico buy.vserver.ec <VirtualHost 10.0.2.2> ServerName buy.vserver.ec ServerAlias e-commerce.vserver.ec

244

DocumentRoot /var/www/html/buy.vserver.ec/ DirectoryIndex index.html index.htm index.php </VirtualHost> # Se configura el portal de via-net.vserver.ec como producto secundario de la PyME <VirtualHost 10.0.2.2> ServerName via-net.vserver.ec DocumentRoot /var/www/html/via-net.vserver.ec/ DirectoryIndex index.html index.htm index.php </VirtualHost> # Se configura el portal de viadmin.vserver.ec como portal de administracion <VirtualHost 10.0.2.2> ServerName viadmin.vserver.ec DocumentRoot /var/www/html/viadmin.vserver.ec/ DirectoryIndex index.html index.htm index.php </VirtualHost>

Espacio de Código 4.38 Archivo de configuración httpd.conf de la webinternet.

La configuración de los CNAME se los realiza en el archivo named.vserver.ec, a la

vez que se crean los registros adicionales para el dominio aeie.ec como se muestra a

continuación:

# Archivo de configuración named.conf … zone "vserver.ec" IN { type master; file "named.vserver.ec"; allow-update { none; }; allow-query { any; }; allow-transfer { 10.0.2.6; }; }; zone "aeie.ec" IN { type master; file "named.aeie.ec"; allow-update { none; }; allow-query { any; }; allow-transfer { 10.0.2.6; }; };

Espacio de Código 4.39 Extracto del archivo de configuración named.conf.

# Archivo de configuración named.vserver.ec … webinternet IN A 10.0.2.2 www IN CNAME webinternet buy IN CNAME webinternet via-net IN CNAME webinternet viadmin IN CNAME webinternet Espacio de Código 4.40 Configuración de CNAME para las web alojadas en webinternet del

dominio vserver.ec.

245

# Archivo de configuración named.aeie.ec … $TTL 86400 @ IN SOA dnsiprimario.vserver.ec. root.dnsiprimario.vserver.ec. ( 2009102416 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum IN NS dnsiprimario.vserver.ec. www IN A 10.0.2.2

Espacio de Código 4.41 Configuración del dominio www.aeie.ec para ser atendido por el servidor virtual webinternet (10.0.0.2).

A continuación se muestra el despliegue de los portales configurados:

Figura 4.32 Portal Web www.vserver.ec

246

Figura 4.33 Portal Web www.aeie.ec

Figura 4.34 Portal Web viadmin.vserver.ec

247

4.5.2. SERVIDOR DE COMERCIO ELECTRÓNICO

El servidor de comercio electrónico es un servidor web seguro al que los clientes de

una empresa pueden acceder para realizar sus transacciones comerciales con la

misma. Para su funcionamiento necesita de un motor de base de datos, la base de

datos de los productos y servicios y de los clientes con sus pedidos, un sistema de

pedidos y un sistema de pago.

4.5.2.1. Software

Como se mencionó en el punto anterior, un servidor de comercio electrónico está

prácticamente formado por un servidor web seguro y una base de datos. Pese a esto

existen soluciones específicas para la creación de servidores de correo electrónico

que se emplean para facilitar la labor de creación del sitio de comercio.

4.5.2.1.1. Alternativas de software

Existen varias alternativas para lograr obtener un servidor de comercio electrónico

que van desde la configuración de un servidor web común hasta el empleo de

paquetes de software especializados para el comercio electrónico. Para brindar una

mayor facilidad y seguridad, en el presente proyecto se ha decidido emplear los

paquetes especializados. Entre estos se tiene a: Zen Cart, PrestaShop, osCommerce,

entre otros. Todas estas soluciones representan a aplicaciones gratuitas para el

comercio electrónico desde Linux.

Zen Cart es una aplicación que permite la creación de una tienda en línea fácil de

configurar y manejar. Esta aplicación está desarrollada en base al código de

osCommerce y permite una fácil administración y manejo de los productos por parte

tanto de los responsables de la empresa como de los clientes que accedan a la

página web.

osCommerce es otra gran aplicación para la administración de tiendas en línea. Esta

solución permite una fácil configuración del servidor en pocos minutos e incluye

funcionalidades listas para usarse desde el momento de la instalación.

248

Finalmente PrestaShop es una aplicación web de comercio electrónico profesional.

Esta plataforma brinda a los clientes una tienda personalizada a la que se puede

añadir un gran número de funciones.

4.5.2.1.2. Selección alternativa

Para el servidor de comercio electrónico del presente proyecto se ha seleccionado la

opción presentada por Zen Cart, esto se debe a que esta aplicación brinda un fácil

manejo a los administradores del servidor y presenta características similares a

osCommerce (está basado en su código) pero incluye características adicionales. Por

otro lado la solución presentada por PrestaShop, al ser una aplicación muy

profesional, presenta ciertas dificultades en la administración de la página por lo que

no resulta conveniente para pequeñas y medianas empresas.

4.5.2.2. Instalación

4.5.2.2.1. Instalación Máquina Virtual

Por las características de la solución de e-commerce a implementarse, el presente

servidor se basa en la instalación de GNU-Linux CentOS 5.2 tomada como base para

los servidores virtuales de éste prototipo.

El hostname correspondiente al servidor es: comerioelectronico perteneciente al

FQDN comercioelectronico.vserver.ec y al que se ha configurado como CNAME

buy.vserver.ec y e-commerce.vserver.ec

4.5.2.2.2. Instalación Servicio

La instalación del servicio de comercio electrónico de Zen Cart se puede realizar

descargando el paquete necesario de la página oficial del proyecto en el vínculo

http://sourceforge.net/projects/zencart/files/CURRENT_%20Zen%20Cart%201.3.x%2

0Series/Zen%20Cart%20v1.3.8%20-%20Full%20Release/zen-cart-v1.3.8a-full-fileset-

12112007.zip/download.

249

Además de este paquete es necesario tener instalado tanto un servidor web como

Apache y un servidor de base de datos como MySQL, la instalación de estos

servidores se detalla en sus respectivos puntos.

El paquete que se descarga de la página de Zen Cart corresponde a código PHP que

se debe colocar en la carpeta apropiada del servidor http (/var/www/), y configurar el

servidor web para que cargue esta página como se muestra en el punto 4.4.3.3., una

vez terminada esta configuración se puede acceder a la página creada, es decir que

en un navegador web se accede a la página en la que se configurará el servidor, en

el caso de el presente proyecto se empleará la página http://tienda.vserver.ec en la

que se muestra la siguiente pantalla.

Figura 4.35 Pantalla de inicio de Zen Cart

4.5.2.3. Configuración

Una vez que se puede accede a Zen Cart vía web, se procede a elegir el punto

número 1 de la pantalla de la figura 4.35., que corresponde a la primera vez que se

accede a la página. Entonces se muestra una pantalla informativa del programa en la

que se debe seleccionar continuar para acceder a la lectura de la licencia.

250

Figura 4.36 Licencia de Zen Cart

Es muy probable que en estos momentos aparezca una pantalla que muestre errores

como la que aparece a continuación:

Figura 4.37 Inspección del sistema

251

Esto se debe a que ciertos archivos no tienen permisos de escritura por lo que se

debe emplear el comando chmod +w en los archivos: cache, images,

includes/languages/english/html_includes, pub, /admin/backups y en

/admin/images/graphs.

El otro problema mencionado se debe a la inexistencia del archivo configure.php, esto

se soluciona cambiando los nombres de los archivos dist-configure.php en

/var/www/com/tienda/admin/includes y /var/www/com/tienda//includes por

configure.php y dándoles los permisos requeridos. Entonces al refrescar la pantalla

aparecerá lo siguiente:

252

Figura 4.38 Comprobación del sistema para la Instalación de Zen Cart

Una vez terminada esta instalación se procede a la configuración de la base de datos

253

Figura 4.39 Configuración de la Base de Datos

La base de datos que se empleará en el presente proyecto es la creada en el servidor

de base de datos. Una vez que ZenCart se asocia correctamente a la base de datos

configurada con el password proporcionado se procede a la configuración del servidor

web

254

Figura 4.40 Configuración del sistema

Una vez terminado esto, Zen Cart solicitará la ubicación de phpBB que corresponde a

un paquete de foros en internet que empleará el servidor.

Figura 4.41 Petición del directorio phpBB

Este paquete se puede descargar de la página http://www.phpbb.com/. Al igual que

en el caso de Zen Cart solo debe ser descomprimido y ubicado en la carpeta

correspondiente del servidor web.

255

Figura 4.42 Ubicación del directorio phpBB

Finalmente se configuran las propiedades de la tienda virtual como su nombre,

contactos, moneda, idioma, entre otros y se procede a configurar la cuenta de

administrador que permita realizar los cambios necesarios como la sustitución de los

productos de ejemplo por los que se quiera vender.

Figura 4.43 Configuración de la cuenta de Administración

256

4.5.3. SERVIDOR DE CORREO ELECTRÓNICO (MAIL GATEWAY)

Como se vio en los temas anteriores, en el Datacenter de Infraestructura se

implementó el servidor de correo Mailempresarial cuya función es la de brindar el

servicio entre los usuarios de la organización en su dominio vserver.ec. Sin embargo

el correo con destino de otro dominio necesita de un servidor que se encuentre dando

la cara a Internet.

Es así que en la DMZ se configura al servidor Mail Gateway; éste es el encargado de

la distribución de correo saliente desde el dominio vserver.ec hacia los dominios de

Internet y así de igual manera entregar los correos enviados desde otros dominios

hacia el dominio vserver.ec.

El servidor Mailgateway es un servidor de relay para el servidor de correo

Mailempresarial y en tal efecto debe permitir únicamente al dominio vserver.ec

retransmitir correos.

Figura 4.44 Envío y recepción de correo entre MailEmpresarial y MailGateway.

257

4.5.3.1. Software

El software utilizado para la configuración del servidor Mailgateway corresponde al

mismo software elegido en el tema 4.3.4.1 correspondiente a la implementación del

Mailempresarial.

4.5.3.2. Configuración

4.5.3.2.1. Archivo de configuración

Para la configuración del servidor de correo mailgateway, se editará el archivo de

configuración de Sendmail correspondiente a /etc/mail/sendmail.mc; en este archivo

se editan las siguientes líneas de la siguiente manera, presentándose a continuación

un extracto104:

dnl # Archivo de configuración Sendmail – DSCA, JJBS – vserver.ec 2009 dnl # LíNEA COMENTADA PARA PERMITIR ACEPTAR EMAIL DESDE INTERNET Y LA INTRANET dnl DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl

Espacio de Código 4.42 Archivo de configuración sendmail.mc

Finalmente es necesario ejecutar el editor de macros m4 para la creación del archivo

sendmail.cf.

m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf

Para la configuración del acceso de envío de correos se modifica el archivo

/etc/mail/access donde se agregan las IPs de las personas que van a poder entregar

correo al exterior (a hotmail, yahoo, etc...) o a su vez el dominio en este caso

vserver.ec:

104 Código completo puede encontrarse en anexo J.

258

# Se permite el envío de correos para las máquinas del dominio vserver.ec # Check the /usr/share/doc/sendmail/README.cf file for a description # of the format of this file. (search for access_db in that file) # The /usr/share/doc/sendmail/README.cf is part of the sendmail-doc # package. # # by default we allow relaying from localhost... Connect:localhost.localdomain RELAY Connect:localhost RELAY Connect:127.0.0.1 RELAY vserver.ec RELAY

Espacio de Código 4.43 Archivo de configuración access.

Para indicar el servidor de correo mailempresarial como receptor de los correos

entrantes se identifica el archivo /etc/mail/mailertable especificándolo así:

# Se indica la dirección del servidor que distribuirá los correos entrantes a los clientes vserver.ec smtp:10.0.1.5

Espacio de Código 4.44 Archivo de configuración mailertable.

Cabe indicar que se debe configurar en el servidor dns los registros correspondientes

de las máquinas de la red interna con el dominio vserver.ec garantizando así su envío

y seguridad del Relay.

Cuando se actualiza este fichero se debe ejecutar make dentro de /etc/mail/ para que

se actualice la base de datos.

Para el manejo de SMTP autentificado se inicia el servicio saslauthd y se descomenta

la siguiente línea en el archivo sendmail.mc

dnl # Activar servicio SMTP autentificado TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl

Espacio de Código 4.45 Activación del servicio SMTP autentificado

259

El servicio SMTP autentificado agrega una capa más de seguridad para evitar el uso

de nuestro MTA como generador de correo no autorizado.

Para la configuración e instalación de los complementos de sendmail: Mail Scanner y

Clamav el proceso es el siguiente:

Para la instalación de clamav, se descarga el archivo binario de la web:

http://sourceforge.net/projects/clamav/files/clamav/0.95.3/clamav-

0.95.3.tar.gz/download con la versión clamav-0.95.3

Es necesaria la agregación del usuario y grupo clamav. Para mantener actualizada la

base de virus se realiza un cron diario que haga referencia al archivo freshclam.

Para la instalación de spamassassin se lo descarga de los repositorios por defecto

del sistema mediante:

rpm –ihv spamassassin*

Para la instalación del MailScanner se descarga el archivo rpm de la web

http://www.mailscanner.info/downloads.html

Para la configuración, el archivo correspondiente es

/etc/MailScanner/MailScanner.conf

Y se editan los parámetros más importantes como son:

# Configuración de MailScanner – DSCA, JJBS – vserver 2009 %org-name% = vserver %org-long-name% = Virtualserver %web-site% = www.vserver.ec %etc-dir% = /etc/MailScanner %report-dir% = /etc/MailScanner/reports/es # Se indica el software antivirus con el que se trabajará

260

Virus Scanners = clamav # Se indicant las listas de spam a tomar en cuenta Spam List = SBL + XBL + SORBS + spamhaus-ZEN # Correo spam será enviado a la cuenta spam Spam Actions = forward spam@vserver.ec # Valor mínimo para ser considerado spam Required SpamAssassin Score = 5.5 # Valor máximo para no ser eliminado el mensaje spam High SpamAssassin Score = 10

Espacio de Código 4.46 Archivo de configuración de MailScanner

Con ello el servicio a administrar será MailScanner, el cual levanta y baja el servicio

Sendmail.

Con fines de uso del servicio, es posible instalar el software Squirrel mail el cual

permite el envío y recepción de correos a través del portal web. En el presente

prototipo se ha instalado105 dicho software siendo la dirección para uso:

webempresarial.vserver.ec/webmail, de esta manera los usuarios de la PyME podrán

revisar sus correos de manera simple en cualquier parte del mundo.

Figura 4.45 Squirrel Mail en el servidor Webempresarial.

105 Para referirse a la instalación remitirse al anexo H.

261

4.5.4. SERVIDOR DNS (EXTERNO – DMZ)

Estos servidores DNS son los servidores primario y secundario que se encargan de

brindar el servicio de resolución de nombres a los clientes de la zona desmilitarizada

que no podrían acceder a los servidores DNS de la intranet.

4.5.4.1. Software

4.5.4.1.1. Alternativas de software

Como se mencionó en el punto 4.3.2.1.1., el paquete bind se ha convertido en un

estándar de-facto para este tipo de servidores, y aunque otras alternativas para el

mismo, estas aún no se han vuelto tan populares.

4.5.4.1.2. Selección alternativa

El paquete de software que se empleará en los servidores DNS de la zona

desmilitarizada debe ser el mismo que se emplea en los servidores DNS de la zona

interna de la red para evitar complicaciones de compatibilidad y configuración, por lo

que se debe emplear el paquete bind.

4.5.4.2. Instalación

4.5.4.2.1. Instalación Máquina Virtual

Para el presente servidor se utilizará el mismo tipo de servidor virtual instalado en el

capítulo 4.3.2., siendo en este caso los hostnames: dnseprimario (primario) y

dnsesecundario (backup).

4.5.4.2.2. Instalación Servicio

La instalación del servicio bind se realiza de la misma manera como se instalaron los

servidores de nombres de la zona de infraestructura, que se detalla en el punto

4.3.2.2. del presente capítulo.

262

4.5.4.3. Configuración

4.5.4.3.1. Archivo de configuración

Al igual que en la zona de infraestructura, en la DMZ también se disponen de dos

servidores DNS que actuaran como servidor DNS primario y secundario, por lo que

de la misma forma que en dicha configuración se deben de crear los archivos

named.conf junto con sus zonas de nombres, IP y locales. También teniendo en

cuenta que debido a la existencia de bind-chroot, los archivos de configuración se

encuentran en /var/named/chroot/.

4.5.4.3.2. Dnseprimario

Como su nombre lo indica el servidor dnseprimario corresponde al servidor de

nombres primario de la zona desmilitarizada. El archivo de configuración principal es

/var/named/chroot/etc/named.conf y su configuración se muestra a continuación:

options { directory "/var/named"; forward only; forwarders { 172.16.0.2; } ; }; controls { inet 127.0.0.1 allow { localhost; } keys { rndckey; }; }; zone "." IN { type hint; file "named.ca"; }; zone "vserver.ec" IN { type master; file "named.vserver.ec"; allow-update { none; }; allow-query { any; }; allow-transfer { 10.0.2.6; }; }; zone "2.0.10.in-addr.arpa" IN { type master; file "named.10.0.2"; allow-update { none; }; allow-query { any; }; allow-transfer { any; }; }; zone "0.16.172.in-addr.arpa" IN { type master;

263

file "named.172.16.0"; allow-update { none; }; allow-query { any; }; allow-transfer { any; }; }; zone "localhost" IN { type master; file "localhost.zone"; allow-update { none; }; allow-query { any; }; allow-transfer { none; }; }; zone "0.0.127.in-addr.arpa" IN { type master; file "named.local"; allow-update{ none; }; allow-query { any; }; allow-transfer { none; }; }; include "/etc/rndc.key";

Espacio de Código 4.47 Archivo de configuración DNS primario named.conf

A continuación se muestran los archivos de zonas

/var/named/chroot/var/named.vserver.ec:

$TTL 86400 @ IN SOA dnseprimario.vserver.ec. root.vserver.ec. ( 2009102405 ; serial 28800 14400 3600000 86400 ) IN NS dnseprimario.vserver.ec. IN MX 10 mailgateway.vserver.ec. firewallproxy-dmz IN A 10.0.2.1 webinternet IN A 10.0.2.2 mailgateway IN A 10.0.2.3 comercioelectronico IN A 10.0.2.4 dnseprimario IN A 10.0.2.5 dnsesecundario IN A 10.0.2.6 firewallinternet-dmz IN A 10.0.2.254 firewallinternet IN A 172.16.0.1 routerinternet IN A 172.16.0.2

Espacio de Código 4.48 Archivo de zona de nombres primario named.vserver.ec

$TTL 86400 @ IN SOA dnseprimario.vserver.ec. root.vserver.ec. ( 2009102403 ; serial 28800 14400

264

3600000 86400 ) IN NS dnseprimario.vserver.ec. 1 IN PTR firewallproxy-dmz.vserver.ec. 2 IN PTR webinternet.vserver.ec. 3 IN PTR mailgateway.vserver.ec. 4 IN PTR comercioelectronico.vserver.ec. 5 IN PTR dnseprimario.vserver.ec. 6 IN PTR dnsesecundario.vserver.ec. 254 IN PTR firewallinternet.vserver.ec.

Espacio de Código 4.49 Archivo de zona IP named.10.0.2

$TTL 86400 @ IN SOA dnseprimario.vserver.ec. root.vserver.ec. ( 2009102401 ; serial 28800 14400 3600000 86400 ) IN NS dnseprimario.vserver.ec. 1 IN PTR firewallinternet.vserver.ec. 2 IN PTR routerinternet.vserver.ec.

Espacio de Código 4.50 Archivo de zona IP primario named.172.16.0

$TTL 86400 @ IN SOA dnseprimario.vserver.ec. root.vserver.ec. ( 2009102401 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum IN NS dnseprimario.vserver.ec. 1 IN PTR localhost.

Espacio de Código 4.51 Archivo de zona local primario named.local

$TTL 86400 @ IN SOA dnseprimario.vserver.ec. root.vserver.ec. ( 2009102401 ; serial 28800 ; refresh 14400 ; retry 3600000 ; expiry 86400 ) ; minimum IN NS dnseprimario.vserver.ec. localhost. IN A 127.0.0.1

Espacio de Código 4.52 Archivo de zona local primario localhost.zone

265

4.5.4.3.3. Dnsesecundario

Este servidor es el DNS secundario de la zona desmilitarizada. Su archivo de

configuración, /var/named/chroot/etc/named.conf, se muestra a continuación:

options { directory "/var/named"; forward only; forwarders { 172.16.0.2; } ; }; controls { inet 127.0.0.1 allow { localhost; } keys { rndckey; }; }; zone "vserver.ec" IN { type slave; file "named.vserver.ec.bck"; masters { 10.0.2.5; }; }; zone "2.0.10.in-addr.arpa" IN { type slave; file "named.10.0.2.bck"; masters { 10.0.2.5; }; }; zone "0.16.172.in-addr.arpa" IN { type slave; file "named.172.16.0.bck"; masters { 10.0.2.5; }; }; zone "localhost" IN { type master; file "localhost.zone"; }; zone "0.0.127.in-addr.arpa" IN { type master; file "named.local"; }; include "/etc/rndc.key";

Espacio de Código 4.53 Archivo de configuración DNS secundario named.conf

$TTL 86400 @ IN SOA dnsesecundario.vserver.ec. root.dnsesecundario.vserver.ec. ( 2009102401 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum IN NS dnsesecundario.vserver.ec. 1 IN PTR localhost.

Espacio de Código 4.54 Archivo de zona local secundario named.local

266

$TTL 86400 @ IN SOA dnsesecundario.vserver.ec. root.dnsesecundario.vserver.ec. ( 2009102401 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum IN NS dnsesecundario.vserver.ec. localhost. IN A 127.0.0.1

Espacio de Código 4.55 Archivo de zona local primario localhost.zone

4.5.5. SERVIDORES PROXY, FIREWALL

Como ya se indicaba en el punto 4.3.1., este servidor es el encargado de conectar a

la red de la empresa con el mundo exterior, es decir que será el encargado de

permitir el acceso a Internet y, en caso de ser requerido, establecer conexiones vía

VPN.

Para realizar sus funciones correctamente debe brindar la seguridad del filtrado de

tráfico de un firewall y debe realizar funciones de NAT para permitir la salida de todos

los usuarios al Internet mediante una sola dirección IP pública.

4.5.5.1. Software

Para este servidor de enrutamiento específico, se requiere la instalación de paquetes

de software que brinden los servicios de filtrado de paquetes (firewall), traducción de

direcciones (NAT) y finalmente la creación de redes virtuales privadas (VPN).

4.5.5.1.1. Alternativas de software

Para el caso del firewall y NAT, ya se analizaron las alternativas de software en el

punto 4.3.1.1.1., quedando en claro que el paquete iptables era la mejor opción para

realizar el filtrado de paquetes y la traducción de direcciones.

Por otro lado para la creación de enlaces VPN se disponen de paquetes como

OpenVPN, Openswan, PoPToP. Cada uno de estos, se basa en diferentes

267

soluciones, así OpenVPN se basa en SSL, OpenSwan es una VPN IPSec, y

finalmente PoPToP se basa en PPTP.

OpenVPN tiene la ventaja de que usa SSL (Secure Sockets Layer), el cual es un

protocolo muy maduro que brinda buena seguridad, además de esto, sólo requiere de

un puerto TCP o UDP para implementar un túnel por el que circulará el tráfico con lo

que se evita inconvenientes en la configuración de los firewalls por los que deba

cruzar. Este paquete no requiere modificaciones en el kernel, tiene una configuración

muy flexible y se encuentra disponible para una gran variedad de sistemas

operativos, por estas razones es una de las soluciones más empleadas.

Openswan representa la solución IPSec, IPSec es uno de los más antiguos

estándares para VPN, siendo muy seguro y útil cuando se encuentra correctamente

configurado. Esta solución, originalmente llamada FreeS/WAN, requiere de su propio

kernel, pero es ampliamente soportada por casi cualquier dispositivo que soporte

conexiones VPN, ya sea routers, teléfonos, sistemas operativos, entre otros. Sin

embargo su configuración puede volverse demasiado complicada y no puede trabajar

atrás de ciertos tipos de NAT.

Finalmente PoPToP emplea el protocolo PPTP el cual era originalmente respaldado

por Microsoft, pero tiene serios problemas de seguridad. Para su funcionamiento,

básicamente encapsula en un túnel una conexión PPP. Pese a su sencilla

configuración en Windows, sus problemas de seguridad y de conexiones detrás de

ciertos firewalls y NAT hacen que no sea una solución ampliamente usada.

4.5.5.1.2. Selección alternativa

La solución a emplearse será el paquete iptables para filtrado de paquetes y

traducción de direcciones y, para la creación de VPN, la opción que se empleará es

OpenVPN, esto es debido a que dicha solución brinda un alto grado de seguridad con

una configuración no demasiado complicada, además es una solución altamente

flexible y no requiere modificaciones en el kernel del sistema operativo.

268

4.5.5.2. Instalación

4.5.5.2.1. Instalación Máquina Virtual

El presente servidor virtual se basa en la plantilla de instalación de la VM basada en

GNU-Linux CentOS 5.2, en el que se incluyen los componentes necesarios como

Iptables, Networking y software de Routing y VPN (OpenVPN). El hostname

configurado es: firewallinternet respectivamente pertenecientes al FQDN

firewallinternet.vserver.ec.

4.5.5.2.2. Instalación Servicio

La instalación de iptables viene por defecto en las distribuciones de Linux, caso

contrario se puede realizar de la misma manera que se detalla en el punto 4.3.1.2. De

la misma forma, el servicio openVPN se puede instalar añadiendo el paquete en la

administrador de paquetes, empleando el comando yum install openvpn o

simplemente mediante la descarga del paquete de la página del proyecto en

http://openvpn.net/.

4.5.5.3. Configuración

Considerando que ya se explicó la configuración del servidor firewallproxy en la zona

de infraestructura, en este punto sólo se detallará la configuración del servidor

firewallinternet.

4.5.5.3.1. Servidor firewallinternet

En este servidor se debe configurar tanto las rutas necesarias como el firewall con

NAT y el servidor de VPN. Primeramente se presentarán las rutas necesarias:

echo 1 >/proc/sys/net/ipv4/ip_forward route add -net 10.0.0.0 netmask 255.255.255.0 gw 10.0.2.1 route add -net 10.0.1.0 netmask 255.255.255.0 gw 10.0.2.1 route add -net 192.168.0.0 netmask 255.255.255.0 gw 10.0.2.1 route add -net 192.168.2.0 netmask 255.255.255.0 gw 10.0.2.1 route add -net 192.168.4.0 netmask 255.255.255.0 gw 10.0.2.1 route add -net default gw 172.16.0.2

Espacio de Código 4.56 Rutas del Servidor firewallinternet

269

Para la configuración del firewall con la traducción NAT se procedieron a configurar

las siguientes reglas de filtrado de paquetes:

# Limpiar reglas del firewall iptables -X iptables -F # Establecer política DROP por default iptables -P INPUT DROP iptables -P OUTPUT DROP iptables -P FORWARD DROP # Permitir tráfico en interfaz loopback iptables -A INPUT -i lo -j ACCEPT iptables -A OUTPUT -o lo -j ACCEPT # Permitir tráfico interno iptables -A INPUT -i eth0 -j ACCEPT iptables -A OUTPUT -o eth0 -j ACCEPT # Permitir acceso de ciertos mensajes ICMP iptables -A INPUT -i eth1 -p icmp -s 0.0.0.0/0 -d 172.16.0.1 --icmp-type 8 -j ACCEPT iptables -A OUTPUT -o eth1 -p icmp -s 172.16.0.1 -d 0.0.0.0/0 --icmp-type 0 -j ACCEPT iptables -A OUTPUT -o eth1 -p icmp -s 172.16.0.1 -d 0.0.0.0/0 --icmp-type 8 -j ACCEPT iptables -A INPUT -i eth1 -p icmp -s 0.0.0.0/0 -d 172.16.0.1 --icmp-type 0 -j ACCEPT iptables -A INPUT -i eth1 -p icmp -s 0.0.0.0/0 -d 172.16.0.1 --icmp-type 3 -j ACCEPT iptables -A OUTPUT -o eth1 -p icmp -s 172.16.0.1 -d 0.0.0.0/0 --icmp-type 3 -j ACCEPT iptables -A INPUT -i eth1 -p icmp -s 0.0.0.0/0 -d 172.16.0.1 --icmp-type 4 -j ACCEPT iptables -A OUTPUT -o eth1 -p icmp -s 172.16.0.1 -d 0.0.0.0/0 --icmp-type 4 -j ACCEPT iptables -A OUTPUT -o eth1 -p icmp -s 172.16.0.1 -d 0.0.0.0/0 --icmp-type 11 -j ACCEPT

iptables -A INPUT -i eth1 -p icmp -s 0.0.0.0/0 -d 172.16.0.1 --icmp-type 11 -j ACCEPT iptables -A INPUT -i eth1 -p icmp -s 0.0.0.0/0 -d 172.16.0.1 --icmp-type 12 -j ACCEPT iptables -A OUTPUT -o eth1 -p icmp -s 172.16.0.1 -d 0.0.0.0/0 --icmp-type 12 -j ACCEPT # Permitir conexiones TCP y UDP válidas iptables -A OUTPUT -o eth1 -p tcp -s 172.16.0.1 --sport 1024: -d any/0 --dport :1023 -j ACCEPT iptables -A INPUT -i eth1 -p tcp -s any/0 --sport :1023 -d 172.16.0.1 --dport 1024: -j ACCEPT iptables -A OUTPUT -o eth1 -p udp -s 172.16.0.1 --sport 1024: -d any/0 --dport :1023 -j ACCEPT iptables -A INPUT -i eth1 -p udp -s any/0 --sport :1023 -d 172.16.0.1 --dport 1024: -j ACCEPT # Rechazo protocolo IDENTD iptables -A INPUT -i eth1 -p tcp -s 0.0.0.0/0 -d 172.16.0.1 --dport 113 -j REJECT # Enmascaramiento TCP, UDP e ICMP iptables -t nat -A PREROUTING -i eth1 -p tcp -m tcp --dport 22223 -j DNAT --to 10.0.2.2:22 iptables -t nat -A POSTROUTING -o eth1 -p tcp -s 10.0.2.0/24 --sport 1024: -d ! 10.0.2.0/24 --dport :1023 -j MASQUERADE iptables -t nat -A POSTROUTING -o eth1 -p udp -s 10.0.2.0/24 --sport 1024: -d ! 10.0.2.0/24 --dport :1023 -j MASQUERADE iptables -t nat -A POSTROUTING -o eth1 -p icmp -s 10.0.2.0/24 -d ! 10.0.2.0/24 -j MASQUERADE # Reglas de Forward TCP, UDP e ICMP iptables -A FORWARD -i eth0 -o eth1 -p tcp -s 10.0.2.0/24 --sport 1024: -d ! 10.0.2.0/24 --dport :1023 -j ACCEPT iptables -A FORWARD -i eth1 -o eth0 -p tcp -s ! 10.0.2.0/24 --sport :1023 -d 10.0.2.0/24 --dport 1024: -j ACCEPT iptables -A FORWARD -i eth0 -o eth1 -p udp -s 10.0.2.0/24 --sport 1024: -d ! 10.0.2.0/24 --dport

270

:1023 -j ACCEPT iptables -A FORWARD -i eth1 -o eth0 -p udp -s ! 10.0.2.0/24 --sport :1023 -d 10.0.2.0/24 --dport 1024: -j ACCEPT iptables -A FORWARD -i eth0 -o eth1 -p icmp -s 10.0.2.0/24 -d ! 10.0.2.0/24 -j ACCEPT iptables -A FORWARD -i eth1 -o eth0 -p icmp -s ! 10.0.2.0/24 -d 10.0.2.0/24 -j ACCEPT #Reglas para abrir algunos puertos iptables -A INPUT -i eth1 -p tcp -s any/0 --sport 1024: -d 172.16.0.1 --dport 22 -j ACCEPT iptables -A OUTPUT -o eth1 -p tcp -s 172.16.0.1 --sport 22 -d any/0 --dport 1024: -j ACCEPT iptables -A INPUT -i eth1 -p tcp -s any/0 --sport 1024: -d 172.16.0.1 --dport 53 -j ACCEPT iptables -A OUTPUT -o eth1 -p tcp -s 172.16.0.1 --sport 53 -d any/0 --dport 1024: -j ACCEPT iptables -A INPUT -i eth1 -p udp -s any/0 --sport 1024: -d 172.16.0.1 --dport 53 -j ACCEPT iptables -A OUTPUT -o eth1 -p udp -s 172.16.0.1 --sport 53 -d any/0 --dport 1024: -j ACCEPT iptables -A INPUT -i eth1 -p tcp -s any/0 -d 172.16.0.1 --dport 25 -j ACCEPT iptables -A OUTPUT -o eth1 -p tcp -s 172.16.0.1 --sport 25 -d any/0 -j ACCEPT #Reglas para la VPN iptables -A INPUT -i tun0 -j ACCEPT iptables -A INPUT -p udp --dport 1194 -j ACCEPT iptables -A OUTPUT -o tun0 -j ACCEPT iptables -A OUTPUT -p udp --sport 1194 -j ACCEPT iptables -A FORWARD -i eth0 -o tun0 -j ACCEPT iptables -A FORWARD -i tun0 -o eth0 -j ACCEPT

Espacio de Código 4.57 Reglas de filtrado de paquetes en el servidor firewallinternet

Finalmente, para la configuración de las VPN se debe primeramente copiar el

directorio easy-rsa que se genera durante la instalación de openvpn dentro del

directorio /etc/openvpn. Se trabajará con este directorio para generar certificados y

llaves necesarios para implementar la VPN.

Para generar el certificado de autoridad del servidor se debe ejecutar los scripts vars,

clean-all y build-ca que se encuentran en /etc/openvpn/easy-rsa. En este punto se

deben responder ciertas preguntas concernientes a la empresa en la que se

empleará el servidor previo a la generación del certificado.

Generating a 1024 bit RSA private key............................................................................................................................++++++.....................++++++writing new private key to 'ca.key'-----You are about to be asked to enter information that will be incorporatedi`ntoyour certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value,Ifyou enter '.', the field will be left blank. ----- Country Name (2 letter code) [KG]:EC State or Province Name (full name) [NA]:Pichincha Locality Name (eg, city) [BISHKEK]:Quito Organization Name (eg, company) [OpenVPNTEST]:vserver Organizational Unit Name (eg, section) []:IT

271

Common Name (eg, your name or your server's hostname) []:firewallinternet Email Address [me@myhost.mydomain]:administrador@vserver.ec

Espacio de Código 4.58 Generación del certificado de autoridad

Entonces se debe generar el certificado y la clave de encripción para el servidor con

el script build-key-server. Una vez más se pide información parecida a la

anteriormente solicitada. De la misma forma se debe generar certificados para los

equipos que funcionarán como clientes de la VPN.

Una vez generados los certificados se debe generar el parámetro de Diffie Hellman,

ejecutando el script build-dh. Todo lo que se ha generado hasta este momento se

almacena en /etc/openvpn/easy-rsa/keys, una vez terminado este paso se debe

almacenar en la carpeta /etc/openvpn del servidor los archivos de la autoridad (ca.*),

los del servidor (server.*) y Diffie Hellman (dh1024.pem), mientras que en los clientes

se debe copiar los archivos ca.crt y la llave y certificado del cliente.

Entonces se procede a configurar el archivo de configuración del servidor

/etc/openvpn/server.conf:

#Puerto para OpenVPN port1194 #Protocolo que se empleará proto udp #Dispositivo de túnel devtun #Certificado de autoridad ca.crt #Certificado del servidor server.crt #Clave de cifrado del servidor llave.key dh1024.pem #Direcciones que se asignaran a los clientes, el server es .1 server 192.168.2.0 255.255.255.0 #Ruta para que los clientes alcancen la red local del server (56.0/24) push "route 172.16.0.0 255.255.255.0" #Directorio para configuraciones especiales según cliente client-config-dirccd #Ruta para que el servidor alcance los clientes route 10.0.2.0 255.255.255.0 client-to-client push "route 10.0.2.0 255.255.255.0" keepalive 10 120 comp-lzo user nobody

272

group nobody persist-key persist-tun status openvpn-status.log verb4

Espacio de Código 4.59 Archivo de Configuración del servidor

Finalmente se debe crear un archivo en /etc/openvpn/ccd con el nombre de cada

cliente incluyendo una ruta estática hacia su intranet:

route 192.168.1.0 255.255.255.0

Para el funcionamiento de la VPN también se debe configurar en el lado del cliente el

archivo /etc/openvpn/cliente.conf:

client #Dispositivo de túnel devtun protoudp #Dirección _IP:puerto_servidor_VPN remote190.10.1.25 1194 resolv-retryinfinite nobind# El dispositivo actúa solo como cliente #Las dos siguientes opciones no van en clientes Windows user nobody group nobody persist-key persist-tun ca ca.crt certclient1.crt key client1.key comp-lzo verb 4

Espacio de Código 4.60 Archivo de Configuración del cliente

4.6. PRUEBAS DE LOS SERVICIOS

A continuación se muestran las distintas pruebas realizadas a los servicios

implementados:

273

4.6.1. ROUTERINTRANET

Figura 4.46: Prueba de enrutamiento desde un equipo de la red interna de la empresa hacia otro de la zona de datos

Figura 4.47: Prueba de enrutamiento desde un equipo de la red interna de la empresa hacia otro de la zona de infraestructura

274

Figura 4.48: Prueba de enrutamiento desde un equipo de la zona de infraestructura hacia otro de la zona de datos

4.6.2. FIREWALLPROXY

275

Figura 4.49: Prueba de enrutamiento desde un equipo de la zona de infraestructura hacia otro de la zona desmilitarizada

Figura 4.50: Prueba de enrutamiento desde un equipo de la zona de datos hacia otro de la zona desmilitarizada

4.6.3. DNS INTRANET

Figura 4.51: Pruebas de resolución de nombres de dominio y direcciones IP en los servidores DNS de la Intranet

276

4.6.4. DHCP

Figura 4.52 Pruebas del servidor DHCP en un cliente Windows.

4.6.5. CORREO ELECTRÓNICO

Figura 4.53 Pruebas al portal de ingreso al Mailempresarial.

277

Figura 4.54 Prueba de envío de correo electrónico desde d.carrasco@vserver.ec a j.bonilla@vserver.ec y d.carrasco@andinanet.net.

Figura 4.55 Prueba de recepción del correo anterior.

Figura 4.56 Respuesta de correo.

278

Figura 4.57 Recepción de correo de respuesta.

Figura 4.58 Prueba de Mailgateway con recepción de correo en el dominio @andinanet.net.

4.6.6. BASE DE DATOS

Para crear una base de datos se emplea el comando create database mientras que

para eliminarla se emplea drop. Cuando se genera una base de datos conviene

determinar con que usuario y desde que equipo en la red local, se podrá tener

acceso, así como los privilegios para modificar esta, para esto se emplea el comando

GRANT.

279

Figura 4.59 Creación de bases de datos y asignación de permisos

4.6.7. SERVIDOR DE ARCHIVOS

Figura 4.60 Prueba de funcionamiento de Samba como servidor de archivos. Se observa las carpetas compartidas a través de la red vistas desde un cliente Windows.

280

Figura 4.61 Servidor de archivos Samba visto desde un cliente en GNU-Linux.

Figura 4.62 Prueba de upload de archivos al servidor Samba. Se muestra también los archivos disponibles.

281

4.6.8. SERVIDOR DE DIRECTORIO

Figura 4.63 Ejemplo de búsqueda de una entrada en el directorio

4.6.9. SERVIDORES WEB

Figura 4.64 Portal Web www.vserver.ec

282

Figura 4.65 Portal Web www.aeie.ec

Figura 4.66 Portal Web viadmin.vserver.ec

283

4.6.10. FTP

Figura 4.67 Prueba de inicio de sesión del servidor ftp.

Figura 4.68 Archivos desplegados en el servidor ftp.

284

Figura 4.69 Pruebas de envío de archivos vía línea de comandos desde un cliente ftp en Windows.

4.6.11. IMPRESIÓN

Figura 4.70 Pantalla de administración de cups vía web

285

4.6.12. COMERCIO ELECTRÓNICO

Figura 4.71 Ventana de Instalación exitosa de Zen Cart

4.6.13. DNS DMZ

Figura 4.72: Pruebas de resolución de nombres de dominio y direcciones IP en los servidores DNS de la Zona Desmilitarizada

286

4.6.14. FIREWALL INTERNET

Figura 4.73: Prueba de enrutamiento desde un equipo de la zona desmilitarizada hacia una dirección de Internet

287

CAPÍTULO CINCO

5. ACONDICIONAMIENTO DE LOS SERVIDORES Y

REQUERIMIENTOS DE HARDWARE PARA UN

ÓPTIMO FUNCIONAMIENTO.

288

5.1. INTRODUCCIÓN

Una vez que se ha analizado el concepto de virtualización, los requerimientos que

tienen las pequeñas y medianas empresas, se ha elegido la herramienta de

virtualización Xen y se ha tratado acerca de la instalación y configuración de los

servicios básicos requeridos, se debe considerar cuales son los requerimientos bajo

los cuales se debe instalar cada servidor virtual y finalmente decidir también cual

vendría a ser el hardware apropiado para alojar a los mismos.

Un correcto dimensionamiento de los requerimientos de los servicios permitirá un

mejor aprovechamiento del hardware disponible, evitando los desperdicios de

capacidad que se dan con servidores no virtualizados, los cuales tienen un promedio

de utilización de entre 10 y 30 por ciento de su capacidad total106

Para lograr el correcto dimensionamiento del servidor, se analizará cada uno de los

servicios a implementarse en sus servidores virtuales poniendo énfasis en los

requerimientos de procesador, memoria, disco y dispositivos de E/S. Con esto se

buscará obtener una configuración de hardware con las características adecuadas

para brindar una solución flexible, escalable y económica.

5.2. DIMENSIONAMIENTO DE LOS SERVIDORES VIRTUALES

(15) (16) (17)

Antes de iniciar con el dimensionamiento de las máquinas virtuales, es muy

importante señalar que, aunque se trata de establecer máquinas virtuales genéricas

106 Según estudios realizados por distintas empresas:

Forrester Research

Software de virtualización para Linux l Xen: www.novell.com/es-es/linux/virtualization

En 2009 la virtualización estará presente en dos de cada tres empresas – Computerworld Investigación de Forrester Research: www.idg.es/computerworld/en-2009-la-virtualizacion-estara-presente-en-dos-d/seccion-ges/noticia-63463

¿Por qué Virtualizar?: www2.hp.com/eNewsletter/download/Por%20que%20virtualizar_pag%2 06.pdf

289

que funcionen en cualquier PyME, cada empresa tiene sus características y

requerimientos especiales que hacen que los valores con los que se trabajará en el

presente diseño sean susceptibles de ser modificados de acuerdo a los

requerimientos de cada empresa. Esto hará uso de una de las grandes ventajas de la

virtualización con XEN que permite modificar de manera sencilla y rápida los recursos

de hardware asignados a cada máquina virtual.

Finalmente se debe detallar que los principales parámetros en el dimensionamiento

de las máquinas virtuales serán el tamaño del disco duro y la cantidad de memoria

asignada. Esto es debido a que, en el caso del procesador, sus características serán

las mismas que las del procesador físico el cual debe dimensionarse en la máquina

física ya que es la que más capacidad necesita; mientras que, en el caso de los

dispositivos de conectividad, solamente se debe mencionar que todos los servidores

requieren de una tarjeta de red exceptuando el caso de los servidores que cumplan

funciones de ruteo.

5.2.1. CORREO ELECTRÓNICO

El servidor de correo electrónico debe brindar la suficiente capacidad de espacio en el

disco duro como para albergar las cuentas de todos los usuarios de correo, al igual

que la suficiente velocidad y confianza en el acceso a las mismas.

En el caso del disco duro se debe considerar que una PyME en el Ecuador tiene

menos de 100 empleados, además de que se asignará a cada usuario una cuenta de

hasta 1 GB. Es decir que se requiere de un disco duro de por los menos 100 GB.

Como la memoria no se relaciona directamente con la cantidad de usuarios

concurrentes sino con el contenido no se puede calcular un uso por usuario, pero se

puede considerar un uso de 10 KB por conexión107, si se considera que los 100

107 Datos tomados del Anexo L de la tesis: CHÁVEZ BECERRA, DENNYS ROBERTO; MENA VÁSQUEZ, CHRISTIAM MAURICIO; Reingeniería De La Infraestructura De Red Del Data Center De La Empresa Conectividad Global Cía. Ltda. Que Provee Servicios De Intranet A Las Instituciones Del Proyectoquitoeduca.Net, 2009.

290

usuarios acceden de manera simultánea y que acceden a 5 servicios (correo, revisión

de spam, antivirus, etc.) y que cada usuario realiza 10 peticiones, se tiene:

Se debe mencionar que las características del procesador y memoria que se

recomiendan para un servidor de correo electrónico son un procesador Pentium III o

mejor y con 128 MB de memoria RAM o más108.

5.2.2. BASE DE DATOS

Para brindar un servicio de base de datos se deben de tener en cuenta algunas

características que se desea disponga la base de datos, así por ejemplo, es

importante conocer la cantidad de información a almacenarse y el tipo de información,

al igual que la velocidad y facilidad de acceso a los datos. Todas estas

consideraciones dependen del tipo de base de datos que se vaya a crear y del tipo de

empresa que la requiera.

Esto quiere decir que si la empresa en la que se implementará el servicio es más

grande, requerirá de una mayor base de datos con mayores requerimientos de

capacidad. En el caso del presente proyecto, lo que se busca es crear una solución

flexible que se pueda implementar en un gran número de PyMES distintas, por lo que

se considerará que, pese a que el dimensionamiento de una base de datos es muy

relativo a su uso, es muy factible el correr este servicio en cualquier computador

Pentium con alrededor de 128 MB de memoria RAM y 10 GB de espacio libre.

En cualquier caso el parámetro más importante para obtener un buen rendimiento en

la base de datos de MySQL es la memoria. Con una suficiente cantidad de memoria

RAM se pueden realizar las consultas a una alta velocidad, sobre todo si se considera

que MySQL es un administrador de base de datos especializado para la lectura de

datos.

108 Datos tomados de las páginas http://www.linuxcentro.net/linux/staticpages/index.php?page =ServidorCorreo y http://www.linuxparatodos.net/portal/staticpages/index.php?page=servidor-correo

291

Para el diseño del centro de datos con el que se trabaja se consideró una base de

datos para 1000 tablas distintas considerando que cada tabla puede llegar a ocupar

hasta 10 MB por lo que se decidió emplear una máquina virtual que disponga de 20

GB de espacio en el disco.

Para la memoria RAM se decidió emplear 512 MB109, debido a que con esta base de

datos trabajará la página web de comercio electrónico por lo que se prevee un alto

número de accesos. Cabe recalcar que de acuerdo a los requerimientos de la

empresa es posible variar estos valores de una manera sencilla mediante el archivo

de configuración de la máquina virtual.

5.2.3. SERVIDOR DE ARCHIVOS

Para el servidor de archivos, al mantener un directorio centralizado de los archivos a

los que acceden los usuarios de la intranet, debe de disponer de un espacio de

almacenamiento relativamente grande, consistente con las necesidades de archivos

centralizados de la empresa, y debe de disponer de una buena velocidad de acceso a

los mismos.

En el caso del diseño presentado en este proyecto se considerará que a cada usuario

coo máximo empleará 1 GB de espacio de almacenamiento por lo que como mínimo

se requiere de un disco duro con capacidad de 100 GB y 256 MB de memoria

RAM110, siendo posible modificar dichos valores en base a las necesidades de la

empresa.

109 Datos tomados en base a la página http://www.linuxparatodos.net/portal/staticpages/index.php ?page=servidor-base

110 Datos tomados en base a la página http://www.linuxparatodos.net/portal/staticpages/index.php ?page=servidor-nfs

292

5.2.4. FTP

Al igual que en el caso del servidor de archivos, este tipo de servidor requiere de una

buena velocidad de acceso a las archivos que almacena y de una considerable

cantidad de espacio en el disco para almacenar los mismos.

Para el presente diseño se empleará un disco duro de 20 GB y 256 MB111 para la

memoria RAM ya que el servidor FTP se planea usar como un espacio de

almacenamiento adicional en que se colocarán archivos centralizados.

5.2.5. WEB

Un servidor web no tiene demasiados requerimientos de capacidad en lo referente al

hardware, ya que no se necesita de demasiado espacio de almacenamiento ni

memoria para permitir el correcto acceso de los usuarios a los portales web.

Si se considera que la página web tendrá un máximo de 10000 accesos simultáneos

se tiene:

Además se debe considerar que se puede montar un servidor web en cualquier

computador Pentium III con 128 MB de memoria y 8 GB de disco duro. Para el caso

del presente diseño se emplearán 256 MB de memoria y 10 GB de disco duro112.

5.2.6. COMERCIO ELECTRÓNICO

En el caso del servidor de comercio electrónico los requerimientos del servidor son

similares a los de un servidor web, ya que, en la práctica un servidor de comercio

111 Datos tomados en base a la página http://www.linuxparatodos.net/portal/staticpages/index.php ?page=servidor-ftp

112 Datos tomados en base a las páginas http://www.linuxcentro.net/linux/staticpages/index.php ?page=ServidorWebFTP y http://www.linuxparatodos.net/portal/staticpages/index.php?page= servidor-web

293

electrónico viene a ser un servidor web seguro con un alto número de accesos a una

base de datos.

En el caso del presente proyecto se asignará al servidor 10 GB de capacidad en el

disco duro y 256 MB de memoria RAM. Con esto se logra un excelente rendimiento

del servidor, ya que sólamente requiere un poco más de recursos que un servidor

web común (128 MB de memoria y 8 GB de disco duro, como se observó en el punto

anterior).

5.2.7. DNS

El servicio de resolución de nombres de dominio es uno de los servicios que emplean

pocos recursos de hardware, el acceso a este servidor sólo se da para contestar

peticiones de nombres de dominio o direcciones IP y para retransmitir estas

peticiones a otro servidor en caso de no poder resolverlas.

Como se puede apreciar en el siguiente gráfico, en el que se muestra la utilización de

memoria y CPU del proceso named en un equipo virtual con 256 MB de memoria

RAM y 10 GB de disco duro, la utilización de dichos recursos es mínima y no influye

en el desempeño del equipo.

Figura 5.1 Uso de memoria y CPU por el servicio bind.

5.2.8. DHCP

El servidor DHCP no requiere de grandes espacios de almacenamiento adicionales a

los del sistema operativo, ya que para su funcionamiento solamente emplea un

archivo de configuración. Es decir que puede trabajar con un disco duro de 6 u 8 GB

que es el mínimo recomendado para los sistemas GNU/Linux.

294

De igual manera el servidor no requiere de demasiadas características de

procesamiento y memoria ya que sólo es accedido en el momento en que los

usuarios se conectan a la red para el envío de los datos necesarios para su conexión.

Se empleará un disco duro de 10 GB con 256 MB de memoria113.

5.2.9. SERVIDORES DE ENRUTAMIENTO Y FIREWALL

En el diseño del centro de datos presentado, se puede apreciar la existencia de tres

firewalls, cada uno de estos cumple funciones de enrutamiento básicas y filtrado de

paquetes. Además de esto el firewallproxy realiza funciones de servidor proxy y NAT

y el firewallinternet realiza funciones de servidor de VPN y NAT.

5.2.9.1. FirewallProxy

Este servidor firewall requiere, además de los servicios de enrutamiento y filtrado de

paquetes básicos, un servicio de proxy. Debido a que el proxy almacena de manera

temporal las páginas web a las que acceden los usuarios, para acelerar la

navegación de los mismos, esto genera que se requiera un espacio de

almacenamiento mayor en comparación con otros servidores como DHCP y DNS. Por

otro lado, en base a valores empleados en otros servidores del mismo tipo114, se ha

concluido que un servidor de este tipo puede funcionar con 256 MB de memoria. Para

el servidor prototipo del presente proyecto se empleará un disco de 100 GB y 512 MB

de memoria.

También es importante señalar que al contrario de los otros servidores, este requiere

conectarse y enrutar a las tres redes existentes en el centro de datos: infraestructura,

113 Datos tomados en base a la página http://www.linuxparatodos.net/portal/staticpages/index.php ?page=servidor-dhcp

114 Cantidad elegida de acuerdo a las consideraciones propuestas en las páginas http://www.linuxparatodos.net/portal/staticpages/index.php?page=servidor-firewall, http://www.linuxparatodos.net/portal/staticpages/index.php?page=servidor-proxy, http://www.linuxcentro.net/linux/staticpages/index.php?page=ServidorPROXY y al foro de http://www.ecualug.org/2007/12/03/forums/requerimientos_de_particiones_y_paquetes_para_un_servidor#comment-27334.

295

datos y zona desmilitarizada, por lo que es necesario que disponga de tres interfaces

de red.

5.2.9.2. RouterIntranet

Este es el servidor de firewall que menos recursos requiere al implementar solamente

funciones de filtrado de paquetes y enrutamiento básicas. En este caso, se decidió

emplear 10 GB de espacio en el disco y 256 MB de memoria. Para esto se consideró

que este servidor no necesita el almacenamiento que requiere el proxy ni tiene su

carga.

De la misma forma que en el caso del servidor firewallproxy, este equipo también

requiere de varias interfaces de red ya que es el que interconecta las redes de

infraestructura, datos y la red interna de la empresa. Se ha considerado que la red

interna de la empresa tendrá tres subredes distintas para distintas áreas y otra de

administración, por lo que se requerirán seis interfaces

5.2.9.3. FirewallInternet

Finalmente, el servidor de firewallinternet se encarga de brindar los servicios de

filtrado de paquetes, conexiones VPN y el enrutamiento y traducción de direcciones.

Se puede considerar que este equipo brinda varios servicios que no tienen

requerimientos de capacidad demasiado grandes. Este servidor es similar al de

firewallproxy, pero al no brindar el servicio de proxy sino el de VPN no tiene

demasiada demanda de espacio en el disco duro. De hecho, el punto más crítico para

este servidor es el disponer de conexiones de red de calidad ya que por este servidor

accederán a Internet todos los usuarios y por este entrarán todos los clientes y

diferentes sucursales.

Debido a estas características, se decidió brindar a este servidor un disco duro de 10

GB, 512 MB de memoria RAM y dos tarjetas de red, una para la red interna y otra

para la externa. También es importante mencionar que, al ser este el servidor de

enlace con el mundo exterior se le brindará características de balanceo de carga, alta

296

disponibilidad y tolerancia a fallos mediante la creación de una máquina réplica de

iguales características que entrará en funcionamiento en el momento que el equipo

principal caiga. También se instalará en uno de estos servidores el software de

monitoreo nagios con el que se pretende se facilite la administración de la red.

Para brindar la redundancia del servidor se emplearán paquetes de software

preparados para esto y se requerirá la creación de interfaces de red virtuales en cada

tarjeta de red física del equipo por lo que en total el equipo dispondrá de cuatro

direcciones IP.

5.2.10. IMPRESIÓN

El servidor de impresión cups cumple la función de compartir cualquier impresora que

se tenga configurada en el mismo y que se encuentre a su alcance, ya sea mediante

una conexión directa por un puerto paralelo o USB o una computadora de red.

Esto quiere decir que el servidor debe de soportar la carga que corresponde tanto a la

administración de las impresoras que se estén empleando como al manejo de las

colas de impresión. Sin embargo, se debe considerar que el peso y utilización de

memoria de los drivers de una impresora son mínimos, e incluso si se administra un

número de impresoras muy elevado para una PyME esta carga no representa una

gran cantidad. Es suficiente con emplear 128 MB de memoria RAM y 6 GB de disco

duro para tener en funcionamiento un servidor de impresión para una PyME con un

excelente rendimiento.

Figura 5.2 Uso de memoria y CPU por el servicio cupsd.

297

5.2.11. DIRECTORIO

Tal como ocurre en servidores como el de base de datos, el dimensionamiento de

este servidor es sumamente relativo al uso que se le dará, siendo lo más importante

la experiencia que se obtenga de pruebas realizadas previamente.

Lo que se recomienda para un servidor de directorio es el trabajar con un sistema

multiprocesador con una capacidad de disco y memoria acorde al número de

entradas y atributos que se quiera almacenar, pudiendo llegar, en el caso de los

directorios de grandes empresas a requerir hasta 2 GB o más de memoria.

Para el caso de un servicio de directorio genérico para una PyME, lo más importante

es el mantener un registro de los empleados con sus respectivas cuentas de correo y

claves. Además, si se considera los datos presentados en la tabla 2.1., en el Ecuador

las PyMES disponen de menos de 100 empleados por lo que el servicio de directorio

no requerirá de demasiados recursos.

Inicialmente se podría iniciar con 20 GB de disco duro y 512 MB de memoria RAM115

y en caso de requerirlo se debería poder ampliar hasta 1 GB sacando provecho de la

facilidad con que se puede añadir memoria a una máquina virtual.

115 Datos tomados en base a la página http://www.linuxparatodos.net/portal/staticpages/index.php ?page=servidor-ldap

298

5.2.

12. R

ES

UM

EN

DE

LA

S C

AR

AC

TE

RÍS

TIC

AS

DE

LO

S S

ER

VID

OR

ES

VIR

TU

AL

ES

Ser

vid

or

Zo

na

Red

D

isco

Du

ro

Mem

ori

a N

ombr

e

Dire

cció

n IP

D

irecc

ión

MA

C

rou

teri

ntr

anet

Red

Int

erna

et

h2

192.

168.

0.1/

24

00

:16:

3E:0

0:19

:01

10 G

B

256

MB

Red

Int

erna

et

h3

192.

168.

2.1/

24

00

:16:

3E:0

0:19

:21

Red

Int

erna

et

h4

192.

168.

4.1/

24

00

:16:

3E:0

0:19

:41

Red

Int

erna

et

h5

192.

168.

172

.1/2

4

00:1

6:3E

:00:

11:

72

Dat

os

eth0

10

.0.0

.254

/24

00

:16:

3E:0

0:02

:54

Infr

aest

ruct

ura

et

h1

10.0

.1.2

54/2

4

00:1

6:3E

:00:

12:5

4

bas

eded

ato

s D

atos

et

h0

10.0

.0.2

/24

00

:16:

3E:0

0:00

:02

20

GB

51

2 M

B

web

emp

resa

rial

D

atos

et

h0

10.0

.0.3

/24

00

:16:

3E:0

0:00

:03

10

GB

25

6 M

B

imp

resi

on

D

atos

et

h0

10.0

.0.4

/24

00

:16:

3E:0

0:00

:04

10

GB

25

6 M

B

serv

ido

rdea

rch

ivo

s D

atos

et

h0

10.0

.0.5

/24

00

:16:

3E:0

0:00

:05

10

0 G

B

256

MB

ftp

D

atos

et

h0

10.0

.0.6

/24

00

:16:

3E:0

0:00

:06

20

GB

25

6 M

B

fire

wal

lpro

xy

Dat

os

eth0

10

.0.0

.1/2

4

00:1

6:3E

:00:

00:0

1

100

GB

51

2 M

B

Infr

aest

ruct

ura

et

h2

10.0

.1.1

/24

00

:16:

3E:0

0:00

:11

DM

Z

eth1

10

.0.2

.1/2

4

00:1

6:3E

:00:

00:2

1

dn

sip

rim

ario

In

frae

stru

ctur

a

eth0

10

.0.1

.2/2

4

00:1

6:3E

:00:

00:1

2

10 G

B

256

MB

dn

sise

cun

dar

io

Infr

aest

ruct

ura

et

h0

10.0

.1.3

/24

00

:16:

3E:0

0:00

:13

10

GB

25

6 M

B

dir

ecto

rio

In

frae

stru

ctur

a

eth0

10

.0.1

.4/2

4

00:1

6:3E

:00:

00:1

4

20 G

B

512

MB

299

mai

lem

pre

sari

al

Infr

aest

ruct

ura

et

h0

10.0

.1.5

/24

00

:16:

3E:0

0:01

:05

10

0 G

B

256

MB

dh

cp

Infr

aest

ruct

ura

et

h0

10.0

.1.6

/24

00

:16:

3E:0

0:01

:06

10

GB

25

6 M

B

web

inte

rnet

D

MZ

et

h0

10.0

.2.4

/24

00

:16:

3E:0

0:00

:24

10

GB

25

6 M

B

mai

lgat

eway

D

MZ

et

h0

10.0

.2.3

/24

00

:16:

3E:0

0:00

:23

10

0 G

B

256

MB

com

erci

oel

ectr

on

ico

D

MZ

et

h0

10.0

.2.2

/24

00

:16:

3E:0

0:00

:22

10

GB

25

6 M

B

dn

sep

rim

ario

D

MZ

et

h0

10.0

.2.5

/24

00

:16:

3E:0

0:00

:25

10

GB

25

6 M

B

dn

sese

cun

dar

io

DM

Z

eth0

10

.0.2

.6/2

4

00:1

6:3E

:00:

00:2

6

10 G

B

256

MB

lvs-

1

(fir

ewal

linte

rnet

-

nag

ios)

DM

Z (

bala

nceo

de

carg

a)

eth0

10

.1.2

.253

/24

00

:16:

3E:0

0:22

:54

10 G

B

512

MB

D

MZ

et

h0:1

10

.0.2

.254

/24

00

:16:

3E

:00:

22:5

4

Inte

rnet

(ba

lanc

eo

de c

arga

) et

h1

172.

16.1

.3/2

4

00:1

6:3

E:0

0:01

:75

Inte

rnet

et

h1:1

17

2.16

.0.1

/24

00

:16:

3E

:00:

01:7

5

lvs-

2

(fir

ewal

linte

rnet

)

DM

Z (

bala

nceo

de

carg

a)

eth0

10

.1.2

.254

/24

00

:16:

3E:0

0:22

:54

10 G

B

512

MB

D

MZ

et

h0:1

10

.0.2

.254

/24

00

:16:

3E

:00:

22:5

4

Inte

rnet

(ba

lanc

eo

de c

arga

) et

h1

172.

16.1

.4/2

4

00:1

6:3

E:0

0:17

:21

Inte

rnet

et

h1:1

17

2.16

.0.1

/24

00

:16:

3E

:00:

17:2

1

Tab

la 5

.1 C

ua

dro

Res

um

en

de

las

cara

cte

ríst

ica

s d

e lo

s S

erv

idor

es

Virt

ua

les

300

5.3. DIMENSIONAMIENTO DEL SERVIDOR FÍSICO

Figura 5.3 Ilustración del Prototipo de Servidor Virtualizado para PyMES.

En teoría el dimensionamiento del servidor físico se debe realizar sumando todos los

requerimientos de los servidores virtuales que dispone, sin embargo, es importante

notar que el dimensionamiento presentado en el punto 5.2. es un dimensionamiento

básico y que aunque esté diseñado para brindar un excelente desempeño a cada uno

de los servicios, se espera el crecimiento de las empresas, por lo que se debe

considerar el dejar considerables reservas de recursos físicos y aprovechar la

facilidad con que se pueden incrementar los recursos asignados a las máquinas

virtuales.

Para el dimensionamiento del servidor físico se tendrá en cuenta los parámetros de:

Mainboard, procesador, memoria RAM, disco duro, dispositivos de conectividad y la

capacidad del enlace de Internet requerido.

5.3.1. PROCESADOR

Considerando que la función del servidor físico es el permitir correr un gran número

de máquinas virtualizadas de manera simultánea, se tiene que seleccionar un

301

procesador que cumpla con ciertas características para brindar un desempeño

adecuado en el entorno de uso.

Figura 5.4 Logotipo procesador Intel® Core™ 2 Quad.

Las dos principales características que se debe buscar son el ser un procesador de

varios núcleos y el soportar la virtualización por hardware (es decir que debe ser un

procesador Intel VT o AMD-V).

Para el caso del presente proyecto se seleccionó un procesador Intel de cuatro

núcleos (Quad Core) que disponga de la tecnología Intel VT.

Entre las alternativas que cumplen con estos requerimientos se seleccionó a los

procesadores de la familia Intel tanto por su costo en el mercado como por el soporte

técnico, repuestos y disponibilidad de productos que tiene en Ecuador.

Entre los procesadores que cumplen con las características antes descritas se tiene:

302

Procesador

Máx. Consumo

de Potencia.

Intel® Virtualization Technology

(VT-x)

Precio Estimado Unitario

Intel® Core™2 Quad Processor Q9650 (12M Cache, 3.00 GHz, 1333 MHz FSB)

95 Watts Yes $316.00

Intel® Core™2 Quad Processor Q9550 (12M Cache, 2.83 GHz, 1333 MHz FSB)

95 Watts Yes $266.00

Intel® Core™2 Quad Processor Q9505S (6M Cache, 2.83 GHz, 1333 MHz FSB)

65 Watts Yes $277.00

Intel® Core™2 Quad Processor Q9505 (6M Cache, 2.83 GHz, 1333 MHz FSB)

95 Watts Yes $213.00

Intel® Core™2 Quad Processor Q9450 (12M Cache, 2.66 GHz, 1333 MHz FSB)

95 Watts Yes $316.00

Intel® Core™2 Quad Processor Q9400S (6M Cache, 2.66 GHz, 1333 MHz FSB)

65 Watts Yes $245.00

Intel® Core™2 Quad Processor Q9400 (6M Cache, 2.66 GHz, 1333 MHz FSB)

95 Watts Yes $183.00

Intel® Core™2 Quad Processor Q9300 (6M Cache, 2.50 GHz, 1333 MHz FSB)

95 Watts Yes $183.00

Intel® Core™2 Quad Processor Q8400 (4M Cache, 2.66 GHz, 1333 MHz FSB)

95 Watts Yes $163.00

Intel® Core™2 Quad Processor Q8200S (4M Cache, 2.33 GHz, 1333 MHz FSB)

65 Watts No $213.00

Intel® Core™2 Quad Processor Q8200 (4M Cache, 2.33 GHz, 1333 MHz FSB)

95 Watts No $163.00

Intel® Core™2 Quad Processor Q6700 (8M Cache, 2.66 GHz, 1066 MHz FSB)

105 Watts Yes $266.00

Intel® Core™2 Quad Processor Q6600 (8M Cache, 2.40 GHz, 1066 MHz FSB)

105 Watts Yes $183.00

Tabla 5.2 Alternativas de procesador con características Intel® Virtualization Technology. Fuente: http://ark.intel.com/ProductCollection.aspx?familyID=28398

Tomando en cuenta el objetivo principal de este proyecto, esto es: implementar un

prototipo de servidor virtualizado que posibilite proveer distintos tipos de servicios de

manera eficiente, flexible, escalable y económica, se selecciona la alternativa de

procesador Intel® Core™2 Quad Q8400 por brindar el soporte necesario de

Virtualization Technology para la virtualización del servidor en base a cuatro núcleos

que pueden actuar independientemente para las distintas máquinas virtuales

implementadas de acuerdo a su requerimiento, brindándole flexibilidad y a la vez que,

gracias a las altas prestaciones de procesamiento permitirá proporcionar un servicio

eficiente y escalable para los ingentes requerimientos futuros de las PyMES. A todo

esto se suma el bus de datos de 1333MHz proporcionado que corresponde al más

alto disponible y que beneficiará en las operaciones realizadas por el procesador. El

Q8400 constituye la alternativa de menor costo entre las seleccionadas

proporcionando una solución lo suficientemente económica.

303

Finalmente el producto cuenta con 3 años de garantía y además cuenta con el

respaldo técnico de distribuidores de Intel® a nivel nacional lo cual, en caso de

requerimientos urgentes, pueden ser sustituidas partes o elementos necesarios de la

implementación.

5.3.2. MEMORIA

El cálculo de la cantidad de memoria de la que requerirá el servidor físico se puede

calcular sumando las memorias asignadas a cada máquina virtual que correrá de

manera simultánea.

Según el diseño presentado, se disponen de 19 máquinas virtuales que brindan sus

servicios de manera simultánea. Tomando en cuenta las consideraciones de la Tabla

5.1 se obtiene que en total las máquinas virtuales requieren de 6144 MB, es decir que

solamente para el funcionamiento de las máquinas virtuales se requiere de 6 GB.

Además de estos valores se debe considerar la memoria que requerirá el servidor

físico para su correcto funcionamiento y una cantidad de reserva para posibles

incrementos de la misma en determinadas máquinas virtuales que así lo requieran.

Por este motivo se ha considerado la utilización de 8 GB de memoria.

En cuanto a la elección de la memoria RAM, se seleccionará en función de su costo,

garantía, disponibilidad en el mercado y compatibilidad con el respectivo Mainboard.

La disponibilidad en el mercado es de módulos de RAM de 2GB, donde el tipo de

memoria RAM DDR2 es generalizado y sobre el cual se puede encontrar fácilmente

repuestos en caso de ser necesario.

304

Figura 5.5 Rendimiento de los distintos tipos de memoria RAM. Fuente: http://www.kingston.com/branded/pdf_files/Final_esx3_memory.pdf

Cabe indicar que tecnologías de memoria tipo DDR3, sus costos son todavía

superiores a las existentes DDR2.

Figura 5.6 Memoria RAM Kingston KVR667D2N5/2 2GB

Es así que entre las alternativas de memoria RAM que cumplen con los parámetros

establecidos, se escoge la alternativa RAM DDR2 de 667 MHz o superior, marca

Kingston cuyo costo es razonable y sus prestaciones técnicas se ajustan a los

requerimientos de la implementación. Las características técnicas de la RAM

escogida son:

305

Kingston KVR667D2N5/2G 2GB 256M x 64-Bit DDR2-667

Clock Cycle Time (tCK) CL=5 3ns (min.) / 8ns (max.) Row Cycle Time (tRC) 54ns (min.)

Refresh to Active/Refresh Command Time (tRFC) 127.5ns

Row Active Time (tRAS) 39ns (min.) / 70,000ns (max.) Single Power Supply of +1.8V (+/- .1V)

Power 2.225 W (operating) UL Rating 94 V - 0

Tabla 5.3 Características Técnicas memoria RAM escogida. Fuente: http://www.valueram.com/datasheets/KVR667D2N5_2G.pdf

5.3.3. DISCO DURO

En el diseño del centro de datos empleados se dispone de 19 máquinas virtuales a

las cuales se decidió asignar distintas capacidades de espacio del disco duro,

requeriendo en total 580 GB. También es importante tomar en cuenta la probabilidad

de que algunos servidores requieran a futuro una mayor cantidad de espacio, por lo

que se puede dejar unos 100 GB adicionales.

También se debe considerar que debido a la forma en que se instalaron los

servidores, empleando máquinas virtuales genéricas, estas también requieren de

espacio en el disco, para estas se ha considerado un espacio adicional de 100 GB.

Finalmente se debe tomar en cuenta el espacio requerido para las instalaciones del

sistema operativo y los paquetes necesarios en el servidor físico al igual que para

posibles futuros servidores que podrían implementarse. Para el software del servidor

físico se recomendaría dejar 10 GB y para las futuras implementaciones 100 GB.

En total, sumando todos los requerimientos se obtendría:

580 GB + 100 GB + 100 GB + 10 GB + 100 GB = 890 GB

Con esto se concluye que se requiere un disco duro de al menos 890 GB de espacio.

306

La velocidad de escritura de igual manera es un parámetro a considerar, por lo cual

se busca de 7200 RPM para satisfacer la demanda de escritura en los diferentes

servicios implementados.

Figura 5.7 Disco duro Samsung HD103SI de 1TB de capacidad tipo SATA de 7200 RPM.

La alternativa de disco duro que cumple con los requerimientos señalados

anteriormente y que ha sido considerada para el prototipo es la siguiente:

Figura 5.8 Imagen interior del disco duro Samsung HD103SI de 1TB de capacidad tipo SATA de

7200 RPM.

307

Configuración del disco

Capacity * 1 TB

Interface Serial ATA 3.0 Gbps

Buffer DRAM Size 16 MB

Byte per Sector 512 bytes

Rotational Speed 7200 RPM

Especificaciones de Rendimiento

Average Seek

time(typical)

8.9 ms

Average Latency 5.52 ms

Data Transfer Rate /

Media to/from

Buffer(Max.)

166 MB/sec

Data Transfer Rate /

Buffer to/from

Host(Max.)

300 MB/sec

Drive Ready

Time(typical)

12 sec

Tabla 5.4 Características técnicas del Disco duro seleccionado. Fuente: http://www.samsung.com/global/business/hdd/productmodel.do?group=72&type=61&subtype=78&

model_cd=443&ppmi=1170#

En función de los costos manejados y pensando en el crecimiento de las PyMES en

base al manejo futuro de datos de gran tamaño, se selecciona la alternativa de disco

marca Samsung HD103SI de 1TB de capacidad tipo SATA de 7200 RPM.

5.3.4. DISPOSITIVOS DE CONECTIVIDAD

Los únicos dispositivos de conectividad que se requieren son las tarjetas de red con

los que el servidor se conectará tanto a la red empresarial interna como al Internet.

Debido a la existencia de varias máquinas virtuales, que actúan de manera

independiente, dentro del servidor físico, es importante brindar la mayor velocidad

posible, por lo que se busca el mantener estas dos interfaces (hacia la red interna y

hacia el Internet) separadas y con tarjetas de red de alta capacidad.

308

En base al diseño del servidor virtualizado presentado en el punto 3.2.1.2, se han

considerado de tres interfaces de red, entre las cuales se reparte la carga en función

del tipo de servicio brindado.

Figura 5.9 Tarjeta de red D-Link DGE-530T - 1Gbps. Fuente: http://www.dlink.com/products/?pid=284

Se seleccionan interfaces de red de 1Gbps en base al soporte que se estará

brindando a un número importante de máquinas virtuales que requieren de constante

salida y entrada de datos tanto con el medio de la Intranet (máximo 100 usuarios ver

punto 2.2) como de Internet (ver cálculo del enlace, punto 5.3.1) a una velocidad 10

veces más rápida que dispositivos Fast Ethernet 10/100; a la vez su precio en el

mercado es cada vez más reducido.

Las interfaces de red seleccionadas son D-Link DGE-530T de 1Gbps:

Especificaciones Técnicas

Standards • IEEE 802.3 10Base-T Ethernet

• IEEE 802.3u 100Base-TX Fast Ethernet

• IEEE 802.3ab 1000Base-T Gigabit Ethernet

• IEEE 802.3x Flow Control

• ANSI/IEEE 802.3 Nway Auto-Negotiation

• IEEE 802.1p Priority Tagging

• IEEE 802.1q VLANs

Features • PCI Local Bus Master 2.1/2.2 Support

• Plug-and-Play Installation

309

• Supports PCI 2.1/2.2 ACPI Power Management Wake-On-LAN

• Compliant to PC 99 Standard (Magic Packet, LinkChg and Microsoft wake-up frame)

• Independent 2Kb Receive and Transmit FIFOs

• Advanced Cable Diagnostics (Windows Utility)

• Jumbo Frame Support

Network Data Transfer Rate

• Ethernet: 10Mbps (Half-duplex)

• Ethernet: 20Mbps (Full-duplex)

• Fast Ethernet: 100Mbps (Half-duplex)

• Fast Ethernet: 200Mbps (Full-duplex)

• Gigabit Ethernet: 1000Mbps (Half-duplex)

• Gigabit Ethernet: 2000Mbps (Full-duplex)

Drivers Supported

• Windows Server 2003

• Novell Netware 5.x, 6.x ODI driver

• Windows XP

• FTP PC/TCP

• Linux Kernal 2.6.5

• MAC OS 10.2x

Protocol • CSMA/CD

Network Media • Ethernet: UTP Cat3, 4, 5 EIA/TIA-568 100-ohm screened twisted-pair (STP)

• Fast Ethernet: UTP Cat5, EIA/TIA-568 100-ohm screened twisted-pair (STP)

Network Management

• SNMPv1

Tabla 5.5 Características técnicas tarjetas de red adicionales tipo PCI. Fuente: http://www.dlink.com/products/?pid=284

Cabe indicar que, como se verá a continuación, el Mainboard seleccionado posee

incorporado en su estructura una interfaz de red de similares características a las

requeridas; por tal motivo, de las tarjetas de red presentadas antes, 2 serán

adicionadas y 1 será incluida por defecto en la tarjeta madre.

5.3.5. MAINBOARD

Para el dimensionamiento de la tarjeta madre o mainboard, lo más importante es que

cumpla con los requerimientos de compatibilidad con los otros dispositivos de

hardware, es decir que tiene que disponer de todos los slots adecuados para la

conexión con los otros dispositivos.

Debe permitir la conexión con el procesador Intel® Core™ 2 Quad, debe soportar el

trabajar con un mínimo de 8 GB de memoria RAM, debe traer los slots adecuados

310

para permitir la conexión de dos tarjetas de red y debe trabajar con un disco duro de

al menos 500 GB.

Entre las alternativas que cumplen con estos parámetros se tiene:

MAINBOARD Intel® Desktop Board

DG41RQ

Intel® Desktop Board

DQ43AP

Intel® Desktop Board

DG33FB

Intel® Desktop Board

DG33BU

Bus Type FSB FSB FSB FSB

System Bus 1333 MHz

Form Factor MicroATX uATX MicroATX MicroATX

Socket LGA775 LGA775 LGA775 LGA775

Embedded No No No No

Especificaciones de memoria

Memory Types DDR2 DDR2 800/667

DDR2 DDR2

# of DIMMs 2 2 4 4

ECC Memory Supported No No No No

Especificaciones de Gráficos

Integrated Graphics Yes Yes Yes Yes

Graphics Output VGA DVI & VGA VGA VGA

Opciones de Expansión

PCI Support 2 2 3 2

PCI Express Revision 1.1 2.0 2.0 2.0

PCI Express Configurations x16 x16 x16

PCIe x1 Gen 2.x 0 1 3 1

PCIe x4 Gen 2.x 0 0 0 0

PCIe x8 Gen 2.x 0 0 0 0

PCIe x16 Gen 2.x 1 0 1 1

I/O Specifications

USB 2.0 Configuration (Back + Internal)

4+4 4+4 6+6 6+6

311

# of SATA Ports 4 3 4 4

# of eSATA Ports 0 1 0 0

RAID Configuration 0

# of PATA Ports 1 0 1 1

# of Parallel Ports 1 1 0 0

# of Serial Ports 1 1 1 1

Audio (back channel + front channel)

6-ch 5.1 6-ch 6-ch

Integrated LAN GbE GbE GbE GbE

Firewire N/A N/A IEEE 1394a

IEEE 1394a

Tabla 5.6 Características técnicas de las alternativas de Mainboard para el Prototipo.

De los datos proporcionados en la tabla anterior, se elige a la alternativa Intel®

Desktop Board DG33BU debido a que proporciona fundamentalmente soporte para el

procesador Q8400 seleccionado con el tipo de socket LGA775 a más de tener

soporte adecuado para 4 slots de memoria RAM DDR2 de mínimo 667MHz, así como

también de 2 Puertos PCI para las tarjetas de red adicionales y 1 Puerto PCI-X que

servirá de reserva para expansión de la capacidad del servidor en cuanto a

dispositivos adicionales. Cuenta además con una interfaz de red Gigabit Ethernet,

estando así acorde con los requerimientos señalados anteriormente.

A estas características se suma su bus del datos de 1333MHz así como 4 puertos

SATA que se ajustan perfectamente al Disco Duro seleccionado en los puntos

anteriores.

312

Mainboard del prototipo: Intel® Desktop Board DG33BU

Fig

ura

5.1

0 D

iagr

am

a in

tern

o d

el M

ain

bo

ard

util

iza

do:

In

tel®

DG

33

BU

313

Finalmente el soporte de Intel® brinda una garantía de 3 años y asistencia técnica en

el país en caso de algún fallo inesperado con elementos sustitutos que se ajusten a

las necesidades del caso.

5.3.6. IMÁGENES DEL PROTOTIPO DE SERVIDOR VIRTUALIZADO

ARMADO

A continuación se presenta imágenes del prototipo armado:

Figura 5.11 Tarjeta Madre con dispositivos de Memoria, Procesador, Interfaces de Red del prototipo.

4 Tarjetas RAM 2GB c/u

Procesador Intel® Q8400

Tarjeta de red incluida Intel® 1Gbps

Tarjetas de red D-Link Adicionales 1 Gbps

4 puertos SATA (HD y DVD ROM

Mainboard Intel® Desktop Board G33BU

314

Figura 5.12 Memoria RAM instalada.

Figura 5.13 Procesador instalado.

4 módulos de memoria RAM Kinigston KVR667D2N5/2G

Exterior (se observa ventilador) procesador

Intel® Core™ 2 Quad Q8400

315

Figura 5.14 Dispositivos de red instalados y puertos disponibles.

Figura 5.15 Tarjetas de red instaladas (vista externa).

Tarjetas de red D-Link® DGE-530T - 1Gbps

Puertos PCI

Puertos PCI – EXPRESS

(expansión futura)

Tarjeta de red Intel® integrada - 1Gbps

Tarjetas de red D-Link® integrada - 1Gbps

316

Figura 5.16 Puertos disponibles del prototipo.

Figura 5.17 Disco duro instalado.

Disco Duro Samsung HD103SI – 1 TB -

317

Figura 5.18 Fuente de poder instalada.

Figura 5.19 Unidad de DVD instalada.

318

Figura 5.20 Case del Servidor.

5.4. CÁLCULO DEL ENLACE AL ISP

El cálculo del enlace al proveedor de servicios de Internet corresponde a los

requerimientos de ancho de banda que se tendría para garantizar un ancho de banda

adecuado para la conexión hacia el Internet por parte de toda la empresa.

Par realizar dicho cálculo es necesario considerar todos los servicios que requieren

conexión con una red externa a la intranet de la empresa. Estos servicios son correo

electrónico, acceso a páginas web, descarga de archivos y acceso desde la VPN.

Tomando siempre en cuenta que los valores presentados son de referencia, ya que

los mismos dependen de las necesidades de la empresa en la que se presente la

solución.

5.4.1. ACCESO A CORREO ELECTRÓNICO

Para el cálculo de los requerimientos de ancho de banda para el acceso al correo

electrónico se considerará que en promedio el tamaño de un correo electrónico es de

319

64 KB y que un tiempo de descarga considerado adecuado para un correo electrónico

es de 30 segundos116.

Entonces se tiene:

5.4.2. DESCARGA DE ARCHIVOS

Para el cálculo de los requerimientos de ancho de banda para la descarga de

archivos se considerará que en promedio las descargas de documentación y archivos

relacionados al ámbito de las empresas tienen alrededor de 2 MB y que estos

archivos son accedidos aproximadamente por dos usuarios simultáneamente, de la

misma forma se considera que el tiempo adecuado para una descarga es

considerado de hasta 4 minutos117.

Entonces se tiene:

Para el cálculo de los requerimientos de ancho de banda para el acceso web se

considerará que en promedio las páginas web tienen un tamaño de 64 KB, son

accedidas por dos usuarios simultáneamente y un tiempo de espera aceptable para la

carga de las mismas es de 30 segundos118.

116 En base a datos tomados de otros proyectos de titulación como el de “Diseño de la Intranet de la empresa MEGAREDES Cía. Ltda.” realizado por los Ing. César Trelles y Ricardo Vallejo.

117 En base a datos tomados de otros proyectos de titulación como el de “Diseño de la Intranet de la empresa MEGAREDES Cía. Ltda.” realizado por los Ing. César Trelles y Ricardo Vallejo.

118 En base a datos tomados de otros proyectos de titulación como el de “Diseño de la Intranet de la empresa MEGAREDES Cía. Ltda.” realizado por los Ing. César Trelles y Ricardo Vallejo.

320

Entonces se tiene:

5.4.3. ENLACE VPN

Para los cálculos del enlace VPN se considerará que el mismo suele emplearse solo

para la compartición de cierta información puntual o para realizar configuraciones

remotas por lo que se podría considerar su utilización, en los peores casos, similar a

la de la descarga de archivos pero con un uso más espaciado dependiendo de la

empresa en que se lo aplique.

5.4.4. ENLACE AL ISP

El enlace al ISP se obtiene al sumar todas las capacidades requeridas para obtener

un acceso al Internet confiable:

Esto quiere decir que se requiere una conexión a Internet de por lo menos 342 Kbps,

siendo considerado preferible una de 512 Kbps.

321

CAPÍTULO SEIS

6. PRESUPUESTO DE LA IMPLEMENTACIÓN

PROPUESTA

322

6.1. PRESENTACIÓN DE COSTOS DEL PROTOTIPO DE

VIRTUALIZACIÓN

En base al estudio realizado en los capítulos anteriores, los requerimientos básicos

para la implementación del Prototipo de Servidor Virtualizado sobre una distribución

del Sistema Operativo Linux para uso en PyMES son:

§ Hardware Físico – Servidor

Éste incluye los elementos hardware que constituyen el Computador de altas

prestaciones basado en la arquitectura x86; esto es:

§ Tarjeta Madre (Mainboard)

§ Procesador

§ Memoria Ram

§ Dispositivos de almacenamiento

§ Tarjetas de red

§ Lectores de DVD, CDROM

§ Case (Incluyendo fuente de energía, ventiladores, teclado,

mouse)

§ Software

Éste elemento incluye los programas necesarios para la implementación del prototipo;

esto es:

§ Sistema Operativo (Costo - Licencias)

§ Software de Virtualización (Costo -Licencias)

§ Software de Servicios (Para la implementación de los servicios

analizados en el capítulo 4)

§ Software de Control (Para la administración del servidor,

antivirus, antispam, etc.)

323

6.1.1. COSTO DE HARDWARE FÍSICO

En función de los datos obtenidos en el capítulo 5 en el punto 5.3 acerca del

dimensionamiento del hardware físico, a continuación se presentan los costos119 de

los requerimientos para la implementación:

Hardware Descripción Cantidad

Precio

Unitario

(USD)

Precio

(USD)

Tarjeta Madre

(Mainboard)

Intel® Desktop Board

DG33BU 1 118.00 118.00

Procesador Intel® Core™ Quad

Q8400 1 215.00 215.00

Memoria Ram Kingston®

KVR667D2N5/2G 4 28.00 112.00

Disco Duro Samsung HD103SI 1 90.00 90.00

Tarjetas de red D-Link DGE-530T 2 20.45 40.90

Lectores de DVD,

CDROM LG - GH22NP20 1 25.00 25.00

Case

(Inc. fuente de

energía,

ventiladores, teclado,

mouse)

Case Combo Ares 1 39.00 39.00

Tabla 6.1 Costos del Hardware para la implementación del prototipo de Servidor Virtualizado.

6.1.2. COSTO DE SOFTWARE

La finalidad del presente proyecto fue el implementar un Servidor Virtualizado sobre

una distribución de Linux, justamente para salvaguardar los escasos recursos

económicos de las PyMES en cuanto a la adquisición de software licenciado. Esta

119 Costos obtenidos en función de proformas de varios distribuidores. Ver Anexo I.

324

situación se vio acompañada a lo largo de las configuraciones realizadas de los

servicios, con alternativas de software altamente confiable, de funcionamiento

probado, con soporte en línea y que además sea OpenSource, libre y gratuito (Bajo

licencia GPL). Es así, que los costos incurridos en Software son prácticamente cero,

permitiendo así un ahorro considerable de costos para las PyMES del Ecuador;

siendo así se presenta a continuación el software utilizado en el presente proyecto:

Software Descripción Cantidad Licencia

Sistema

Operativo

Host OS: GNU-Linux CentOS 5.2 1 GPL

Guest OS: GNU-Linux CentOS 5.2 18 GPL

Software de

Virtualización Xen® Hypervisor 3.1 1 GPL

Software de

Servicios

Bind, Dhcp, Sendmail, Squirrelmail,

Squid, OpenLDAP, Samba, CUPS,

Apache, VSFTP, Zen Cart, IPTABLES,

entre otros.

12 GPL

Software de

Control

MailScanner, ClamAV, Webmin,

VNCviewer, Putty (para Windows®),

entre otros.

5 GPL

Tabla 6.2 Software utilizado en la implementación del prototipo de Servidor Virtualizado.

6.1.3. PRESUPUESTO TOTAL

De acuerdo a los puntos anteriores vistos en el presente capítulo, a continuación se

presentan los costos totales de la implementación de Servidor Virtualizado realizada:

Componente Descripción Valor Total

Hardware

Mainboard

Intel® Desktop Board DG33BU

Procesador

Intel® Core™ Quad Q8400

Memoria Ram

Kingston® KVR667D2N5/2G

639,40

325

Disco Duro

Samsung HD103SI

Tarjetas de red (2)

D-Link DGE-530T

Lector de DVD, CDROM

LG - GH22NP20

Case

Case Combo Ares

Sistema Operativo Host OS: GNU-Linux CentOS 5.2 -

Guest OS: GNU-Linux CentOS 5.2 -

Software de

Virtualización Xen® Hypervisor 3.1 -

Software de

Servicios

Bind, Dhcp, Sendmail, Squirrelmail,

Squid, OpenLDAP, Samba, CUPS,

Apache, VSFTP, Zen Cart, IPTABLES,

entre otros.

-

Software de Control

MailScanner, ClamAV, Webmin,

VNCviewer, Putty (para Windows®), entre

otros.

-

TOTAL120 639,40

Tabla 6.3 Costo total Servidor Virtualizado.

En el anexo I del presente proyecto puede encontrarse con mayor detalle los costos

incurridos en la implementación del prototipo de Servidor Virtualizado para PyMES.

120 El costo total referenciado no incluye impuestos.

326

CAPÍTULO SIETE

7. CONCLUSIONES Y RECOMENDACIONES

327

7.1. CONCLUSIONES

§ Dentro del ámbito productivo empresarial, el grupo de las Pequeñas y

Medianas Empresas (PyMES) proyectan una especial atención para el

desarrollo económico del país debido a que constituyen aquellas empresas

con grandes posibilidades de crecimiento y expansión pero que debido a sus

limitaciones ocupacionales, financieras o ambas requieren de un mayor apoyo

económico, organizativo, administrativo, de educación, y así también

tecnológico.

§ El panorama socio económico del Ecuador muestra una estructura económica

donde más del 90% de las empresas son pequeñas y medianas (PyMES) las

cuales aportan aproximadamente un 25% de la economía nacional. Tan sólo

en Pichincha se cuentan con aproximadamente 3000 PyMES con grandes

deficiencias en cuanto al acceso a las nuevas Tecnologías de la Información;

esta situación frente al hecho que en el ámbito internacional los países y las

empresas exitosas son aquellas que basan su ventaja competitiva en factores

innovadores y tecnológicos. Estas condiciones limitan el accionar de las

PyMES en Ecuador, necesitando alcanzar altos niveles de competitividad y

productividad a través de varias soluciones económicas que les permita

disponer de la tecnología necesaria para su desarrollo.

§ La productividad y competitividad de las PyMES se ve beneficiada

indudablemente por la introducción de las Tecnologías de Información y

Comunicación (TIC´s) donde cumplen un papel decisivo en el desarrollo

eficiente de la naturaleza del negocio y con ello el objetivo específico de

desarrollo de cada PyMES.

§ Es así que es imperiosa la implementación de canales de información y

comunicación tanto internos como externos para que las PyMES obtengan

una ayuda fundamental en el mejoramiento y automatización de procesos

administrativos, productivos, comerciales, de extensión y crecimiento, etc. y se

posibilite así la apertura de sus mercados ante clientes alrededor del país y el

mundo.

328

§ Lamentablemente y debido a la naturaleza inicial tanto económica como

organizativa, administrativa y de cultura tecnológica de las PyMES, el acceso a

las TIC´s no es una realidad generalizada. Estos hechos justifican la

implantación de una Política de Estado que brinde mayor apoyo a las PyMES

tendientes a alcanzar objetivos de innovación, desarrollo de tecnología y

emprendimiento mediante la masificación del acceso al uso de nuevas

tecnologías, las TIC´s.

§ En tal virtud es imprescindible vincular fuertemente a las pequeñas y

medianas empresas con un ambiente organizativo en el que el uso de

soluciones tecnológicas de bajo costo y alto rendimiento productivo como el

acceso Internet, correo electrónico, comercio electrónico, etc. sea un hecho

cotidiano que aporte a una mejor gestión de su organización productiva.

§ Por ello, la introducción de una solución económica, de fácil uso y

mantenimiento (pues por añadidura no se cuenta con personal de TI fijo) y por

tanto confiable, segura, y eficaz que permita a las PyMES acceder a las

Tecnologías de la Información y Comunicación, constituye un factor

preponderante a ser implementado en el camino para conseguir su desarrollo

y además como estrategia de supervivencia comercial.

§ Las varias iniciativas del Estado por la introducción del Software Libre, Open

Source y Gratuito así como la mejora sustancial de precio y características del

hardware de uso tradicional, permiten que implementaciones de bajo costo y

alto rendimiento aporten significativamente con la satisfacción de gran parte

de las necesidades y requerimientos tecnológicas de las pequeñas y

medianas empresas (PyMES).

§ La evolución computacional de hardware y software ha dado lugar que los

centros de datos de las organizaciones también evolucionen a través de los

años exigiendo invariablemente la expansión de la infraestructura de TI

mediante un modelo consolidado, evitando la proliferación de servidores

infrautilizados con mayores costes de gestión de la red y menor agilidad y

fiabilidad. Es así que la virtualización toma un papel protagónico

especialmente en la virtualización de servidores reduciendo la proliferación de

329

éstos, simplificando su gestión y mejorando significativamente su utilización,

así como la agilidad, fiabilidad de la red y la eficacia de la infraestructura de TI.

§ Las soluciones tecnológicas de virtualización, antes casi exclusivas para las

grandes empresas, comienzan a ser presentadas en formato pequeño para

empresas de menor tamaño donde se requiere tecnología con la menor

inversión de recursos económicos (debido a su naturaleza) para su

mejoramiento organizativo y productivo.

§ Es aquí donde los servidores virtualizados toman parte en la escena de las

PyMES ofreciendo un entorno de TI ajustado con mucha mayor precisión a las

necesidades organizacionales y contribuyendo así a la constitución de un

centro de datos más eficiente, manejable, confiable, seguro, disponible y de

menor costo que facilita la operación de estas empresas, acorde con su

estructura y giro del negocio, logrando obtener con ello mayor rédito en el

ámbito de su competencia.

§ Así, los beneficios de la virtualización son grandes; ésta es una tecnología

ecológica que ahorra costos, espacio y recursos, ya que se requiere

únicamente de la implementación de un servidor físico consolidado con lo que

no solamente se genera un ahorro de compra de hardware, sino también de

software, de la mano con el Open Source y Software Libre y gratuito.

§ La implementación de Servidor Virtual, permite que las empresas reduzcan su

consumo energético, gestionen mejor el crecimiento de los sistemas y

consigan reducciones en el coste total de propiedad. Esto se debe

fundamentalmente a que la virtualización de servidores permite múltiples

servidores en un sólo equipo, de forma que un único servidor ejecuta varios

sistemas operativos y aplicaciones del negocio. A todo esto se añade ahorros

en costos de ventilación, mantenimiento, y se suman características

tecnológicas de flexibilidad, escalabilidad, alta disponibilidad, redundancia,

tolerancia a fallas y reducido tiempo de recuperación ante desastres.

§ Existe una gran variedad de tipos de virtualización, cada uno de los cuales

tienen sus propias ventajas y desventajas, y algunos son específicos para

330

determinadas aplicaciones; la elección del tipo de virtualización y herramienta

a utilizarse depende en gran parte del uso que se le dará. En el caso del

presente proyecto la mejor opción fue la Paravirtualización y Virtualización

Híbrida provista por la herramienta Xen.

§ Con la virtualización se consigue un mayor aprovechamiento físico de los

equipos a través de la implementación de varias máquinas virtuales por un

solo equipo real, sin que con ello signifique una reducción de su rendimiento

con una adecuada planificación.

§ Los recursos de hardware virtual que necesariamente requieren las VM´s son:

procesador, memoria, disco duro y un dispositivo para conexión, es decir una

tarjeta de red. En la configuración de servidor realizada, el resto de

dispositivos de hardware existentes no son requeridos y se realiza una

configuración mínima que favorece a un mejor rendimiento del sistema.

§ Aunque la mayoría de servidores no requieren de una interfaz gráfica, es decir

se pueden instalar y configurar mediante línea de comandos con una conexión

segura, existen servidores como por ejemplo el de Comercio Electrónico que

están diseñados para ser instalados y configurados mediante una GUI.

§ Cada empresa tiene distintos requerimientos tecnológicos por lo que cada

caso se debe analizar por separado, debiendo considerarse qué servicios son

realmente necesarios y cuáles no son requeridos, de esta forma es posible

que se requiera un mayor o menor número de servidores.

§ Es de suma importancia el brindar un alto grado de seguridad no solo a los

servidores virtuales sino sobre todo al servidor físico, ya que si un atacante

consigue acceso a este servidor podría manipular los archivos de

configuración de todos los servidores virtuales además de ser capaz de

encenderlos o apagarlos, además, cualquier daño que se haga al servidor

afectaría a todos los equipos.

331

§ Aunque un atacante consiga acceso al servidor físico, eso no significa que

podrán acceder a cada máquina virtual individualmente ya que cada equipo

tiene sus propias protecciones.

§ Aunque todos los equipos virtuales se encuentren dentro de un mismo equipo

físico, cada unos de ellos es lógicamente independiente y puede ser

considerado como un equipo completamente diferente.

§ Un servidor proxy ayuda a las empresas a controlar los contenidos a los que

pueden acceder sus empleados para evitar el desperdicio de recursos y

aumentar la productividad. Además, el almacenamiento en caché de las

paginas previamente accedidas permite a los usuarios una percepción de

mayor velocidad de navegación.

§ Aunque la implementación inicial de un prototipo de servidor virtualizado

pueda resultar complicada por la cantidad de instalaciones de servidores a

realizar y la cantidad de servicios a configurar, una vez concluida la

implementación del prototipo, este puede emplearse como base para la

creación de un sinnúmero de servidores virtualizados que solo requerirán

pequeñas modificaciones para su comercialización.

§ El hecho de aplicar la Virtualización de Servidores para las PyMES sobre

hardware convencional (x86) y una distribución de Linux, no es más que un

factor adicional que esperamos contribuya a la adopción de infraestructuras

tecnológicas que brinden un centro de datos con altas características de

eficiencia y eficacia pero a la vez accesible económicamente.

§ Es muy factible, para un proyecto posterior, la implementación de una interfaz

gráfica de administración unificada de los servidores virtuales y sus

respectivos servicios, a fin de que el producto final pueda ser todavía más

amigable para el usuario final y la distribución de la plataforma de

virtualización sea cada vez más acogida por las PyMES que no cuentan con

personal fijo de Sistemas. Las herramientas de administración a utilizarse

pueden ser: Webmin, Virtualmin, Putty (SSH), VNC.

332

§ Es así que en el presente trabajo de investigación se realizó el análisis, diseño

e implementación de una solución de Servidor Virtualizado con software Open

Source, Libre y Gratuito para así aprovechar esta serie de factores

tecnológicos, económicos, entre otros, y de esta manera incluir a las

Pequeñas y Medianas Empresas -PyMEs- en un nuevo ámbito organizativo

donde las Tecnologías de Información (TI) constituyen un factor trascendental

en el incremento de su productividad.

§ Finalmente con este proyecto de titulación se pudo contribuir de manera

técnica desde nuestro campo de acción – la Electrónica y Redes de la

Información - al crecimiento productivo de las pequeñas y medianas empresas

ecuatorianas y con ello al desarrollo productivo del país.

7.2. RECOMENDACIONES

§ Para la implementación de cualquier tipo de servidor, es importante

primeramente establecer los requerimientos de los posibles usuarios del

mismo, elegir la herramienta adecuada para su implementación y probarla,

entonces se puede proceder a dimensionar el servicio e implementarlo en el

sistema final.

§ Es recomendable el uso de procesadores que soporten virtualización por

hardware, es decir procesadores Intel VT o AMD-V, ya que aunque no sea

necesaria esta característica para la paravirtualización, es una característica

requerida para la virtualización de sistemas operativos no modificados, lo que

es necesario para poder instalar sistemas operativos propietarios como

Windows.

§ Es recomendable el mantener el servidor en un sitio seguro, sólo accesible por

personal autorizado, ya que aunque se dispongan de firewalls para proteger al

equipo de accesos indeseados a través de la red, si un atacante puede

acceder al equipo físicamente, la protección se ve seriamente reducida.

§ Es una buena práctica el mantener un respaldo completo y actualizado de

todas las máquinas virtuales con las que se trabaja, de esta forma, en el caso

333

de que alguna presente problemas, se puede migrar el servidor virtual rápida y

eficazmente. El uso de RAID es recomendable para un proyecto futuro y

mantener la información respaldada en espejo en varios discos duros (aunque

se encarece la implementación del servidor pero se respalda la información).

§ Se debería de disponer de un método de acceso al servidor via WEB segura,

para permitir a un administrador de equipo realizar configuraciones de manera

remota, sin embargo este acceso debe estar altamente protegido y no permitir

conexiones en puertos típicos.

§ Al momento de seleccionar herramientas de código abierto es importante el

buscar herramientas que dispongan de mucha documentación ya que no

siempre se puede obtener soporte técnico rápido por parte de las empresas

que las distribuyen.

§ En la configuración de un servidor de correo es importante el considerar que la

mayoría de los servidores de correo como Hotmail o Gmail tienen grandes

protecciones para evitar la llegada de correo SPAM por lo que es posible que

dichos servidores no reciban correos de dominios recientemente

implementados hasta que el dominio del nuevo servidor entre en listas blancas

y deje de ser considerado correo no deseado.

§ Es recomendable el disponer de un equipo físico de respaldo con los

servidores virtuales listos para usarse, este equipo puede tener prestaciones

menores que el servidor principal ya que, en caso de que se llegue a usar, su

uso será temporal.

334

CAPÍTULO OCHO

8. ANEXOS

335

ANEXO A

TECNOLOGÍA DE PROCESADORES INTEL® VT Y AMD®-V

336

ANEXO A TECNOLOGÍA DE PROCESADORES INTEL® VT Y AMD®-V

Fuente: Intel Technology Journal, Volume 10, Issue 3, 2006.

Intel® Virtualization Technology: Extending Xen* with Intel® Virtualization

Technology, Intel® Virtualization Technology: Hardware Support for Efficient

Processor Virtualization

http://www.amd.com/us/products/technologies/virtualization/Pages/virtualization.aspx

VT INTEL (IVT)

INTEL VIRTUALIZATION TECHNOLOGY

La tecnología de virtualización de Intel® permite a un CPU actuar como si fueran

varios procesadores trabajando en paralelo, permitiendo así que varios sistemas

operativos se ejecuten al mismo tiempo en un mismo equipo.

Intel VT es una colección de tecnologías para procesadores que permiten la

ejecución de Sistemas Operativos huéspedes (Guest) no modificados en los Intel VT-

enhanced VMMs.

VT-x incrementa la arquitectura IA-32 con dos nuevas formas de operación del CPU:

VMX root-operation y VMX non-root operation. VMX root-operation está destinado a

ser usado por un VMM, y su comportamiento es muy similar al de la IA-32.

Sin VT-x. VMX non-root operation proporciona la alternativa de entorno IA-32

controlado por un VMM y diseñado para soportar una máquina virtual. Ambas formas

de operación soportan los cuatro niveles de privilegio (0-3), permitiendo que el

software del huésped funcione al nivel de privilegios previstos, y proporciona un

VMM con la flexibilidad de utilizar varios niveles de privilegio.

Es así que VT-x permite que el software huésped se ejecute en el nivel de privilegio

para el que fue diseñado.

337

AMPLIANDO XEN CON INTEL VT

La arquitectura Xen 3.0 tiene un kernel de hypervisor pequeño que se ocupa de la

virtualización del CPU, la memoria y los recursos de E/S críticos, como el controlador

de interrupciones.

Dom0 es un Linux paravirtualizado que tiene acceso privilegiado a todos los

dispositivos E/S en la plataforma y es una parte integral de cualquier sistema basado

en Xen.

Cuando Intel VT se utiliza, dominios totalmente virtualizados pueden ser creados para

ejecutar sistemas operativos huéspedes sin modificaciones. A estos dominios

completamente virtualizados se les da el nombre de HVMs (hardware-based virtual

machines). Xen presenta a cada HVM huésped, una plataforma virtualizada que se

asemeja a una plataforma clásica PC/server con un teclado, ratón, visualización de

gráficos, discos, disquetes, CD-ROM, etc

Esta plataforma virtual de apoyo es proporcionada por el módulo virtual de

dispositivos de E/S.

Figura 8.1 Arquitectura de Xen e Intel® VT.

338

La Tecnología de virtualización de Intel está disponible para todos los procesadores

Pentium 4 6x2, Pentium D 9x0, Xeon 3xxx/5xxx/7xx, Intel Core e Intel Core 2, Intel

Core 2 Quad y superiores.

La Tecnología de Virtualización Intel® (Intel® VT) exigen un sistema de computador

con un procesador, chipset, BIOS, habilitando el software y/o el sistema operacional,

los controladores de dispositivos y aplicaciones, creados para esos recursos. El

desempeño varía, dependiendo de su configuración.

VIRTUALIZACIÓN AMD (AMD-V)

AMD – V es la tecnología para la arquitectura de 64 bits x86 de virtualization y se la

referencia por el nombre en clave "Pacífica".

Los procesadores AMD que usan Socket AM2, Socket S1 y Socket F incluyen AMD-

V.

En conjunto con la arquitectura de Conexión Directa proporciona un enfoque

equilibrado para contribuir a mejorar el rendimiento de virtualización, permitiendo así

que funcionen más máquinas virtuales por servidor. AMD-V™ reduce los gastos

operativos al interceptar de manera selectiva instrucciones destinadas a entornos

huésped.

La Arquitectura de Conexión Directa ayuda a los sistemas huésped a funcionar casi a

velocidad nativa. Además el controlador de memoria integrado compatible con

virtualización proporciona un aislamiento eficaz de la memoria de la máquina virtual

Los procesadores que disponen de ésta tecnología son: AMD Athlon ™, AMD

Phenom ™, AMD Phenom II, AMD Athlon ™ y AMD Opteron ™.

Entre las diferentes alternativas de la familia Intel® que proporcionan asistencia de

virtualización se referencian las siguientes con mayor detalle.

339

Name

Intel® Core™ i7-

860 Processor (8M Cache, 2.80 GHz)

Intel® Core™2

Quad Processor Q8400 (4M Cache, 2.66 GHz, 1333 MHz FSB)

Intel® Core™2 Duo

Processor E6400 (2M

Cache, 2.13 GHz, 1066 MHz FSB)

Intel® Pentium® Processor E6500 (2M

Cache, 2.93 GHz, 1066

FSB)

Intel® Pentium® 4

Processor 662 supporting HT

Technology (2M Cache,

3.60 GHz, 800 MHz FSB)

Processor Number i7-860 Q8400 E6400 E6500 662

# of Cores 4 4 2 2 1

# of Threads 8 4 2 2 2

Processor Base

Frequency 2.8 GHz 2.66 GHz 2.13 GHz 2.93 GHz 3.6 GHz

Max Turbo Frequency 3.46 GHz

Cache 8 MB Intel®

Smart Cache

4 MB L2 Cache

2 MB L2 Cache

2 MB L2 Cache

2 MB L2 Cache

Bus/Core Ratio 21

8 11 18

Bus Type DMI FSB FSB FSB FSB

System Bus 2.5 GT/s 1333 MHz 1066 MHz 1066 MHz 800 MHz

FSB Parity

No

No

Instruction Set 64-bit 64-bit 64-bit

64-bit

Instruction Set Extensions SSE4.2

Embedded No No Yes Yes No

Supplemental SKU No No No No No

Processing Die Lithography 45 nm 45 nm 65 nm 45 nm 90 nm

Max TDP 95 W 95 W 65 W 65 W 115 W

VID Voltage Range

0.8500V - 1.3625V

0.850v - 1.3625v

0.85V – 1.3625V

1.2V-1.4V

# of Processing Die

Transistors 774 million 456 million 167 million 228 million 169 million

Sockets Supported LGA1156 LGA775

LGA775, PLGA775

LGA775 PLGA775

340

Halogen Free Options

Available Yes Yes No Yes No

Intel® Virtualization Technology

(VT-x)

Yes Yes Yes Yes Yes

Intel® Virtualization

Technology for Directed I/O

(VT-d)

Yes

1ku Bulk Budgetary

Price $284.00 $163.00 $183.00 $84.00 $80.00

Tabla 8.1 http://ark.intel.com/Compare.aspx?ids=41316,38512,27486,27249,42805,

341

ANEXO B

ESTADO DE LAS TIC´S EN ECUADOR

342

ANEXO B ESTADO DE LAS TIC´S EN ECUADOR

Fuente: “LAS TECNOLOGÍAS DE LA INFORMACIÓN Y LAS COMUNICACIONES

EN LA COMPETITIVIDAD DE QUITO” Pág: 34

Elaborado por: Santa Fe Associates International

Consultores: Econ. Hernando López Guerrero

Ing. Hugo Carrión Gordón

© Corporación de Promoción Económica CONQUITO, 2007

Desde el año 2000 la Economist Intelligence Unit ha venido elaborando e “e-

Readiness Rankings”, que es un indicador del ambiente propicio para hacer uso y

beneficiarse de las TIC, el mismo que se lo construye a partir de criterios cuantitativos

organizados en seis categorías que miden los diferentes componentes del desarrollo

económico, político, social y el tecnológico de cada país. El criterio de la conectividad

es el que tiene el mayor peso (25%); los restantes van desde el 20% al 5% en el

indicador.

En la siguiente tabla se presenta los indicadores para varios países de Latinoamérica

y su posición, para los años 2005 y 2006:

Tabla 8.2 Utilización de las TIC´s en América Latina. Fuente: “Las Tecnologías de la Información

y las Comunicaciones en la competitividad de Quito” Pág: 34. Econ. Hernando López Guerrero,

Ing. Hugo Carrión Gordón, © Corporación de Promoción Económica CONQUITO, 2007

343

ANEXO C

FORMULARIO DE ENCUESTA PARA LA DETERMINACIÓN DE LAS TIC´S

EN LA EMPRESA

344

ANEXO C FORMULARIO DE ENCUESTA PARA LA DETERMINACIÓN DE

LAS TIC´S EN LA EMPRESA

Fuente: “LAS TECNOLOGÍAS DE LA INFORMACIÓN Y LAS COMUNICACIONES

EN LA COMPETITIVIDAD DE QUITO”

Elaborado por: Santa Fe Associates International

Consultores: Econ. Hernando López Guerrero

Ing. Hugo Carrión Gordón

© Corporación de Promoción Económica CONQUITO, 2007

Rama de actividad

1. ¿A qué rama de actividad se dedica su empresa?

• Textiles y confecciones

• Madera

• Alimentos y Bebidas

• Metalmecánica

• Gráfico

• Químico

• Cuero y Calzado

• Otro______________________

2. Tamaño

¿Cuántos empleados tiene?

________________________

3. ¿Exporta?

• Si

• No

4. Si exporta, ¿hacia qué mercados lo hace?

• Estados Unidos

345

• Unión Europea

• Asia

• Colombia

• Perú

• Otros países de América Latina

Infraestructura

5. ¿Cuántas PC tiene en su empresa?

_______________

6. ¿Qué sistema operativo utiliza mayoritariamente en su empresa?

• Windows

• Linux

• Macintosh

• Otro_____________________

7. La empresa dispone de red LAN:

• Alámbrica

• Inalámbrica

• Ninguna

• Ambas

8. ¿Tiene un departamento de sistemas?

• Si

• No

9. ¿Cuántas personas conforman el área de sistemas?

___________

Conectividad

10. ¿Su empresa tiene Internet?

• Si

• No

346

11. ¿Qué tipo de conexión tiene contratada

Dial-up?

• Dial-up (por teléfono)

• Dedicada ADSL

• Dedicada por Cable

• Dedicada Satelital

• Otra__________________

12. ¿Si tiene conexión dedicada, de que velocidad dispone?

• 64 Kbps

• 128 Kbps

• 256 Kbps

• 528 Kbps y más

Sitios web

13) ¿Tiene sitio web institucional?

• Si

• No

14) Si dispone de sitio web, ¿cuál es su dominio?

________________________

15) ¿Para qué utiliza el sitio web?

• Para dar información general

• Promocionar el catálogo

• Vender por internet (comercio electrónico)

• Otros_______________

TIC y la gerencia

16) ¿Cuánto conoce la gerencia acerca de las TIC

• Poco

• Algo

• Mucho

347

17) Cuál es su dirección de correo electrónico?

___________________

18) ¿Con qué frecuencia accede al Internet?

• Diariamente

• Semanalmente

• Mensualmente

• No lo utiliza

19) ¿Considera a Internet una herramienta básica de gestión?

• Sí

• No

20) ¿Para que utiliza Internet?

• Leer noticias (nacionales e internacionales)

• Buscar información de negocios

• Buscar nuevos mercados

• Enviar y recibir mensajes

• Otros usos

Uso de TIC en la empresa

21) ¿Con qué tipo de sistemas de información cuenta la empresa?

• Contabilidad

• Inventarios

• Recursos Humanos

• Manufactura

• Sistemas de Información Gerencial

• Otros______________________

22) ¿Utiliza software especializado para diseño de productos?

• Sí

• No

23) ¿La empresa para qué usa el internet?

• Servicios bancarios y financieros

348

• Formación y aprendizaje

• Observar comportamiento mercado

• Recibir productos digitales

• Observar el comportamiento del mercado y la competencia

• Servicio de postventa

• No usa

24) ¿Con qué servicios de seguridad cuentan?

• Software de protección (antivirus)

• Backup de datos

• Mecanismo de autenticación

• Sistemas de encriptación

• No tiene

349

ANEXO D

ERP DE SOFTWARE LIBRE

350

ANEXO D

ERP DE SOFTWARE LIBRE

Fuente: “PLANIFICACIÓN DE RECURSOS EMPRESARIALES”

http://es.wikipedia.org/wiki/Planificaci%C3%B3n_de_recursos_empresariales#ERP_d

e_software_libre_.28orden_alfab.C3.A9tico.29

· Adempiere es un proyecto guiado por la comunidad que desarrolla y soporta

una solución de código abierto para negocios del mismo nombre. Ofrece las

funcionalidades de planificación de recursos empresariales (ERP),

administración de la relación con los clientes (CRM) y administración de la

cadena de suministro SCM. Basado originalmente en Compiere, es totalmente

libre de tecnologías propietarias, integrando iText para la generación de

ficheros PDF y soportando la base de datos PostgreSQL. Se encuentra en

fase plenamente funcional. Adempiere está licenciado bajo GPLv2 y cuenta

con soporte comunitario y comercial.

· AbanQ es un ERP modular disponible para Linux, MAC OS X y Windows

2000/NT. Incluye su propia plataforma de desarrollo rápido para adaptar la

aplicación. Actualmente existen en continuo desarrollo módulos integrados

para facturación, almacén, gestión de tesorería, contabilidad financiera,

talleres de automoción, formación, tpv, control de producción (MRP) y además

soporte completo para códigos de barras. AbanQ (ex FacturaLUX1 ) es

software libre, aunque no gratuita, dado que se vende con licencia GPL. Existe

una versión lite, la cual no incluye algunos módulos.

· CK-ERP es un ERP que incluye administración de la relación con los clientes

(CRM). De código abierto, consta de veinte módulos o aplicaciones que

incluyen facilidades para la gestión de la contabilidad de la empresa, pagos,

ingresos, pedidos u órdenes de compra, gestión de ventas, cotizaciones

recibidas, gestión del punto de venta, gestión de recursos humanos o

personal, gestión de nóminas, gestión de contactos, entre otros. Su interfaz

online, es bastante simple pero es fácilmente adaptable a las necesidades de

cualquier empresa. El sistema debe estar instalado en algún sistema operativo

que no sea Microsoft Windows, como Linux, Solaris, FreeBSD, OpenBSD, PC-

351

BSD, NetBSD, etc. Pero los clientes pueden estar en cualquier sistema

operativo.

· Compiere es un ERP de software libre realizado para el mercado anglosajón,

por lo que encaja en muchas de las necesidades legislativas europeas e

hispanoamericanas. Necesita tecnología propietaria para funcionar,

concretamente ciertas librerías de generación de ficheros PDF usadas

internamente; y la máquina virtual y bibliotecas de Sun Microsystems. Se

encuentra en fase plenamente funcional. Compiere está desarrollado bajo la

licencia pública Compiere (CPL), que permite el paso a privativo de dicho

software transcurridos dos años desde su fecha de lanzamiento. Es una

solución 100% Java sobre base de datos Oracle, con servidor de aplicaciones

JBoss.

· GNUe. Es un conjunto de aplicaciones al estilo de FacturaLux, también con

licencia GPL, que intentan suplir las necesidades de un ERP. Por estructura y

diseño puede ser considerada un ERP al uso, ya que persigue la integración,

modularidad y adaptabilidad. Cada proyecto se desarrolla completamente por

separado y se enlaza posteriormente al resto, manteniendo una estructura

común central.

· Openbravo es un ERP desarrollado como software libre y basado

íntegramente en web. Está basado en una versión antigua de Compiere con

quien no mantiene compatibilidad actualmente. Dispone de soporte para

bases de datos PostgreSQL y Oracle. Se encuentra disponible en español y

actualmente se preparan localizaciones en varios otros idiomas. No dispone

de clientes de utilización que no sean a través de navegador web.

· OpenERP. Es un ERP, basado íntegramente en la licencia pública GPL y

libremente descargable. Aunque desarrollado inicialmente en Bélgica, existe

traducción al español. OpenERP está orientado al uso en las PYME, aunque

dispone de módulos como gestión de proyectos o estadísticas, más habituales

de empresas de mayor tamaño. OpenERP se encuentra en estado funcional

sobre Linux y Windows, con más de 350 módulos en desarrollo. OpenERP

internamente usa un modelo de flujos de trabajo (workflow), con arquitectura

en tres capas. Está desarrollado en Python, PyGTK y sobre PostgreSQL, y

también tiene clientes en librería qt y un frontend web basado en TurboGears.

352

GestiCAM es una versión localizada en español de este ERP, promocionada

bajo Molinux, una distribución regional de Linux española .

· openXpertya es un ERP de código abierto en español, bajo el patrocinio del

Principado de Asturias y por tanto, especialmente adaptado para la legislación

y el mercado español e hispanoamericano. Incluye solución de CRM y

comercio electrónico a tres niveles (B2B, B2C, EDI) así como de todos los

módulos necesarios para su consideración como un ERP, incluyendo gestión

de proyectos, gestión de campañas, marketing, puntos de venta remotos y

descentralizados, utilización por todos los niveles de una franquicia, etc.

openXpertya se encuentra en fase plenamente funcional. Todo el código de

openXpertya está desarrollado en J2EE por lo que es multiplataforma

(independiente del sistema operativo a nivel de servidor y de cliente) y está

desarrollado en tres capas. La capa de la base de datos es independiente

desde la versión 2.0, anteriormente estaba limitada a trabajar sobre Oracle.

Todo el código de openXpertya es libremente descargable y está basado en la

licencia propia LPO, traducción legal de la CDDL (original de SUN) al español,

y con posibilidades de re licenciamiento bajo virtualmente cualquier otra

licencia de software libre y expresamente bajo LGPL.

· Xendra es un ERP de código abierto, licenciado bajo GPL y adaptado a la

legislación y el mercado peruanos. Ofrece funcionalidades de planificación de

recursos empresariales (ERP), administración de la relación con los clientes

(CRM) y administración de la cadena de suministro (SCM). Basado

originalmente en Adempiere, pero enfocándose a JBoss como servidor de

aplicaciones y PostgreSQL como base de datos. Tiene soporte comunitario y

comercial.

353

ANEXO E

LA VIRTUALIZACIÓN PASO POR PASO – RECOMENDACIONES DE

HEWLETT PACKARD

354

ANEXO E LA VIRTUALIZACIÓN PASO POR PASO – RECOMENDACIONES DE HEWLETT PACKARD

Fuente: Soluciones de virtualización con servidores HP ProLiant

http://www.asac.as/web/upload/ponencias/HP-Blade_Virtualizaci%C3%B3n.pdf

A continuación se presentan las recomendaciones de HP para la virtualización de

servidores seguida en el presente proyecto. Cabe indicar que se han adoptado las

recomendaciones aplicables al proyecto, es decir considerando la implementación del

servidor virtualizado en un ambiente donde no se cuenta previamente con solución de

TI.

Fase I Estudio Fase II Instalación y

migración Fase III Operaciones

ü Identificar candidatos

para la virtualización.

ü Recopilar los datos de

rendimiento del entorno

actual.

ü Determinar la plataforma

hardware apropiada:

Tipo de servidor

Almacenamiento

Redes.

ü Determinar las

aplicaciones que son

susceptibles de funcionar

en una máquina virtual.

ü Preparar sus racks

(servidores, redes,

almacenamiento).

ü Instalar el sistema

operativo y/o la

tecnología de

virtualización sobre cada

servidor físico.

ü Instalar las nuevas

aplicaciones en las

máquinas virtuales.

ü Reutilizar o reciclar los

sistemas retirados.

ü Utilizar una herramienta

que pueda monitorizar

ambas máquinas, físicas

y virtuales.

ü Implementar una solución

que controle las posibles

vulnerabilidades y

gestione

automáticamente las

tareas críticas de

seguridad.

ü Auditar la satisfacción del

usuario final y los efectos

del cambio a través de

una herramienta de

gestión del nivel de

servicio.

Tabla 8.3 Fases de la implementación de la solución de Servidor Virtualizado. Fuente: http://www.asac.as/web/upload/ponencias/HP-Blade_Virtualizaci%C3%B3n.pdf

355

Para identificar a los equipos que son buenos candidatos para la virtualización se

tienen las siguientes recomendaciones proporcionadas por Microsoft y el libro

Professional Xen® Virtualization:

IDENTIFICACIÓN DE LOS CANDIDATOS PARA VIRTUALIZACIÓN RECOMENDACIONES MICROSOFT Y XEN

Fuente: Professional Xen® Virtualization: Overview of Virtualization Pág.: 24

Wiley Publishing, Inc.

Copyright © 2008 by Wiley Publishing, Inc., Indianapolis, Indiana

Conversión de máquinas físicas a máquinas virtuales en VMM.

http://technet.microsoft.com/es-es/library/cc764232.aspx

El informe Candidatos para virtualización sirve para identificar servidores poco

usados y mostrar valores medios para un conjunto de contadores de rendimiento

solicitados habitualmente para CPU, memoria y uso del disco, configuraciones de

hardware, como la velocidad del procesador, el número de procesadores y la

memoria RAM total.

Establecimiento de prioridades en los candidatos para virtualización:

§ Equipos poco usados no fundamentales para la empresa. Los servidores web

son buenos candidatos.

§ Equipos con hardware obsoleto o incompatible que es necesario sustituir.

§ Equipos poco usados que hospedan aplicaciones internas no críticas.

§ Equipos de mayor uso que hospedan aplicaciones internas no críticas.

§ El resto de equipos de poco uso.

El objetivo de los esfuerzos de la virtualización es la consolidación de múltiples

servidores físicos en una plataforma de hardware específico.

356

Para abordar la cuestión de por dónde empezar por identificar específicas

máquinas físicas a virtualizar, un mejor punto de partida es considerar el software de

que necesita de apoyo. La identificación de hardware antiguo, periféricos

sistemas de almacenamiento, y así sucesivamente es un segundo paso excelente en

el proceso de planificación, proporcionando un excelente mecanismo de control de

los equipos físicos cuyo software va a pasar a las máquinas virtuales.

Sin embargo, generalmente es más eficaz comenzar el proceso de planificación de la

virtualización mediante la identificación del software que se necesita y sus requisitos,

incluyendo los requisitos de hardware, sistema operativo, etc.

La siguiente lista muestra la información que se sugiere recoger para cada una de las

aplicaciones que se está pensando en mudarse a una máquina virtual.

§ La aplicación y la versión - el nombre y número de versión específica de la

aplicación. Cada versión de una aplicación puede tener específicos requisitos

del sistema operativo, el uso de hardware específico, y así sucesivamente.

§ Sistema operativo y la versión actual - El sistema operativo bajo el cual la

aplicación está actualmente en ejecución.

§ Los parches del sistema operativo o Service Pack - Cualquier parches

específicos que se han aplicado al sistema operativo.

§ Otros sistemas operativos compatibles - Otros sistemas operativos y la versión

asociada de versión en que la aplicación se supone que se ejecutan.

§ Privilegios necesarios y / o usuarios – Todos los privilegios necesarios para la

instalación y ejecución, incluyendo cualquier usuario específico y / o grupo

para que el software pueda ejecutarse.

§ Hardware asociado y controladores - El hardware que está especialmente

asociado con la versión de la aplicación, como una tarjeta de vídeo en

concreto, la tarjeta de sonido, tarjeta de interfaz de red, o dispositivo de

almacenamiento. Si esto requiere controladores de hardware especiales del

357

fabricante de hardware. También se debe tener en cuenta

los requisitos de la resolución de vídeo.

§ Resolución de vídeo actual - La resolución de vídeo en el que la aplicación se

está ejecutando actualmente.

§ Requisitos de memoria - Todos los requisitos de memoria específicos que se

asocian con la aplicación. Esto debería incluir límites a la cantidad máxima de

información que el servidor o aplicación puede utilizar.

§ Cantidad de memoria en el sistema host actual - La cantidad de memoria que

está disponible en el sistema para que la aplicación se esté ejecutando

actualmente. Se puede utilizar esta información para dimensionar la memoria

de la máquina virtual si la aplicación no tiene cantidad de memoria explícita

§ Rendimiento de la aplicación actual - La percepción de los usuarios de lo bien

que la aplicación se ejecuta. Aunque es una medición empírica, se puede

utilizar esta información para ayudar a evaluar los requisitos de memoria y el

procesador de cualquier máquina virtual a la que se considerará trasladar la

aplicación.

§ Licenciamiento - Si la aplicación requiere una licencia y, de ser así, el tipo de

licencia: por - copia, flotante, Locked (bloqueado a un sistema específico

basado en un identificador de red IP, o dirección MAC), y así sucesivamente.

§ Licencias de virtualización - Si la aplicación se puede utilizar en una máquina

virtual ya que puede ser el caso que la licencia de software prohíbe el uso de

la aplicación o el sistema operativo que se requiere en una máquina virtual.

Esto debería también incluir información sobre si el uso de la aplicación en

una máquina virtual requiere los cambios de licencias, la adquisición de

licencias adicionales, y así sucesivamente.

358

ANEXO F

CONFIGURACIÓN TWO WAY ROUTED DEL PROTOTIPO

359

ANEXO F

CONFIGURACIÓN TWO WAY ROUTED DEL PROTOTIPO

De los tipos de configuración el tipo Two Way Routed Network se ve a continuación:

Figura 8.2 Two Way Routed Network aplicado al diseño.

La configuración general realizada es la siguiente:

En primer lugar se da la configuración de xend-config.sxp; el presente script debe

incluir las siguientes líneas que llaman a los scripts de network-route.

360

Archivo: /etc/xen/xend-config.sxp

La función de estos scripts es la siguiente:

Con el script network-route se activa IP forwarding en el Dom0:

# echo 1 > /proc/sys/net/ipv4/ip_forward

Luego configura el domain0 para manejar (proxy) ARP requests desde los guest

domainU:

# echo 1 > /proc/sys/net/ipv4/conf/eth0/proxy_arp

Luego de levantar las interfaces de los DomU se corre el script vif-route; éste copia la

IP de la tarjeta de red del sistema (Gateway de los servidores virtuales) a la interface

vifDomID y la levanta.

Finalmente añade una ruta estática para los domainU ’ s desde vifDomID.

Luego se configuran las interfaces virtuales de cada VM en el archivo de

configuración correspondiente. Así por ejemplo:

Archivo de configuración del servidor http: /etc/xen/auto/vhttpsrvr.cfg

(network-script network-route)

# (network-script network-nat)

#(network-script network-bridge)

(vif-script vif-route)

#(vif-script vif-nat)

#(vif-script vif-bridge)

vif = [ 'ip=10.0.0.1' ]

Espacio de Código 8.1 Cuadro de código para configuración prototipo virtualizado de PyMEs del tipo Two Way Routed.

361

Luego procedemos a la configuración de las interfaces de red de las VM´s.

Archivo de vhttpsrvr: /etc/sysconfig/network-scripts/ifcfg-ethx

Se procede a configurar el dom0 para Forwarding

Luego creamos la VM (desde Dom0):

Finalmente en Dom0 se deberán configurar las reglas de firewall. A continuación se

presenta un extracto:

auto eth0

iface eth0 inet static

address 10.0.0.1

gateway 10.0.0.254

netmask 255.255.255.0

xm create /etc/xen/vhttpsrvr.cfg

echo 1 > /proc/sys/net/ipv4/conf/all/proxy_arp

iptables -t nat -A POSTROUTING -s 10.0.0.0 -j MASQUERADE

Espacio de Código 8.2 Configuración de interfaz de red virtual de una VM para un esquema routed.

Espacio de Código 8.3 Configuración del Dom0 para forwarding y enmascaramiento de las VM

Espacio de Código 8.4 Creación de una VM.

362

[root@mainserver network-scripts]# route Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 10.0.0.1 * 255.255.255.255 UH 0 0 0 vif1.0 192.168.0.0 * 255.255.255.0 U 0 0 0 eth0 default 192.168.0.1 0.0.0.0 UG 0 0 0 eth0 ···························································································· ····························· [root@mainserver network-scripts]# iptables -L Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy ACCEPT) target prot opt source destination ACCEPT 0 -- 10.0.0.1 anywhere PHYSDEV match --physdev-in vif1.0 ACCEPT udp -- anywhere anywhere PHYSDEV match --physdev-in vif1.0 udp spt:bootpc dpt:bootps Chain OUTPUT (policy ACCEPT) target prot opt source destination ··························································································································· [root@mainserver network-scripts]# iptables -t nat -L Chain PREROUTING (policy ACCEPT) target prot opt source destination Chain POSTROUTING (policy ACCEPT) target prot opt source destination MASQUERADE 0 -- 10.0.0.0 anywhere Chain OUTPUT (policy ACCEPT) target prot opt source destination

363

ANEXO G

INSTALACIÓN DE MAILSCANNER Y CLAMAV

364

ANEXO G

INSTALACIÓN DE MAILSCANNER Y CLAMAV

Fuente: “Instalación de MailScanner y Clamav” Ing. Pablo Pérez – Puntonet S.A.

1.- Instalacion Antivirus ClamAV

groupadd clamav

useradd -g clamav -s /bin/false -c "Clam AntiVirus" clamav

tar -xvzf clamavxx.xx

cd clamavxxx

./configure --sysconfdir=/etc

make

su -c 'make install'

2.- Instalacion de MailScanner

tar -xvzf MailScanner.xxx

cd MailScanner-4.32.5-1

./install.sh

Cerciorarse que la línea dentro de /etc/MAilScanner/MailScanner.conf se encuentre

así:

Virus Scanners = clamav

Sign Clean Messages = yes

Language = es (español) en(ingles)

freshclam (Ver si esta actualizado el antivirus)

service sendmail stop

chkconfig sendmail off

chkconfig --level 2345 MailScanner on

service MailScanner start

3. Instalar Módulo MAilScanner

Full path to MailScanner program = /usr/lib/MailScanner/

Full path and filename of MailScanner config file = /etc/MailScanner/MailScanner.conf

Full path to the MailScanner bin directory = /usr/sbin

Full path and filename for the MailScanner pid file = /var/run/MailScanner.pid

365

The following change should be made:

"Command to start MailScanner" add "/etc/rc.d/init.d/MailScanner start" (without the

quotes) instead of just run server.

"Command to stop MailScanner" add "/etc/rc.d/init.d/MailScanner stop" (without the

quotes).

4. En webmin/servers/mailscanner

Option Report and responses

Se elimina la publicidad de los que tengan la fila es la ultima (MailScanner thanks

transtec Computers for their support)

En la línea: Inline HTML Signature hay que quitar las dos ultimas líneas

En la línea: Inline Text Signature hay que quitar la ultima línea

5. Cambio en Mail Scanner

Crear una cuenta de correo llamada spam

a) Dentro de What to do with spam

Spam Actions forward spam@dominio

High Scoring Spam Actions forward spam@dominio

b) Spam detection and spam lists (DNS blocklists)

Spam List (al final de la línea poner spamcop.net)

Spam Lists To Reach High Score (3.5)

Spam List Timeout (10)

Max Spam List Timeouts (7)

c) SpamAssassin

Use SpamAssassin (yes)

Max SpamAssassin Size (30000)

Required SpamAssassin Score (5.5)

High SpamAssassin Score (10)

Problemas con el Zlib Fedora core 2

./configure --sysconfdir=/etc --disable-zlib-vcheck

wget http://belnet.dl.sourceforge.net/sourceforge/clamav/clamav-0.83.tar.gz

366

ANEXO H

INSTALACIÓN Y CONFIGURACIÓN DE

SQUIRRELMAIL

367

ANEXO H

INSTALACIÓN Y CONFIGURACIÓN DE SQUIRRELMAIL

Como se mencionó brevemente en el capítulo 4, Squirrelmail es una aplicación

escrita en PHP4 que, mediante el uso de Web Browsers, permite la visualización,

envío, recepción, eliminación, y demás opciones referentes a Correo Electrónico; de

esta manera permitirá a los usuarios de las PyMES revisar su correo electrónico sin

necesidad de software como Microsoft® Outlook, Outlook Express®, Thunderbird,

etc. sino con un navegador web.

A continuación se presentan los procedimientos para la instalación del software en

mención.

Instalación del software requerido.

Se instala mediante la herramienta yum los componentes squirrelmail y el servidor

web Apache (httpd).

yum -y install squirrelmail httpd

Configuración de SquirrelMail.

Para la configuración se debe ejecutar el script conf.pl localizado en:

/usr/share/squirrelmail/config/.

Se muestra una interfaz de texto para configuración:

SquirrelMail Configuration : Read: config.php (1.4.3) --------------------------------------------------------- Main Menu -- 1. Organization Preferences 2. Server Settings 3. Folder Defaults 4. General Options 5. Themes 6. Address Books (LDAP) 7. Message of the Day (MOTD) 8. Plugins 9. Database

368

D. Set pre-defined settings for specific IMAP servers C. Turn color on S Save data Q Quit Command >>

Se procede a modificar las preferencias de la organización como se muestra a

continuación:

SquirrelMail Configuration : Read: config.php (1.4.3) --------------------------------------------------------- Organization Preferences 1. Organization Name : VirtualServer 2. Organization Logo : /home/user1/images/vserver_logo.png 3. Org. Logo Width/Height : (308/111) 4. Organization Title : Bienvenido al Webmail de VirtualServer. 5. Signout Page : 6. Default Language : es_ES 7. Top Frame : _top 8. Provider link : http://www.vserver.ec/ 9. Provider name : vserver.ec R Return to Main Menu C. Turn color on S Save data Q Quit Command >>

En las opciones de servidores se define el dominio vserver.ec. Si el servidor de

correo va a coexistir en el mismo sistema con el servidor HTTP (httpd instalado en

mailgateway y mailempresarial), no hace falta modificar más en esta sección o a su

vez puede ser configurado especificando otro servidor SMTP e IMAP localizados en

mailgateway.vserver.ec y como servidor httpd www.vserver.ec.

SquirrelMail Configuration : Read: config.php (1.4.3) --------------------------------------------------------- Server Settings General ------- 1. Domain : mailgateway.vserver.ec 2. Invert Time : false 3. Sendmail or SMTP : Sendmail A. Update IMAP Settings : localhost:143 (uw) B. Change Sendmail Config : /usr/sbin/sendmail R Return to Main Menu C. Turn color on S Save data

369

Q Quit Command >>

En las opciones de las carpetas se puede personalizar los nombres de Trash, Sent y

Drafts de acuerdo a las preferencias que se seleccionen.

SquirrelMail Configuration : Read: config.php (1.4.3) --------------------------------------------------------- Folder Defaults 1. Default Folder Prefix : mail/ 2. Show Folder Prefix Option : true 3. Trash Folder : Papelera 4. Sent Folder : Enviados 5. Drafts Folder : Borradores 6. By default, move to trash : true 7. By default, move to sent : true 8. By default, save as draft : true 9. List Special Folders First : true 10. Show Special Folders Color : true 11. Auto Expunge : true 12. Default Sub. of INBOX : true 13. Show 'Contain Sub.' Option : false 14. Default Unseen Notify : 2 15. Default Unseen Type : 1 16. Auto Create Special Folders : true 17. Folder Delete Bypasses Trash : false 18. Enable /NoSelect folder fix : false R Return to Main Menu C. Turn color on S Save data Q Quit Command >>

Finalmente se debe editar el fichero /etc/dovecot.conf y asegurarse que el servicio

imap se encuentre habilitado:

protocols = imap pop3

370

ANEXO I

SERVIDORES ADICIONALES

TELEFONÍA IP – MENSAJERÍA INSTANTÁNEA

371

ANEXO I SERVIDORES ADICIONALES

TELEFONÍA IP – MENSAJERÍA INSTANTÁNEA

Actualmente existen soluciones gratuitas que hacen uso de Internet tal como Skype

para permitir brindar soluciones de Voz sobre IP y mensajería, sin embargo siempre

será mejor la configuración personalizada de acuerdo a la organización de su propia

telefonía IP interna y que podrá ser utilizada entre sus sucursales. Estos servidores

pueden ser incluidos o no dentro del Centro de Datos para PyMES dependiendo de si

sus recursos económicos les permitirán la adquisición de teléfonos IP. Es por este

motivo que se presenta la configuración de estos servidores de manera separada de

los servidores vistos anteriormente.

Software

Alternativas de software

Se presenta como alternativa principal de software de telefonía IP a ASTERISK, el

cual es una implementación de código abierto para central telefónica (PBX, Private

Branch eXchange o Private Business eXchange). Cuenta con un doble

licenciamiento, GNU/GPL y licencia propietaria. Esta última es con el objeto de poder

incluir soporte para el protocolo G.729, el cual está sujeto a las limitaciones de una

patente, aunque el codificador correspondiente funciona indistintamente con una u

otra versión.

Asterisk está diseñado para servir como PBX. Como cualquier PBX, se puede

conectar un número determinado de teléfonos para hacer llamadas entre sí, e incluso

conectar a un proveedor de VoIP o bien a una PSTN.

La versión libre de Asterisk incluye todas las funcionalidades de las más costosas

alternativas de código cerrado, como son correo de voz, llamada en conferencia,

372

respuesta interactiva de voz (a través de menús del teléfono) y distribución

automática de llamadas.121

Instalación

Instalación Máquina Virtual

Por las características de la solución de Telefonía IP a implementarse, para el

presente servidor se utilizará una distribución de CentOS 5.4 con 512 MB en RAM y

10 GB de disco duro en base a las recomendaciones del fabricante de la plataforma

de telefonía.

Instalación Servicio

La instalación del servicio de telefonía se lo realiza de la siguiente manera:

El código fuente de Asterisk está disponible en www.asterisk.org en su versión más

reciente. Se instalará la versión 1.4.

wget http://downloads.digium.com/pub/asterisk/asterisk-14-current.tar.gz

Para ello se realizan los siguientes pasos:

Se descomprime el paquete en el directorio /usr/src

tar xvfz asterisk-1.4-current.tar.gz

se ingresa al directorio antes mencionado y se ejecuta

make clean

./configure

Esto limpia la carpeta seleccionada de instalaciones anteriores y verifica la existencia

de todos los paquetes requeridos para la correcta instalación.

A continuación se compila el código fuente de Asterisk:

make 121 Fuente: http://www.alcancelibre.org/staticpages/index.php/como-ekiga-asterisk

373

Y se instala

make install

Se crean los scritps de inicio y se activa Asterisk

make config

chkconfig asterisk on.

Finalmente se inicia Asterisk.

Service asterisk start

Los paquetes instalados son: asterisk-1.4.1, asterisk-addons-1.4.0, asterisk-sounds-

es, gsm-1.0.12 , libidn-0.6.9, libpri-1.4.0, spandsp-0.0.3-7_pre28 , speex-1.2 y

zaptel-1.4.0.

Configuración

Archivo de configuración

Los principales archivos de configuración de Asterisk con sip.conf y extensions.conf

localizados en /etc/asterisk.

A continuación se muestra la configuración de los mencionados archivos:

Fichero /etc/asterisk/sip.conf.

El siguiente código corresponde a la configuración de tres cuentas SIP (101

GERENCIA, 102 CONTABILIDAD y 103 VENTAS) como templates para la

configuración más detallada de acuerdo a los requerimientos específicos de cada

PyME. El contenido se agrega, o bien modifica opciones, al fichero

/etc/asterisk/sip.conf.

;Configuración de sip.conf

[general]

context=default

srvlookup=yes

374

videosupport=yes ; Asterisk puede también gestionar las conferencias

de vídeo

disallow=all ; Desactivar todos los codificadores

allow=alaw ; Permitir codificadores en orden de preferencia

allow=ilbc

allow=gsm

allow=h261

;Se define español como idioma para los mensajes.

language=es

; Realizar registro en vserver.ec con un usuario y clave de acceso

válidos y

; encaminar las llamadas hacia la extensión 101

register => usuario:clave-de-acceso@telip.vserver.ec/101

; Hacer acceder a Asterisk hacia una cuenta en telip.vserver.ec para

permitir

; realizar llamadas

[telip]

type=friend

username=usuario

secret=clave-de-acceso

host=ekiga.net

canreinvite=no

qualify=300

; Si se utiliza asterisk 1.4.x:

insecure=port,invite

; Si se utiliza asterisk 1.2.x:

; insecure=very

; Extensión 101 Ejemplo de Gerencia

[101]

type=friend

secret=secreto1

qualify=yes ; El par correspondiente está no más allá de 2000 mS.

375

nat=no ; No hay NAT.

host=dynamic ; Dispositivo se registrará con servidor.

canreinvite=no ; Asterisk tratará de redireccionar de forma

predeterminada.

context=home ; Contexto predefinido (ver → extensions.conf)

;port=5061 ; Descomentar si Ekiga o Linphone y Asterisk están en el

mismo sistema.

; Extensión 102 Ejemplo de Contabilidad

[102]

type=friend

secret=secreto2

qualify=yes

nat=no

host=dynamic

canreinvite=no

context=home

;port=5061

; Extensión 103 Ejemplo de ventas

[103]

type=friend

secret=secreto3

qualify=yes

nat=no

host=dynamic

canreinvite=no

context=home

;port=5061

Fichero /etc/asterisk/extensions.conf.

El siguiente ejemplo corresponde a la configuración de tres extensiones (101, 102 y

103). El contenido se agrega al fichero /etc/asterisk/extensions.conf.

376

[home]

; Extensión 101

exten => 101,1,Dial(SIP/101,60)

; Extensión 102

exten => 102,1,Dial(SIP/102,60)

; Extensión 103

exten => 103,1,Dial(SIP/103,60)

; Prueba de Eco

exten => 600,1,Answer()

exten => 600,2,Playback(demo-echotest)

exten => 600,3,Echo()

exten => 600,4,Playback(demo-echodone)

exten => 600,5,Hangup()

Al terminar, solo bastará reiniciar el servicio asterisk para que surtan efecto los

cambios.

service asterisk restart

PRUEBAS

Para las pruebas se usaran en lugar de Teléfonos IP, Softphones como EKIGA que

viene instalado por defecto en cualquier distribución de CentOS en sus versiones 5.

Configuración de cliente Ekiga.

Ekiga, además de ajustar los niveles de audio del sistema para permitir el

funcionamiento del micrófono (captura), requiere y desactivar cualquier método de

NAT que esté especificado (por lo general, STUN).

377

Al terminar y aplicar los cambios, se debe acceder al menú de la aplicación Editar →

Cuentas y añadir una nueva cuenta tipo SIP, especificando un nombre para identificar

la cuenta, la IP del servidor Asterisk, el usuario a utilizar y la correspondiente clave de

acceso.

Al terminar, solo se necesitará hacer clic en la casilla para activar la cuenta y

registrarse en el servidor.

378

Para si uno marca 600, deberá contestar el servidor Asterisk con un mensaje de

prueba de eco. Si se conectan los clientes al servidor Asterisk, podrán comunicarse

entre si marcando solo el número de extensión, o bien como sip:extension@servidor.

Ejemplo: sip:103@192.168.10.1.

Para enviar y recibir mensajes de texto basta con señalar la pestaña de chat que

Ekiga trae y usa la misma plataforma ya configurada.

379

ANEXO J

COSTOS DE LA IMPLEMENTACIÓN

380

ANEXO J COSTOS DE LA IMPLEMENTACIÓN

A continuación se presentan los detalles correspondientes a los costos de Hardware

de la implementación realizada con diferentes proformas obtenidas.

381

382

A continuación se presentan los detalles de los componentes presentados en las

proformas anteriores:

383

Otros proveedores:

384

385

ANEXO K

CÓDIGO DE IMPLEMENTACIÓN DE LOS SERVICIOS

386

ANEXO K

CÓDIGO DE IMPLEMENTACIÓN DE LOS SERVICIOS

El código referente a las diversas implementaciones realizadas, puede encontrarse

en el CD anexado al presente proyecto.

387

REFERENCIAS

9. REFERENCIAS BIBLIOGRÁFICAS

388

· LIBROS

1. VON HAGEN, William. Types of Virtual Machines Supported by Xen. Professional

Xen® Virtualization. 1ra. Edición. Estados Unidos de América : Wiley Publishing, Inc.,

2008, pág. 36.

2. WILLIAMS, David y GARCÍA, David. Types of Virtualization. Virtualization with

Xen™: Including XenEnterprise™, XenServer™, and XenExpress™. 1ra Edición.

Estados Unidos de América : Syngress Publishing Inc., 2007, pág. 26.

3. TULLOCH, Mitch y Micosoft Corporation®. Understanding Microsoft Virtualization

Solution. Estados Unidos de América : MS Press., 2009, págs. 29, 30.

4. BARRERA, Marco y CAPEIPI, Cámara de la Pequeña Industria de Pichincha.

“Situación y Desempeño de las PYMES de Ecuador en el Mercado Internacional”.

s.l. : CAPEIPI, 2002.

5. CARRIÓN, Gordón Hugo Ing., LÓPEZ, Guerrero Hernando ECON., Santa Fe

Associates International, © Corporación de Promoción Económica CONQuito. LAS

TECNOLOGÍAS DE LA INFORMACIÓN Y LAS COMUNICACIONES. Quito : ©

Corporación de Promoción Económica CONQuito, 2007.

6. VILLARROEL, Christian y CAPEIPI. INFOPYME. Quito : Cámara de la Pequeña

Industria de Pichincha, 2008.

7. GALÁN, Luis. Internet en las PYMES. s.l. : Anetcom, 2005.

8. NORRIS Mark, PRETTY Steve. Designing the Total Area Network: Intranets,

VPN’S and Enterprise Networks Explained. Chicheste : John Wiley & Sons Ltd., 2000.

0-471-85195-7.

9. ARREGOCES Mauricio, PORTOLANI Maurizio. Data Center Fundamentals. s.l. :

Cisco Press, 2004. ISBN-10: 1-58705-023-4.

10. Virtualización en el Centro de Datos. Novell, Inc. Estados Unidos y otros países. :

Novell, Inc., 2007.

11. CHÁVEZ, Dennys y MENA, Christiam. Reingeniería De La Infraestructura De Red

Del Data Center De La Empresa Conectividad Global Cía. Ltda. Que Provee Servicios

De Intranet A Las Instituciones Del Proyecto Quitoeduca.Net. Quito : s.n., 2009.

12. WILLIAMS, David y GARCÍA, Juan. Virtualization with XEN™. Estados Unidos de

América : Syngress Publishing, Inc., 2007.

389

· PÁGINAS WEB 1. ©, Microsoft Corporation. microsoft.com. [En línea] 2009. [Citado el: 9 de

septiembre de 2009.]

http://www.microsoft.com/spain/windowsserver2008/virtualization/hyperv_caract.mspx

2. Citrix Systems Inc. Xen.org. [En línea] 2009. [Citado el: 9 de Septiembre de 2009.]

http://bits.xensource.com/Xen/docs/user.pdf.

3. Un-trade-environment. un-trade-environment.org. [En línea] http://www.un-trade-

environment.org/meetings/Latin/2007-03-26/documents/equipo_ecuador.pdf.

4. © 2006. Ministerio de Comercio, Industria y Turismo - Dirección Mipyme. Mipymes,

Portal empresarial Colombiano. [En línea] 2006. [Citado el: 14 de Septiembre de

2009.] http://www.mipymes.gov.co/pyme/newsdetail.asp?id=225&idcompany=43.

5. LinuxCentro.net. [En línea] 2007.

http://www.linuxcentro.net/linux/staticpages/index.php?page=ServidoresLINUX.

6. Linux Para Todos. [En línea] 2008.

http://www.linuxparatodos.net/portal/index.php?topic=empresarial#.