Documentación Kit de Servicios
¿Qué es el Kit de Servicios?
El kit de Servicios es una plataforma integrada de aplicaciones y servicios de infraestructura basada enteramente en software libre con la finalidad de proporcionar a cualquier entorno informático (administración pública nacional, entes descentralizados del estado, empresas públicas y privadas) de un grupo de soluciones a necesidades de infraestructura, sostenibles, confiables y totalmente probadas, siguiendo todas las normas y certificaciones del estado venezolano.
Finalidad del Kit de Servicios
- Proporcionar un entorno completamente integrado de gestión de usuarios, equipos, sistemas y plataforma tecnológica
- 100% compatible con estándares abiertos y tecnologías libres
- Compatible con soluciones existentes
- Un sistema centralizado de almacenamiento y gestión de la información
- Proporciona toda la plataforma tecnológica básica para una institución o empresa
- Fácilmente adaptable a soluciones apilables (appliances)
- Basado mayoritariamente sobre maquinas virtuales que le permiten adaptarse a cualquier entorno.
- Prestar una eficiente transferencia tecnológica simplificando los procesos de gestión del conocimiento.
El Kit de Servicios Consta de:
- Xen: Plataforma de Virtualización.
- OpenLDAP: Esquema de un árbol LDAP, organización basada en servicios, schemas LDAP personalizados.
- Todos los servidores de la plataforma integrada poseen:
- sudo conectado a LDAP
- PAM Conectado a LDAP
- Con esto, todos los servicios que usan PAM, están indirectamente usando los usuarios que están en LDAP.
- Información de red (NIS/NSS) conectada a LDAP
- Las conexiones a LDAP, estan usando SASL, para cifrar los datos.
- Entidad Certificadora base:
- TinyCA, EasyRSA
- Servicio de correo electrónico:
- Postfix (bdb y LDAP para lookup tables)
- Dovecot (Servidor IMAP con clientes virtuales basados en LDAP)
- Thunderbird como cliente IMAP
- Webmail: RoundCube
- Spamassassin y dspam
- ClamAV
- Amavis-new
- Time Server (NTP) para sincronizar la hora de los servidores
- Firewall integrado y protección (hardening) de servidores y servicios
- Creación de VPN's con OpenVPN
- DNS autoritativo conectado a LDAP
- DHCP autoritativo conectado a LDAP:
- dhcp groups
- subnets
- shared networks
- reservas IP
- Freeradius y Autenticación 802.1x
- Apache 2
- Gestión de vhosts vía LDAP
- Autenticación via LDAP
- Balanceo y Alta disponibilidad basada en DNS y Directores de carga (load Balancers)
- Samba
- Primary Domain Controller
- Servidor de archivos
- Servidor de impresión
- Servicios de Configuración e Instalación Desasistida:
- FAI
- Puppet
- SystemImager
La Idea del Kit de Servicios
- El kit de servicios es una parte integral del trabajo del CNTI de la mano con la Cooperativa Venezolana de Tecnologías Libres, hacia su expansión y en su apoyo a los organismos del estado.
- Se requiere que la plataforma sea coherente; pero a su vez, estable y fácil de administrar.
- Disponer de una cantidad consistente de servicios que puedan apoyarse unos a otros.
Que sean de:
- Rápida implantación
- Fácil administración
- Integración real de los servicios
Selección de Software
La selección de las herramientas adecuadas es parte fundamental del kit de servicios; entre ellas permite realizar pruebas de integración, compatibilidad, mantenimiento, facilidad de configuración, seguimiento y/o cumplimiento de estándares y otra serie de medidas que conllevaron a la selección del software utilizado.
- Sistema de Virtualización (Xen): La plataforma de virtualización más utilizada; permite implementar de manera expedita una multiplicidad de servicios aprovechando las características del hardware existente; de todas las tecnologías de virtualización existentes para software libre se utilizó Xen (cytrix Xen) por su compatibilidad y larga implementación en GNU/Linux Debian y facilidad de implementar soluciones de manera rápida, segura y compatible.
- Protocolo LDAP v3 (OpenLDAP):
En el área de Software Libre existen múltiples implementaciones de bases de datos sobre el protocolo X.500 LDAP; sin embargo, ninguna es tan óptima, rápida, eficiente y de amplia implementación como openLDAP.
OpenLDAP es un proyecto que se define por crear una implementación de LDAP que sea:
- Eminentemente rápida
- Segura
- Confiable y protegida de fallos
- Altamente escalable
- Servidor DNS (ISC Bind 9): La base principal del Kit de servicios es lograr la integración coherente de los servicios alrededor de sistemas de información; el servidor DNS desarrollado por la ISC (bind 9) posee la característica de ser una de las implementaciones de DNS más populares en todos los entornos Unix pero además, es fácilmente integrable a servidores LDAP.
- Servidor DHCP (ISC DHCP-server): El servidor DHCP de ISC es el servidor más popular y de mayor implementación hoy en día; al igual que el servidor DNS; el servidor DHCP de ISC cuenta con modificaciones que le permiten integrarse fácilmente a servidores LDAP.
- Servidor SMTP (Postfix): El kit de servicios no solo busca la integración coherente entre servicios; sino que además se busca un equilibrio entre facilidad de configuración y de implementación versus la potencia y escalabilidad del servicio; aun cuando existen servidores SMTP más potentes y escalables como Sendmail; la facilidad de configuración, de integración, de administración y de gestión con LDAP y otras herramientas del servidor SMTP Postfix lo hacen ser el servicio idóneo para estar dentro del kit de servicios.
- Servidor IMAP (Dovecot): La compatibilidad con estándares y normas internacionales (como la norma IMAP v.4 revisión 1 de la IETF) es parte primordial del Kit de Servicios y por ende, la selección del software pasa por una evaluación de su nivel de compatibilidad con estándares internacionales; IMAP Dovecot es el único servidor IMAP actualmente que además de ser seguro y fácil de configurar; es de los pocos que permite la implementación completa y sin modificaciones del estándar IMAP 4 Revisión 1; esto lo hace que pueda trabajar con casi cualquier cliente IMAP que haya sido desarrollado hasta el momento.
- Servidor Web (Apache Server): El Servidor para la web (protocolo HTTP) más popular actualmente no podía faltar como selección para la prestación de servicios web dentro del Kit de servicios; su fácil integración con otros servicios (como LDAP, etc) y contra la gran mayoría de los lenguajes modernos de desarrollo de aplicaciones web (PHP, Perl, Python, Ruby) lo hacen la selección necesaria dentro del Kit de Servicios.
Base Funcional del Kit de Servicios
- Plataforma Base: El kit de Servicios es en su mayor parte una plataforma basada en maquinas virtuales; requiere una base de hardware para ejecutar XEN y todas las máquinas virtuales que conforman el kit.
- VM (Virtual Machine): Cada servicio (o grupo de servicios) de aplicaciones se ejecutan en máquinas virtuales siendo ejecutadas sobre la máquina (plataforma) base de hardware; cada servicio (de ser posible) está optimizado para ser ejecutado sobre el hardware subyacente.
- Servicios: Las aplicaciones ejecutadas en cada máquina virtual están en su mayor parte optimizadas para la plataforma específica de hardware y optimizados además para aprovechar al máximo el rendimiento del equipo. En su mayor parte agregan segmentos de código (parches) para su mejor integración con el kit de servicios y con otras herramientas.
Requisitos de Plataforma Base del Kit de Servicios
- Requerimientos para las Máquinas Reales o Dom0:
- Debian Etch con soporte para Virtualización Xen: al menos 2 núcleos (o CPUs) para virtualizar, con un máximo de ocho (08) maquinas virtuales en un entorno de 32 bits (por eficiencia).
- Procesadores con arquitecturas AMD o Intel de 32 o 64 Bits.
- Cada núcleo debe oscilar desde al menos los 2 Ghz.
- Requerimientos para las Máquinas Virtuales o DomU:
- Debian GNU/Linux Etch al menos 1Gb MB de RAM asignada.
- Mínimo 1Gb de espacio en disco por imagen Xen
- Requerimientos ideales:
- Al menos un núcleo/CPU por maquina virtual.
- 1Gb de como mínimo de memoria RAM asignada.
- Un espacio adicional de al menos 2Gb para SWAP.
- Requerimientos Ideales por Tipo de Servicio:
- Servidor de autenticación / Árbol base LDAP:
- 2 nucleos/CPU asignados (promedio) (para soportar carga e indizado)
- 1Gb de espacio adicional asignado para SWAP
- Una interfaz en bridge con host 0 reservada para las conexiones al LDAP
- Un volúmen adicional (formateado en XFS) para la DB Berkeley DB del dominio
- 1Gb de RAM asignada
- Si varios servicios soportarán usar LDAP; distribuir las ramas entre distintos servidores LDAP esclavos
- Nota: Los servidores LDAP no deberán exceder las 50 mil conexiones (servidor único) totales por segundo.
- Servidor DNS / DHCP:
- 1 núcleo/CPU asignado
- 512 MB RAM
- 1 Gb de SWAP
- 1 volumen en RAM (/dev/shm) o ext3 en btree para el archivo dhcpd.leases
- 1 volumen adicional (XFS) para LDAP del DNS autoritativo
- 1 LDAP en modo de replica maestro-esclavo para zonas DNS y registros DHCP
- Servidor de autenticación Radius / Certification Authority:
- 2 núcleos/CPU asignados
- 1GB de RAM
- Una Entidad Certificadora que emita los certificados necesarios, en su defecto se presentan una serie de scripts que pueden generar certificados SSL para FreeRadius?.
- Servidor PDC/BDC – Samba – Servidor de archivos/Impresión:
- Dos (2) Maquinas Virtuales: En donde una es el servidor de archivos e impresión y otra cumple las funciones de Controlador Primario del Dominio o PDC.
- 2 núcleos/CPU asignados
- 1 GB de RAM
- 1 GB de SWAP
- 1 volumen adicional (XFS) de mínimo 1GB para LDAP autoritativo de usuarios
- 1 LDAP en modo de replica maestro-maestro para las ramas de unidades y usuarios
- Servidor de Correo Electrónico:
- 2 núcleo/CPU asignado
- 1 GB de RAM
- 2 GB de SWAP
- Un volumen lógico, ya sea via NFS o por medio de una SAN (Storage Area Network), para almacenar los buzones de los usuarios.
- Servidor Web:
- 1 ó 2 núcleos/CPU asignados
- 1Gb de RAM
- 1Gb de SWAP
- Acceso a un espacio común (NFS) para los sitios web de los dominios (opcional)
- Acceso a un espacio de usuario (NFS) para los buzones (webmail)
- Nota: Para activar el balanceo de carga con equilibrio y alta disponibilidad en los servidores web se requieren varios servidores web adicionales más un director de carga:
- Director de carga (load balancer):
- 1 GB de RAM
- Kernel 2.6 con posibilidades de LVPS
- Acceso a todos los servidores que representarán el balanceo de carga del servicio
- Servidor de instalación y copia desasistida (FAI/systemImager):
- 1GB de RAM
- 2Gb de SWAP
- Un Servidor bootp-pxe (network boot)
- Un servidor DHCP que soporte las extensiones PXE.
- Espacio suficiente para las imágenes de respaldo de los sistemas (systemImager)
- Acceso a una replica (mirror) de paquetes Debian (FAI)
- Servidor director de instalaciones y deploy automático (Puppet):
- 1Gb de RAM
- 2Gb de SWAP
- Servidor web (apache/mongrel) corriendo mod_ruby y ruby on rails
- Espacio suficiente para Version control (SVN,GIT)
- Inventario de Hardware / OCS Inventory:
- 1 GB de RAM
- Servidor web (apache)
- BDC Samba (para deploy automático usando netlogon)
- Servidor de autenticación / Árbol base LDAP:
Fases de Implementación del Kit de Servicios
El Kit de Servicios se encuentra divido en 3 Fases, las cuales se desarrollan ordenadamente:
- Fase I: Servicios Básicos.
- Fase II: Seguridad y Conexiones.
- Fase III: Servicios Orientados al Usuario y la Administración.
Servicios Adicionales
Telefonía IP
Herramientas
Entre las herramientas establecidas por el Kit de Servicios para administración de la plataforma LDAP se encuentran:
El Kit de Servicios es una plataforma altamente integrada; las entradas muchas veces son compartidas por distintos servicios, por lo que una herramienta de integración y administración (preferiblemente basada en web) es esencial.
Notas Adicionales
Son explicaciones acerca de ciertos procesos del kit de servicios, conceptos, glosario, que no entran en ninguna de las fases pero son necesarias para el entendimiento de los procesos realizados dentro del kit de servicios.
![(please configure the [header_logo] section in trac.ini)](/labCNTI/chrome/site/trac_cnti2.jpg)