Manual zentyal

249
ripZentyal 2.2 para Administradores de Redes Introducción a Zentyal Presentación Las pymes y las TICs Zentyal: servidor Linux para pymes Acerca de this course Instalación El instalador de Zentyal Configuración inicial Requisitos de hardware Primeros pasos con Zentyal La interfaz web de administración de Zentyal Emplazamiento en la red de Zentyal Configuración de red en Zentyal Ejemplos prácticos Actualización de software La actualización de software en Zentyal Gestión de componentes de Zentyal Actualizaciones del sistema Actualizaciones automáticas Cliente de Zentyal Cloud Acerca de Zentyal Cloud Suscribir un servidor Zentyal a Zentyal Cloud (Suscripción básica) Copia de seguridad de la configuración a Zentyal Cloud Otros servicios disponibles con la Suscripción Básica Zentyal Infrastructure Zentyal Infrastructure Servicio de resolución de nombres de dominio (DNS) Introducción a DNS Configuración de un servidor DNS caché con Zentyal Proxy DNS transparente Redirectores DNS Configuración de un servidor DNS autoritario con Zentyal Ejemplos Prácticos Servicio de sincronización de hora (NTP) Introducción a NTP Configuración del cliente NTP

Transcript of Manual zentyal

Page 1: Manual zentyal

ripZentyal 2.2 para Administradores de Redes

Introducción a Zentyal

Presentación Las pymes y las TICs Zentyal: servidor Linux para pymes Acerca de this course

Instalación El instalador de Zentyal Configuración inicial Requisitos de hardware

Primeros pasos con Zentyal La interfaz web de administración de Zentyal Emplazamiento en la red de Zentyal Configuración de red en Zentyal Ejemplos prácticos

Actualización de software La actualización de software en Zentyal Gestión de componentes de Zentyal Actualizaciones del sistema Actualizaciones automáticas

Cliente de Zentyal Cloud Acerca de Zentyal Cloud Suscribir un servidor Zentyal a Zentyal Cloud (Suscripción básica) Copia de seguridad de la configuración a Zentyal Cloud Otros servicios disponibles con la Suscripción Básica

Zentyal Infrastructure

Zentyal Infrastructure Servicio de resolución de nombres de dominio (DNS)

Introducción a DNS Configuración de un servidor DNS caché con Zentyal Proxy DNS transparente Redirectores DNS Configuración de un servidor DNS autoritario con Zentyal Ejemplos Prácticos

Servicio de sincronización de hora (NTP) Introducción a NTP Configuración del cliente NTP Configuración de un servidor NTP con Zentyal Ejemplos prácticos

Servicio de configuración de red (DHCP) Introducción a DHCP Configuración de un servidor DHCP con Zentyal Ejemplos Prácticos

Autoridad de certificación (CA) Infraestructura de clave pública (PKI)

Page 2: Manual zentyal

Importación de certificados en los clientes Configuración de una Autoridad de Certificación con Zentyal Ejemplos prácticos

Servicio de publicación de páginas web (HTTP) Introducción a HTTP Configuración de un servidor HTTP con Zentyal Ejemplos prácticos

Servicio de Transferencia de ficheros (FTP) Introducción a FTP Configuración del cliente FTP Configuración de un servidor FTP con Zentyal Ejemplos prácticos

Gestión de máquinas virtuales Introducción Creación de máquinas virtuales con Zentyal Mantenimiento de máquinas virtuales Ejercicios propuestos

Zentyal Gateway

Zentyal Gateway Abstracciones de red de alto nivel en Zentyal

Objetos de red Servicios de red Ejemplos prácticos

Cortafuegos Introducción al sistema de cortafuegos Configuración de un cortafuegos con Zentyal Redirección de puertos con Zentyal Ejemplos prácticos

Encaminamiento Introducción al encaminamiento o routing Configuración del encaminamiento con Zentyal Configuración del balanceo con Zentyal Configuración de la tolerancia a fallos con Zentyal Ejemplos prácticos

Calidad de servicio Introducción a la calidad de servicio Configuración de la calidad de servicio con Zentyal Ejemplos prácticos

Servicio de autenticación de red (RADIUS) Introducción a RADIUS Configuración del Punto de Acceso con RADIUS Configuración del cliente RADIUS Configuración de un servidor RADIUS con Zentyal Ejemplos prácticos

Servicio de Proxy HTTP Introducción al servicio de Proxy HTTP Configuración en el navegador de un Proxy HTTP

Page 3: Manual zentyal

Configuración del Proxy HTTP con Zentyal Eliminando anuncios de la web Limitación de las descargas con Zentyal Filtrado de contenidos con Zentyal Ejemplos prácticos

Portal Cautivo Introducción Configuración de un portal cautivo con Zentyal Listado de usuarios Limitación del uso de ancho de banda Uso del portal cautivo

Zentyal Unified Threat Manager

Zentyal Unified Threat Manager Configuración Avanzada para el proxy HTTP

Acerca de la configuración avanzada del Proxy Configuración de perfiles de filtrado Perfil de filtrado por objeto Filtrado basado en grupos de usuarios Filtrado basado en grupos de usuarios para objetos Ejemplos prácticos

Servicio de redes privadas virtuales (VPN) Introducción a las redes privadas virtuales (VPN) Configuración del cliente VPN Configuración de un servidor VPN con Zentyal Configuración de un servidor VPN para la interconexión de redes con Zentyal Еjemplos prácticos

Servicio de redes privadas virtuales (VPN PPTP) Introducción a PPTP Configuración del cliente PPTP Configuración de un servidor PPTP con Zentyal

Servicio de redes privadas virtuales (VPN IPsec) Introducción a IPsec Configuración de un túnel IPsec con Zentyal

Sistema de Detección de Intrusos (IDS) Introducción al Sistema de Detección de Intrusos Configuración de un IDS con Zentyal Alertas del IDS Ejemplos prácticos

Filtrado de correo electrónico Introducción al filtrado de correo electrónico Esquema del filtrado de correo en Zentyal Listas de control de conexiones externas Proxy transparente para buzones de correo POP3 Еjemplos prácticos

Zentyal Office

Zentyal Office

Page 4: Manual zentyal

Servicio de directorio (LDAP) Introducción al servicio de directorio (LDAP) Configuración de servidores Zentyal en modo maestro/esclavo Configuración de Zentyal como esclavo de Windows Active Directory Configuración de un servidor LDAP con Zentyal Rincón del Usuario Ejemplos prácticos

Servicio de compartición de ficheros y de autenticación Introducción a la compartición de ficheros y a la autenticación Configuración de un servidor de ficheros con Zentyal Configuración de clientes Samba Configuración de un servidor de autenticación con Zentyal Configuración de clientes PDC

Servicio de compartición de impresoras Acerca de la compartición de impresoras Configuración de un servidor de impresoras con Zentyal

Copias de seguridad Diseño de un sistema de copias de seguridad Backup de la configuración de Zentyal Configuración de las copias de seguridad de datos en un servidor Zentyal Cómo recuperarse de un desastre

Zentyal Unified Communications

Zentyal Unified Communications Servicio de correo electrónico (SMTP/POP3-IMAP4)

Introducción al servicio de correo electrónico Configuración de un servidor SMTP/POP3-IMAP4 con Zentyal Configuración del cliente de correo Ejemplos prácticos

Servicio de correo web Introducción al servicio de correo web Configuración del correo web con Zentyal

Servicio de groupware Introducción al servicio de groupware Configuración de un servidor groupware (Zarafa) con Zentyal Casos de uso básicos con Zarafa

Servicio de mensajería instantánea (Jabber/XMPP) Introducción al servicio de mensajería instantánea Configuración de un servidor Jabber/XMPP con Zentyal Configuración de un cliente Jabber Configurando salas de conferencia Jabber Ejemplos prácticos

Servicio de Voz sobre IP Introducción a la Voz sobre IP Configuración de un servidor Voz IP con Zentyal Configuración de un softphone para conectar a Zentyal Uso de las funcionalidades de Voz IP de Zentyal Ejemplos prácticos

Page 5: Manual zentyal

Mantenimiento de Zentyal

Mantenimiento de Zentyal Registros

Consulta de registros en Zentyal Configuración de registros en Zentyal Registro de auditoría de administradores Еjemplos prácticos

Eventos y alertas La configuración de eventos y alertas en Zentyal Еjemplos prácticos

Monitorización La monitorización en Zentyal Métricas Monitorización del uso de ancho de banda Alertas

Herramientas de soporte Acerca del soporte en Zentyal Informe de la configuración Acceso remoto de soporte

Apéndices

Apéndice A: Entorno de pruebas con VirtualBox Acerca de la virtualización VirtualBox

Apéndice B: Escenarios avanzados de red Escenario 1: Servidor Zentyal virtualizado con conexión a Internet y acceso

desde el anfitrión y otro cliente Escenario 2: Servidor Zentyal virtualizado con acceso desde el anfitrión y otro

cliente con conexión a Internet a través de dos gateways Escenario 3: Servidor Zentyal virtualizado con conexión a Internet y acceso

desde el anfitrión y otros dos clientes Escenario 4: Servidor Zentyal virtualizado conectado a otro Zentyal virtualizado

uniendo redes separadas Escenario 5: Servidor Zentyal virtualizado con conexión a Internet, acceso

desde el anfitrión, clientes en red interna y externa

Presentación

Las pymes y las TICs

Alrededor del 99% de las empresas del mundo son pymes, y generan más de la mitad del PIB mundial. Las pymes buscan continuamente fórmulas para reducir costes y aumentar su productividad, especialmente en tiempos de crisis como el actual. Sin embargo, suelen operar bajo presupuestos muy escasos y con una fuerza laboral limitada. Estas circunstancias hacen muy difícil ofrecer soluciones adaptadas a las pymes que les aporten importantes beneficios, manteniendo al mismo tiempo las inversiones necesarias y los costes operacionales dentro de su presupuesto.

Quizás sea esta la razón por la que siendo un mercado enorme con un potencial casi ilimitado, los fabricantes de tecnología han mostrado escaso interés en desarrollar soluciones que se adapten a la realidad de las pymes. Por lo general, las

Page 6: Manual zentyal

soluciones corporativas disponibles en el mercado se han desarrollado pensando en las grandes corporaciones, por lo que requieren inversiones considerables en tiempo y recursos y demandan un alto nivel de conocimientos técnicos.

En el mercado de los servidores, esto ha significado que hasta ahora las pymes han dispuesto de pocas opciones donde elegir, consistentes por lo general en soluciones sobredimensionadas a sus necesidades reales, complejas de gestionar y con elevados costes de licencias.

En este contexto parece razonable considerar a Linux como una alternativa más que interesante como servidor para pymes, puesto que técnicamente ha demostrado una calidad y nivel funcional muy elevados y su precio, gratuito, es imbatible. Sin embargo la presencia de Linux en entornos de pyme es testimonial y su crecimiento relativamente reducido. ¿Cómo es posible explicar estos datos?

La razón es sencilla: para que un servidor de empresa se adapte a un entorno de pyme necesita que sus distintos componentes estén bien integrados entre sí y que sean sencillos de administrar. Las pymes no tienen los recursos ni el tiempo necesario para desplegar soluciones de altas prestaciones pero complejas. Así mismo, los proveedores de servicios TIC para pymes también precisan de soluciones que consuman poco tiempo en despliegue y mantenimiento para poder ser competitivos, y las tradicionales distribuciones de Linux para servidor no cumplen con estas premisas.

Zentyal: servidor Linux para pymes

Zentyal [1] se desarrolló con el objetivo de acercar Linux a las pymes y permitirles aprovechar todo su potencial como servidor de empresa. Es la alternativa en código abierto a Windows Small Business Server, basado en la popular distribución Ubuntu. Zentyal permite a profesionales TIC administrar todos los servicios de una red informática, tales como el acceso a Internet, la seguridad de la red, la compartición de recursos, la infraestructura de la red o las comunicaciones, de forma sencilla y a través de una única plataforma.

Zentyal permite gestionar la red de forma sencilla

Durante su desarrollo se hizo un especial énfasis en la usabilidad, creando una interfaz intuitiva que incluye únicamente aquéllas funcionalidades de uso más frecuente, aunque también dispone de los medios necesarios para realizar toda clase de configuraciones.

Otra de las características más importantes de Zentyal es que todas sus funcionalidades, construidas a partir de una serie de aplicaciones en principio independientes, están estrechamente integradas entre sí, automatizando la mayoría de las tareas y ahorrando tiempo en la administración de sistemas. Teniendo en cuenta que el 42% de los fallos de seguridad y el 80% de los cortes de servicio en una empresa se deben a errores humanos en la configuración y administración de los mismos [2], el resultado es una solución no sólo más sencilla de manejar sino también más segura y fiable. Además de acercar Linux y el Software Libre a las pymes con los importantes ahorros que ello supone, Zentyal mejora la seguridad y disponibilidad de los servicios en la empresa.

El desarrollo de Zentyal se inició en el año 2004 con el nombre de eBox Platform y actualmente es una solución consolidada de reconocido prestigio que integra más de 30 herramientas de código abierto para la administración de sistemas y redes en una sola tecnología. Zentyal está incluido en Ubuntu desde el año 2007, en la actualidad tiene más de 1.000 descargas diarias y dispone de una comunidad activa de más de 5.000 miembros.

Se estima que hay más de 50.000 instalaciones activas de Zentyal, principalmente en América y Europa, aunque su uso está

Page 7: Manual zentyal

extendido a prácticamente todos los países del globo, siendo Estados Unidos, Alemania, España, Brasil y Rusia los países que cuentan con más instalaciones. Zentyal se usa principalmente en pymes, pero también en otros entornos como centros educativos, administraciones públicas, hospitales o incluso en instituciones de alto prestigio como la propia NASA.

El desarrollo de Zentyal está financiado por eBox Technologies que además ofrece a las pymes y a otros usuarios de Zentyal de todo el mundo herramientas y servicios de gestión orientados a reducir los costes de mantenimiento de la infraestructura TIC. Estas herramientas y servicios comerciales se ofrecen a los clientes a través de las suscripciones a Zentyal Cloud, que incluyen:

actualizaciones del sistema con garantía de calidad, notificaciones y alertas del servidor, informes periódicos sobre el uso del sistema, monitorización y administración centralizada de múltiples servidores Zentyal.

Zentyal Cloud garantiza una red segura y actualizada a un nivel profesional con un coste reducido

Las suscripciones están dirigidas a dos tipos de clientes claramente diferenciados. Por un lado la Suscripción Profesional está dirigida a pequeñas empresas o proveedores TIC con un número reducido de servidores Zentyal que deben ser mantenidos al día, asegurando su continuo funcionamiento, que se benefician de las actualizaciones garantizadas, las alertas y los informes. Por otra parte, la Suscripción Empresarial está dirigida a grandes empresas o proveedores de servicios gestionados que además tienen la necesidad de monitorizar y administrar múltiples instalaciones Zentyal de forma remota. Así mismo, los clientes que dispongan de una suscripción, pueden obtener acceso a suscripciones adicionales como la recuperación de desastres, actualizaciones avanzadas de seguridad o subscripciones de Zarafa.

Estas subscripciones se complementan con otros servicios adicionales como formación, despliegue o soporte técnico provistos generalmente por alguno de sus partners certificados. Zentyal dispone de una Red Global de Partners en rápida expansión, a través de la cual consigue llevar la atención necesaria para distribuir el producto y los servicios a las pymes de todo el mundo. El estereotipo de los partners de Zentyal son proveedores locales de servicios TIC, consultores o proveedores de servicios gestionados que ofrecen un servicio de asesoría, despliegue, soporte y/o externalización completa de la infraestructura y servicios de red de sus clientes. Para más información sobre los beneficios y cómo convertirse en partner diríjase a la sección de partners de zentyal.com [3].

La combinación entre el servidor y las subscripciones aportan unos beneficios muy importantes que se traducen en ahorros superiores al 50% del coste total de instalación y mantenimiento de un servidor para pymes, comparando los costes de Zentyal con los de una instalación típica de Windows Small Business Server.

[1] http://www.zentyal.com/

[2] http://enise.inteco.es/images/stories/Ponencias/T25/marcos%20polanco.pdf

[3] http://www.zentyal.com/es/partners/

Page 8: Manual zentyal

Acerca de this course

Este curso describe las principales características técnicas de Zentyal, ayudando mediante introducciones teóricas, ejemplos prácticos y ejercicios propuestos a asimilar los principales conceptos de la gestión de servicios y a ser productivo en la administración de una infraestructura TIC en un entorno pyme con sistemas Linux.

El curso está dividido en siete capítulos más algunos anexos. Este primer capítulo introductorio ayuda a comprender el contexto de Zentyal, así como su instalación y a dar los primeros pasos con el sistema. Los siguientes cinco capítulos explican en profundidad cinco perfiles típicos de instalación, como servidor de infraestructura de una red, como servidor de acceso a Internet o Gateway, como servidor de seguridad o UTM, como servidor de oficina o como servidor de comunicaciones. Esta diferenciación en cinco grupos funcionales se hace sólo para facilitar los despliegues de Zentyal en los escenarios más típicos, pero un servidor Zentyal puede ofrecer cualquier combinación funcional sin más límites que los que impongan el hardware sobre el que esté instalado y el uso que se haga del servidor.

Finalmente, el último capítulo describe las herramientas y servicios disponibles para facilitar el mantenimiento de un servidor Zentyal, garantizando su funcionamiento, optimizando su uso, solventando las incidencias y recuperando el sistema en caso de desastre. Los apéndices aportan información útil para el despliegue de Zentyal en entornos virtualizados así como la descripción de la configuración en algunos escenarios típicos.

Este curso ayuda a preparar el examen de certificación ZeCA (Zentyal Certified Associate), una certificación oficial que valida los conocimientos y habilidades en la administración de redes con Zentyal.

Instalación

Zentyal está concebido para ser instalado en una máquina (real o virtual) de forma, en principio, exclusiva. Esto no impide que se puedan instalar otros servicios o aplicaciones adicionales, no gestionados a través de la interfaz de Zentyal, que deberán ser instalados y configurados manualmente.

Funciona sobre la distribución Ubuntu [1] en su versión para servidores, usando siempre las ediciones LTS (Long Term Support) [2], cuyo soporte es mayor: cinco años en lugar de tres.

La instalación puede realizarse de dos maneras diferentes:

usando el instalador de Zentyal (opción recomendada), instalando a partir de una instalación de Ubuntu Server Edition.

En el segundo caso es necesario añadir los repositorios oficiales de Zentyal y proceder a la instalación de aquellos módulos que se deseen [3].

Sin embargo, en el primer caso se facilita la instalación y despliegue de Zentyal ya que todas las dependencias se encuentran en un sólo CD y además se incluye un entorno gráfico que permite usar el interfaz web desde el propio servidor.

La documentación oficial de Ubuntu incluye una breve introducción a la instalación y configuración de Zentyal [4], en el capítulo de eBox (anterior nombre del proyecto).

[1] Ubuntu es una distribución de Linux desarrollada por Canonical y la comunidad orientada a ordenadores portátiles, de sobremesa y servidores: http://www.ubuntu.com/.

[2] Para una descripción detallada sobre la publicación de versiones de Ubuntu se recomienda la consulta de la guía Ubuntu: https://wiki.ubuntu.com/Releases.

[3] Para más información sobre la instalación a partir del repositorio diríjase a http://trac.zentyal.org/wiki/Document/Documentation/InstallationGuide.

[4] https://help.ubuntu.com/10.04/serverguide/C/ebox.html

El instalador de Zentyal

El instalador de Zentyal está basado en el instalador de Ubuntu Server así que el proceso de instalación resultará muy

Page 9: Manual zentyal

familiar a quien ya lo conozca.

En primer lugar seleccionaremos el lenguaje de la instalación, para este ejemplo usaremos Español.

Selección del idioma

Podemos instalar utilizando la opción por omisión que elimina todo el contenido del disco duro y crea las particiones necesarias para Zentyal usando LVM [5] o podemos seleccionar la opción expert mode que permite realizar un particionado personalizado. La mayoría de los usuarios deberían elegir la opción por omisión a no ser que estén instalando en un servidor con RAID por software o quieran hacer un particionado más específico a sus necesidades concretas.

Inicio del instalador

En el siguiente paso elegiremos el lenguaje que usará la interfaz de nuestro sistema una vez instalado, para ello nos pregunta por el pais donde nos localizamos, en este caso España.

Page 10: Manual zentyal

Localización geográfica

Podemos usar la detección de automática de la distribución del teclado, que hará unas cuantas preguntas para asegurarse del modelo que estamos usando o podemos seleccionarlo manualmente escogiendo No.

Autodetección del teclado

Page 11: Manual zentyal

Selección del teclado

En caso de que dispongamos de más de una interfaz de red, el sistema nos preguntará cuál usar durante la instalación (por ejemplo para descargar actualizaciones). Si tan solo tenemos una, no habrá pregunta.

Selección de interfaz de red

Después elegiremos un nombre para nuestro servidor; este nombre es importante para la identificación de la máquina dentro de la red.

Nombre de la máquina

En el siguiente paso, se nos pregunta por nuestra zona horaria, que se autoconfigurará dependiendo del país de origen que hayamos seleccionado anteriormente, pero se puede modificar en caso de que sea errónea.

Page 12: Manual zentyal

Zona horaria

Una vez terminados estos pasos, comenzará la instalación que irá informando de su estado mediante el avance de la barra de progreso.

A continuación se nos pregunta por el nombre real del administrador.

Nombre del usuario

Después, habrá que indicar el nombre de usuario o login usado para identificarse ante el sistema. Este usuario tendrá privilegios de administración y además será el utilizado para acceder a la interfaz de Zentyal.

Nombre de usuario en el sistema

En el siguiente paso nos pedirá la contraseña para el usuario. Cabe destacar que el anterior usuario con esta contraseña podrá acceder tanto al sistema (mediante SSH o login local) como a la interfaz web de Zentyal, por lo que seremos especialmente cuidadosos en elegir una contraseña segura (más de 12 carácteres incluyendo letras, cifras y símbolos de puntuación).

Page 13: Manual zentyal

Contraseña

E introduciremos de nuevo la contraseña para su verificación.

Confirmar contraseña

Esperaremos a que nuestro sistema básico se instale, mientras muestra una barra de progreso. Este proceso puede durar unos 20 minutos aproximadamente, dependiendo del servidor en cada caso.

Instalación del sistema base

La instalación del sistema base está completada; ahora podremos extraer el disco de instalación y reiniciar.

Page 14: Manual zentyal

Reiniciar

¡Nuestro sistema Zentyal está instalado! El sistema arrancará un interfaz gráfico con un navegador que permite acceder a la interfaz de administración, y, aunque tras este primer reinicio el sistema haya iniciado el entorno gráfico automáticamente, de aquí en adelante, necesitará autenticarse antes de que éste arranque.

Entorno gráfico con el interfaz de administración

Para comenzar a configurar los perfiles o módulos de Zentyal, usaremos el usuario y contraseña indicados durante la instalación. Cualquier otro usuario que añadamos posteriormente al grupo admin podrá acceder al interfaz de Zentyal al igual que tendrá privilegios de sudo en el sistema.

[5] LVM es el administrador de volúmenes lógicos en Linux, una introducción su gestión puede encontrarse en http://www.howtoforge.com/linux_lvm.

Configuración inicial

Una vez autenticado por primera vez en la interfaz web comienza un asistente de configuración, en primer lugar podremos seleccionar qué funcionalidades queremos incluir en nuestro sistema.

Para simplificar nuestra selección, en la parte superior de la interfaz contamos con unos perfiles prediseñados.

Page 15: Manual zentyal

Perfiles y paquetes instalables

Perfiles de Zentyal que podemos instalar:

Zentyal Gateway : Zentyal actúa como la puerta de enlace de la red local ofreciendo un acceso a Internet seguro y controlado.

Zentyal Unified Threat Manager : Zentyal protege la red local contra ataques externos, intrusiones, amenazas a la seguridad interna y posibilita la interconexión segura entre redes locales a través de Internet u otra red externa.

Zentyal Infrastructure : Zentyal gestiona la infraestructura de la red local con los servicios básicos: DHCP, DNS, NTP, servidor HTTP, etc.

Zentyal Office : Zentyal actúa como servidor de recursos compartidos de la red local: ficheros, impresoras, calendarios, contactos, perfiles de usuarios y grupos, etc.

Zentyal Unified Communications : Zentyal se convierte en el centro de comunicaciones de la empresa, incluyendo correo, mensajería instantánea y Voz IP.

Podemos seleccionar varios perfiles para hacer que Zentyal tenga, de forma simultánea, diferentes roles en la red.

También podemos instalar un conjunto manual de servicios simplemente clickando sobre sus respectivos iconos sin necesidad de amoldarnos a los perfiles, o bien, instalar un perfil más unos determinados paquetes que también nos interesen.

Para nuestro ejemplo usaremos una instalación del perfil de Gateway únicamente.

Al terminar la selección, se instalarán también los paquetes adicionales necesarios y además si hay algún complemento recomendado se preguntará si lo queremos instalar. Esta selección no es definitiva, ya que posteriormente podremos instalar y desinstalar el resto de módulos de Zentyal a través de la gestión de software.

Paquetes adicionales

El sistema comenzará con el proceso de instalación de los módulos requeridos, mostrando una barra de progreso donde además podemos leer una breve introducción sobre las funcionalidades y servicios adicionales disponibles en Zentyal.

Page 16: Manual zentyal

Instalación e información adicional

Una vez terminado el proceso de instalación el asistente configurará los nuevos módulos realizando algunas preguntas.

En primer lugar se solicitará información sobre la configuración de red, definiendo para cada interfaz de red si es interna o externa, es decir, si va a ser utilizada para conectarse a Internet u otras redes externas, o bien, si está conectada a la red local. Se aplicarán políticas estrictas en el cortafuegos para todo el tráfico entrante a través de interfaces de red externas.

Seleccionar modo de las interfaces de red

A continuación tendremos que seleccionar el tipo de servidor para el modo de operación del módulo Usuarios y Grupos. Si sólo vamos a tener un servidor elegiremos Servidor stand-alone. Si por el contrario estamos desplegando una infraestructura maestro-esclavo con varios servidores Zentyal y gestión de usuarios y grupos centralizada o si queremos sincronizar los usuarios con un Microsoft Active Directory, elegiremos Configuración avanzada. Este paso aparecerá solamente si el módulo Usuarios y Grupos está instalado. Configurar el modo de Usuarios y Grupos puede tomar unos minutos.

Modo de operación de Usuarios y Grupos

El último asistente permite suscribir el servidor a Zentyal Cloud. En caso de tener una suscripción registrada tan sólo es necesario introducir los credenciales. Si todavía no tienes un usuario en Zentyal Cloud es posible registrar automáticamente una cuenta con suscripción básica gratuita.

En ambos casos el formulario solicita un nombre para el servidor. Éste es el nombre que lo identificará dentro de la interfaz de Zentyal Cloud.

Page 17: Manual zentyal

Asistente de suscripción a Zentyal Cloud

Una vez hayan sido respondidas estas cuestiones, se procederá a la configuración de cada uno de los módulos instalados.

Configuración inicial finalizada

Guardando cambios

Cuando finalice el proceso de guardar cambios ya podremos acceder al Dashboard: ¡nuestro servidor Zentyal ya está listo!

Page 18: Manual zentyal

Dashboard

Requisitos de hardware

Zentyal funciona sobre hardware estándar arquitectura x86 (32-bit) o x86_64 (64-bit). Sin embargo, es conveniente asegurarse de que Ubuntu Lucid 10.04 LTS (kernel 2.6.32) es compatible con el equipo que se vaya a utilizar. Se debería poder comprobar esta información directamente del fabricante. De no ser así, se puede consultar en la lista de compatibilidad de hardware de Ubuntu Linux [6], en la lista de servidores certificados para Ubuntu 10.04 LTS [7] o buscando en Google.

Los requerimientos de hardware para un servidor Zentyal dependen de los módulos que se instalen, de cuántos usuarios utilizan los servicios y de sus hábitos de uso.

Algunos módulos tienen bajos requerimientos, como Cortafuegos, DHCP o DNS, pero otros como el Filtrado de correo o el Antivirus necesitan más memoria RAM y CPU. Los módulos de Proxy y Compartición de ficheros mejoran su rendimiento con discos rápidos debido a su intensivo uso de E/S.

Una configuración RAID añade un nivel de seguridad frente a fallos de disco duro y aumenta la velocidad en operaciones de lectura.

Si usas Zentyal como puerta de enlace o cortafuegos necesitarás al menos dos tarjetas de red, pero si lo usas como un servidor independiente, una única tarjeta de red será suficiente. Si tienes dos o más conexiones de Internet puedes tener una tarjeta de red para cada router o conectarlos a una tarjeta de red teniéndolos en la misma subred. Otra opción es mediante VLAN.

Por otro lado, siempre es recomendable tener un SAI con tu servidor.

Para un servidor de uso general con los patrones de uso normales, los requerimientos siguientes serían los mínimos recomendados:

Perfil de Zentyal Usuarios CPU Memoria DiscoTarjetas de red

Puerta de acceso <100 P4 o 2G 80G 2 ó más

Page 19: Manual zentyal

Perfil de Zentyal Usuarios CPU Memoria DiscoTarjetas de red

equivalente

100 ó más Xeon Dual core o equivalente

4G 160G 2 ó más

UTM <100 P4 o equivalente

2G 80G 1

100 ó más Xeon Dual core o equivalente

4G 160G 1

Infraestructura <100 P4 o equivalente

1G 80G 1

100 ó más P4 o equivalente

2G 160G 1

Oficina <100 P4 o equivalente

1G 250G 1

100 ó más Xeon Dual core o equivalente

2G 500G 1

Comunicaciones <100 Xeon Dual core o equivalente

4G 250G 1

100 ó más Xeon Dual core o equivalente

8G 500G 1

Si se combina más de un perfil se deberían aumentar los requerimientos. Si se está desplegando Zentyal en un entorno con más de 100 usuarios, debería hacerse un análisis más detallado, incluyendo patrones de uso, tras un benchmarking y considerando estrategias de alta disponibilidad.

[6] http://www.ubuntu.com/certification/catalog

[7] http://www.ubuntu.com/certification/release/10.04%20LTS/servers/

Primeros pasos con Zentyal

Page 20: Manual zentyal

La interfaz web de administración de Zentyal

Una vez instalado Zentyal, podemos acceder al interfaz web de administración tanto a través del propio entorno gráfico que incluye el instalador como desde cualquier lugar de la red interna, mediante la dirección: https://direccion_ip/, donde direccion_ip es la dirección IP o el nombre de la máquina donde está instalado Zentyal que resuelve a esa dirección. Dado que el acceso es mediante HTTPS, la primera vez el navegador nos pedirá si queremos confiar en este sitio, aceptaremos el certificado autogenerado.

Advertencia

Para acceder a la interfaz web se debe usar Mozilla Firefox, ya que otros navegadores como Microsoft Internet Explorer no están soportados.

La primera pantalla solicita el nombre de usuario y la contraseña, podrán autenticarse como administradores tanto el usuario creado durante la instalación como cualquier otro perteneciente al grupo admin.

Login

Una vez autenticados, aparecerá la interfaz de administración que se encuentra dividida en tres partes fundamentales:

Menú lateral izquierdo: Contiene los enlaces a todos los servicios que se pueden configurar mediante Zentyal, separados por categorías. Cuando se ha seleccionado algún servicio en este menú puede aparecer un submenú para configurar cuestiones particulares de dicho servicio.

Menú lateral

Menú superior: Contiene las acciones: guardar los cambios realizados en el contenido y hacerlos efectivos, así como el cierre de sesión.

Menú superior

Contenido principal: El contenido, que ocupa la parte central, comprende uno o varios formularios o tablas con información acerca de la configuración del servicio seleccionado a través del menú lateral izquierdo y sus submenús. En ocasiones, en la parte superior, aparecerá una barra de pestañas en la que cada pestaña representará una subsección diferente dentro de la sección a la que hemos accedido.

Page 21: Manual zentyal

Contenido de un formulario

El Dashboard

El Dashboard es la pantalla inicial de la interfaz. Contiene una serie de widgets configurables. En todo momento se pueden reorganizar pulsando en los títulos y arrastrándolos.

Pulsando en Configurar Widgets la interfaz cambia, permitiendo retirar y añadir nuevos widgets. Para añadir uno nuevo, se busca en el menú superior y se arrastra a la parte central. Para eliminarlos, se usa la cruz situada en la esquina ѕuperior derecha de cada uno de ellos.

Configuración del Dashboard

Hay un widget importante dentro del Dashboard que muestra el estado de todos los módulos instalados en Zentyal.

Page 22: Manual zentyal

Widget de estado de los módulos

La imagen muestra el estado para un servicio y la acción que se puede ejecutar sobre él. Los estados disponibles son los siguientes:

Ejecutándose: El servicio se está ejecutando aceptando conexiones de los clientes. Se puede reiniciar el servicio usando Reiniciar.

Ejecutándose sin ser gestionado: Si no se ha activado todavía el módulo, se ejecutará con la configuración por defecto de la distribución.

Parado: El servicio está parado bien por acción del administrador o porque ha ocurrido algún problema. Se puede iniciar el servicio mediante Arrancar.

Deshabilitado: El módulo ha sido deshabilitado explícitamente por el administrador.

Configuración del estado de los módulos

Zentyal tiene un diseño modular, en el que cada módulo gestiona un servicio distinto. Para poder configurar cada uno de estos servicios se ha de habilitar el módulo correspondiente desde Estado del módulo. Todas aquellas funcionalidades que hayan sido seleccionadas durante la instalación se habilitan automáticamente.

Page 23: Manual zentyal

Configuración del estado del módulo

Cada módulo puede tener dependencias sobre otros para que funcione. Por ejemplo, el módulo DHCP necesita que el módulo de red esté habilitado para que pueda ofrecer direcciones IP a través de las interfaces de red configuradas. Las dependencias se muestran en la columna Depende y hasta que estas no se habiliten, no se puede habilitar tampoco el módulo.

La primera vez que se habilita un módulo, se pide confirmación de las acciones que va a realizar en el sistema así como los ficheros de configuración que va a sobreescribir. Tras aceptar cada una de las acciones y ficheros, habrá que guardar cambios para que la configuración sea efectiva.

Confirmación para habilitar un módulo

Aplicando los cambios en la configuración

Una particularidad importante del funcionamiento de Zentyal es su forma de hacer efectivas las configuraciones que hagamos en la interfaz. Para ello, primero se tendrán que aceptar los cambios en el formulario actual, pero para que estos cambios sean efectivos y se apliquen de forma permanente se tendrá que Guardar Cambios en el menú superior. Este botón cambiará a color rojo para indicarnos que hay cambios sin guardar. Si no se sigue este procedimiento se perderán todos los cambios que se hayan realizado a lo largo de la sesión al finalizar ésta. Una excepción a este funcionamiento es la gestión de usuarios y grupos, dónde los cambios se efectúan directamente.

Guardar Cambios

Advertencia

Si se cambia la configuración de las interfaces de red, el cortafuegos o el puerto del interfaz de administración, se podría perder la conexión teniendo que cambiar la URL en el navegador o reconfigurar a través del entorno gráfico en local.

Page 24: Manual zentyal

Configuración general

Hay varios parámetros de la configuración general de Zentyal que se pueden modificar en Sistema ‣ General.

Configuración general

Contraseña: Podemos cambiar la contraseña de un usuario. Será necesario introducir su nombre de Usuario, la Contraseña actual, la Nueva contraseña y confirmarla de nuevo en la sección Cambiar contraseña.

Idioma: Podemos seleccionar el idioma de la interfaz mediante Selección de idioma.

Zona Horaria: Aquí podemos especificar nuestra ciudad y país para configurar el ajuste horario.

Fecha y Hora: Podemos especificar la fecha y hora del servidor, siempre y cuando no estemos sincronizando con un servidor de hora exterior (ver NTP).

Puerto del interfaz de administración: Por defecto es el 443 de HTTPS, pero si queremos utilizarlo para el servidor web, habrá que cambiarlo a otro distinto y especificarlo en la URL a la hora de acceder: https://direccion_ip:puerto/.

Nombre de la máquina: Es posible cambiar el hostname o nombre de la máquina, por ejemplo: zentyal.home.lan. El nombre de la máquina sirve para identificarla de otras dentro de la red.

Emplazamiento en la red de Zentyal

Zentyal puede utilizarse de dos maneras fundamentales:

puerta de enlace y cortafuegos de la conexión a internet, servidor de los servicios en la red (o local o Internet).

Ambas funcionalidades pueden combinarse en una misma máquina o separarse en varias, dependiendo de las características de cada despliegue.

La figura Ubicaciones en la red escenifica las distintas ubicaciones que puede tomar un servidor Zentyal dentro de la red, tanto haciendo de pasarela entre redes como un servidor dentro de la propia red.

Page 25: Manual zentyal

Ubicaciones en la red

A lo largo de esta documentación se verá cómo configurar Zentyal para desempeñar un papel de puerta de enlace y cortafuegos. Y por supuesto también veremos la configuración en los casos que actúe como un servidor más dentro de la red.

Configuración de red en Zentyal

A través de Red ‣ Interfaces se puede acceder a la configuración de cada una de las tarjetas de red detectadas por el sistema y se pueden establecer como dirección de red estática (configurada manualmente), dinámica (configurada mediante DHCP), VLAN (802.1Q) trunk, PPPoE o bridged.

Además cada interfaz puede definirse como Externa si está conectada a una red externa, normalmente Internet, para aplicar políticas más estrictas en el cortafuegos. En caso contrario se asumirá interna, conectada a la red local.

Cuando se configure como DHCP, no sólamente se configurará la dirección IP sino también los servidores DNS y la puerta de enlace. Esto es habitual en máquinas dentro de la red local o en las interfaces externas conectadas a los routers ADSL.

Configuración DHCP de la interfaz de red

Si configuramos la interfaz como estática especificaremos la dirección IP, la máscara de red y además podremos asociar una o más Interfaces Virtuales a dicha interfaz real para disponer de direcciones IP adicionales.

Estas direcciones adicionales son útiles para ofrecer un servicio en más de una dirección IP o subred, para facilitar la migración desde un escenario anterior o para tener en un servidor web diferentes dominios usando certificados SSL.

Page 26: Manual zentyal

Configuración estática de la interfaz de red

Si se dispone de un router ADSL PPPoE [1] (un método de conexión utilizado por algunos proveedores de Internet), podemos configurar también este tipo de conexiones. Para ello, sólo hay que seleccionar PPPoE e introducir el Nombre de usuario y Contraseña proporcionado por el proveedor.

Configuración PPPoE de la interfaz de red

En caso de tener que conectar el servidor a una o más redes VLAN, seleccionaremos Trunk (802.11q). Una vez seleccionado este método podremos crear tantas interfaces asociadas al tag definido como queramos y las podremos tratar como si de interfaces reales se tratase.

La infraestructura de red VLAN permite segmentar la red local para mejor rendimiento y mayor seguridad sin la inversión en hardware físico que sería necesaria para cada segmento.

Configuración VLAN de interfaces de red

El modo puente o bridged consiste en asociar dos interfaces de red físicas de nuestro servidor conectadas a dos redes diferentes. Por ejemplo una tarjeta conectada al router y otra tarjeta conectada a la red local. Mediante esta asociación podemos conseguir que el tráfico de la red conectada a una de las tarjetas se redirija a la otra de modo transparente.

Esto tiene la principal ventaja de que las máquinas clientes de la red local no necesitan modificar absolutamente ninguna de sus configuraciones de red cuando instalemos un servidor Zentyal como puerta de enlace, y sin embargo, podemos gestionar el tráfico que efectivamente pasa a través de nuestro servidor con el cortafuegos, filtrado de contenidos o detección de intrusos.

Esta asociación se crea cambiando el método de las interfaces a En puente de red. Podemos ver como al seleccionar esta opción nos aparece un nuevo selector, Puente de red para que seleccionemos a qué grupo de interfaces queremos asociar esta interfaz.

Creación de un bridge

Esto creará una nueva interfaz virtual bridge que tendrá su propia configuración como una interfaz real, por lo cual aunque el tráfico la atraviese transparentemente, puede ser utilizado para ofrecer otros servicios como podría ser el propio interfaz de administración de Zentyal o un servidor de ficheros.

Page 27: Manual zentyal

Configuración de interfaces bridged

En el caso de configurar manualmente la interfaz de red será necesario definir la puerta de enlace de acceso a Internet en Red ‣ Puertas de enlace. Normalmente esto se hace automáticamente si usamos DHCP o PPPoE pero no en el resto de opciones. Para cada uno podremos indicar Nombre, Dirección IP, Interfaz a la que está conectada, su Peso que sirve para indicar la prioridad respecto a otros gateways y si es el Predeterminado de todos ellos.

Además si es necesario el uso de un proxy HTTP para el acceso a Internet, podremos configurarlo también en esta sección. Este proxy será utilizado por Zentyal para conexiones como las de actualización e instalación de paquetes o la actualización del antivirus.

Configuración de las puertas de enlace

Para que el sistema sea capaz de resolver nombres de dominio debemos indicarle la dirección de uno o varios servidores de nombres en Red ‣ DNS.

Configuración de los servidores DNS

Si la conexión a Internet asigna una dirección IP dinámica y queremos que un nombre de dominio apunte a ella, se necesita un proveedor de DNS dinámico. Utilizando Zentyal se puede configurar alguno de los proveedores de DNS dinámico más populares.

Para ello iremos a Red ‣ DynDNS y seleccionaremos el proveedor, del Servicio, Nombre de usuario, Contraseña y Nombre de máquina que queremos actualizar cuando la dirección pública cambie, sólo resta Habilitar DNS dinámico.

Page 28: Manual zentyal

Configuración de DNS Dinámico

Zentyal se conecta al proveedor para conseguir la dirección IP pública evitando cualquier traducción de dirección red (NAT) que haya entre el servidor e Internet. Si estamos utilizando esta funcionalidad en un escenario con multirouter [2], no hay que olvidar crear una regla que haga que las conexiones al proveedor usen siempre la misma puerta de enlace.

[1] http://es.wikipedia.org/wiki/PPPoE

[2] Consultar Configuración del balanceo con Zentyal para obtener más detalles.

Diagnóstico de red

Para ver si hemos configurado bien nuestra red podemos utilizar las herramientas de Red ‣ Diagnóstico.

ping es una herramienta que utiliza el protocolo de diagnóstico de redes ICMP (Internet Control Message Protocol) para comprobar la conectividad hasta una máquina remota mediante una sencilla conversación entre ambas.

Herramientas de diagnóstico de redes, ping

También disponemos de la herramienta traceroute que se encarga de mostrar la ruta que toman los paquetes hasta llegar a la máquina remota determinada.

Page 29: Manual zentyal

Herramienta traceroute

Y por último también contamos con la herramienta de resolución de nombres de dominio que se utiliza para comprobar el correcto funcionamiento del servicio.

Resolución de nombres de dominio

Ejemplos prácticos

Ejemplo práctico A

Una vez hemos completado la instalación, si queremos que nuestro servidor Zentyal tenga utilidad y provea de servicios a las máquinas clientes ¡debemos conectarlo a la red!. La forma más sencilla de hacerlo es conectándolo a un router que

Page 30: Manual zentyal

normalmente tendrá un servidor DHCP que nos asigna dirección, servidores DNS y puerta de enlace automáticamente.

Para ello:

1. Acción: Acceder a la interfaz de Zentyal, entrar en Red ‣ Interfaces y seleccionar para la interfaz de red eth0 el Método DHCP. Pulsar el botón Cambiar.

Efecto:

Se ha activado el botón Guardar Cambios y la interfaz de red mantiene los datos introducidos.

2. Acción: Entrar en Estado del módulo y activar el módulo Red, para ello marcar su casilla en la columna Estado si no está activado.

Efecto:

Zentyal solicita permiso para sobreescribir algunos ficheros.

3. Acción: Leer los cambios de cada uno de los ficheros que van a ser modificados y otorgar permiso a Zentyal para sobreescribirlos.

Efecto:

Se ha activado el botón Guardar Cambios y algunos módulos que dependen de red ahora pueden ser activados.

4. Acción: Guardar los cambios.

Efecto:

Zentyal muestra el progreso mientras aplica los cambios. Una vez que ha terminado indica que el proceso ha sido completado.

Ahora Zentyal gestiona la configuración de la red.

5. Acción: Acceder a Red ‣ Herramientas de Diagnóstico. Hacer ping a zentyal.org.

Efecto:

Se muestran como resultado tres intentos satisfactorios de conexión con el servidor en Internet.

6. Acción: Acceder a Red ‣ Herramientas Diagnóstico. Ejecutar traceroute hacia zentyal.org.

Efecto:

Se muestra como resultado la serie de máquinas que los paquetes recorren hasta llegar a la máquina destino.

Actualización de software

La actualización de software en Zentyal

Como todo sistema de software, Zentyal Server requiere actualizaciones periódicas, bien sea para añadir nuevas características o para reparar defectos o fallos del sistema.

Zentyal distribuye su software mediante paquetes y usa la herramienta estándar de Ubuntu, APT [1]. Sin embargo, para facilitar la tarea ofrece una interfaz web que simplifica el proceso. [2]

[1] Advanced Packaging Tool (APT) es un sistema de gestión de paquetes software creado por el proyecto Debian que simplifica en gran medida la instalación y eliminación de programas en el sistema operativo Linux http://wiki.debian.org/Apt

Page 31: Manual zentyal

[2] Para una explicación más extensa sobre la instalación de paquetes software en Ubuntu, leer el capítulo al respecto de la documentación oficial https://help.ubuntu.com/8.04/serverguide/C/package-management.html

Mediante la interfaz web podremos ver para qué componentes de Zentyal está disponible una nueva versión e instalarlos de una forma sencilla. También podemos actualizar el software en el que se apoya Zentyal, principalmente para corregir posibles fallos de seguridad.

Gestión de componentes de Zentyal

La gestión de componentes de Zentyal permite instalar, actualizar y eliminar módulos de Zentyal.

Para gestionar los componentes de Zentyal debemos entrar en Gestión de Software ‣ Componentes de Zentyal.

Gestión de componentes de Zentyal

Al entrar en esta sección veremos la vista avanzada del gestor de paquetes, que quizás ya conozcamos del proceso de instalación. Esta vista se compone de tres pestañas, cada una de ellas destinadas, respectivamente, a las acciones de Instalar, Actualizar y Borrar componentes de Zentyal.

Page 32: Manual zentyal

Desde esta vista disponemos de un enlace para cambiar al modo básico, desde el cual podemos instalar colecciones de paquetes dependiendo de la tarea a realizar por el servidor que estemos configurando.

Volviendo a la vista avanzada, veamos detalladamente cada una de las acciones que podemos realizar.

Instalación de componentes

Esta es la pestaña visible al entrar en gestión de componentes. En ella tenemos tres columnas, una para el nombre del componente, otra para la versión actualmente disponible en los repositorios y otra para seleccionar el componente. En la parte inferior de la tabla podemos ver los botones de Instalar, Actualizar lista, Seleccionar todo y Deseleccionar todo.

Para instalar los componentes que deseemos tan solo tendremos que seleccionarlos y pulsar el botón Instalar. Tras hacer esto nos aparecerá una pantalla en la que podremos ver la lista completa de paquetes que se van a instalar, así como algunas recomendaciones que, aun no siendo dependencias necesarias, pueden aumentar las opciones de los componentes instalados o mejorarlos.

Confirmar la instalación

El botón de Actualizar lista sincroniza la lista de paquetes con los repositorios.

Actualización de componentes

La siguiente pestaña, Actualizar, nos indica entre paréntesis el número de actualizaciones disponibles. Aparte de esta característica, si visualizamos esta sección, veremos que se distribuye de una forma muy similar a la vista de instalación, con tan solo algunas pequeñas diferencias. Una columna adicional nos indica la versión actualmente instalada y en la parte inferior de la tabla vemos un botón que tendremos que pulsar una vez seleccionados los paquetes a actualizar. Al igual que con la instalación de componentes, nos aparece una pantalla de confirmación desde la que veremos los paquetes que van a instalarse.

Desinstalación de componentes

La última pestaña, Borrar, nos mostrará una tabla con los paquetes instalados y sus versiones. De modo similar a las vistas anteriores, en ésta podremos seleccionar los paquetes a desinstalar y una vez hecho esto, pulsar el botón Borrar situado en la parte inferior de la tabla para finalizar la acción.

Antes de realizar la acción, y como en los casos anteriores, Zentyal solicitará confirmación para eliminar los paquetes solicitados y los que de ellos dependen.

Actualizaciones del sistema

Las actualizaciones del sistema actualizan programas usados por Zentyal. Para llevar a cabo su función, el servidor Zentyal necesita diferentes programas del sistema. Dichos programas son referenciados como dependencias asegurando que al instalar Zentyal, o cualquiera de los módulos que los necesiten, son instalados también asegurando el correcto funcionamiento del servidor. De manera análoga, estos programas pueden tener dependencias también.

Normalmente una actualización de una dependencia no es suficientemente importante como para crear un nuevo paquete de Zentyal con nuevas dependencias, pero sí que puede ser interesante instalarla para aprovechar sus mejoras o sus soluciones frente a fallos de seguridad.

Para ver las actualizaciones del sistema debemos ir a Gestión de Software ‣ Actualizaciones del sistema. Ahí dispondremos de una lista de los paquetes que podemos actualizar si el sistema no está actualizado. Si se instalan paquetes en la máquina por otros medios que no sea la interfaz web, los datos de ésta pueden quedar desactualizados, por lo que cada noche se

Page 33: Manual zentyal

ejecuta el proceso de búsqueda de actualizaciones a instalar en el sistema. Si se quiere forzar dicha búsqueda se puede hacer pulsando el botón Actualizar lista situado en la parte inferior de la pantalla.

Actualizaciones del sistema

Para cada una de las actualizaciones podemos determinar si es de seguridad o no con el icono indicativo de más información. Si es una actualización de seguridad podemos ver el fallo de seguridad con el registro de cambios del paquete, pulsando sobre el icono.

Si queremos actualizar tendremos que seleccionar aquellos paquetes sobre los que realizar la acción y pulsar el botón correspondiente. Como atajo también tenemos un botón de Actualizar todos los paquetes. Durante la actualización se irán mostrando mensajes sobre el progreso de la operación.

Actualizaciones automáticas

Las actualizaciones automáticas permiten al servidor Zentyal instalar automáticamente cualquier actualización disponible.

Podremos activar esta característica accediendo a la pagina Gestión de Software ‣ Configuración.

Gestión de las actualizaciones automáticas

Desde allí es posible también elegir la hora de cada día a la que se realizarán estas actualizaciones.

No es aconsejable usar esta opción si el administrador quiere tener un mayor seguridad y control en la gestión de sus actualizaciones.

Cliente de Zentyal Cloud

Page 34: Manual zentyal

Acerca de Zentyal Cloud

Zentyal Cloud es una solución que facilita el mantenimiento preventivo de los servidores así como la monitorización en tiempo real y la administración centralizada de múltiples instalaciones de Zentyal. Incluye características como actualizaciones de software con garantía de calidad, alertas e informes periódicos de los servidores, inventariado de la red, auditorías de seguridad, recuperación de desastres, actualizaciones avanzadas de seguridad, monitorización de la red y administración segura, centralizada y remota de grupos de servidores. [1]

[1] http://www.zentyal.com/es/services

Suscribir un servidor Zentyal a Zentyal Cloud (Suscripción básica)

Para preparar el servidor Zentyal para suscribirse a Zentyal Cloud, debes instalar el componente Zentyal Cloud Client, que se instala por defecto si se usa el instalador de Zentyal. Además, la conexión a Internet debe estar disponible. Podemos registrar nuestra suscripción básica durante la instalación o más adelante desde el menú Suscripción -> Suscripción del Servidor.

Por defecto, podremos ver el formulario para introducir los credenciales de una cuenta ya existente, por ejemplo una que hemos registrado previamente usando la web de Zentyal.

Introducir datos de cuenta existente en Zentyal Cloud

Nombre de Usuario o Dirección de Correo: Se debe establecer el nombre de usuario o la dirección de correo utilizada para entrar en la página Web de Zentyal Cloud.

Contraseña: Es la misma contraseña que se usa para entrar en la Web de Zentyal Cloud.

Nombre de Zentyal: Es el nombre único que se usará para este servidor desde el Cloud. Este nombre se muestra en el panel de control y debe ser un nombre de dominio válido. Cada servidor debería tener un nombre diferente; si dos servidores tienen el mismo nombre para conectarse a Zentyal Cloud, entonces sólo una de ellas se podrá conectar.

Otra opción es registrar una nueva cuenta usando el enlace Suscripción Básica que podemos ver en el primer bloque informativo en verde.

Page 35: Manual zentyal

Registrando una nueva cuenta de Cloud con el Wizard

Tras introducir los datos, la suscripción tardará alrededor de dos minutos en completarse. Nos tenemos que asegurar de que tras terminar el proceso de suscripción se guardan los cambios. Durante el proceso se habilita una conexión VPN entre el servidor y Zentyal Cloud, por tanto, se habilitará el módulo vpn. [2]

[2] Para más información sobre VPN, ir a la sección Servicio de redes privadas virtuales (VPN) .El campo Nombre del servidor nos servirá como título de la página web de administración de este servidor Zentyal, de tal manera que podremos reconocer de un vistazo la máquina si tenemos varias interfaces de Zentyal abiertas en el navegador y, adicionalmente, se agregará este ‘hostname’ al dominio dinámico ‘zentyal.me’, de tal forma que podremos usar la dirección ‘<nuestrozentyal>.zentyal.me’ para conectar tanto de forma gráfica como por consola SSH (siempre que nuestro Cortafuegos nos lo permita).

Truco

La URL que hemos mencionado apuntará a una IP pública, de tal forma que si nuestro Zentyal sale a internet a través de una NAT establecida por un router u otros dispositivos de red, tendremos que asegurarnos de redirigir los puertos que deseemos en el dispositivo, ya que éste será el blanco de la conexión.

Si la conexión se estableció correctamente con Zentyal Cloud, entonces aparecerá un widget en el dashboard indicándolo.

Widget de conexión a Zentyal Cloud

Page 36: Manual zentyal

En este widget al cabo del tiempo debe aparecer el nivel de suscripción y el resto de servicios contratados si existen.

Copia de seguridad de la configuración a Zentyal Cloud

Una de las características de Zentyal Cloud es la copia de seguridad automática de la configuración del servidor Zentyal [3] que se almacena en la nube. Esta copia se hace diariamente si hay algún cambio en la configuración de Zentyal. Ir a Sistema

‣ Importar/Exportar configuración y elegir la pestaña Remoto en Zentyal Cloud. Puedes realizar una copia de seguridad de la configuración de manera manual si quieres estar seguro de que tu última configuración dispone de una copia de respaldo.

[3] Las copias de seguridad de la configuración en Zentyal se explican en la sección Copias de seguridad .

Copia de seguridad de la configuración remota

Se pueden restaurar, descargar o borrar copias de seguridad de la configuración que se almacenan en Zentyal Cloud. Además para mejorar el proceso de recuperación ante un desastre, se puede restaurar o descargar la configuración de otros servidores Zentyal suscritos a la nube usando tu par usuario/correo electrónico y contraseña. Para hacer eso, hay que ir al menú Sistema ‣ Importar/Exportar configuración, pestaña Remoto de otras máquinas suscritas en Zentyal Cloud.

Otros servicios disponibles con la Suscripción Básica

Una vez nuestro servidor esté suscrito a la modalidad Básica, podremos disfrutar de una versión reducida de demostración de los servicios de Zentyal Cloud.

Tras acceder a la dirección web de Zentyal Cloud [4] e introducir la cuenta que hemos registrado podremos ver la siguiente pantalla de bienvenida

Page 37: Manual zentyal

Panel web de Zentyal Cloud

[4] https://cloud.zentyal.comNuestra Suscripción Básica contará con las siguientes funcionalidades:

Alertas

Conectividad de Zentyal: Recibiremos una alerta cada vez que el servidor pierda la conectividad a Zentyal Cloud, lo cual puede ser debido a un fallo de la red o incluso a una caída completa del sistema.

Actualizaciones disponibles: Se envía una alerta cada vez que hay nuevas actualizaciones de seguridad pendientes para nuestro servidor.

Primera copia de seguridad: Se notifica que la primera copia de seguridad de la configuración se ha realizado satisfactoriamente.

Copia de seguridad automática: Recibiremos una alerta por cada proceso de copia de seguridad que no haya podido realizarse.

Informes

En los informes se muestran datos históricos resumidos en meses de los siguientes datos:

Media de uso de disco. Test de velocidad. Tiempo de acceso a Internet ininterrumpido. Resumen de alertas.

Monitorización

Se muestran gráficas en el interfaz de Zentyal Cloud de las siguientes medidas del sistema relacionadas con el funcionamiento del hardware:

Carga del sistema. Uso de CPU. Uso de memoria. Uso de disco.

Page 38: Manual zentyal

Trabajos

Se permiten ejecutar trabajos desde el interfaz de Zentyal Cloud para la gestión conjunta de servidores. Este subconjunto de trabajos está disponible en la interfaz básica.

Conocer la versión del núcleo de Linux Añadir un usuario Informe del estado actual del sistema (procesos, uso de memoria y swap y tiempo de servicio

ininterrumpido)

Debemos tener en cuenta que estas funcionalidades son un reducido subconjunto de muestra de la funcionalidad que obtendríamos con una Suscripción Profesional o Empresarial. Puedes observar la completa descripción de las funcionalidades de las demás suscripciones en [5].

[5] https://cloud.zentyal.com/doc/

Zentyal Infrastructure

En este capítulo se explican los servicios para gestionar la infraestructura de una red local y optimizar el tráfico interno, incluyendo la gestión de nombres de dominio, la sincronización de la hora, la auto-configuración de red, la gestión de la autoridad de certificación, la publicación de sitios Web y la gestión de máquinas virtuales.

El servicio de nombres de dominio o DNS permite acceder a las máquinas y servicios utilizando nombres en lugar de direcciones IP, que son más fáciles de memorizar.

El servicio de sincronización de la hora o NTP mantiene sincronizada la hora del sistema en las máquinas.

Para la auto-configuración de red, se usa el servicio de DHCP que permite asignar diversos parámetros de red a las máquinas conectadas como pueden ser la dirección IP, los servidores DNS o la puerta de enlace para acceder a Internet.

La creciente importancia de asegurar la autenticidad, integridad y privacidad de las comunicaciones ha aumentado el interés por el despliegue de autoridades de certificación que permiten acceder a los diversos servicios de forma segura. Se permite configurar SSL/TLS para acceder de manera segura a la mayoría de los servicios y certificados para la autenticación de los usuarios.

En muchas redes se utilizan multitud de aplicaciones Web que pueden ser instaladas bajo el servidor HTTP sobre distintos nombres de dominio e incluso con soporte HTTPS.

Es posible que nuestro despliegue requiera inevitablemente una serie de aplicaciones que por sus características o antigüedad no se puedan instalar en entornos Linux. El módulo de máquinas virtuales nos provee una forma sencilla, elegante y transparente de cara al usuario de virtualizar un servicio integrada con el resto del servidor.

Page 39: Manual zentyal

Servicio de resolución de nombres de dominio (DNS)

Introducción a DNS

La funcionalidad de DNS (Domain Name System) [1] es convertir nombres de máquinas o servicios (por ejemplo www.zentyal.com), legibles y fáciles de recordar, en direcciones IP (para el ejemplo anterior, 92.243.17.196) con las que los ordenadores pueden trabajar. Podemos buscar una analogía con la libreta de direcciones de un teléfono móvil, donde el usuario almacena nombres, evitando tener que memorizar el número de teléfono. Adicionalmente a partir de la dirección IP de una máquina podemos obtener el nombre asociado a ese ordenador, lo que se llama habitualmente resolución inversa. La misma analogía con la libreta de direcciones se aplica en este caso también, cuando recibimos una llamada, podemos ver el nombre asignado al teléfono que nos está llamando.

El sistema de nombres de dominio está formado por servidores que siguen una arquitectura jerárquica con el objetivo de evitar la duplicación de la información y facilitar la búsqueda de dominios. En este sistema jerárquico se distribuye la responsabilidad de quién resuelve los nombres de dominio en direcciones IP designando servidores autoritarios para cada dominio. Un servidor autoritario de un dominio es el responsable final y de mayor autoridad para responder a qué dirección IP apuntan los registros de un dominio y sus subdominios, además opcionalmente puede designar otros servidores autoritarios para cada uno de los subdominios del dominio.

Por ejemplo, para resolver el nombre www.zentyal.com, nuestro sistema operativo interrogaría en primer lugar a los servidores DNS configurados.

Advertencia

Zentyal sólo dará acceso a Internet a los clientes en las redes internas si el módulo de ‘Cortafuegos’ está instalado y activado. Es muy importante tener esto en cuenta para todos los escenarios que vamos a estudiar a partir de ahora.

En Ubuntu podemos configurar los servidores DNS haciendo click derecho sobre el icono de Conexiones de red presente en la barra de tareas y en ese menú contextual, seleccionando Editar las conexiones ‣ Seleccionar interfaz que deseamos configurar ‣ Editar ‣ Ajustes de IPv4 ‣ Servidores DNS:

Page 40: Manual zentyal

Configuración DNS en Linux

En Windows iremos a Inicio ‣ Configuración ‣ Conexiones de Red ‣ Conexión de área local ‣ Protocolo Internet (TCP/IP) ‣ Propiedades:

Configuración DNS en Windows

Esta configuración, necesaria para que el cliente pueda resolver nombres, puede ser suministrada o bien por el ISP que nos provee el servicio, por el administrador de sistemas de nuestra red, o automáticamente configurada por el servicio DHCP.

Como se puede ver en la figura, el sistema de nombres de dominio se organiza como una estructura jerárquica global, cuyo nivel superior es el dominio raíz. Un servidor de raíz es un servidor de nombres que pertenece a la zona raíz de la jerarquía DNS, desplegada específicamente para dar servicio global a Internet, la autoridad que gestiona esta zona es la IANA (Internet Assigned Numbers Authority) [2]. A día de hoy esta zona está formada por 13 servidores.

Page 41: Manual zentyal

Estructura del sistema de nombres de dominio

La resolución de nombres se efectúa separando en grupos de derecha a izquierda, por ejemplo para el caso anterior el orden sería: com, zentyal, www. El primer componente (com en este caso, aunque puede ser org, edu, net, etc) es conocido como el TLD (Top Level Domain) [3]. Los servidores de nombres raíz o root de una determinada región, contienen entradas para todos los TLD. Cada entrada contendrá la dirección de otro servidor de DNS más específico al que se reenviará la petición. Este proceso se lleva a cabo recursivamente, hasta que un servidor de nombres contenga la respuesta (dirección IP asignada al nombre completo) a la petición.

El servidor DNS autoritativo para un dominio, es aquél que se ha configurado por la entidad original asociada al dominio. Por ejemplo la compañía que ha registrado el dominio foobar.net, puede asociar ese dominio con una o varias direcciones IP. Al ser la fuente original de información sobre traducciones de nombres, juegan un papel central en la seguridad y coherencia del protocolo DNS. El servidor DNS autoritativo sólo responde a peticiones sobre los dominios que tiene configurados, indicando su status de respuesta autoritativa.

Ejemplo de una respuesta autoritativa

Un servidor de DNS esclavo, actúa como copia de un servidor maestro, manteniéndose actualizado aunque las

Page 42: Manual zentyal

modificaciones se realicen contra el maestro. Para registrar un dominio en Internet, se exige poseer al menos dos servidores autoritativos.

Para agilizar la resolución, los servidores de nombres implementan un sistema de cachés, almacenando las consultas DNS realizadas con anterioridad. De esta forma, si pedimos dos veces consecutivas la dirección de un dominio determinado, la segunda vez ya tendremos la respuesta correcta almacenada en un servidor DNS próximo y la respuesta será mucho más rápida que recorrer la jerarquía de DNS de nuevo.

Por supuesto, un servidor que actúa de caché no puede almacenar el registro indefinidamente, ya que daría información obsoleta en caso de que alguno de los registros cambie en el servidor autoritativo. Por ello, las respuestas del servidor autoritativo llevan asociado un TTL (Time To Live), registro que nos indica el periodo de tiempo hasta que nuestro registro cacheado se vuelve obsoleto y debe ser consultado de nuevo. El TTL varía de un servidor autoritativo a otro, desde segundos hasta semanas.

Aparte de la resolución de dominios, DNS también guarda otra información como qué servidores de correo aceptan correo para un dominio, qué servidores y en qué puertos escuchan determinados servicios, etc.

La información contenida en la base de datos de un servidor DNS, se clasifica mediante los tipos de registros. Algunos ejemplos:

Tipo A: Direcciones IP versión 4. Tipo AAAA: Direcciones IP versión 6. Tipo CNAME: Canonical name record, usado para indicar que este nombre es un alias del nombre original, un

registro tipo A o AAAA. Por ejemplo, se usa para tener diferentes servicios alojados en el mismo servidor. Tipo MX: Lista de servidores de correo electrónico asociados al dominio. Tipo NS: Lista de servidores autoritativos del dominio. Tipo SOA: Información sobre el dominio: servidor NS primario, última actualización, frecuencia de actualización,

direcciones de correo electrónico de los administradores, etc. Tipo SRV: Indica el servidor responsable y puerto dónde escucha para un determinado servicio. Por ejemplo, se usa

para indicar el servidor LDAP asociado a un dominio. Tipo TXT: Permite al administrador insertar una cadena de texto cualquiera. Por ejemplo, los registros TXT SPF se

usan para definir qué servidores envían correo de cuentas de un dominio.

Este servicio escucha en el puerto 53 de los protocolos de transporte UDP y TCP. Usualmente, se usa UDP para todos los mensajes del protocolo, aunque TCP está también permitido. Como excepción tenemos la transferencia de zona (copia de toda la base de datos desde un servidor maestro), que se debe realizar obligatoriamente usando TCP, dado el volumen de datos.

Un caso particular, especialmente interesante y soportado por Zentyal, son los DNS dinámicos. Algunos ISPs cobran un extra adicional por poseer una IP estática, por lo que es posible que un usuario en particular posea IP dinámica (La IP de WAN puede cambiar aleatoriamente dentro de un rango cada vez que se reconecta con la centralita del ISP). Esto plantea un problema para el funcionamiento básico de DNS. Para solucionar este problema, los servidores de DNS dinámicos son capaces de cambiar en tiempo real los nombres de host y direcciones IP entre otros registros. Para ello, el host cliente, dispone de un programa que detecta cambios en la IP de WAN y notifica al servidor de DNS dinámicas, con lo que conseguimos que estos cambios de IP efectiva sean transparentes.

[1] http://es.wikipedia.org/wiki/Domain_Name_System

[2] http://www.iana.org/

[3] http://es.wikipedia.org/wiki/Dominio_de_nivel_superior

BIND [4] es el servidor DNS de facto en Internet, originalmente creado en la Universidad de California, Berkeley y en la actualidad mantenido por el Internet Systems Consortium. La versión BIND 9, reescrita desde cero para soportar las últimas funcionalidades del protocolo DNS, es la usada por el módulo de DNS de Zentyal.

[4] http://www.isc.org/software/bind

Page 43: Manual zentyal

Configuración de un servidor DNS caché con ZentyalEl módulo de servidor de DNS de Zentyal siempre funciona como servidor DNS caché para las redes marcadas como internas en Zentyal, así que si solamente queremos que nuestro servidor realice caché de las consultas DNS, bastará con habilitar el módulo.

En ocasiones, puede que este servidor DNS caché tenga que ser consultado desde redes internas no configuradas directamente en Zentyal. Aunque este caso es bastante excepcional, puede darse en redes con rutas hacia segmentos internos o redes VPN.

Zentyal permite configurar el servidor DNS para que acepte consultas de estas subredes a través de un fichero de configuración. Podremos añadir estas redes en el fichero /etc/zentyal/dns.conf mediante la opción intnets=:

# Internal networks allowed to do recursive queries# to Zentyal DNS caching server. Localnetworks are already# allowed and this settings is intended to allow networks# reachable through static routes.# Example: intnets = 192.168.99.0/24,192.168.98.0/24intnets =

Y tras reiniciar el módulo DNS se aplicarán los cambios.

El servidor DNS caché de Zentyal consultará directamente a los servidores DNS raíz a qué servidor autoritario tiene que preguntar la resolución de cada petición DNS y las almacenará localmente durante el período de tiempo que marque el campo TTL. Mediante esta funcionalidad reduciremos el tiempo necesario para iniciar cada conexión de red, aumentando la sensación de velocidad de los usuarios y reduciendo el consumo real de tráfico hacia Internet.

Para que el servidor Zentyal utilice su propio servidor DNS caché, que acabamos de configurar, tendremos que ir a Red ‣ DNS y configurar 127.0.0.1 como primer servidor DNS.

DNS configurado como caché local

El dominio de búsqueda es básicamente una cadena que se añadirá a la búsqueda en caso de que sea imposible resolver con la cadena de texto que el usuario ha pedido. El dominio de búsqueda se configura en los clientes, pero se puede servir automáticamente por DHCP, de tal manera que cuando nuestros clientes reciban la configuración inicial de red, podrán adquirir también este dato. Por ejemplo, nuestro dominio de búsqueda podría ser foocorp.com, el usuario intentaría acceder a la máquina example; al no estar presente en sus máquinas conocidas, la resolución de este nombre fallaría, por lo que su sistema operativo probaría automáticamente con example.foocorp.com, resultando en una resolución de nombre con éxito en este segundo caso.

En Red ‣ Herramientas de diagnóstico disponemos de la herramienta de Resolución de Nombres de Dominio, que mediante dig nos muestra los detalles de una consulta DNS al servidor que tengamos configurado en Red ‣ DNS.

Page 44: Manual zentyal

Resolución de un nombre de dominio usando el DNS caché local

Proxy DNS transparente

El proxy DNS transparente nos permite forzar el uso de nuestro servidor DNS sin tener que cambiar la configuración de los clientes. Cuando esta opción está activada todas las peticiones DNS que pasen por Zentyal son redirigidas al servidor DNS de Zentyal que se encargará de responder. Los clientes deberán usar Zentyal como puerta de enlace para asegurarnos que sus peticiones DNS sean redirigidas. Para habilitar esta opción es necesario tener activado el módulo de cortafuegos.

Proxy DNS transparente

Redirectores DNS

Los redirectores son servidores DNS a que nuestro servidor enviará las consultas; sólo en caso que los redirectores no tengan respuesta nuestro servidor tratará de resolver la consulta.

El uso de los redirectores es dar acceso a nuestro servidor a servidores de nombres de dominio privados; como los dominios privados no son accesibles a través de Internet la manera de acceder a su servicio de nombres es a través de servidores específicos.

Si no queremos resolver dominios privados, es mejor no definir ningún redirector.

Redirector DNS

Page 45: Manual zentyal

Configuración de un servidor DNS autoritario con Zentyal

Además de DNS caché, Zentyal puede funcionar como servidor DNS autoritario para un listado de dominios que configuremos. Como servidor autoritario responderá a consultas sobre estos dominios realizadas tanto desde redes internas como desde redes externas, para que no solamente los clientes locales, sino cualquiera pueda resolver estos dominios configurados. Como servidor caché responderá a consultas sobre cualquier dominio solamente desde redes internas.

La configuración de este módulo se realiza a través del menú DNS, dónde podremos añadir cuantos dominios y subdominios deseemos.

Lista de dominios

Para configurar un nuevo dominio, desplegaremos el formulario pulsando Añadir nuevo. Desde éste se configurará el Nombre del dominio y opcionalmente la Dirección IP a la que hará referencia el dominio.

Añadiendo un dominio

Una vez creado un dominio, podemos definir cuantos nombres queramos dentro de él mediante la tabla Nombres de máquinas. Para cada uno de estos nombres Zentyal configurará automáticamente la resolución inversa. Además para cada uno de los nombres podremos definir cuantos Alias queramos.

Normalmente, los nombres apuntan a la máquina dónde está funcionando el servicio y los alias a los servicios alojados en ella. Por ejemplo, la máquina amy.zentyal.com tiene los alias smtp.zentyal.com y mail.zentyal.com para los servicios de mail y la máquina rick.zentyal.com tiene los alias www.zentyal.com o store.zentyal.com entre otros, para los servicios web.

Podemos definir varias veces el mismo nombre con distintas direcciones IP, el servidor DNS irá alternando entre las distintas direcciones al contestar a las consultas sobre ese nombre. Esta característica nos permite implementar balanceo de carga entre servidores.

Añadiendo un alias

Page 46: Manual zentyal

Adicionalmente, podemos definir los servidores de correo encargados de recibir los mensajes para cada dominio. Dentro de Intercambiadores de correo elegiremos un servidor del listado definido en Nombres o uno externo. Mediante la Preferencia, determinamos a cuál de estos servidores le intentarán entregar los mensajes otros servidores. Si el de más preferencia falla lo reintentarán con el siguiente.

Añadiendo un intercambiador de correo

Además también podemos configurar los registros NS para cada dominio o subdominio mediante la tabla Servidores de nombres.

Añadiendo un nuevo servidor de nombres

Hay que mencionar que cuando se añade un nuevo dominio, se puede apreciar la presencia de un campo con valor falso en la columna Dinámico. Un dominio se establece como dinámico cuando es actualizado automáticamente por un proceso externo sin reiniciar el servidor. En Zentyal, los dominios dinámicos son los actualizados automáticamente por DHCP con los nombres de las máquinas a las que ha asignado una dirección IP, véase Actualizaciones dinámicas . Se pueden mezclar configuraciones estáticas con un dominio dinámico pero hay que tener cuidado de no usar los mismos nombres que usa el servicio DHCP para evitar conflictos y configuraciones erróneas.

Los registros de texto son registros DNS que suplementán un dominio o un nombre de maquina con información adicional en forma de texto. Esta información puede ser para consumo humano o, más frecuentemente, para uso de software. Se usa extensivamente para diferentes aplicaciones antispam (SPF o DKIM).

Añadiendo un registro de texto

Para crear un registro de texto, acudiremos al campo Registros de texto del dominio. Podremos elegir si el campo esta asociado a un nombre de maquina especifico o al dominio y el contenido del mismo.

Page 47: Manual zentyal

Es posible asociar más de un campo de texto, tanto al dominio como a un nombre de maquina.

Los registros de servicio informan sobre los servicios disponibles en el dominio y en qué máquinas residen. Podremos acceder a la lista de Registros de servicios a través del campo Registros de servicio de la lista de dominios. En cada registro de servicio se indicará el Nombre del servicio y su Protocolo. Identificaremos la maquina que proveerá el servicio con los campos Destino y Puerto de destino. Para aumentar la disponibilidad del servicio y/o repartir carga es posible definir más de un registro por servicio, en este caso los campos Prioridad y Peso ayudarán a elegir el servidor a emplear. A menor valor en la prioridad, mayor es la posibilidad de ser elegido. Cuando dos máquinas tienen el mismo nivel de prioridad se usará el peso para determinar cual de las máquinas recibirá mayor carga de trabajo. El protocolo XMPP que se usa para la mensajería instántanea hace uso extensivo de estos registros DNS.

Añadiendo un registro de servicio

Ejemplos Prácticos

Ejemplo práctico A

Comprobar el correcto funcionamiento del servidor DNS caché.

1. Acción: Acceder a Zentyal, entrar en Estado del módulo y activar el módulo DNS, para ello marcar su casilla en la columna Estado.

Efecto:

Zentyal solicita permiso para sobreescribir algunos ficheros.

2. Acción: Leer los cambios de cada uno de los ficheros que van a ser modificados y otorgar permiso a Zentyal para sobreescribirlos.

Efecto:

Se ha activado el botón Guardar Cambios.

3. Acción: Ir a Red ‣ DNS y añadir un nuevo Servidor de Nombres de Dominio con dirección 127.0.0.1, situado al principio de la lista en caso de haber varios.

Efecto:

Establece que sea el propio servidor Zentyal quien traduzca de nombres a direcciones IP y viceversa.

4. Acción: Guardar los cambios.

Efecto:

Zentyal muestra el progreso mientras aplica los cambios. Una vez que ha terminado avisa que los cambios han sido aplicados. Ahora Zentyal gestiona la configuración del servidor DNS.

Page 48: Manual zentyal

5. Acción:

A través de la herramienta Resolución de Nombres de Dominio disponible en Red ‣ Diagnóstico comprobar el funcionamiento de la caché consultado el dominio www.example.com consecutivamente comprobando como se reduce el tiempo de respuesta (Query time) tras la primera consulta.

Primera resolución

Primera resolución del dominio

Segunda resolución (cacheada)

Segunda resolución del dominio

Ejemplo práctico B

La empresa DemostracionesWeb S.L. acaba de comprar el dominio demostracionesweb.net, y desean hacer pública la última demo de sus desarrollos, usando un nombre intuitivo para sus usuarios http://www.demostracionesweb.net/. La demostración se sirve desde una máquina llamada demo. Para ello añadiremos un nuevo dominio al servidor DNS, demostracionesweb.net. En este dominio asignar la dirección de red 10.0.0.1 al nombre de máquina demo.demostracionesweb.net y a ésta el alias www.demostracionesweb.net. Comprobar que el dominio www.demostracionesweb.net funciona correctamente usando Resolución de Nombres de Dominio en Red ‣ Diagnóstico.

Page 49: Manual zentyal

1. Acción: Acceder a Zentyal, entrar en Estado del módulo y activar el módulo DNS, para ello marcar su casilla en la columna Estado.

Efecto:

Zentyal solicita permiso para sobreescribir algunos ficheros.

2. Acción: Leer los cambios de cada uno de los ficheros que van a ser modificados y otorgar permiso a Zentyal para sobreescribirlos.

Efecto:

Se ha activado el botón Guardar Cambios.

3. Acción: Ir a Red ‣ DNS y añadir un nuevo Servidor de Nombres de Dominio con dirección 127.0.0.1, situado al principio de la lista en caso de haber varios.

Efecto:

Establece que sea la propia Zentyal la que traduzca de nombres a direcciones IP y viceversa.

4. Acción:

Entrar en DNS y en Añadir nuevo introducimos el nombre dominio demostracionesweb.net.

Efecto:

Se desplegará una tabla listando los dominios definidos donde podemos añadir nombres de máquinas, servidores de correo electrónico, servidores de nombres o la propia dirección del dominio entre otros.

5. Acción:

Hacemos click sobre Nombres, para el dominio demostracionesweb.net. Añadir una nueva entrada con Nombre demo y Dirección IP 10.0.0.1.

Efecto:

Se desplegará una tabla listando los nombres de máquinas definidos para el dominio demostracionesweb.net donde podemos añadir los alias asociados a cada uno de ellos.

6. Acción:

Entrar en Alias del nombre demo. Añadir una nueva entrada con Alias www.

Efecto:

Se desplegará una tabla listando los alias definidos para el nombre de máquina demo.

Alias definidos para el nombre de máquina demo

7. Acción: Guardar los cambios.

Efecto:

Page 50: Manual zentyal

Se solicitará permiso para escribir los nuevos ficheros.

8. Acción: Aceptar sobreescribir dichos ficheros y guardar cambios.

Efecto:

Zentyal muestra el progreso mientras aplica los cambios. Una vez que ha terminado avisa que los cambios han sido aplicados. Ahora Zentyal gestiona la configuración del servidor DNS.

9. Acción:

A través de la herramienta Resolución de Nombres de Dominio disponible en Red ‣ Diagnóstico comprobar el funcionamiento del dominio www.demostracionesweb.net que resuelve a demo.demostracionesweb.net y éste a su vez a la dirección 10.0.0.1.

Primera resolución del dominio

Servicio de sincronización de hora (NTP)

Introducción a NTP

El protocolo NTP [1] (Network Time Protocol) sirve para sincronizar con precisión los relojes de los sistemas utilizando una red local e incluso Internet ya que está diseñado para resistir los efectos de la latencia variable (jitter).

Sincronizar con exactitud los relojes de los sistemas es importante para el correcto funcionamiento de la autenticación centralizada, mantener la correlación de los logs en nuestra red y en general cualquier sincronización de datos entre varios sistemas.

Existen 16 diferentes niveles (conocidos como stratus en el protocolo) que definen la distancia del reloj de referencia y la precisión del servidor NTP. El stratus 0 son los relojes atómicos que no se conectan directamente a la red sino mediante una conexión serie RS-232 a otro equipo. Este sistema a su vez, se considera stratus 1. Los servidores stratus 2 se sincronizan con sistemas de este nivel y además se sincronizan entre ellos para asegurar la precisión de su reloj. Estos servidores normalmente ya son accesibles públicamente.

Una curiosidad a destacar es que éste es uno de los protocolos más antiguos de Internet todavía en uso (desde antes de 1985).

Page 51: Manual zentyal

[1] http://es.wikipedia.org/wiki/Network_Time_ProtocolZentyal integra ntpd [2] como servidor NTP. Este servicio NTP utiliza el puerto 123 del protocolo UDP.

[2] http://www.eecis.udel.edu/~mills/ntp/html/ntpd.html

Configuración del cliente NTP

En sistemas Linux, el cliente de NTP es implementado como un demonio llamado ntpd mientras que en Windows es un servicio del sistema llamado W32Time.

Para configurar un cliente Ubuntu Linux, accederemos a Sistema -> Administración -> Hora y Fecha:

Sistema -> Administración -> Hora y Fecha

Haciendo click en el candado conseguiremos privilegios de administrador y podremos seleccionar Mantener sincronizado con los servidores de Internet. Es posible que necesitemos instalar paquetes adicionales, en este caso nos lo sugerirá automáticamente. Opcionalmente además podemos seleccionar nuestra zona horaria y los servidores NTP (de una lista predefinida o especіficar unos propios).

Ajustes de hora y fecha

Para configurar un cliente Windows XP, debemos hacer click sobre el reloj de la barra de tareas y allí Ajustar fecha y hora:

Page 52: Manual zentyal

Ajustar fecha y hora

En la pestaña Hora de Internet, marcaremos Sincronizar automáticamente con un servidor horario de Internet especificando la dirección IP o nombre DNS del servidor y aceptaremos los cambios.

Hora de Internet

Configuración de un servidor NTP con Zentyal

Zentyal utiliza el servidor NTP tanto para la sincronización de su propio reloj como para ofrecer este servicio en la red, así que es importante activarlo aunque sólo sea para si mismo.

Una vez habilitado el módulo, en Sistema ‣ General podemos comprobar que el servicio esta funcionando y que se ha deshabilitado la opción de ajustar el tiempo manualmente. Es necesario configurar correctamente en que zona horaria nos encontramos.

Módulo de NTP instalado y habilitado

Si accedemos a Infrastructure ‣ NTP, podemos habilitar o deshabilitar el servicio, así como escoger los servidores externos con los que deseamos sincronizar. Por defecto, la lista cuenta con tres servidores funcionales preconfigurados, pertenecientes al proyecto NTP [3].

Page 53: Manual zentyal

Configuración y servidores externos para NTP

Una vez que Zentyal esté sincronizado, podrá ofrecer su hora de reloj mediante el servicio NTP. Como siempre, no deberemos olvidar comprobar las reglas del cortafuegos, ya que normalmente NTP se habilita sólo para redes internas.

[3] <http://www.pool.ntp.org/en/>

Ejemplos prácticos

Ejemplo práctico A

Uno de los servicios estrella de la agencia de viajes Travelia Fun, S.L., es la gestión de cambios de billetes en caso de incidencia, para lo cual en muchos casos cada minuto disponible puede ser crítico para la elección entre una alternativa u otra. La empresa cuenta con ocho puestos de trabajo, cada uno con su hora local y con desfases que pueden llegar a ser de hasta 15 minutos de un puesto a otro, dado que los usuarios generalmente usan su reloj de pulsera para configurar la hora y, por lo tanto, dando un servicio deficiente o, por lo menos, mejorable. La empresa también cuenta con un servidor Zentyal que gestiona los servicios de DHCP y DNS. Se propone resolver el problema de Travelia Fun configurando Zentyal también como servidor NTP.

1. Acción: Acceder a Zentyal, entrar en Estado del Módulo y activar el módulo NTP, para ello marca su casilla en la columna Estado. Nos informa de los cambios que va a realizar en el sistema. Permitir la operación pulsando el botón Aceptar.

Efecto:

Se ha activado el botón Guardar Cambios.

2. Acción: Acceder al menú Infrastructure ‣ NTP. En la sección Activar sincronización con servidores NTP externos seleccionar Activado y pulsar Cambiar.

Efecto:

Aparecen una lista donde se puede introducir los servidores NTP con los que se sincronizará, preconfigurada para usar los del proyecto NTP. Desaparece la opción de cambiar manualmente la fecha y hora en Sistema ‣ General

3. Acción: Guardar los cambios.

Efecto:

Zentyal muestra el progreso mientras aplica los cambios. Una vez que ha terminado lo muestra. Zentyal ya está configurado como servidor NTP.

Page 54: Manual zentyal

4. Acción: Configurar los puestos de trabajo para que sincronicen su hora con el servidor Zentyal, tal y como se ha explicado previamente.

Efecto:

A partir de ahora, la empresa Travelia Fun gestionará los cambios de billetes de sus clientes conociendo exactamente el tiempo disponible e independientemente de qué trabajador atienda la incidencia.

Servicio de configuración de red (DHCP)

Introducción a DHCP

DHCP [1] (Dynamic Host Configuration Protocol) es un protocolo que permite a un dispositivo pedir y obtener diversos parámetros de configuración, normalmente configuración de red, como puede ser su dirección IP, máscara de red, puerta de enlace, servidores DNS, etc.

De esta manera, se facilita el acceso a la red sin la necesidad de una configuración manual por parte del usuario, y adicionalmente se evita que dos máquinas intenten usar la misma dirección dentro de una red provocando colisiones.

Cuando un cliente DHCP se conecta a la red envía una petición a la dirección de difusión (broadcast). El servidor DHCP responde a esa petición con la dirección IP asignada, el tiempo de concesión de esa dirección y demás parámetros de configuración.

Existen dos métodos de asignación de direcciones:

Manual: La asignación se hace a partir de una lista de correspondencia entre direcciones MAC y direcciones IP. El administrador de la red se encarga de la definición de esta lista. Este método es útil para asignar siempre la misma dirección IP a un dispositivo.

Dinámica: El administrador de la red define un rango de direcciones IP de dónde se ceden (lease) a los dispositivos que envían una petición por un período de tiempo establecido en el que la IP concedida es válida. El servidor guarda una lista con las asignaciones actuales para intentar volver a asignar la misma dirección IP a un cliente en sucesivas peticiones.

Para explicar el proceso de configuración usando DHCP, podemos distinguir cuatro fases:

DHCP discovery: El cliente manda un mensaje de broadcast (sin destinatario concreto, legible por todos los dispositivos conectados) a la subred física. Este mensaje inicial tiene el objetivo de descubrir el servidor de DHCP. Si no obtiene respuesta, dependiendo de la implementación, el cliente puede intentar mandar de nuevo el mensaje cada cierto intervalo de tiempo y abandonar su intento de conseguir la configuración tras varios intentos.

DHCP offer: Cuando el servidor de DHCP detecta el anterior mensaje, reserva una dirección IP del rango disponible y le comunica esta reserva al cliente. Este mensaje contiene la dirección MAC del cliente, la dirección IP asignada por el servidor, la máscara de subred, duración de la concesión y la dirección IP del servidor que está contestando. La asignación de la dirección, tiene asociado como ya hemos comentado, un tiempo hasta su expiración, cuando el cliente haya consumido una parte de ese tiempo, intentará renovar su reserva para conservar su dirección IP asociada. En caso de que el servidor original no responda, el cliente intentará conservar esa misma dirección IP, renovando con otro servidor DHCP de la red, si existiese.

DHCP request: Un cliente puede recibir ofertas como las indicadas en el anterior mensaje de varios servidores DHCP. El cliente emitirá un mensaje de broadcast con el identificador de la propuesta aceptada, permitiendo a los demás servidores de DHCP liberar la dirección propuesta para otras máquinas.

DHCP acknowledgement: En esta fase el servidor de DHCP envía un mensaje informativo al cliente conocido como DHCPACK, este paquete incluye información como la duración de la asignación, puerta de enlace, servidores de DNS, etc.

Los entornos que permiten el arranque de clientes por red como PXE [2] (Preboot Execution Environment), se basan en una

Page 55: Manual zentyal

versión extendida del protocolo DHCP. El cliente envía un paquete DHCP discovery, con opciones extendidas para PXE. Si existe un servidor DHCP en la red, éste responderá con una versión extendida del DHCP offer, que contiene campos como la lista de direcciones IP de los servidores de arranque disponibles, el tipo de comunicación (multicast, broadcast o unicast) que se debe usar en esta red para contactar con los servidores, así como otras opciones referentes al menú que se mostrará a los usuarios. Con estos parámetros el cliente sera capaz de descargar el programa básico de arranque, usando el protocolo TFTP [3] (Trivial File Transfer Protocol).

[1] http://es.wikipedia.org/wiki/Dynamic_Host_Configuration_Protocol

[2] http://es.wikipedia.org/wiki/PXE

[3] http://es.wikipedia.org/wiki/TFTPPara configurar el servicio de DHCP Zentyal usa ISC DHCP Software [4], el estándar de facto en sistemas Linux. Este servicio usa el protocolo de transporte UDP, puerto 68 en la parte del cliente y puerto 67 en el servidor.

[4] https://www.isc.org/software/dhcp

Configuración de un servidor DHCP con Zentyal

El servicio DHCP necesita una interfaz configurada estáticamente sobre la cuál se despliega el servicio. Esta interfaz además deberá ser interna. Desde el menú DHCP se configura el servidor DHCP.

Configuración del servicio DHCP

Los siguientes parámetros se pueden configurar en la pestaña de Opciones personalizadas:

Puerta de enlace predeterminada: Es la puerta de enlace que va a emplear el cliente para comunicarse con destinos que no están en su red local, como podría ser Internet. Su valor puede ser Zentyal, una puerta de enlace ya configurada en el apartado Red ‣ Routers o una Dirección IP personalizada.

Dominio de búsqueda: En una red cuyas máquinas estuvieran nombradas bajo el mismo subdominio, se podría configurar este como el dominio de búsqueda. De esta forma, cuando se intente resolver un nombre de dominio sin éxito (por ejemplo host),

Page 56: Manual zentyal

se intentará de nuevo añadiéndole el dominio de búsqueda al final (host.zentyal.lan). Servidor de nombres primario:

Especifica el servidor DNS que usará el cliente en primer lugar cuando tenga que resolver un nombre de dominio. Su valor puede ser Zentyal DNS local o la dirección IP de otro servidor DNS. Si queremos que se consulte el propio servidor DNS de Zentyal, hay que tener en cuenta que el módulo DNS [5] debe estar habilitado.

Servidor de nombres secundario: Servidor DNS con el que contactará el cliente si el primario no está disponible. Su valor debe ser una dirección IP de un servidor DNS.

Servidor NTP: Servidor NTP que usará el cliente para sincronizar el reloj de su sistema. Puede ser Ninguno, Zentyal NTP local o la dirección IP de otro servidor NTP. Si queremos que se consulte el propio servidor NTP de Zentyal, hay que tener el módulo NTP [6] habilitado.

Servidor WINS: Servidor WINS (Windows Internet Name Service) [7] que el cliente usará para resolver nombres en una red NetBIOS. Este puede ser Ninguno, Zentyal local u otro Personalizado. Si queremos usar Zentyal como servidor WINS, el módulo de Compartir de ficheros [8] tiene que estar habilitado.

Configuración de los rangos de DHCP

Debajo de estas opciones, podemos ver los rangos dinámicos de direcciones y las asignaciones estáticas. Para que el servicio DHCP funcione, al menos debe haber un rango de direcciones a distribuir o asignaciones estáticas; en caso contrario el servidor DHCP no servirá direcciones IP aunque esté escuchando en todas las interfaces de red.

Los rangos de direcciones y las direcciones estáticas disponibles para asignar desde una determinada interfaz vienen determinados por la dirección estática asignada a dicha interfaz. Cualquier dirección IP libre de la subred correspondiente puede utilizarse en rangos o asignaciones estáticas.

Para añadir un rango en la sección Rangos se introduce un nombre con el que identificar el rango y los valores que se quieran asignar dentro del rango que aparece encima.

Se pueden realizar asignaciones estáticas de direcciones IP a determinadas direcciones físicas en el apartado Asignaciones estáticas. Para ello tendremos que crear un objeto, cuyos miembros sean únicamente parejas de direcciones IP de host (/32) y direcciones MAC. Podemos crear este objeto bien desde Red ‣ Objetos, bien usando el menú rápido que se nos ofrece desde la interfaz de DHCP. Una dirección asignada de este modo no puede formar parte de ningún rango. Se puede añadir una Descripción opcional para la asignación también.

[5] Véase la sección Servicio de resolución de nombres de dominio (DNS) para más detalles.

[6] Véase la sección Servicio de sincronización de hora (NTP) para más detalles.

Page 57: Manual zentyal

[7] http://es.wikipedia.org/wiki/Windows_Internet_Naming_Service

[8] Véase la sección Servicio de compartición de ficheros y de autenticación para más detalles.

Optiones avanzadas

Opciones avanzadas de DHCP

La concesión dinámica de direcciones tiene un tiempo límite. Una vez expirado este tiempo se tiene que pedir la renovación (configurable en la pestaña Opciones avanzadas). Este tiempo varía desde 1800 segundos hasta 7200. Esta limitación también se aplica a las asignaciones estáticas.

Zentyal soporta arranque remoto de clientes ligeros o Thin Clients. Se configura en Siguiente servidor a qué servidor PXE se debe conectar el cliente ligero y este se encargará de transmitir todo lo necesario para que el cliente ligero sea capaz de arrancar su sistema. El servidor PXE puede ser una dirección IP o un nombre de máquina. Será necesario indicar la ruta de la imagen de arranque, o si Zentyal es el servidor PXE, se podrá subir el fichero con la imagen a través de la interfaz web.

Actualizaciones dinámicas

Las actualizaciones dinámicas de DNS permiten asignar nombres de dominio a los clientes DHCP mediante la integración de los módulos de DHCP y DNS. De esta forma se facilita el reconocimiento de las máquinas presentes en la red por medio de un nombre de dominio único en lugar de por una dirección IP que puede cambiar.

Page 58: Manual zentyal

Configuración de actualizaciones DNS dinámicas

Para utilizar esta opción, hay que acceder a la pestaña Opciones de DNS dinámico y para habilitar esta característica, el módulo DNS debe estar habilitado también. Se debe disponer de un Dominio dinámico y un Dominio estático, que ambos se añadirán a la configuración de DNS automáticamente. El dominio dinámico aloja los nombres de máquinas cuya dirección IP corresponde a una del rango y el nombre asociado es el que envía el cliente DHCP, normalmente el nombre de la máquina, si no envía ninguno usará el patrón dhcp-<dirección-IP-ofrecida>.<dominio-dinámico>. Si existe conflictos con alguna asignación estática se machará la dirección estática establecida manualmente. Con respecto al dominio estático, el nombre de máquina seguirá este patrón: <nombre>.<dominio-estático> siendo el nombre que se establece en los miembros asociados al objeto que esta en la tabla de Asignaciones estáticas.

Ejemplos Prácticos

Ejemplo práctico A

La empresa de importación Distribuciones Chinatown, S.A. ha decidido abrir una oficina en Valdemoro para gestionar las ventas y los pedidos de la zona centro de España. Prevén que a corto y medio plazo la oficina no superará los 20 puestos de trabajo. Configurar Zentyal como servidor DHCP para esta nueva oficina.

1. Acción: Entrar en Zentyal y acceder al panel de control. Entrar en Estado del módulo y activar el módulo DHCP, para ello marcar su casilla en la columna Estado.

Efecto:

Zentyal solicita permiso para sobreescribir algunos ficheros.

2. Acción: Leer los cambios de cada uno de los ficheros que van a ser modificados y otorgar permiso a Zentyal para sobreescribirlos.

Efecto:

Se ha activado el botón Guardar Cambios.

3. Acción: Entrar en DHCP y seleccionar la interfaz sobre la cual se configurará el servidor. La puerta de acceso puede ser el propio servidor Zentyal, una dirección específica, o ninguna (sin salida a otras redes). Además se podrá definir el dominio de búsqueda (dominio que se añade a todos los nombres DNS que no se pueden resolver) y al menos un servidor DNS (servidor DNS primario y opcionalmente uno secundario).

A continuación Zentyal nos informa del rango de direcciones disponibles, vamos a elegir un subconjunto de 20 direcciones, por ejemplo desde ‘192.168.1.10’ hasta ‘192.168.1.29’ y en Añadir nueva le damos un nombre significativo al rango que pasará a asignar Zentyal.

4. Acción: Guardar los cambios.

Efecto:

Page 59: Manual zentyal

Zentyal muestra el progreso mientras aplica los cambios. Una vez que ha terminado lo muestra.

Ahora Zentyal gestiona la configuración del servidor DHCP.

5. Acción:

Comprobar desde el Dashboard que la dirección concedida aparece en el widget IPs asignadas con DHCP [10].

[10] Hay que tener en cuenta que las asignaciones estáticas no aparecen en el widget del DHCP.

Autoridad de certificación (CA)

Infraestructura de clave pública (PKI)

Las tecnologías de encriptación permiten garantizar la autenticidad, privacidad e integridad en las comunicaciones de los datos transmitidos. Sin embargo, el principal problema de todos mecanismos de cifrado de clave compartida consiste en cómo distribuir esta clave entre los usuarios sin que puedan ser interceptadas por terceros. Para solucionar este problema existe la infraestructura de clave pública [1] (Public Key Infraestructure - PKI). Esta tecnología nos permite compartir claves en un medio inseguro, sin que sea posible la suplantación, intercepción o modificación de los datos entre dos usuarios.

En la PKI cada usuario genera un par de claves: una pública y una privada. La pública es distribuida entre los demás usuarios y la privada guardada cuidadosamente. Cualquiera que quiera encriptar un mensaje debe hacerlo con su clave privada y la pública del destinatario. De esta manera el mensaje sólo puede ser descifrado con la clave privada de este y al haber sido encriptado con la clave privada del emisor, conociendo su pública podemos garantizar su integridad.

Cifrado con clave pública

Firmado con clave pública

Page 60: Manual zentyal

No obstante, esta solución tiene un nuevo problema: ¿si cualquiera puede presentar una clave pública, cómo garantizamos que un participante es realmente quien dice ser y no está suplantando una identidad que no le corresponde?. Para resolver este problema, se crearon los certificados [2].

Un certificado es un fichero que contiene una clave pública, firmada por un tercero. A este tercero en el que depositamos la confianza de verificar las identidades se le denomina Autoridad de Certificación (Certification Authority - CA) [3].

Expedición de un certificado

[1] http://es.wikipedia.org/wiki/Infraestructura_de_clave_pública

[2] http://es.wikipedia.org/wiki/Certificado_de_clave_publica

[3] http://es.wikipedia.org/wiki/Autoridad_de_certificacionZentyal integra OpenSSL [4] para la gestión de la Autoridad de Certificación y del ciclo de vida de los certificados expedidos por esta.

[4] http://www.openssl.org/

Importación de certificados en los clientes

Para poder validar cualquier certificado emitido por una Autoridad de Certificación gestionada por Zentyal, hay que importar en el sistema el certificado de esta.

En Windows XP iremos a Inicio ‣ Configuración ‣ Panel de control, y en esta ventana seleccionaremos Conexiones de red e Internet:

Page 61: Manual zentyal

Panel de control

En esta seleccionaremos la opción Opciones de Internet:

Conexiones de red e Internet

Aparecerá una nueva ventana Propiedades de Internet, seleccionaremos la pestaña Contenido: y pulsaremos en Certificados...:

Page 62: Manual zentyal

Propiedades de Internet

En esa ventana Certificados podemos ver diferentes pestañas donde se clasifican los diferentes tipos de certificados almacenados. Para importar el nuestro pulsaremos Importar...:

Certificados

Comenzará un asistente para la importación de nuevos certificados. Continuaremos con el Siguiente paso:

Page 63: Manual zentyal

Asistente para importación de certificados

En Nombre de archivo seleccionaremos donde se encuentra el fichero con el certificado utilizando Examinar.... Una vez seleccionado el certificado a importar seguimos hacia el siguiente paso:

Asistente para importación de certificados

En la ventana Almacén de certificados marcamos la opción Seleccionar automáticamente el almacén de certificados en base al tipo de certificado y continuaremos una vez más hacia el siguiente paso:

Asistente para importación de certificados

Page 64: Manual zentyal

Se mostrará un resumen de las acciones a ejecutar y ya solo quedará Finalizar:

Asistente para importación de certificados

Si todo fue bien, un diálogo informará consecuentemente:

Asistente para importación de certificados

Podemos ya verificar que el certificado de nuestra CA aparece en la lista de certificados:

Certificados

También podemos añadir el certificado de la CA a un navegador como Mozilla Firefox. Veamos como hacerlo en este caso sobre Ubuntu.

Lo primero es ejecutar el navegador e ir a Editar ‣ Preferencias. En esta ventana seleccionaremos la pestaña Avanzado, luego la pestaña Cifrado y pulsaremos en Ver certificados:

Page 65: Manual zentyal

Preferencias avanzadas

De manera muy similar al caso anterior, se muestran los distintos tipos de certificados clasificados en diferentes pestañas. Seleccionaremos la de Autoridades:

Certificados de Autoridades

Procederemos a Importar el certificado de la CA seleccionando el fichero donde se encuentra. Entonces nos mostrará la siguiente ventana, para elegir en qué situaciones queremos confiar en esta nueva Autoridad de Certificación:

Importar nuevo certificado

Mediante Ver nos mostrará los detalles del certificado:

Page 66: Manual zentyal

Detalles del certificado

Una vez verificado que el certificado es correcto y seleccionados los usos para los que vamos a confiar en esta CA, sólo queda pulsar Aceptar y verificar que el certificado aparece en la lista:

Certificados

Configuración de una Autoridad de Certificación con Zentyal

En Zentyal, el módulo Autoridad de Certificación es autogestionado, lo que quiere decir que no necesita ser habilitado en Estado del Módulo como el resto sino que para comenzar a utilizar este servicio hay que inicializar la CA. Las funcionalidades del módulo no estarán disponibles hasta que no hayamos efectuado esta acción.

Accederemos a Autoridad de Certificación ‣ General y nos encontraremos con el formulario para inicializar la CA. Se requerirá el Nombre de Organización y el número de Días para expirar. Además, también es posible especificar opcionalmente Código del País (acrónimo de dos letras que sigue el estándar ISO-3166-1 [5]), Ciudad y Estado.

Page 67: Manual zentyal

Crear Certificado de la Autoridad de Certificación

A la hora de establecer la fecha de expiración hay que tener en cuenta que en ese momento se revocarán todos los certificados expedidos por esta CA, provocando la parada de los servicios que dependan de estos certificados.

Una vez que la CA ha sido inicializada, ya podremos expedir certificados. Los datos necesarios son el Nombre Común del certificado y los Días para Expirar. Este último dato está limitado por el hecho de que ningún certificado puede ser válido durante más tiempo que la CA. En el caso de que estemos usando estos certificados para un servicio como podría ser un servidor web o un servidor de correo, el Nombre Común deberá coincidir con el nombre de dominio del servidor. Por ejemplo, si utilizamos el nombre de dominio zentyal.home.lan para acceder al interfaz de administración web de Zentyal, será necesario un certificado con ese Nombre Común. En el caso de que el certificado sea un certificado de usuario, usaremos normalmente su dirección de correo como Nombre Común.

Opcionalmente se pueden definir Subject Alternative Names [6] para el certificado. Estos sirven para establecer nombres comunes a un certificado: un nombre de dominio o dirección IP para dominio virtual HTTP o una dirección de correo para firmar los mensajes de correo electrónico.

Una vez el certificado haya sido creado, aparecerá en la lista de certificados, estando disponible para el administrador y el resto de módulos. A través de la lista de certificados podemos realizar distintas acciones con ellos:

Descargar las claves pública, privada y el certificado. Renovar un certificado. Revocar un certificado. Reexpedir un certificado previamente revocado o caducado.

Listado de certificados

El paquete con las claves descargadas contiene también un archivo PKCS12 que incluye la clave privada y el certificado y que puede instalarse directamente en otros programas como navegadores web, clientes de correo, etc.

Si renovamos un certificado, el actual será revocado y uno nuevo con la nueva fecha de expiración será expedido. Y si se renueva la CA, todos los certificados se renovarán con la nueva CA tratando de mantener la antigua fecha de expiración. Si

Page 68: Manual zentyal

esto no es posible debido a que es posterior a la fecha de expiración de la CA, entonces se establecerá la fecha de expiración de la CA.

Renovar un certificado

Si revocamos un certificado no podremos utilizarlo más, ya que esta acción es permanente y no se puede deshacer. Opcionalmente podemos seleccionar la razón para revocarlo:

unspecified: motivo no especificado, keyCompromise: la clave privada ha sido comprometida, CACompromise: la clave privada de la autoridad de certificación ha sido comprometida, affilliationChanged: se ha producido un cambio en la afiliación de la clave pública firmada hacia otra organización, superseded: el certificado ha sido renovado y por tanto reemplaza al emitido, cessationOfOperation: cese de operaciones de la entidad certificada, certificateHold: certificado suspendido, removeFromCRL: actualmente sin implementar, da soporte a los CRL diferenciales, es decir, listas de certificados

cuyo estado de revocación ha cambiado.

Revocar un certificado

Cuando un certificado expire, el resto de módulos serán notificados. La fecha de expiración de cada certificado se comprueba una vez al día y cada vez que se accede al listado de certificados.

[5] http://es.wikipedia.org/wiki/ISO_3166-1

[6] Para más información sobre los Subject Alternative Names véase http://www.openssl.org/docs/apps/x509v3_config.html#Subject_Alternative_Name

Certificados de Servicios

En Autoridad de Certificación ‣ Certificados de Servicios podemos encontrar la lista de módulos de Zentyal que usan certificados para su funcionamiento. Cada módulo genera sus certificados autofirmados, pero podemos remplazar estos certificados por otros emitidos por nuestra CA.

Para cada servicio se puede generar un certificado especificando su Nombre Común. Si no existe un certificado con el nombre especificado, la Autoridad de Certificación lo creará automáticamente.

Page 69: Manual zentyal

Certificados de Servicios

Una vez activado, tendremos que reiniciar el módulo sobre el que hemos activado el certificado para que lo comience a utilizar, al igual que si renovamos el certificado asociado.

Ejemplos prácticos

Ejemplo práctico A

En la empresa ContaFoo S.L. están implantando protocolos de seguridad en las comunicaciones internas para cumplir con la legislación vigente. Las distintas intranets van a funcionar bajo HTTPS y el correo electrónico usará SSL/TLS, pero para ello necesitan importar el certificado de la Autoridad de Certificación que gestionan con Zentyal. Crearemos la CA y luego importaremos su certificado en los clientes que usan Windows XP.

1. Acción: En Autoridad de Certificación ‣ General. En el formulario Expedir el Certificado de la Autoridad de Certificación rellenamos los campos Nombre de la Organización y Días para Expirar con valores razonables. Pulsamos Expedir para generar la Autoridad de Certificación.

Efecto:

El par de claves de la Autoridad de Certificación es generado y su certificado expedido. La nueva CA se mostrará en el listado de certificados. El formulario para crear la Autoridad de Certificación será sustituido por uno para expedir certificados normales.

2. Acción: Desde el listado de certificados, descargaremos el de la CA, un archivo con nombre CA-key-and-cert.tar.gz que dentro contiene la clave pública ca-public-key.pem y el certificado ca-cert.pem. Siguiendo el procedimiento descrito más arriba, importaremos el fichero del certificado ca-cert.pem en las máquinas Windows XP.

Efecto:

El nuevo certificado aparecerá en el listado de certificados, y todo certificado emitido por esta CA será aceptado por las estaciones de trabajo de los usuarios con Windows XP.

Servicio de publicación de páginas web (HTTP)

Page 70: Manual zentyal

Introducción a HTTP

La Web [1] es uno de los servicios más comunes en Internet, tanto que se ha convertido en su cara más visible para la mayoría de los usuarios. Este servicio está basado en la transmisión de páginas web mediante el protocolo HTTP.

HTTP (Hypertext Transfer Protocol) [2] es un protocolo orientado a un proceso de solicitudes y respuestas. El cliente, también denominado User Agent, realiza una petición de acceso a un recurso a un servidor HTTP. El servidor que alberga ese recurso solicitado, procesa y devuelve una respuesta con ese recurso, que puede ser una página web HTML, una imagen o cualquier otro fichero que incluso haya sido generado dinámicamente en base a los parámetros de la petición. Estos recursos se identifican utilizando URLs (Uniform Resource Locators) [3], unos identificadores conocidos habitualmente como direcciones web.

Una petición por parte del cliente tiene el siguiente formato:

Una primera línea conteniendo <método> <URL> <versión HTTP>. Por ejemplo GET /index.html HTTP/1.1 solicita el recurso /index.html mediante GET y usando el protocolo HTTP/1.1.

Una línea con cada una de las cabeceras, como Host, Cookie, Referer o User-Agent entre otros. Por ejemplo Host: zentyal.com que indica que la petición se hace al dominio zentyal.com.

Una línea en blanco. Un cuerpo de forma opcional, utilizado por ejemplo para enviar información al servidor usando el método POST.

La cabecera Host es usada para especificar sobre qué dominio queremos realizar la petición HTTP. Esto posibilita tener diferentes dominios con diferentes páginas web sobre el mismo servidor. En este caso los dominios resolverán a la misma dirección IP del servidor, que examinando la cabecera Host podrá discernir a qué host virtual o dominio va dirigida la petición.

Hay varios métodos con los que el cliente puede pedir información aunque los más comunes son GET y POST. Vamos a comentar algunos:

GET: Solicita un recurso. Debería ser inocuo para el servidor y no causar ningún cambio en las aplicaciones web alojadas.

HEAD: Solicita información sobre un recurso, al igual que GET, pero la respuesta no incluirá el cuerpo, sólo la cabecera. De esta forma se puede obtener meta-información del recurso sin descargarlo.

POST: Envía información a un recurso que debe procesar el servidor, a través de un formulario web por ejemplo. Esta información se incluye en el cuerpo de la petición.

PUT: Envía un elemento para que sea almacenado sobre el recurso especificado. Por ejemplo se usa en WebDAV [4], un conjunto de extensiones del protocolo HTTP que permiten a los usuarios editar y administrar archivos de forma colaborativa.

DELETE: Elimina el recurso especificado. También se usa en WebDAV.

TRACE: Indica al servidor que debe devolver la cabecera que envía el cliente. Es útil para ver si la petición ha sido modificada en su trayecto hasta el servidor, por ejemplo por un Proxy HTTP.

La respuesta del servidor tiene la misma estructura que la petición del cliente a excepción de la primera linea. En este caso tiene el formato <código> <razón>, que es el código de la respuesta y explicación textual del mismo.

Los códigos de respuesta más comunes son:

200 OK: La solicitud ha sido procesada correctamente.

403 Forbidden: El cliente no tiene permisos para acceder al recurso solicitado.

404 Not Found: El recurso solicitado no se encuentra en el servidor.

500 Internal Server Error: Ha ocurrido un error en el servidor que impide el procesamiento de la solicitud.

Page 71: Manual zentyal

Esquema de una petición y respuesta HTTP

Por defecto HTTP usa el puerto 80 del protocolo TCP y HTTPS el puerto 443 también de TCP. HTTPS es el protocolo HTTP transmitido dentro de una conexión SSL/TLS para garantizar el cifrado de la comunicación y la autenticación del servidor.

[1] http://es.wikipedia.org/wiki/World_Wide_Web

[2] http://es.wikipedia.org/wiki/Hypertext_Transfer_Protocol

[3] http://es.wikipedia.org/wiki/Localizador_uniforme_de_recursos

[4] http://es.wikipedia.org/wiki/WebDAVEl servidor HTTP Apache [5] es el más usado en Internet, alojando más del 54% de las páginas. Zentyal usa Apache para el módulo de servidor HTTP y para su interfaz de administración.

[5] http://httpd.apache.org/

Configuración de un servidor HTTP con Zentyal

A través del menú Servidor web podemos acceder a la configuración del servidor HTTP.

Page 72: Manual zentyal

Configuración del módulo Servidor web

En la Configuración General podemos modificar los siguientes parámetros:

Puerto de escucha: Puerto HTTP, por defecto es el 80, el puerto por defecto del protocolo HTTP.

Puerto de escucha SSL: Puerto HTTPS, por defecto es el 443, el puerto por defecto del protocolo HTTPS. Se tiene que habilitar el certificado para el servicio y cambiar el puerto del interfaz de administración de Zentyal a un puerto distinto si queremos usar el 443 aquí.

Habilitar el public_html por usuario: Con esta opción, si los usuarios tienen un subdirectorio llamado public_html en su directorio personal, será accesible a través de la URL http://<zentyal>/~<usuario>/.

En Servidores virtuales o Virtual hosts podremos definir los diferentes dominios asociados con cada página web. Cuando se define un nuevo dominio con esta opción, si el módulo DNS está instalado, se intenta crear ese dominio, y si está ya creado, se añade el subdominio en caso de que éste tampoco exista. Este dominio o subdominio se crea apuntando a la dirección de la primera interfaz interna configurada con dirección estática, aunque podemos modificar el dominio posteriormente si esto no se adapta a nuestras necesidades.

Además de poder activar o desactivar cada dominio en el servidor HTTP, si hemos configurado SSL anteriormente, podremos habilitar conexiones HTTPS a ese dominio o incluso forzar a que las conexiones sean exclusivamente por HTTPS.

El DocumentRoot o directorio raíz para cada una de estas páginas está en el directorio /srv/www/<dominio>/. Además existe la posibilidad de aplicar cualquier configuración de Apache personalizada para cada Virtual host mediante ficheros en el directorio /etc/apache2/sites-available/user-ebox-<dominio>/.

Ejemplos prácticos

Ejemplo práctico A

La empresa Demostraciones Web S.L. desea mostrar sus últimos desarrollos web a su comunidad de betatesters. Para ello necesitan, en primer lugar, un servidor de web que esté escuchando en el puerto 80 (estándar) y probar de nuevo en el 8080.

Para ello:

Habilitaremos el servicio Web. Comprobaremos que está escuchando en el puerto 80. Lo configuraremos para que escuche en el puerto alternativo 8080 y comprobaremos que el cambio surte efecto.

1. Acción: Acceder a Zentyal, entrar en Estado del módulo y activar el módulo Servidor web, para ello marcar su casilla en la columna Estado. Nos informa de los cambios que va a realizar en el sistema. Permitir la operación pulsando el botón Aceptar.

Efecto:

Page 73: Manual zentyal

Se ha activado el botón Guardar Cambios.

2. Acción: Guardar los cambios.

Efecto:

Zentyal muestra el progreso mientras aplica los cambios. Una vez terminado avisa de que los cambios han sido aplicados.

El servidor Web ha quedado habilitado por defecto en el puerto 80.

3. Acción: Utilizando un navegador, acceder a la siguiente dirección http://ip_de_zentyal/.

Efecto:

Aparecerá una página por defecto de Apache con el mensaje ‘It works!’.

4. Acción: Acceder al menú Web. Cambiar el valor del puerto de 80 a 8080 y pulsar el botón Cambiar.

Efecto:

Se ha activado el botón Guardar Cambios.

5. Acción: Guardar los cambios.

Efecto:

Zentyal muestra el progreso mientras aplica los cambios. Una vez terminado avisa de que los cambios han sido aplicados.

Ahora el servidor Web está escuchando en el puerto 8080.

6. Acción: Volver a intentar acceder con el navegador a http://<ip_de_zentyal>/.

Efecto:

No obtenemos respuesta y pasado un tiempo el navegador informará de que ha sido imposible conectar al servidor.

7. Acción: Intentar acceder ahora a http://<ip_de_zentyal>:8080/.

Efecto:

El servidor responde y obtenemos la página de ‘It works!’.

Servicio de Transferencia de ficheros (FTP)

Introducción a FTP

El protocolo FTP [1] (File Transfer Protocol) es uno de los más antiguos de Internet, muy anterior a la aparición y popularización de las páginas web, data aproximadamente de 1971. Su función es muy simple de explicar pero tremendamente útil: transferir ficheros entre ordenadores.

FTP sigue un modelo de cliente-servidor, donde el servidor solicita un usuario y contraseña para acceder al sistema y navegar por los directorios compartidos. Se puede definir los permisos de cada usuario sobre los diferentes ficheros y directorios y también es posible configurar el servidor para permitir el acceso sin autentificación (acceso anónimo).

Una configuración habitual para un servidor de acceso público sería dar sólo permiso de lectura (descargar ficheros) a los usuarios anónimos y dar permiso de lectura y escritura (subir ficheros, modificar o borrar) a los usuarios del sistema. En un servidor de acceso privado normalmente no se permite el acceso a los usuarios anónimos, sólamente a usuarios del sistema correctamente autentificados.

Uno de los principales problemas de FTP es que no fue diseñado para asegurar la autenticidad, privacidad e integridad de las conexiones, ya que los datos se mandan en texto plano. Existen varias soluciones a este problema, desde utilizar SSL

Page 74: Manual zentyal

para las conexiones FTP hasta utilizar otros protocolos similares como SCP [2] o SFTP [3].

En este protocolo se usan dos conexiones para su funcionamiento, una para los comandos de control (autenticación, listado de directorios, petición de ficheros, etc) y otra para datos (el envío de los ficheros entre ambas partes).

FTP usa los puertos 20 y 21 de TCP. Cuando se usa el modo activo, desde el cliente se abre la conexión de control al puerto 21 del servidor y en el servidor se abre la conexión de datos desde el puerto 20 a un puerto destino del cliente especificado en la conexión de control. En el modo pasivo es el cliente el que abre también la conexión de datos [4].

[1] http://es.wikipedia.org/wiki/File_Transfer_Protocol

[2] http://es.wikipedia.org/wiki/Secure_Copy

[3] http://es.wikipedia.org/wiki/SSH_File_Transfer_Protocol

[4] http://es.wikipedia.org/wiki/File_Transfer_Protocol#Modos_de_conexión_del_cliente_FTP

Zentyal usa vsftpd [5] (very secure FTP) para proporcionar este servicio.

[5] http://vsftpd.beasts.org/

Configuración del cliente FTP

Como ejemplo de configuración de un cliente de FTP vamos a configurar Filezilla en su versión para Windows.

Filezilla

Pulsaremos en Archivo –> Gestor de sitios que nos abre una ventana donde podemos configurar conexiones a diferentes servidores:

Page 75: Manual zentyal

Gestor de sitios

Crearemos un Nuevo sitio y le daremos un nombre a la nueva entrada creada en el árbol de la izquierda. Tenemos que configurar varios parámetros de la conexión. Servidor donde pondremos la dirección IP o nombre de dominio del servidor y el Puerto que será el 21. Si no se indica lo contrario, la conexión será configurada como anónima así que en el caso de que queramos que la conexión sea autenticada con usuario y contraseña, debemos seleccionar en Modo de acceso: Normal e introducir el usuario y contraseña en los campos correspondientes. Si el servidor soporta SSL deberemos seleccionar Cifrado: Requiere FTP explícito sobre TLS.

Usuario anónimo

Usuario autenticado

Page 76: Manual zentyal

Aceptar el certificado del servidor

Finalmente basta con pulsar Conectar para poder conectar con el servidor de FTP:

Filezilla conectado al servidor FTP

Aunque Filezilla tiene versión para Linux y su funcionamiento es idéntico al descrito anteriormente, vamos ha explicar cómo conectarse usando el cliente gFTP.

Al iniciar la aplicación vemos en la parte superior los parámetros de la conexión:

Page 77: Manual zentyal

gFTP

Estos parámetros, al igual que antes, son Servidor donde pondremos la dirección IP o nombre de dominio del servidor y el Puerto que será 21. Finalmente si queremos una conexión autenticada debemos introducir el nombre de usuario y su contraseña en los campos Usuario y Contraseña.

gFTP configurando la conexión

Basta con pulsar la tecla Enter y el cliente se conectará al servidor:

Page 78: Manual zentyal

gFTP conectado al servidor FTP

Configuración de un servidor FTP con Zentyal

A través del menú FTP podemos acceder a la configuración del servidor FTP:

Configuración del Servidor FTP

El servicio de FTP proporcionado por Zentyal es muy simple de configurar, permite otorgar acceso remoto a un directorio público y/o a los directorios personales de los usuarios del sistema.

La ruta predeterminada del directorio público es /srv/ftp mientras que los directorios personales están en /home/usuario/ para cada uno de ellos.

En Acceso anónimo, tenemos tres configuraciones posibles para el directorio público:

Desactivado: No se permite el acceso a usuarios anónimos.

Sólo lectura: Se puede acceder al directorio con un cliente de FTP, pero únicamente se puede listar los ficheros y descargarlos. Esta configuración es adecuada para poner a disposición de todo el mundo contenido para su descarga.

Lectura y escritura: Se puede acceder al directorio con un cliente de FTP y todo el mundo puede añadir, modificar, descargar y borrar ficheros en este directorio. No se recomienda esta configuración a menos de estar muy seguro de lo que se hace.

Otro parámetro de configuración Directorios personales permite acceder a su directorio personal a cada uno de los usuarios en Zentyal. En este caso también podemos activar Restringir a los directorios personales que impedirá que los usuarios puedan recorrer todo el sistema y sólamente verán los ficheros y directorios bajo /home/usuario/.

Mediante la opción Soporte SSL podemos forzar el acceso seguro utilizando SSL, hacerlo opcional o deshabilitarlo. Si está deshabilitado no se podrá conectar de forma segura nunca, si es opcional, la elección la tomará el cliente y si se fuerza, el

Page 79: Manual zentyal

cliente deberá soportar obligatoriamente SSL.

Como siempre, antes de poner en funcionamiento el servidor FTP, habrá que comprobar que las reglas del cortafuegos abren los puertos para este servicio.

Ejemplos prácticos

Ejemplo práctico A

La empresa Rotuladores Aparicio S.L. va a migrar sus clientes a Ubuntu, y quiere que sus trabajadores sean capaces de conservar los datos personales que tienen en sus máquinas locales, además de realizar copias de seguridad. Para ello van a habilitar un directorio personal FTP en el servidor por usuario, al que se accederá con la misma cuenta que a los demás servicios, autenticando contra el LDAP integrado en Zentyal.

Para ello:

1. Acción: Acceder a Zentyal, entrar en Estado del módulo y activar el módulo Servidor FTP, para ello marcar su casilla en la columna Estado. Nos informa de los cambios que va a realizar en el sistema. Permitir la operación pulsando el botón Aceptar.

Efecto:

Se ha activado el botón Guardar Cambios.

2. Acción: Guardar los cambios.

Efecto:

Zentyal muestra el progreso mientras aplica los cambios. Una vez terminado el proceso avisa de que los cambios han sido aplicados.

El servidor FTP ha quedado habilitado por defecto en el puerto 21.

3. Acción: Entrar en FTP, asegurarnos de que el Acceso anónimo está como Desactivado. Habilitar la casilla Directorios personales y pulsar en el botón Cambiar.

Efecto:

Se ha activado el botón Guardar Cambios.

4. Acción: Guardar los cambios.

Resultado:

Los usuarios podrán acceder, usando un cliente FTP cualquiera y la dirección del servidor Zentyal, a una carpeta personal, donde almacenar cualquier fichero que deseen.

Gestión de máquinas virtuales

Introducción

La virtualización permite ejecutar distintos sistemas operativos huésped en máquinas con hardware simulado dentro de una misma máquina real, también llamado sistema anfitrión.

Los principales motivos para el uso de la virtualización son el mejor aprovechamiento de los recursos y la posibilidad de ejecutar aplicaciones compatibles con sistemas distintos al anfitrión.

Si disponemos de un servidor Zentyal con recursos hardware infrautilizados pero realmente necesitamos desplegar dos servidores distintos, como sería el caso de una arquitectura LDAP maestro esclavo, utilizar una máquina virtual para el segundo servidor en lugar de una real nos permitiría una reducción de costes, del espacio utilizado, del consumo eléctrico, etc.

Page 80: Manual zentyal

Otro caso típico es que nuestra PYME necesite trabajar con una aplicación antigua que sólo funciona en sistemas Windows (por ejemplo una aplicación de contabilidad hecha a medida). Desplegar una máquina virtual en el servidor Zentyal sería una solución mucho más conveniente que infrautilizar un servidor dedicado para ello.

Zentyal permite una gestión sencilla de máquinas virtuales, integrando las herramientas KVM y VirtualBox, que se usará una u otra en función de cuál se encuentre instalada, no siendo posible usar las dos a la vez. KVM es la opción por defecto cuando se usa el instalador de Zentyal.

Creación de máquinas virtuales con Zentyal

A través del menú Máquinas Virtuales podemos acceder a la lista de máquinas actualmente creadas, así como añadir nuevas o borrar las existentes. También podremos realizar otras acciones de mantenimiento que veremos en detalle en la siguiente sección.

A la hora de crear una máquina, debemos en primer lugar clickar en Añadir nuevo y rellenar los campos:

Nombre

Únicamente tiene carácter identificativo, también se usará para determinar la ruta donde se guardarán los datos asociados a la máquina en el sistema de ficheros, pero básicamente podemos introducir cualquier etiqueta alfanumérica que nos permita identificar la máquina.

y decidir si queremos:

Autoarrancar

Si está activada esta opción, Zentyal se encargará de arrancar o parar automáticamente la máquina junto con el resto de servicios, en caso contrario no ejecutará ninguna acción más que crear la máquina la primera vez que guardemos los cambios. El administrador será el encargado de realizar estas acciones manualmente según crea conveniente.

Creando una nueva máquina virtual

Con lo que ya tenemos un registro asociado a nuestra nueva máquina.

Máquina virtual presente en la lista

El siguiente paso será configurar nuestra máquina virtual, desde la columna de Configuración; donde encontraremos las tres siguientes pestañas:

Configuración del sistema

Permite definir la arquitectura (32 o 64 bits) y también el tipo de sistema operativo en el caso de que estemos usando VirtualBox para la gestión de las máquinas. También podremos definir el tamaño de la memoria RAM en megabytes. Por defecto este valor es 512 o la mitad de la memoria disponible en caso de que dispongamos de menos de 1GB en la máquina real.

Page 81: Manual zentyal

Configuración del sistema virtual

Configuración de red

Contiene la lista de interfaces de red de la máquina virtual, que podrán ser de tipo NAT (sólo salida a Internet), en puente de red con una de las interfaces del anfitrión, o formar una red interna aislada cuyo nombre tendremos que definir y a la que podrán conectarse otras máquinas virtuales. Desmarcando la casilla Habilitado podremos desactivar temporalmente cualquiera de las interfaces configuradas.

Configuración de redes

Configuración de dispositivos

Contiene la lista de dispositivos de almacenamiento vinculados a la máquina. Podemos vincular tanto CDs o DVDs (proporcionando la ruta de un fichero de imagen ISO), así como discos duros. Para los discos duros podremos proporcionar también un fichero de imagen de KVM o VirtualBox según el caso, o podemos simplemente especificar el tamaño en megabytes y un nombre identificativo y Zentyal se encargará de crear un nuevo disco vacío. Desmarcando la casilla Habilitado podremos desconectar temporalmente cualquiera de los dispositivos configurados sin llegar a borrarlos.

Configuración de dispositivos

Mantenimiento de máquinas virtuales

En el Dashboard disponemos de un widget que contiene la lista de máquinas virtuales con el estado de cada una (en ejecución o no) y un botón para Parar o Arrancar según el caso.

Widget del dashboard

Page 82: Manual zentyal

En la tabla de la sección de Máquinas Virtuales disponemos, de izquierda a derecha, de las siguientes acciones que se pueden ejecutar sobre una máquina:

Resaltado de los botones de acción e indicador de estado

Ésta es la información que se puede observar en el listado:

Ver consola

Abre una ventana emergente en la que podemos acceder a la consola de la máquina virtual a través del protocolo VNC.

Arrancar/Parar

Permite arrancar o parar la máquina dependiendo de su estado actual. En caso de que la máquina se encuentre pausada, el botón de arrancar realizará la función de continuar con la ejecución de la máquina.

Pausar/Continuar

Permite detener la ejecución de la máquina cuando está en ejecución, sin perder el estado en el que se encuentra. Una vez pausada, el mismo botón se puede utilizar para seguir con la ejecución.

A la izquierda veremos también con un indicador que tomará los colores rojo, amarillo o verde en función de si la máquina está parada, pausada o en ejecución.

Ejemplo de ventana que muestra la consola de una máquina

Truco

El módulo de gestión de máquinas virtuales se integra con otras funcionalidades de Zentyal, como es el caso del visor de uso del disco, donde podremos ver cuanto espacio se está utilizando en almacenar las máquinas virtuales. O el servicio de recuperación de desastres, donde podremos seleccionar almacenar copia de seguridad de las máquinas configuradas.

Truco

Si queremos acceder por VNC a nuestras máquinas virtuales desde Internet, deberemos habilitar la regla para el servicio vnc-virt en el apartado Desde redes externas a Zentyal del Cortafuegos. de Zentyal, como es el caso del visor de uso del disco, donde podremos ver el espacio ocupado por nuestras máquinas virtuales.

Truco

En el fichero /etc/zentyal/virt.conf, además de poder personalizar algunos valores como el tamaño de la consola VNC en la interfaz de Zentyal o el número inicial de puerto VNC a utilizar, tenemos también instrucciones sobre como definir contraseñas VNC específicas para cada una de nuestras máquinas. Por defecto, Zentyal autogenera contraseñas aleatorias.

Page 83: Manual zentyal

Ejercicios propuestos

Zentyal GatewayEn este capítulo se describen las funcionalidades de Zentyal como puerta de enlace o gateway. Zentyal puede hacer la red más fiable y segura, gestionar el ancho de banda y definir políticas de conexiones y contenidos.

Hay un apartado centrado en el funcionamiento del módulo de cortafuegos, el cual nos permite definir reglas para gestionar el tráfico entrante y saliente tanto del servidor como de la red interna. Para ayudar en la configuración del cortafuegos, existen dos módulos que facilitan la gestión de objetos y servicios de red.

A la hora de acceder a Internet podemos balancear la carga entre varias conexiones y definir diferentes reglas para usar una u otra según el tráfico. Además, también se verá como garantizar la calidad del servicio, configurando que tráfico tiene prioridad frente a otro o incluso limitar la velocidad en algún caso, como podría ser el P2P.

Mediante RADIUS podremos autenticar a los usuarios en la red y finalmente, se ofrece una introducción al servicio de proxy HTTP. Este servicio permite acelerar el acceso a Internet, almacenando una caché de navegación y establecer diferentes políticas de filtrado de contenidos.

El portal cautivo con monitorización de ancho de banda nos permitirá dar acceso a Internet únicamente a los clientes que deseemos, redirigiendo el tráfico a nuestra página de registro, con informes en tiempo real de usuarios conectados y su consumo de red.

Abstracciones de red de alto nivel en ZentyalEn Zentyal existen dos métodos para abstraer los parámetros de configuración de servicios relacionados con la red. Estas abstracciones son los Objetos de red y los Servicios de red. Mediante objetos y servicios podemos realizar definiciones de direcciones y puertos que podemos usar en diferentes módulos para aplicar políticas homogéneas, desde la configuración del cortafuegos hasta la del proxy HTTP.

Objetos de red

Los Objetos de red son una manera de representar un elemento de la red o a un conjunto de ellos. Sirven para simplificar y consecuentemente facilitar la gestión de la configuración de la red, pudiendo dotar de un nombre fácilmente reconocible al elemento o al conjunto y aplicar la misma configuración a todos ellos.

Por ejemplo, podemos dar un nombre reconocible a una dirección IP o a un grupo de ellas. En lugar de definir la misma regla en el cortafuegos para cada una de las direcciones IP, simplemente bastaría con definirla para el objeto de red que contiene las direcciones.

Representación de un objeto de red

Gestión de los Objetos de red con Zentyal

Para empezar a trabajar con los objetos en Zentyal, accederemos la seccіón Red ‣ Objetos, allí podremos ver una lista inicialmente vacía, con el nombre de cada uno de los objetos y una serie de acciones a realizar sobre ellos. Se pueden crear, editar y borrar objetos que serán usados más tarde por otros módulos.

Page 84: Manual zentyal

Objetos de red

Cada uno de estos objetos se compondrá de una serie de miembros que podremos modificar en cualquier momento. Los miembros tendrán al menos los siguientes valores: Nombre, Dirección IP y Máscara de red. La Dirección MAC es opcional y lógicamente sólo se podrá utilizar para miembros que representen una única máquina y se aplicará en aquellos contextos que la dirección MAC sea accesible.

Añadir un nuevo miembro

Los miembros de un objeto pueden solaparse con miembros de otros, con lo cual hay que tener cuidado al usarlos en el resto de módulos para obtener la configuración deseada y no tener problemas.

En las secciones de la configuración de Zentyal donde podamos usar objetos (como DHCP o Cortafuegos) dispondremos de un menú embebido que nos permitirá crear y configurar objetos sin necesidad de acceder expresamente a esta sección de menú.

Servicios de red

Los Servicios de red son la manera de representar los protocolos (TCP, UDP, ICMP, etc) y puertos usados por una aplicación. La utilidad de los servicios es similar a la de los objetos: si con los objetos se puede hacer referencia a un conjunto de direcciones IP usando un nombre significativo, podemos así mismo identificar un conjunto de puertos por el nombre de la aplicación que los usa.

Conexión de un cliente a un servidor

Pongamos como ejemplo la navegación web. El puerto más habitual es el de HTTP, 80/TCP. Pero además también tenemos que contar con el de HTTPS 443/TCP y el alternativo 8080/TCP. De nuevo, no tenemos que aplicar una regla que afecte a la navegación web a cada uno de los puertos, sino al al servicio que la representa que contiene estos tres puertos. Otro ejemplo puede ser la compartición de ficheros en redes Windows, donde el servidor escucha en los puertos 137/TCP, 138/TCP, 139/TCP y 445/TCP.

Page 85: Manual zentyal

Gestión de los Servicios de red con Zentyal

Para trabajar con los servicios en Zentyal se debe ir al menú Red ‣ Servicios donde se listan los servicios existentes creados por cada uno de los módulos que se hayan instalado y los que hayamos podidos definir adicionalmente. Para cada servicio podemos ver su Nombre, Descripción y un indicador de si es Interno o no. Un servicio es Interno si los puertos configurados para dicho servicio se están usando en el mismo servidor. Además cada servicio tendrá una serie de miembros, cada uno de estos miembros tendrá los valores: Protocolo, Puerto origen y Puerto destino. En todos estos campos podemos introducir el valor Cualquiera, por ejemplo para especificar servicios en los que sea indiferente el puerto origen o un Rango de puertos.

El protocolo puede ser TCP, UDP, ESP, GRE o ICMP. También existe un valor TCP/UDP para evitar tener que añadir dos veces un mismo puerto que se use en ambos protocolos, como en el caso de DNS.

Servicios de red

Ejemplos prácticos

Ejemplo práctico A

HighTechMechanics S.A. colabora con otras empresas para la fabricación de su producto, los operarios disponen de unos equipos a efecto de llevar a cabo la comunicación entre las distintas empresas usando una plataforma web. Sin embargo, los gerentes no desean que las máquinas sean usadas para ninguna otra cosa que no sea cuestiones laborales. Se restringirá el acceso a exclusivamente los servidores de la plataforma web.

Para ello:

1. Acción: Acceder a Red ‣ Objetos. Añadir Servidores de comunicación externos.

Efecto:

El objeto Servidores de comunicación externos se ha creado.

2. Acción: Acceder a Miembros del objeto Servidores de comunicación externos. Crear los miembros Servidor partner 1 y Servidor partner 2 con unas direcciones IP conocidas por el administrador. Finalmente, ir a Guardar cambios para confirmar la configuración creada.

Ahora crearemos el servicio web.

Para ello:

Page 86: Manual zentyal

1. Acción: Acceder a Red ‣ Servicios. Añadir web.

Efecto:

El objeto web se ha creado.

2. Acción: Acceder a Configuración del objeto web. Crear los servicios con la configuración Protocolo TCP, Puerto origen Cualquiera, Puerto destino puerto único. En el campo de texto que aparecerá, introduciremos 80 y botón Añadir, repetiremos el mismo procedimiento para el puerto 443.

Efecto:

El servicio web contendrá dos configuraciones para el puerto TCP/80 (Web) y para el TCP/443 (Web segura).

Conclusión: Ya tenemos definido un objeto Servidores de comunicación externos y un servicio que queremos utilizar, web, más adelante veremos como hacer que ésta combinación de objeto / servicio sea lo único que permitamos usar en nuestra organización.

Ejemplo práctico B

Contafoo S.A. es una empresa con un departamento de contabilidad donde trabajan 10 personas, cada una con su ordenador. El departamento dispone además de dos servidores para el almacenamiento y compartición de ficheros, uno de ellos de respaldo. Crea un objeto para facilitar la gestión del servidor y los ordenadores del departamento de contabilidad.

Para ello:

1. Acción: Acceder a Red ‣ Objetos. Añadir Contabilidad.

Efecto:

El objeto Contabilidad se ha creado.

2. Acción: Acceder a Miembros del objeto Contabilidad. Crear los miembros Servidor contable y Servidor contable respaldo con unas direcciones IP de la red, por ejemplo, 192.168.0.12/32 y 192.168.0.13/32 y direcciones MAC válidas, por ejemplo, 00:0c:29:7f:05:7d y 00:0c:29:7f:05:7e. Crear el miembro Escritorios contabilidad con dirección de la subred local, como por ejemplo 192.168.0.64/26. Finalmente, ir a Guardar cambios para confirmar la configuración creada.

Efecto:

El objeto Contabilidad contendrá tres miembros Servidor contable, Servidor contable respaldo y Escritorios contabilidad de forma permanente.

Conclusiones: Ahora tenemos un objeto llamado Contabilidad, que contiene en sus miembros las máquinas especificas que deseamos agrupar, con el objetivo de que el administrador de sistemas no tendrá que recordar y teclear las direcciones IP y MAC para establecer políticas.

Cortafuegos

Introducción al sistema de cortafuegos

Un cortafuegos [1] es un sistema que permite definir una serie de políticas de control de acceso entre distintos segmentos de una red. Para ello utiliza una serie de reglas que filtran el tráfico dependiendo de distintos parámetros como el protocolo, la dirección origen o dirección destino, los puertos de origen o de destino o la conexión a la que pertenecen los paquetes.

El escenario más habitual es un servidor con dos o más interfaces de red conectadas a distintas redes, al menos una con acceso a Internet (la red externa) y otra con acceso a la LAN (la red interna). El cortafuegos establece unas políticas de

Page 87: Manual zentyal

acceso entre las redes externas y las redes internas y viceversa, entre las propias redes internas y entre el cortafuegos y las redes tanto internas como externas. Además también se encarga de activar los mecanismos de redirección necesarios para permitir a las máquinas de la red acceder a Internet a través del servidor o a las máquinas de Internet a los servicios de la red interna.

[1] http://es.wikipedia.org/wiki/Cortafuegos_(informatica)

Zentyal utiliza para su módulo de cortafuegos el subsistema del kernel de Linux llamado Netfilter [2] que proporciona funcionalidades de filtrado, marcado de tráfico y de redirección de conexiones.

[2] http://www.netfilter.org/

Configuración de un cortafuegos con Zentyal

El modelo de seguridad de Zentyal se basa en intentar proporcionar la máxima seguridad posible en su configuración predeterminada, intentando a la vez minimizar los esfuerzos a realizar tras añadir un nuevo servicio.

Cuando Zentyal actúa de cortafuegos, normalmente se instala entre la red interna y el router conectado a Internet. La interfaz de red que conecta la máquina con el router debe marcarse como Externo en Red -> Interfaces de red para permitir al cortafuegos establecer unas políticas de filtrado más estrictas para las conexiones procedentes de fuera.

Interfaz externa

La política para las interfaces externas es denegar todo intento de nueva conexión a Zentyal mientras que para las interfaces internas se deniegan todos los intentos de conexión excepto los que se realizan a servicios definidos por los módulos instalados. Los módulos añaden reglas al cortafuegos para permitir estas conexiones, aunque siempre pueden ser modificadas posteriormente por el administrador. Una excepción a esta norma son las conexiones al servidor LDAP, que añaden la regla pero configurada para denegar las conexiones por motivos de seguridad. La configuración predeterminada tanto para la salida de las redes internas como desde del propio servidor es permitir toda clase de conexiones.

Filtrado de paquetes

La definición de las políticas del cortafuegos se hace desde Cortafuegos ‣ Filtrado de paquetes.

Se pueden definir reglas en 5 diferentes secciones según el flujo de tráfico sobre el que serán aplicadas:

Tráfico de redes internas a Zentyal (ejemplo: permitir acceso al servidor de ficheros desde la red local).

Tráfico entre redes internas y de redes internas a Internet (ejemplo: restringir el acceso a todo Internet o determinadas direcciones a unas direcciones internas o restringir la comunicaciones entre las subredes internas).

Tráfico de Zentyal a redes externas (ejemplo: permitir descargar ficheros por HTTP desde el propio servidor).

Tráfico de redes externas a Zentyal (ejemplo: permitir que el servidor de correo reciba mensajes de Internet).

Page 88: Manual zentyal

Tráfico de redes externas a redes internas (ejemplo: permitir acceso a un servidor interno desde Internet).

Hay que tener en cuenta que los dos últimos tipos de reglas pueden crear un compromiso en la seguridad de Zentyal y la red, por lo que deben utilizarse con sumo cuidado.

Esquema de los diferentes flujos de tráfico en el cortafuegos

Zentyal provee una forma sencilla de definir las reglas que conforman la política de un cortafuegos. La definición de estas reglas usa los conceptos de alto nivel introducidos anteriormente: los Servicios de red para especificar a qué protocolos y puertos se aplican las reglas y los Objetos de red para especificar sobre qué direcciones IP de origen o de destino se aplican.

Lista de reglas de filtrado de paquetes desde las redes internas a Zentyal

Normalmente cada regla tiene un Origen y un Destino que pueden ser Cualquiera, una Dirección IP o un Objeto en el caso que queramos especificar más de una dirección IP o direcciones MAC. En determinadas secciones el Origen o el Destino son omitidos ya que su valor es conocido a priori; será siempre Zentyal tanto el Destino en Tráfico de redes internas a Zentyal y Tráfico de redes externas a Zentyal como el Origen en Tráfico de Zentyal a redes externas.

Page 89: Manual zentyal

Además cada regla siempre tiene asociado un Servicio para especificar el protocolo y los puertos (o rango de puertos). Los servicios con puertos de origen son útiles para reglas de tráfico saliente de servicios internos, por ejemplo un servidor HTTP interno, mientras que los servicios con puertos de destino son útiles para reglas de tráfico entrante a servicios internos o tráfico saliente a servicios externos. Cabe destacar que hay una serie de servicios genéricos que son muy útiles para el cortafuegos como Cualquiera para seleccionar cualquier protocolo y puertos, Cualquiera TCP o Cualquiera UDP para seleccionar cualquier protocolo TCP o UDP respectivamente.

El parámetro de mayor relevancia será la Decisión a tomar con las conexiones nuevas. Zentyal permite tomar tres tipos distintos de decisiones:

Aceptar la conexión. Denegar la conexión ignorando los paquetes entrantes y haciendo suponer al origen que no se ha podido establecer

la conexión. Registrar la conexión como un evento y seguir evaluando el resto de reglas. De esta manera, a través de

Mantenimiento ‣ Registros -> Consulta registros -> Cortafuegos podemos ver sobre conexiones se están produciendo.

Las reglas son insertadas en una tabla donde son evaluadas desde el principio hasta el final, una vez que una regla acepta una conexión, no se sigue evaluando el resto. Una regla genérica al principio puede hacer que otra regla más específica posterior no sea evaluada, es por esto por lo que el orden de las reglas en las tablas es muy importante. Existe la opción de aplicar un no lógico a la evaluación de la regla con Inversa para la definición de políticas más avanzadas.

Creando una nueva regla en el firewall

Por ejemplo, si queremos registrar las conexiones a un servicio, primero tendremos la regla que registra la conexión y luego la regla que acepta la conexión. Si estas dos reglas están en el orden inverso, no se registrará nada ya que la regla anterior ya acepta la conexión. Igualmente si queremos restringir la salida a Internet, primero explícitamente denegaremos los sitios o los clientes y luego permitiremos la salida al resto, invertir el orden daría acceso a todos los sitios a todo el mundo.

Por omisión, la decisión es siempre denegar las conexiones y tendremos que explícitamente añadir reglas que las permitan. Hay una serie de reglas que se añaden automáticamente durante la instalación para definir una primera versión de la política del cortafuegos: se permiten todas las conexiones salientes hacia las redes externas, Internet, desde el servidor Zentyal (en Tráfico de Zentyal a redes externas) y también se permiten todas las conexiones desde las redes internas hacia las externas (en Tráfico entre redes internas y de redes internas a Internet. Además cada módulo instalado añade una serie de reglas en las secciones Tráfico de redes internas a Zentyal y Tráfico de redes externas a Zentyal normalmente permitiendo las conexiones desde las redes internas pero denegándola desde las redes externas. Esto ya se hace implícitamente, pero facilita la gestión del cortafuegos puesto que de esta manera para permitir el servicio solamente hay que cambiar el parámetro Decisión y no es necesario crear una regla nueva. Destacar que estas reglas solamente son añadidas durante el proceso de instalación de un módulo por primera vez y no son modificadas automáticamente en el futuro.

Finalmente, existe un campo opcional Descripción para comentar el objetivo de la regla dentro de la política global del cortafuegos.

Redirección de puertos con ZentyalUna redirección de puertos mediante NAT (Network Address Translation) [3] permite que todo el tráfico destinado a un puerto (o rango de puertos) que atraviesa el servidor Zentyal se redireccione a otra máquina que está escuchando en un puerto (o rango de puertos) determinado haciendo traducción de la dirección IP de destino (y eventualmente del puerto o rango de puertos de destino).

Las redirecciones de puertos sirven para exponer un servicio interno a otra red, normalmente Internet. Por ejemplo si queremos que las páginas web de un servidor HTTP interno sean accesibles desde Internet, necesitaremos una redirección

Page 90: Manual zentyal

del puerto 80 de nuestra interfaz de red externa al puerto 80 de la dirección del servidor HTTP en la red interna.

Aunque normalmente el puerto o rango de puertos es el mismo, es posible que sea distinto si así son nuestros requerimientos. Por ejemplo podríamos redireccionar el puerto 22 del servicio SSH de un servidor interno a un puerto distinto para evitar los ataques automatizados.

Las redirecciones de puertos de destino se configuran en Cortafuegos ‣ Redirecciones de puertos.

Para configurar una redirección hay que establecer la Interfaz donde se recibe el tráfico sobre el que se va a hacer la traducción, el Destino original (que puede ser el servidor Zentyal, una dirección IP o un objeto), el Puerto de destino original (que puede ser Cualquiera, un Puerto determinado o un Rango de puertos), el Protocolo y el Origen (que también puede ser Cualquiera, una Dirección IP o un Objeto). Además estableceremos la dirección IP de Destino y finalmente, el Puerto donde la máquina destino recibirá las peticiones, que puede ser el mismo que el original o no. Existe también un campo opcional de Descripción para aclarar el propósito de la regla.

Adicionalmente también podemos hacer un Registro de las conexiones que son redirigidas por esta regla y Reemplazar la dirección de origen. Si activamos esta última opción la máquina interna verá a Zentyal como la fuente original de la conexión, lo que puede ser útil si Zentyal no es el gateway predeterminado de la máquina interna.

Redirección de puertos

[3] <http://es.wikipedia.org/wiki/Network_Address_Translation>

Ejemplos prácticos

Ejemplo práctico A

En este ejemplo se permitirá acceder a la interfaz de administración de Zentyal desde Internet.

1. Acción: Acceder a Cortafuegos ‣ Filtrado de paquetes y pulsar Configurar reglas en el apartado de Reglas de filtrado desde las redes externas a Zentyal.

Pulsar Añade nuevo y rellenar el formulario con los siguientes valores:

Decisión: ACCEPT

Origen: Cualquiera

Servicio: eBox administrationPulsar Añadir.

Efecto:

Se muestra la lista de reglas, en la que aparecerá la regla que acabamos de añadir. El botón de Guardar cambios se habrá activado.

Page 91: Manual zentyal

2. Acción: Guardar cambios.

Efecto:

La regla añadida se hace efectiva. Se puede probar a acceder desde una máquina externa a la interfaz web de Zentyal.

Ejemplo práctico B

Partiendo del ejemplo anterior, se instalará una regla que también permita acceder por SSH y registrar cada conexión.

1. Acción: Acceder a Cortafuegos ‣ Filtrado de paquetes y pulsar Configurar reglas en el apartado de Reglas de filtrado desde las redes externas a Zentyal.

Pulsar Añade nuevo y rellenar el formulario con los siguientes valores:

Decisión: ACCEPT

Origen: Cualquiera

Servicio: SSHPulsar Añadir.

Efecto:

Se muestra la lista de reglas, en la que aparecerá la regla que acabamos de añadir. El botón de Guardar cambios se habrá activado.

2. Acción: Pulsar de nuevo Añade nuevo y rellenar el formulario con los siguientes valores:

Decisión: LOG

Origen: Cualquiera

Servicio: SSHPulsar Añadir.

Efecto:

Se muestra de nuevo la lista de reglas.

3. Acción: Comprobar que la regla de registro aparece en la lista en una posición anterior a la regla de aceptación.

Si no, pulsar la flecha hacia arriba en la fila de la regla de registro hasta que lo esté.

Efecto:

La regla de registro se ejecutará antes que la regla de aceptación de conexión.

4. Acción: Activar los registros para el cortafuegos. Para ello acceder a Mantenimiento ‣ Registros ‣ Configuración de Registros y habilitar Firewall.

Efecto:

Los registros para el cortafuegos han sido habilitados.

5. Acción: Guardar cambios.

Efecto:

Los cambios realizados se hacen efectivos.

6. Acción: Iniciar una sesión de SSH desde una máquina en una red externa.

Efecto:

Se ha iniciado (y registrado) una conexión SSH con el servidor Zentyal desde una máquina remota.

Page 92: Manual zentyal

7. Acción: Acceder a Mantenimiento ‣ Registros ‣ Consulta registros y pulsar en el Informe completo de Firewall.

Efecto:

Se mostrará una tabla con las conexiones realizadas.

Encaminamiento

Introducción al encaminamiento o routing

El encaminamiento (también llamado enrutamiento o routing) es la función de enviar un paquete de datos de una conexión de un punto de la red a otro. Por ejemplo, cuando se envía un correo electrónico, el servidor debe enviar los paquetes de datos que contienen el mensaje. Para ello, éstos deben viajar por diferentes redes (desplegadas incluso por diferentes países) hasta alcanzar el servidor de correo del destinatario.

Para un administrador de redes es importante comprender el encaminamiento y configurarlo correctamente en la puerta de enlace de su red. El simple hecho de configurar un cortafuegos en la entrada de nuestra red hace que realmente tengamos que trabajar con dos redes: la red local e Internet. Los paquetes que se transmitan de una a otra tienen que ser redirigidos de la manera adecuada para que lleguen a su destino.

La información sobre cómo se redirigen los paquetes está almacenada en la llamada tabla de encaminamiento, que mediante una serie de reglas especifica la manera en la que se efectúa el encaminamiento. Cada una de estas reglas cuenta con diversos campos, de los cuales los tres más importantes son: dirección de destino, interfaz y router. La interpretación de estos campos es sencilla: para que un paquete llegue a una dirección de destino dada, tenemos que enviarlo hacia un determinado router, el cual es accesible a través de la interfaz indicada. Cuando llega un mensaje, se compara su dirección destino con las entradas en la tabla. La regla más específica de entre las que incluyan a la dirección de destino del paquete será la que decida la interfaz a utilizar para su transmisión. Por ejemplo, se ha especificado una regla en la que para alcanzar la red A (10.15.0.0/16) debe ir por el router A y otra en la que para alcanzar la red B (10.15.23.0/24), una subred de A, debe ir por el router B. Si llega un paquete con destino 10.15.23.23, aunque cumpla las condiciones de ambas reglas, el sistema operativo decidirá que se envíe al router B ya que la segunda regla es más específica.

Todas las máquinas tienen al menos una regla de encaminamiento para la interfaz de loopback (127.0.0.0/8), una interfaz de red virtual que representa al propio dispositivo y que se utiliza para servicios locales y tareas de diagnóstico, además de reglas adicionales para otras interfaces que la conectan con otras redes internas o con Internet.

Zentyal usa el subsistema del kernel de Linux para el encaminamiento configurado mediante la herramiente iproute2 [1].

[1] http://www.policyrouting.org/iproute2.doc.html

Configuración del encaminamiento con Zentyal

Puerta de enlace

La puerta de enlace o gateway es el router por omisión para las conexiones cuyo destino no está en la red local. Es decir, si el sistema no tiene definidas rutas estáticas o si ninguna de éstas coincide con una transmisión a realizar, ésta se hará a través de la puerta de enlace.

Para configurar una puerta de enlace en Zentyal se utiliza Red ‣ Puertas de enlace, que tiene los siguientes parámetros configurables.

Page 93: Manual zentyal

Añadiendo una puerta de enlace

Habilitado: Indica si realmente esta puerta de enlace es efectiva o está desactivada.

Nombre: Nombre por el que identificaremos a la puerta de enlace.

Dirección IP: Dirección IP de la puerta de enlace. Esta dirección debe ser directamente accesible desde la máquina que contiene Zentyal, es decir, sin otros enrutamientos intermedios.

Interfaz: Interfaz de red conectada a la puerta de enlace. Los paquetes que se envíen a la puerta de enlace se enviarán a través de esta interfaz.

Peso Cuanto mayor sea el peso, más paquetes se enviarán por esa puerta de enlace si activamos el balanceo de tráfico.

Predeterminado Si esta opción está activada, esta será la puerta de enlace por defecto.

Si se tienen interfaces configuradas como DHCP o PPPoE [2] no se pueden añadir puertas de enlace explícitamente para ellas, dado que ya son gestionadas automáticamente. A pesar de eso, se pueden seguir activando o desactivando, editando su Peso o elegir si es el Predeterminado, pero no se pueden editar el resto de los atributos.

Lista de puertas de enlace con DHCP

Además Zentyal puede necesitar utilizar un proxy para acceder a Internet, por ejemplo para las actualizaciones de software y del antivirus, o para la redirección del propio proxy HTTP.

Para configurar este proxy externo iremos a Red ‣ Puertas de enlace, allí podremos indicar la dirección del Servidor proxy así como el Puerto del proxy. También podremos especificar un Usuario y Contraseña en caso de que el proxy requiera autenticación.

[2] http://es.wikipedia.org/wiki/PPPoE

Page 94: Manual zentyal

Tabla de rutas estáticas

Si queremos hacer que todo el tráfico dirigido a una red pase por una puerta de enlace determinada, tendremos que añadir una ruta estática. Esto puede servirnos, por ejemplo, para interconectar dos redes locales a través de sus puertas de enlace predeterminadas.

Para realizar la configuración manual de una ruta estática se utiliza Red ‣ Rutas estáticas.

Configuración de rutas

Estas rutas podrían ser sobreescritas si se utiliza el protocolo DHCP.

Configuración del balanceo con Zentyal

Como se ha comentado anteriormente, una misma máquina puede tener varias puertas de enlace predeterminadas, lo que conduce a una situación especial en la que hay que tener en cuenta nuevos parámetros en la configuración de un servidor Zentyal.

Lista de puertas de enlace

Las reglas de encaminamiento para múltiples puertas de enlace, conocidas también como reglas multigateway permiten que una red pueda usar varias conexiones a Internet de una manera transparente. Esto es muy útil para organizaciones que requieran más ancho de banda que el que ofrece una única conexión ADSL o que no puedan permitirse interrupciones en su acceso a Internet, una situación cada vez más común.

El balanceo de tráfico reparte de manera equitativa las conexiones salientes hacia Internet, permitiendo utilizar la totalidad del ancho de banda disponible. La forma más simple de configuración es establecer diferentes pesos para cada puerta de enlace, de manera que si las conexiones de las que se dispone tienen diferentes capacidades podemos hacer un uso óptimo de ellas.

Page 95: Manual zentyal

Balanceo de tráfico

Además, Zentyal se puede configurar para hacer que determinado tipo de tráfico se envíe siempre por un router específico en caso de ser necesario. Ejemplos comunes son enviar siempre el correo electrónico o todo el tráfico de una determinada subred por un determinado router.

Las reglas multigateway y el balanceo de tráfico se establecen en la sección Red ‣ Puertas de enlace, pestaña Balanceo de tráfico. En esta sección podemos añadir reglas para enviar ciertas conexiones a una determinada puerta de enlace dependiendo de la Interfaz de entrada, el Origen (puede ser una Dirección IP, un Objeto, el propio servidor Zentyal o Cualquiera), el Destino (una Dirección IP o un Objeto), el Servicio al que se quiere asociar esta regla y por cual de los Gateway queremos direccionar el tipo de tráfico especificado.

Configuración de la tolerancia a fallos con Zentyal

Si se está balanceando tráfico entre dos o más puertas de enlace, se recomienda habilitar la característica de tolerancia a fallos. Supóngase que se está balanceando el tráfico entre dos routers y uno de ellos sufre un fallo. Si no se ha activado esta característica, una parte del tráfico seguiría intentando salir por el router fuera de servicio, causando problemas de conectividad a los usuarios de la red.

En la configuración del failover se pueden definir conjuntos de pruebas para cada puerta de enlace que revisen si está operativa o si por el contrario está sufriendo algún problema y debe dejar de utilizarse como salida a Internet. Estas pruebas pueden ser un ping a la puerta de enlace, a una máquina externa, una resolución de DNS o una petición HTTP. También se puede definir cuántas pruebas se quieren realizar así como el porcentaje de aceptación exigido. Si cualquiera de las pruebas falla, no llegando al porcentaje de aceptación, la puerta de enlace asociada a ella será desactivada. Las pruebas se siguen ejecutando, así que cuando estas se ejecuten satisfactoriamente, la puerta de enlace volverá a ser activada de nuevo.

Deshabilitar una puerta de enlace sin conexión tiene como consecuencia que todo el tráfico salga por el resto de puertas de enlace que siguen habilitadas, se deshabilitan las reglas multigateway asociadas a esa puerta de enlace y también se consolidan las reglas de calidad de servicio. De esta forma, los usuarios de la red no deberían sufrir problemas con su conexión a Internet. Una vez que Zentyal detecta que la puerta de enlace caída está completamente operativa se restaura el comportamiento normal de balanceo de tráfico, reglas multigateway y calidad de servicio.

El failover está implementado como un evento de Zentyal. Para usarlo, primero se necesita tener el módulo Eventos habilitado, y posteriormente habilitar el evento WAN Failover.

Page 96: Manual zentyal

WAN failover

Para configurar las opciones y pruebas del failover se debe acudir al menú Red ‣ Puertas de enlace, pestaña WAN failover. Se puede especificar el periodo del evento modificando el valor de la opción Tiempo entre revisiones. Para añadir una regla simplemente hay que pulsar la opción Añadir nueva y aparecerá un formulario con los siguientes campos:

Habilitado: Indica si la regla va a ser aplicada o no durante la comprobación de conectividad de los routers. Se pueden añadir distintas reglas y habilitarlas o deshabilitarlas de acuerdo a las necesidades, sin tener que borrarlas y añadirlas de nuevo.

Gateway: Se selecciona la puerta de enlace de la lista de previamente configuradas.

Tipo de prueba:

Puede tomar uno de los siguientes valores:

Ping a puerta de enlace: Envía un paquete de control desde el servidor Zentyal a su puerta de enlace y espera una respuesta de esta, de este modo comprueba que existe conectividad entre ambas máquinas y que la puerta de enlace está activa. No comprueba que la puerta de enlace tenga conexión con Internet.

Ping a máquina: Como en el tipo anterior, esta prueba envía un paquete de control y espera una respuesta, solo que esta vez se envía a una máquina externa a la red, por lo que ya no sólo se comprueba que se puede conectar con la puerta de enlace, si no que también se comprueba si esta tiene conexión con Internet.

Resolución DNS: Intenta obtener la dirección IP para el nombre de máquina especificado, lo que requiere que, como en el caso anterior, exista conectividad entre el servidor y la puerta de enlace y de esta a Internet, pero además, que los servidores de DNS sigan siendo accesibles.

Petición HTTP: Esta prueba sería la más completa, ya que intenta descargar el contenido del sitio web especificado, lo que requiere que todos los requisitos de las pruebas anteriores se satisfagan.

Máquina: El servidor que se va a usar como objetivo en la prueba. No es aplicable en caso de Ping a puerta de enlace.

Número de pruebas: Número de veces que se repite la prueba.

Ratio de éxito requerido: Indica que proporción de intentos satisfactorios es necesaria para considerar correcta la prueba.

Con la configuración predeterminada, si alguna de estas reglas se activa, deshabilitando una puerta de enlace, el evento queda registrado solamente en el fichero de registro /var/log/zentyal/zentyal.log. Si deseamos recibir notificaciones por otras vías, podemos configurar un emisor de eventos para ello como se detalla en el capítulo Eventos y alertas o bien adquirir la Subscripción Profesional de Zentyal [3] que incluye el envío automático de alertas.

Page 97: Manual zentyal

[3] http://store.zentyal.com/serversubscriptions/subscription-professional.html

Ejemplos prácticos

Ejemplo práctico A

A lo largo de este y los siguientes ejemplos iremos desplegando una serie de escenarios que nos ayudarán a comprender mejor cada una de las opciones comentadas en este capítulo.

Para empezar prepararemos un servidor Zentyal para actuar como puerta de enlace de otras máquinas de una red local. Para ello tan sólo necesitaremos que nuestra máquina tenga dos interfaces de red, una conectada a la red local y la otra a un router configurado para salir a Internet.

1. Acción: Acceder a la interfaz de Zentyal, entrar en Red ‣ Interfaces y seleccionar para el interfaz de red eth0 el método estático, marcarla como externa (WAN) y ponerle una dirección IP y una máscara de red acordes a la configuración del router, si por ejemplo el router tiene la IP 192.168.1.1 y una máscara de red 255.255.255.0, al servidor se le pondrá una IP diferente, por ejemplo 192.168.1.254 y la misma máscara de red.

Pulsar Cambiar.

Efecto:

La interfaz de red externa está configurada, se activa el botón de Guardar cambios, pero antes de hacerlo se configurará la otra interfaz de red y la puerta de enlace.

2. Acción: Seleccionar la otra interfaz de red, eth1 y configurarla también con método estático, pero esta vez no marcar externa (WAN), ya que se está configurando la interfaz con la red interna. Como dirección IP se puede elegir cualquier dirección válida para una máquina local, por ejemplo 192.168.100.254, y como máscara de red, utilizaremos 255.255.255.0.

Pulsar Cambiar.

Efecto:

La interfaz de red interna está configurada.

3. Acción: Ahora ya sólo queda configurar la puerta de enlace del servidor, para ello acceder a Red ‣ Puertas de enlace y pulsar Añadir nueva. Se marca como habilitada, se le pone el Nombre que se desee, por ejemplo default-gw0-eth0, la dirección IP del router, que será el que haga de puerta de enlace para nuestro servidor, se selecciona la interfaz que hemos configurado anteriormente como externa, eth0, se le pone el peso que se quiera, como por ahora sólo hay una puerta de enlace este valor no tendrá efecto alguno; y finalmente se selecciona como Predeterminada.

Pulsar Añadir.

Efecto:

Se ha añadido una puerta de enlace predeterminada para el servidor.

4. Acción: Finalmente se guardan los cambios, pero no sin antes comprobar en Estado del módulo que Red está activado, una vez comprobado, pulsar Guardar cambios.

Efecto:

Los datos se guardarán, configurando definitivamente las interfaces de red y preparando al servidor para actuar como puerta de enlace. Observar que si se ha configurado la máquina con los valores propuestos y, aunque todas las máquinas y routers de la red estén en el mismo segmento, se habrán creado dos subredes, la 192.168.1.0 y la 192.168.100.0. Otras máquinas de la red local podrán utilizar 192.168.100.254 como puerta de enlace.

Page 98: Manual zentyal

Ejemplo práctico B

En este ejemplo configuraremos otra subred y haremos que todas las máquinas de ambas subredes puedan conectarse entre ellas, para ello partiremos del escenario anterior.

1. Acción: Configurar otro servidor Zentyal siguiendo los pasos del ejemplo anterior, pero cambiando su dirección IP externa por una diferente de la misma red, por ejemplo 192.168.1.253 si se sigue con los valores del ejemplo anterior, y su dirección IP interna por una de otra subred nueva, por ejemplo 192.168.101.254.

Efecto:

Habrá tres subredes, la red interna del servidor del ejemplo anterior, al que se le llamará A, la red interna del nuevo servidor, al que se le llamará B y la red externa en la que estarán ambos servidores y el router.

2. Acción: Diagnosticar el estado de los enrutamientos, para ello, en el servidor A acceder a Red ‣ Herramientas de Diagnóstico y probar a obtener las rutas hasta la dirección IP interna del servidor B (192.168.101.254) con traceroute.

Observar que la herramienta no consigue obtener una ruta, los paquetes de control enviados pasan por la puerta de enlace predeterminada y quizás por algún otro enrutador, pero ya no continúan. Los paquetes son eviados por la puerta de enlace predeterminada por que no encuentran otra puerta de enlace que incluya la red del servidor B como posible destino.

Si repetimos la prueba intentando trazar la ruta desde el servidor B al A veremos que ocurre lo mismo.

Efecto:

Se ha observado como las subredes internas creadas por los servidores A y B no pueden verse entre si.

3. Acción: Añadir rutas estáticas para interconectar ambas subredes, para hacer esto entrar en Red ‣ Rutas estáticas y pulsar Añadir nueva. Introducir como Red la subred interna del otro servidor, si se está configurando A, poner la subred de B que, siguiendo con los valores de estos ejemplos será 192.168.101.0/24.

Como Gateway poner la IP externa del servidor B (192.168.101.254), a la que sí que puede acceder al tener una interfaz configurada para la misma subred.

Finalmente, pulsar Añadir y Guardar cambios.

Efecto:

Se ha añadido una ruta estática que indica al servidor A por donde enrutar los paquetes dirigidos a la subred interna del servidor B.

4. Acción: Repetir el diagnóstico realizado hace unos pasos, comprobar como aparece la ruta completa.

Si se configurara un cliente en cada una de las redes, podríamos ver como desde el cliente de la red del servidor A también se puede trazar la ruta hasta el cliente del servidor B.

Efecto:

Hemos observado como añadiendo una ruta estática podemos interconectar dos subredes diferentes.

Ejemplo práctico C

Configurar un escenario multigateway con varias puertas de enlace y comprobar que funciona utilizando las herramientas de diagnóstico.

Para ello:

1. Acción: Dejar un servidor Zentyal con la configuración actual y añadir en el otro una nueva puerta de enlace desde Red ‣ Puertas de enlace con la dirección IP interna del primer servidor y con la interfaz eth1. Para poder usar esta interfaz, debe estar en la misma subred que la interfaz interna del primer servidor.

Pulsar el botón Añadir.

Efecto:

Page 99: Manual zentyal

Se ha activado el botón Guardar Cambios. Ha aparecido una lista de puertas de enlace con la puerta de enlace recién creada y la puerta de enlace anterior.

2. Acción: Activar el balanceo activando Habilitar desde Red ‣ Puertas de enlace pestaña Balanceo de tráfico y pulsar Cambiar.

Guardar los cambios.

Efecto:

Zentyal muestra el progreso mientras aplica los cambios, tras guardar utilizará ambas puertas de enlace para sus conexiones.

3. Acción: Entrar en Red ‣ Herramientas de diagnóstico y usar traceroute contra una máquina externa o en Internet, como www.zentyal.com. Ejecutar esta herramienta varias veces con los mismos datos y comparar los resultados.

Efecto:

El resultado de una ejecución de traceroute muestra los diferentes routers por los que un paquete pasa para llegar a su destino. Al ejecutarlo en una máquina con configuración multigateway el resultado de los primeros saltos debería ser diferente dependiendo de la puerta de enlace elegida.

Ejemplo práctico D

En este ejemplo, sobre una configuración multigateway con balanceo como la desarrollada a lo largo de los ejemplos anteriores, se instalarán unas reglas de tolerancia a fallos y se desactivará una de las puertas de enlace para ver como deja de balancear.

1. Acción: Activar el evento WAN failover desde la pestaña Configurar eventos en Mantenimiento ‣ Eventos.

Efecto:

Se activará el botón de guardar cambios.

2. Acción: Añadir un par de reglas de failover. Para ello ir a Red ‣ Puertas de enlace pestaña WAN failover y pulsar Añadir nueva, seleccionar Ping to host como tipo de prueba, poner www.zentyal.com como máquina y pulsar en Añadir. Repetir el mismo proceso para añadir una regla con los mismos valores, pero seleccionando la otra puerta de acceso en Gateway.

Efecto:

Las dos reglas añadidas aparecen en la lista de Reglas de prueba.

3. Acción: Guardar cambios.

Efecto:

Los cambios se hacen efectivos.

4. Acción: Provocar un fallo en una de las puertas de enlace, se puede hacer apagando una de las puertas de enlace, o desconectando los cables.

Efecto:

Una de las reglas de WAN failover tendría que activarse, deshabilitando la puerta de enlace afectada. Se puede comprobar con la herramientas de diagnóstico traceroute, ejecutándola varias veces y viendo que se envía siempre por la misma ruta de salida o también consultando los registros de Events en Mantenimiento

‣ Registros, donde también podremos ver cual es la regla que se ha activado.

Zentyal Unified Threat Manager

El UTM (Unified Threat Manager, en castellano, gestor unificado de amenazas) es una evolución del concepto de cortafuegos, donde ya no sólo definimos una política basada en origen o destino, puertos o protocolo sino que disponemos

Page 100: Manual zentyal

de las herramientas necesarias para dotar de seguridad a nuestra red. Éstas nos proporcionan desde la interconexión de distintas subredes de manera segura a la definición de políticas de navegación avanzadas, pasando por la detección de ataques a nuestra red, tanto desde Internet como desde máquinas pertenecientes a la propia red interna.

Mediante VPN (Virtual Private Network), seremos capaces de interconectar a través de Internet distintas subredes privadas con total seguridad. Un típico ejemplo de esta funcionalidad es la comunicación entre dos o más oficinas de una misma empresa u organización. También utilizaremos VPN para permitir a los usuarios conectarse de forma remota y con total seguridad a nuestra red corporativa.

El filtrado de correo electrónico es una característica fundamental de la seguridad de nuestro servidor y nuestros usuarios, por lo que Zentyal ofrece gran configurabilidad e integración de servicios para cubrir esta funcionalidad. Será explicado en el capítulo de comunicaciones debido a dependencias lógicas con el módulo de correo electrónico.

Otra de las funcionalidades incluidas es la definición de políticas de navegación avanzadas en base no sólo a los contenidos de las páginas, sino también distintos perfiles por subred, usuario, grupo y horario, incluyendo el análisis de malware.

Por último y quizás una de las funcionalidades más importante de un UTM, el sistema de detección de intrusos, IDS (Intrusion Detection System). Este elemento analiza el tráfico de la red en busca de indicios de ataques generando alertas informando al administrador para que tome las medidas oportunas. A diferencia de un cortafuegos, que impone unas reglas estáticas predefinidas por el administrador, un IDS analiza cada una de las conexiones en tiempo real. Esta característica si bien nos permite ir un paso más allá en mantener la seguridad de nuestra red y conocer inmediatamente lo que ocurre en ella, está irremediablemente afectada por los falsos positivos, alertas de seguridad sobre eventos inofensivos, y también por los falsos negativos, no identificando eventos potencialmente peligrosos. Estos inconvenientes pueden paliarse manteniendo actualizadas las reglas y patrones de reconocimiento. Mediante las Αctualizaciones Avanzadas de Seguridad Zentyal [1] podemos actualizar automáticamente las reglas del IDS, incluyendo un amplio repertorio de ellas preseleccionadas por los expertos en seguridad de nuestro equipo de desarrollo.

[1] https://store.zentyal.com/other/advanced-security.html

Servicio de redes privadas virtuales (VPN)

Introducción a las redes privadas virtuales (VPN)

Las redes privadas virtuales [1] tienen como finalidad permitir el acceso a la red corporativa a usuarios remotos a conectados través de Internet y además conectar de manera segura subredes distintas también a través de Internet.

[1] http://es.wikipedia.org/wiki/Red_privada_virtualEs frecuente que haya recursos necesarios para nuestros usuarios en nuestra red, pero que dichos usuarios se encuentren fuera de nuestras instalaciones en el momento de precisar de estos recursos, caso típico de comerciales o teletrabajadores. La solución pasa por permitir la conexión de estos usuarios a nuestras instalaciones a través de Internet, aunque ello puede implicar riesgos para la confidencialidad, disponibilidad e integridad de las comunicaciones. Para evitar esos problemas la conexión no se realiza de forma directa sino a través de redes privadas virtuales.

La solución que ofrece una red privada virtual o VPN (Virtual Private Network de sus siglas en inglés) es el uso de cifrado para permitir sólo el acceso a los usuarios autorizados. Además, para facilitar su uso y configuración, las conexiones aparecen como si estuviesen dentro de la misma red, aprovechando así todos los recursos y configuraciones dispuestas por el administrador de sistemas para la red local.

La utilidad de las VPN no se limita al acceso remoto de los usuarios; una organización puede desear conectar entre sí redes que se encuentran en sitios distintos, como por ejemplo, oficinas en distintas ciudades.

De la misma manera, Zentyal ofrece dos modos de funcionamiento, como servidor para usuarios individuales y también como conexión entre dos o más redes gestionadas con Zentyal.

Se integra OpenVPN [2] para la configuración y gestión de redes privadas virtuales. OpenVPN posee las siguientes ventajas:

Autenticación mediante infraestructura de clave pública. Cifrado basado en tecnología SSL.

Page 101: Manual zentyal

Clientes disponibles para Windows, Mac OS y Linux. Más sencillo de instalar, configurar y mantener que IPSec, otra alternativa para VPNs en software

libre. Posibilidad de usar programas de red de forma transparente.

[2] http://openvpn.net/

Configuración del cliente VPN

Para configurar un cliente VPN sobre Windows, primeramente nuestro administrador de sistemas nos deberá facilitar el bundle para nuestro cliente.

El administrador de sistemas nos facilitará el bundle para nuestro cliente

Debemos descomprimirlo (botón derecho sobre el archivo y seleccionando Extraer aquí). Encontraremos todos los ficheros relativos a la instalación de VPN y los certificados asociados.

Archivos extraídos del bundle

Haremos click en el instalador, y aceptamos la licencia de OpenVPN.

Page 102: Manual zentyal

Aceptamos la licencia de OpenVPN

Se recomienda instalar todos los módulos.

Listado de módulos a instalar

El software del adaptador de red no está certificado para Windows XP. Aun así es completamente seguro continuar.

Page 103: Manual zentyal

Pese a la advertencia se debe de continuar

Una vez instalado, tenemos un acceso directo en nuestro escritorio que nos permite conectar a la red VPN haciendo doble click.

Acceso directo para conectar con la VPN

Para configurar el cliente VPN en Ubuntu, una vez descargado el bundle, descomprimirlo en una ubicación permanente, e importarlo en el gestor de configuración de redes. Para importarlo, hacer click en el icono de la bandeja del sistema del gestor de conexiones Network Manager y en su opción de menú Conexiones VPN ‣ Configurar VPN....

Pulsar en Importar y seleccionar el archivo con extensión .conf incluido en el bundle. Nos aparecerá una ventana con la configuración importada, pulsamos Aceptar y ya podremos establecer la conexión pulsando de nuevo en el icono de la bandeja del sistema y seleccionando la nueva opción con el nombre del servidor en Conexiones VPN.

Page 104: Manual zentyal

Configuración del cliente VPN en Ubuntu

Configuración de un servidor VPN con Zentyal

Se puede configurar Zentyal para dar soporte a clientes remotos (conocidos como Road Warriors). Esto es, un servidor Zentyal trabajando como puerta de enlace y como servidor VPN, que tiene una red de área local (LAN) detrás, permitiendo a clientes externos (los road warriors) conectarse a dicha red local vía servicio VPN.

La siguiente figura puede dar una visión más ajustada:

Zentyal y clientes remotos de VPN

Nuestro objetivo es conectar al servidor de datos con los otros 2 clientes lejanos (comercial y gerente) y estos últimos entre si.

Para ello necesitamos crear una Autoridad de Certificación y certificados para los dos clientes remotos. Tenga en cuenta que también se necesita un certificado para el servidor VPN. Sin embargo, Zentyal creará este certificado automáticamente cuando cree un nuevo servidor VPN. En este escenario, Zentyal actúa como una Autoridad de Certificación.

Una vez tenemos los certificados, deberíamos poner a punto el servidor VPN en Zentyal mediante Crear un nuevo servidor. El único parámetro que necesitamos introducir para crear un servidor es el nombre. Zentyal hace que la tarea de configurar un servidor VPN sea sencilla, ya que establece valores de forma automática.

Los siguientes parámetros de configuración son añadidos automáticamente, y pueden ser modificados si es necesario: una pareja de puerto/protocolo, un certificado (Zentyal creará uno automáticamente usando el nombre del servidor VPN) y una dirección de red. Las direcciones de la red VPN se asignan tanto al servidor como a los clientes. Si se necesita cambiar la dirección de red nos deberemos asegurar que no entra en conflicto con una red local. Además, se informará automáticamente de las redes locales, es decir, las redes conectadas directamente a los interfaces de red de la máquina, a través de la red privada.

Como vemos, el servidor VPN estará escuchando en todas las interfaces externas. Por tanto, debemos poner al menos una de nuestras interfaces como externa vía Red ‣ Interfaces. En nuestro escenario sólo se necesitan dos interfaces, una interna para la LAN y otra externa para Internet.

Si queremos que los clientes puedan conectarse entre sí usando su dirección de VPN, debemos activar la opción Permitir conexiones entre clientes.

El resto de opciones de configuración las podemos dejar con sus valores por defecto.

Page 105: Manual zentyal

Configuración de servidor VPN

Tras crear el servidor VPN, debemos habilitar el servicio y guardar los cambios. Posteriormente, se debe comprobar en Dashboard que un servidor VPN está funcionando.

Tras ello, debemos anunciar redes, es decir, establecer rutas entre las redes VPN y entre estas y otras redes conocidas por nuestro servidor. Dichas redes serán accesibles por los clientes VPN autorizados. Hay que tener en cuenta que Zentyal anunciará todas las redes internas automáticamente. Por supuesto, podemos añadir o eliminar las rutas que necesitemos. En nuestro escenario, se habrá añadido automáticamente la red local para hacer visible el cliente 3 a los otros dos clientes.

Una vez hecho esto, es momento de configurar los clientes. La forma más sencilla de configurar un cliente VPN es utilizando los bundles de Zentyal, paquetes de instalación que incluyen el archivo de configuración de VPN específico para cada usuario y, opcionalmente, un programa de instalación. Estos están disponibles en la tabla que aparece en VPN ‣ Servidores, pulsando el icono de la columna Descargar bundle del cliente. Se pueden crear bundles para clientes Windows, Mac OS y Linux. Al crear un bundle se seleccionan aquellos certificados que se van a dar al cliente y se establece la dirección IP externa a la cual los clientes VPN se deben conectar. Además, si el sistema seleccionado es Windows, se puede incluir también un instalador de OpenVPN. Los bundles de configuración los descargará el administrador de Zentyal para distribuirlos a los clientes de la manera que crea más oportuna.

Descargar paquete de configuración de cliente

Un bundle incluye el fichero de configuración y los ficheros necesarios para comenzar una conexión VPN.

Ahora tenemos acceso al servidor de datos desde los dos clientes remotos. Si se quiere usar el servicio local de DNS de Zentyal a través de la red privada será necesario configurar estos clientes para que usen Zentyal como servidor de nombres.

Page 106: Manual zentyal

De lo contrario no se podrá acceder a los servicios de las máquinas de la LAN por nombre, sino únicamente por dirección IP. Así mismo, para navegar por los ficheros compartidos desde la VPN [3] se debe permitir explícitamente el tráfico de difusión del servidor Samba.

[3] Para más información sobre compartición de ficheros ir a la sección Servicio de compartición de ficheros y de autenticación

Los usuarios conectados actualmente al servicio VPN se muestran en el Dashboard de Zentyal.

Si queremos tener un servidor VPN que no sea la puerta de enlace de la red local, es decir, la máquina no posee interfaces externos, entonces necesitaremos utilizar la Redirección de puertos con Zentyal . Como es una opción del cortafuegos, tendremos que asegurarnos que el módulo de cortafuegos está activo, de lo contrario no podremos activar esta opción. Con dicha opción, el servidor VPN se encargará de actuar como representante de los clientes VPN dentro de la red local. En realidad, lo será de todas las redes anunciadas, para asegurarse que recibe los paquetes de respuesta que posteriormente reenviará a través de la red privada a sus clientes. Esta situación se explica mejor con el siguiente gráfico:

Conexión desde un cliente VPN a la LAN con VPN usando NAT

Configuración de un servidor VPN para la interconexión de redes con Zentyal

En este escenario tenemos dos oficinas en diferentes redes que necesitan estar conectadas a través de una red privada. Para hacerlo, usaremos Zentyal en ambas como puertas de enlace. Una actuará como cliente VPN y otra como servidor. La siguiente imagen trata de aclarar la situación:

Zentyal como servidor VPN vs. Zentyal como cliente VPN

Nuestro objetivo es conectar al cliente 1 en la LAN 1 con el cliente 2 en la LAN 2 como si estuviesen en la misma red local. Por tanto, debemos configurar un servidor VPN tal y como se ha explicado anteriormente.

Sin embargo, se necesita hacer dos pequeños cambios, habilitar la opción Permitir túneles Zentyal a Zentyal para intercambiar rutas entre servidores Zentyal e introducir una Contraseña de túneles de Zentyal a Zentyal para establecer la conexión en un entorno más seguro entre las dos oficinas. Hay que tener en cuenta que deberemos anunciar la red LAN 1 en Redes anunciadas.

Para configurar Zentyal como un cliente VPN, podemos hacerlo a través de VPN ‣ Clientes. Debes dar un nombre al cliente y activar el servicio. Se puede establecer la configuración del cliente manualmente o automáticamente usando el bundle dado por el servidor VPN. Si no se usa el bundle, se tendrá que dar la dirección IP y el par protocolo-puerto donde estará aceptando peticiones el servidor. También será necesaria la contraseña del túnel y los certificados usados por el cliente. Estos certificados deberán haber sido creados por la misma autoridad de certificación que use el servidor.

Page 107: Manual zentyal

Configuración del cliente

Cuando se guardan los cambios, en el Dashboard, se puede ver un nuevo demonio OpenVPN en la LAN 2 ejecutándose como cliente con la conexión objetivo dirigida a la otra Zentyal dentro de la LAN 1.

Dashboard de un servidor Zentyal configurado como cliente VPN

Cuando la conexión esté completa, la máquina que tiene el papel de servidor tendrá acceso a todas las rutas de las máquinas clientes a través de la VPN. Sin embargo, aquéllas cuyo papel sea de cliente sólo tendrán acceso a aquellas rutas que el servidor haya anunciado explícitamente.

Еjemplos prácticos

Ejemplo práctico A

En este ejercicio vamos a configurar un servidor de VPN y un cliente en un ordenador residente en una red externa; conectaremos a la VPN y a través de ella accederemos a una máquina residente en una red local a la que solo tiene acceso el servidor por medio de una interfaz interna.

Para ello:

1. Acción: Acceder a Zentyal, entrar en Estado del módulo y activar el módulo OpenVPN, para ello marcar su casilla en la columna Estado.

Efecto:

Page 108: Manual zentyal

Zentyal solicita permiso para realizar algunas acciones.

2. Acción: Leer las acciones que se van a realizar y otorgar permiso a Zentyal para hacerlo.

Efecto:

Se ha activado el botón Guardar cambios.

3. Acción: Acceder a la interfaz de Zentyal, entrar en la sección VPN ‣ Servidores, pulsar sobre Añadir nuevo, aparecerá un formulario con los campos Habilitado y Nombre. Introduciremos un nombre para el servidor.

Efecto:

El nuevo servidor aparecerá en la lista de servidores.

4. Acción: Pulsar en Guardar cambios y aceptar todos los cambios.

Efecto:

El servidor está activo, podemos comprobar su estado en la sección Dashboard.

5. Acción: Para facilitar la configuración del cliente, descargar el bundle de configuración para el cliente. Para ello, pulsar en el icono de la columna Descargar bundle de cliente y rellenar el formulario de configuración. Introducir las siguientes opciones:

Tipo de cliente: seleccionar Linux, ya que es el SO del cliente. Certificado del cliente: elegir cliente1. Si no está creado este certificado, crearlo siguiendo las

instrucciones del ejercicio anterior. Dirección del servidor: aquí introducir la dirección por la que el cliente puede alcanzar al servidor VPN.

En nuestro escenario coincide con la dirección de la interfaz externa conectada a la misma red que el ordenador cliente.

Efecto:

Al cumplimentar el formulario, bajaremos un archivo con el bundle para el cliente. Será un archivo en formato comprimido .tar.gz.

6. Acción: Configurar el ordenador del cliente. Para ello descomprimir el bundle en un directorio y seguir los pasos anteriormente indicados dependiendo del sistema operativo. Observar que el bundle contenía los ficheros con los certificados necesarios y el fichero de configuración con la extensión .conf.

Si no han aparecido problemas en los pasos anteriores ya se tiene toda la configuración necesaria y no queda más que establecer la conexión.

Efecto:

La máquina cliente estará conectada a la VPN.

7. Acción: Antes de comprobar que existe conexión entre el cliente y el ordenador de la red privada, debemos estar seguros que este último utiliza Zentyal como puerta de enlace predeterminada, si no es así no tendrá ruta de retorno al cliente VPN y habría que añadírsela.

Finalmente comprobar que desde la máquina remota se puede acceder a algún servicio del cliente de la red privada.

Efecto:

Se ha comprobado que la VPN funciona, creando una red virtual con máquinas de distintas redes.

Ejemplo práctico B

El objetivo de este ejercicio es conectar dos redes que usan servidores Zentyal como puerta de enlace hacia una red externa, de forma que los miembros de ambas redes se puedan conectar entre sí.

1. Acción: Acceder a la interfaz Web de Zentyal que va a tener el papel de servidor en el túnel. Asegurarse de que el módulo de VPN está activado y activarlo si es necesario. Desde la sección VPN ‣ Servidores, crear un nuevo

Page 109: Manual zentyal

servidor usando los siguientes parámetros de configuración:

Puerto: elegir un puerto que no esté en uso, como el 7766. Dirección de VPN: introducir una dirección privada de red que no esté en uso en ninguna

parte de nuestra infraestructura, por ejemplo 192.168.20.0/24. Habilitar Permitir túneles Zentyal-a-Zentyal. Esta es la opción que indica que va a ser un

servidor de túneles. Introducir una contraseña para túneles Zentyal-a-Zentyal. Finalmente, desde la selección de Interfaces donde escuchará el servidor, elegir la interfaz

externa con la que podrá conectar la Zentyal cliente.

Para concluir la configuración del servidor se deben anunciar redes siguiendo los mismos pasos que en ejemplos anteriores. Anunciar la red privada a la que se quiere que tenga acceso el cliente. Conviene recordar que este paso no va a ser necesario en el cliente, puesto que éste suministrará todas sus rutas automáticamente al servidor. Nos queda habilitar el servidor y guardar cambios.

Efecto:

Una vez realizados todos los pasos anteriores tendremos al servidor corriendo, podemos comprobar su estado en el Dashboard.

2. Acción: Para facilitar el proceso de configuración del cliente, obtener un bundle de configuración del cliente, descargándolo del servidor. Para descargarlo, acceder de nuevo a la interfaz Web de Zentyal y en la sección VPN ‣ Servidores, pulsar en Descargar bundle de configuración del cliente en nuestro servidor. Antes de poder descargar el bundle se deben establecer algunos parámetros en el formulario de descarga:

Tipo de cliente: elegir Túnel Zentyal a Zentyal Certificado del cliente: elegir un certificado que no sea el del servidor ni esté en uso por

ningún cliente más. Sino se tienen suficientes certificados, seguir los pasos de ejercicios anteriores para crear un certificado que pueda usar el cliente.

Dirección del servidor: aquí se debe introducir la dirección por la que el cliente pueda conectar con el servidor, en nuestro escenario la dirección de la interfaz externa conectada a la red visible tanto por el servidor como el cliente será la dirección adecuada.

Una vez introducidos todos los datos pulsamos el botón de Descargar.

Efecto:

Descargamos un archivo tar.gz con los datos de configuración necesarios para el cliente.

3. Acción: Acceder a la interfaz Web del servidor Zentyal que va a tener el papel de cliente. Comprobar que el módulo VPN está activo, ir a la sección VPN ‣ Clientes. En esta sección se ve una lista vacía de clientes, para crear uno pulsar sobre Añadir cliente e introducir un nombre para él. Como no está configurado no se podrá habilitar, así que se debe volver a la lista de clientes y pulsar en el apartado de configuración correspondiente a nuestro cliente. Dado que se tiene un bundle de configuración de cliente, no se necesita rellenar las secciones a mano. Usaremos la opción Subir bundle de configuración del cliente, seleccionar el archivo obtenido en el paso anterior y pulsar sobre Cambiar. Una vez cargada la configuración, se puede retornar a la lista de clientes y habilitar nuestro cliente. Para habilitarlo, pulsar en el icono de Editar, que se encuentra en la columna de Acciones. Aparecerá un formulario donde podremos marcar la opción de Habilitado. Ahora tenemos el cliente totalmente configurado y sólo nos resta guardar los cambios.

Efecto:

Una vez guardados los cambios, tendremos el cliente activo como podremos comprobar en el Dashboard. Si tanto la configuración del servidor como del cliente son correctas, el cliente iniciará la conexión y en un instante tendremos el túnel listo.

4. Acción: Ahora se comprobará que los ordenadores en las redes internas del servidor y del cliente pueden verse entre sí. Además de la existencia del túnel serán necesarios los siguientes requisitos:

Page 110: Manual zentyal

Los ordenadores deberán conocer la ruta de retorno a la otra red privada. Si, como en nuestro escenario, Zentyal está siendo utilizado como puerta de enlace no habrá necesidad de introducir rutas adicionales.

El cortafuegos deberá permitir conexiones entre las rutas para los servicios que utilicemos.

Una vez comprobados estos requisitos podremos pasar a comprobar la conexión, para ello entraremos en uno de los ordenadores de la red privada del servidor VPN e intentaremos acceder a un servicio de una máquina de la otra red.

Terminadas estas comprobaciones, las repetiremos desde un ordenador de la red del cliente VPN, eligiendo como objetivo un ordenador residente en la red del servidor VPN.

Filtrado de correo electrónico

Introducción al filtrado de correo electrónico

Los principales problemas en el sistema de correo electrónico son el spam y los virus.

El spam, o correo electrónico no deseado, distrae la atención del usuario que tiene que bucear en su bandeja de entrada para encontrar los correos legítimos. También genera una gran cantidad de tráfico que puede afectar al funcionamiento normal de la red y del servicio de correo, por no mencionar el potencial riesgo de fraude a nuestros usuarios.

Los virus informáticos, aunque no afectan al sistema en el que está instalado Zentyal, si van adjuntos a un correo electrónico pueden infectar otras máquinas clientes de la red, o dar acceso a un asaltante malicioso, que puede intentar conseguir privilegios en nuestras máquinas o usarlas para otros fines.

Esquema del filtrado de correo en Zentyal

Para defendernos de estas amenazas, Zentyal dispone de un filtrado de correo bastante potente y flexible.

Esquema del filtrado de correo en Zentyal

En la figura se observan los diferentes pasos que sigue un correo antes de determinarse si es válido o no. En primer lugar, el servidor envía el correo al gestor de políticas de listas grises, donde, si es considerado como potencial spam se rechaza y se solicita su reenvío al servidor origen. Si el correo supera este filtro, pasará al filtro de correo donde se examinarán una serie de características del correo, para ver si contiene virus o si se trata de correo basura, utilizando para ello un filtro estadístico. Si supera todos los filtros, entonces se determina que el correo es válido y se emite a su receptor o se almacena en un buzón del servidor.

En esta sección vamos a explicar paso a paso en qué consiste cada uno de estos filtros y cómo se configuran en Zentyal.

Lista gris

Las listas grises [1] se aprovechan del funcionamiento esperado de un servidor de correo dedicado a spam para que por su propio comportamiento nos ayude a descartar o no los correos recibidos o, al menos, dificultar su envío.

Page 111: Manual zentyal

Estos servidores están optimizados para poder enviar la mayor cantidad posible de correos en un tiempo mínimo. Para ello autogeneran mensajes que envían directamente sin preocuparse de si son recibidos. Cuando disponemos de un sistema de greylists (listas grises), los correos considerados como posible spam son rechazados, solicitando un reenvío, si el servidor es realmente un servidor spammer, probablemente no disponga de los mecanismos necesarios para manejar esta petición y por tanto el correo nunca llegará al destinatario, por el contrario, si el correo era legítimo, el servidor emisor no tendrá problema para reenviarlo.

[1] Zentyal usa postgrey (http://postgrey.schweikert.ch/) como gestor de esta política en postfix.En el caso de Zentyal, la estrategia utilizada es fingir estar fuera de servicio. Cuando un servidor nuevo quiere enviarle un correo, Zentyal le dice “Estoy fuera de servicio en este momento, inténtalo en 300 segundos.” [2], si el servidor remitente cumple la especificación reenviará el correo pasado ese tiempo y Zentyal lo apuntará como un servidor correcto.

En Zentyal, la lista gris exime al correo enviado desde redes internas, al enviado desde objetos con política de permitir retransmisión y al que tiene como remitente una dirección que se encuentra en la lista blanca del antispam.

[2] Realmente el servidor de correo envía como respuesta Greylisted, es decir, puesto en la lista gris en espera de permitir el envío de correo o no pasado el tiempo configurado.

Esquema del funcionamiento de una lista gris

El Greylist se configura desde Correo ‣ Lista gris con las siguientes opciones:

Configuración de las listas grises

Habilitado: Marcar para activar el greylisting.

Duración de la lista gris (segundos): Segundos que debe esperar el servidor remitente antes de reenviar el correo.

Ventana de reintento (horas): Tiempo en horas en el que el servidor remitente puede enviar correos. Si el servidor ha enviado algún correo durante ese tiempo, dicho servidor pasará a la lista gris. En una lista gris, el servidor de correo puede enviar todos los correos que quiera sin restricciones temporales.

Tiempo de vida de las entradas (días): Días que se almacenarán los datos de los servidores evaluados en la lista gris. Si pasan más de los días configurados, cuando el servidor quiera volver a enviar correos tendrá que pasar de nuevo por el proceso de greylisting descrito anteriormente.

Page 112: Manual zentyal

Verificadores de contenidos

El filtrado de contenido del correo corre a cargo de los antivirus y de los detectores de spam. Para realizar esta tarea Zentyal usa un interfaz entre el MTA [3] y dichos programas. Para ello, se usa el programa amavisd-new [4] para comprobar que el correo no es spam ni contiene virus.

Además, esta interfaz realiza las siguientes comprobaciones:

Listas blancas y negras de ficheros y extensiones. Filtrado de correos con cabeceras mal-formadas.

[3] MTA: Mail Transfer Agent o Agente de Transferencia de Correo, software encargado de transferir los correos, postfix en el caso de Zentyal.

[4] Amavisd-new: http://www.ijs.si/software/amavisd/

Antivirus

El antivirus que usa Zentyal es ClamAV [5], el cual es un conjunto de herramientas antivirus especialmente diseñadas para escanear adjuntos en los correos electrónicos en un MTA. ClamAV posee un actualizador de base de datos que permite las actualizaciones programadas y firmas digitales a través del programa freshclam. Dicha base de datos se actualiza diariamente con los nuevos virus que se van encontrando. Además, el antivirus es capaz de escanear de forma nativa diversos formatos de fichero como por ejemplo comprimidos Zip, BinHex, PDF, etc.

[5] Clam Antivirus: http://www.clamav.net/En Antivirus se puede comprobar si está instalado y actualizado el antivirus en el sistema.

Mensaje del antivirus

Se puede actualizar desde Gestión de Software, como veremos en Actualización de software .

La instalación del módulo de antivirus es opcional, pero si se instala se podrá ver como se integra con varios módulos de Zentyal, aumentando las opciones de configuración de la seguridad en diversos servicios, como el filtro SMTP, el proxy POP, el proxy HTTP o la compartición de ficheros.

Antispam

El filtro antispam asigna a cada correo una puntuación de spam, si el correo alcanza la puntuación umbral de spam es considerado correo basura, si no, es considerado correo legítimo. A este último tipo de correo se le suele denominar ham.

El detector de spam usa las siguientes técnicas para asignar la puntuación:

Listas negras publicadas vía DNS (DNSBL). Listas negras de URI que siguen los sitios Web de antispam. Filtros basados en el checksum de los mensajes, comprobando mensajes que son idénticos pero con

pequeñas variaciones. Filtro bayesiano, un algoritmo estadístico que aprende de sus pasados errores a la hora de clasificar

un correo como spam o ham. Reglas estáticas. Otros. [6]

Page 113: Manual zentyal

Entre estas técnicas el filtro bayesiano debe ser explicado con más detenimiento. Este tipo de filtro hace un análisis estadístico del texto del mensaje obteniendo una puntuación que refleja la probabilidad de que el mensaje sea spam. Sin embargo, el análisis no se hace contra un conjunto estático de reglas sino contra un conjunto dinámico, que es creado suministrando mensajes ham y spam al filtro de manera que pueda aprender cuales son las características estadísticas de cada tipo.

La ventaja de esta técnica es que el filtro se puede adaptar al siempre cambiante flujo de spam, la desventaja es que el filtro necesita ser entrenado y que su precisión reflejará la calidad del entrenamiento recibido.

Zentyal usa Spamassassin [7] como detector de spam.

[6] Existe una lista muy larga de técnicas antispam que se puede consultar en http://en.wikipedia.org/wiki/Anti-spam_techniques_(e-mail) (en inglés)

[7] The Powerful #1 Open-Source Spam Filter http://spamassassin.apache.org .La configuración general del filtro se realiza desde Filtro de correo ‣ Antispam:

Configuración de antispam

Umbral de spam: Puntuación a partir de la cual un correo se considera como spam.

Etiqueta de asunto spam: Etiqueta para añadir al asunto del correo en caso de que sea spam.

Usar clasificador bayesiano: Si está marcado se empleará el filtro bayesiano, si no será ignorado.

Auto-lista blanca: Tiene en cuenta el historial del remitente a la hora de puntuar el mensaje; si el remitente ha enviado mucho correo

Page 114: Manual zentyal

como ham es altamente probable que el próximo correo que envíe sea ham y no spam. Auto-aprendizaje:

Si está marcado, el filtro aprenderá de los mensajes recibidos, cuya puntuación traspase los umbrales de auto-aprendizaje.

Umbral de auto-aprendizaje de spam: Puntuación a partir de la cual el filtro aprenderá automáticamente un correo como spam. No es conveniente poner un valor bajo, ya que puede provocar posteriormente falsos positivos. Su valor debe ser mayor que Umbral de spam.

Umbral de auto-aprendizaje de ham: Puntuación a partir de la cual el filtro aprenderá automáticamente un correo como ham. No es conveniente poner un valor alto, ya que puede provocar falsos negativos. Su valor debería ser menor que 0.

Desde Política de emisor podemos marcar los remitentes para que siempre se acepten sus correos (whitelist), para que siempre se marquen como spam (blacklist) o que siempre los procese el filtro antispam (procesar).

Desde Entrenar filtro de spam bayesiano podemos entrenar al filtro bayesiano enviándole un buzón de correo en formato Mbox [8] que únicamente contenga spam o ham. Existen en Internet muchos ficheros de ejemplo para entrenar al filtro bayesiano, pero suele ser más exacto entrenarlo con correo recibido en los lugares a proteger. Conforme más entrenado esté el filtro, mejor será el resultado de la decisión de tomar un correo como basura o no.

[8] Mbox y maildir son formatos de almacenamiento de correos electrónicos independientes del cliente de correo electrónico. En el primero todos los correos se almacenan en un único fichero y con el segundo formato, se almacenan en ficheros separados diferentes dentro de un directorio.

Listas de control basadas en ficheros

Es posible filtrar los ficheros adjuntos que se envían en los correos a través de Filtro de correo ‣ ACL por fichero (File Access Control Lists).

Allí podemos permitir o bloquear correos según las extensiones de los ficheros adjuntos o de sus tipos MIME.

Page 115: Manual zentyal

Filtro de ficheros adjuntos

Filtrado de Correo SMTP

Desde Filtro de correo ‣ Filtro de correo SMTP se puede configurar el comportamiento de los filtros anteriores cuando Zentyal reciba correo por SMTP. Desde General podemos configurar el comportamiento general para todo el correo entrante:

Parámetros generales para el filtro SMTP

Habilitado: Marcar para activar el filtro SMTP.

Antivirus habilitado: Marcar para que el filtro busque virus.

Page 116: Manual zentyal

Antispam habilitado: Marcar para que el filtro busque spam.

Puerto de servicio: Puerto que ocupará el filtro SMTP.

Notificar los mensajes problemáticos que no son spam: Podemos enviar notificaciones a una cuenta de correo cuando se reciben correos problemáticos que no son spam, por ejemplo con virus.

Desde Políticas de filtrado se puede configurar qué debe hacer el filtro con cada tipo de correo.

Políticas del filtrado SMTP

Por cada tipo de correo problemático, se pueden realizar las siguientes acciones:

Pass (Aprobar): No hacer nada, dejar pasar el correo a su destinatario.

Reject (Rechazar): Descartar el mensaje antes de que llegue al destinatario, avisando al remitente de que el mensaje ha sido descartado.

Bounce (Devolver): Igual que Rechazar, pero adjuntando una copia del mensaje en la notificación.

Discard (Descartar): Descarta el mensaje antes de que llegue al destinatario sin avisar al remitente.

Desde Dominios virtuales se puede configurar el comportamiento del filtro para los dominios virtuales de correo. Estas configuraciones sobreescriben las configuraciones generales definidas previamente.

Para personalizar la configuración de un dominio virtual de correo, pulsamos sobre Añadir nuevo.

Parámetros de filtrado por dominio virtual de correo

Los parámetros que se pueden sobreescribir son los siguientes:

Dominio: Dominio virtual que queremos personalizar. Tendremos disponibles aquellos que se hayan configurado en Correo ‣ Dominio Virtual.

Usar filtrado de virus / spam:

Page 117: Manual zentyal

Si están activados se filtrarán los correos recibidos en ese dominio en busca de virus o spam respectivamente. Umbral de spam:

Se puede usar la puntuación por defecto de corte para los correos spam, o un valor personalizado. Aprender de las carpetas IMAP de spam de las cuentas:

Si esta activado, cuando mensajes de correo se coloquen en la carpeta de spam serán aprendidos por el filtro como spam. De manera similar si movemos un mensaje desde la carpeta de spam a una carpeta normal, sera aprendido como ham.

Cuenta de aprendizaje de *ham* / *spam*: Si están activados se crearán las cuentas ham@dominio y spam@dominio respectivamente. Los usuarios pueden enviar correos a estas cuentas para entrenar al filtro. Todo el correo enviado a ham@dominio será aprendido como correo no spam, mientras que el correo enviado a spam@dominio será aprendido como spam.

Una vez añadido el dominio, se pueden añadir direcciones a su lista blanca, lista negra o que sea obligatorio procesar desde Política antispam para el emisor.

Listas de control de conexiones externas

Desde Filtro de correo ‣ Filtro de correo SMTP ‣ Conexiones externas se pueden configurar las conexiones desde MTAs externos mediante su dirección IP o nombre de dominio hacia el filtro de correo que se ha configurado usando Zentyal. De la misma manera, se puede permitir a esos MTAs externos filtrar el correo de aquellos dominios virtuales externos a Zentyal que se permitan a través de esta sección. De esta manera, Zentyal puede distribuir su carga en dos máquinas, una actuando como servidor de correo y otra como servidor para filtrar correo.

Servidores de correo externos

Proxy transparente para buzones de correo POP3

Si Zentyal está configurado como un proxy transparente, puede filtrar el correo POP. La máquina Zentyal se colocará entre el verdadero servidor POP y el usuario filtrando el contenido descargado desde los servidores de correo (MTA). Para ello, Zentyal usa p3scan [9].

[9] Transparent POP proxy http://p3scan.sourceforge.net/Desde Filtro de correo ‣ Proxy transparente POP se puede configurar el comportamiento del filtrado:

Page 118: Manual zentyal

Configurar el proxy transparente POP

Habilitado: Si está marcada, se filtrará el correo POP.

Filtrar virus: Si está marcada, se filtrará el correo POP en busca de virus.

Filtrar spam: Si está marcada, se filtrará el correo POP en busca de spam.

Asunto spam del ISP: Si el servidor de correo marca el spam con una cabecera, poniéndola aquí avisaremos al filtro para que tome los correos con esa cabecera como spam.

Еjemplos prácticos

Ejemplo práctico A

Activar el filtro de correo y el antivirus. Enviar un correo con virus. Comprobar que el filtro surte efecto.

1. Acción: Acceder a Zentyal, entrar en Estado del módulo y activar el módulo filtro de correo, para ello marcar su casilla en la columna Estado. Habilitar primero los módulos red y cortafuegos si no se encuentran habilitados con anterioridad.

Efecto:

Zentyal solicita permiso para sobreescribir algunos ficheros.

2. Acción: Leer los cambios de cada uno de los ficheros que van a ser modificados y otorgar permiso a Zentyal para sobreescribirlos.

Efecto:

Se ha activado el botón Guardar Cambios.

3. Acción: Acceder al menú Filtro de Correo ‣ Filtro de correo SMTP, marcar las casillas Habilitado y Antivirus habilitado y pulsar el botón Cambiar.

Efecto:

Zentyal nos avisa de que hemos modificado satisfactoriamente las opciones mediante el mensaje “Hecho”.

4. Acción: Acceder a Correo ‣ General ‣ Opciones de Filtrado de Correo y seleccionar Filtro de correo interno de Zentyal.

Efecto:

Page 119: Manual zentyal

Zentyal usará su propio sistema de filtrado.

5. Acción: Guardar los cambios.

Efecto:

Zentyal muestra el progreso mientras aplica los cambios. Una vez que ha terminado lo notifica.

El filtro de correo ha sido activado con la opción de antivirus.

6. Acción: Descargar el fichero http://www.eicar.org/download/eicar_com.zip, que contiene un virus de prueba y enviarlo desde nuestro cliente de correo a una de las cuentas de correo de Zentyal.

Si se intenta descargar el archivo infectado a través de un proxy HTTP con antivirus es posible que se deniegue el acceso. En tal caso, desactivar temporalmente el antivirus en el proxy HTTP.

Efecto:

El correo nunca llegará a su destino porque el antivirus lo habrá descartado.

Zentyal Office

En este apartado se explicarán varios de los servicios que ofrece Zentyal como servidor de oficina, en concreto su capacidad para gestionar los usuarios de la red de forma centralizada, la compartición de ficheros e impresoras, así como los servicios de grupo como calendarios, contactos, tareas, etc.

Los servicios de directorio permiten gestionar los permisos de usuario de una organización de forma centralizada. De esta forma, los usuarios pueden autenticarse en la red de forma segura. Así mismo, se puede definir una estructura jerárquica con controles de acceso a los recursos de la organización. Finalmente, gracias a la arquitectura maestro/esclavo que integra Zentyal, la gestión centralizada de usuarios puede aplicarse a grandes empresas con múltiples oficinas.

La compartición de ficheros, aplicando permisos de acceso y modificación por usuario y grupo es una de las funcionalidades más importantes de un servidor de oficina y facilita enormemente el trabajo en grupo sobre documentos de forma intuitiva, así como la posterior salvaguarda de los ficheros más críticos de una organización.

Así mismo, la compartición de impresoras, aplicando permisos por usuario y grupo es también un servicio muy importante en cualquier organización, puesto que permite optimizar el uso y disponibilidad de estos recursos.

Por último se desarrollará el sistema de backups tanto de configuración de Zentyal como de datos de nuestros usuarios, herramienta crítica e indispensable en cualquier servidor de empresa para garantizar el proceso de recuperación ante un fallo o percance con nuestros sistemas, protegiéndonos de paradas en la productividad.

Servicio de directorio (LDAP)

Introducción al servicio de directorio (LDAP)

Un servicio de directorio [1] es una base de datos de información estructurada disponible para un conjunto de usuarios. Un ejemplo de un servicio de directorio son las Páginas Amarillas, que contienen nombres, direcciones y números de contacto de diferentes empresas, clasificadas por categorías e indexadas de manera sencilla para facilitar búsquedas.

[1] http://es.wikipedia.org/wiki/Servicio_de_directorioLos servicios de directorio pueden ser de muy distintos tipos: locales para una organización o globales; con información abarcando desde nombres de empleados y números de teléfono hasta nombres de dominio y sus correspondientes direcciones IP; instaladas como sistemas sencillos en una red local o como una serie de bases de datos dispersas geográficamente e interconectadas entre sí. Sin embargo, todos ellos comparten características comunes, como tener la información estructurada con un esquema flexible y modificable, disponer de capacidades avanzadas de búsqueda y, en los casos de directorios distribuidos, replicar la información entre diversos servidores.

Para facilitar la rápida extracción de los datos de un servicio de directorio se utiliza LDAP [2], un protocolo que permite la consulta de datos de servicios de directorio a través de conexiones estándar TCP/IP. LDAP se basa en un modelo de cliente-servidor, en el que múltiples clientes se conectan a un servidor para realizar consultas y recabar resultados.

Page 120: Manual zentyal

[2] http://es.wikipedia.org/wiki/LDAPEn una pyme los servicios de directorio se utilizan principalmente para almacenar y organizar la información relativa a los usuarios y grupos de la organización. Así, los servicios de directorio actúan como una autoridad central a través de la cual los usuarios de una organización se pueden autenticar de manera segura. Además, permiten a los administradores de la red asignar permisos de acceso a los recursos por parte de los usuarios, facilitando la implantación de políticas de seguridad.

Para facilitar la tarea de administración de recursos compartidos se diferencia entre usuarios y grupos, pudiendo así asignar permisos de acceso a los recursos tanto a nivel individual como por categorías.

Zentyal integra OpenLDAP [3] como servicio de directorio, con tecnología Samba [4] para implementar la funcionalidad de controlador de dominios Windows además de para la compartición de ficheros e impresoras.

[3] http://www.openldap.org/

[4] http://es.wikipedia.org/wiki/Samba_%28programa%29El servidor de OpenLDAP usa por defecto el puerto TCP 389, la versión de LDAP que se ejecuta sobre SSL (proporcionando una capa extra de seguridad y cifrado) usa el puerto TCP 636.

El servidor de Samba escucha por defecto en los puertos 139 y 445 de TCP.

Para más información sobre los servicios de directorio o sobre el protocolo LDAP se recomienda la lectura de sus respectivas páginas web en wikipedia, mencionadas anteriormente.

Para más información sobre OpenLDAP se recomienda la lectura de su guía rápida (en inglés) [5].

[5] http://www.openldap.org/doc/admin24/quickstart.htmlPara saber cómo configurar el servidor OpenLDAP mediante línea de comandos en Linux se recomienda la lectura correspondiente en la documentación de Ubuntu Server (en inglés) [6].

[6] https://help.ubuntu.com/10.04/serverguide/C/openldap-server.html

Configuración de servidores Zentyal en modo maestro/esclavo

Como se ha explicado, Zentyal está diseñado de manera modular, permitiendo al administrador distribuir los servicios entre varias máquinas de la red. Para que esto sea posible, el módulo de usuarios y grupos puede configurarse siguiendo una arquitectura maestro/esclavo para compartir usuarios entre los diferentes servidores.

Por defecto y a no ser que se indique lo contrario en el menú Usuarios y Grupos ‣ Modo, el módulo se configurará como un directorio LDAP maestro y el Nombre Distinguido (DN) [7] del directorio se establecerá de acuerdo al nombre de la máquina. Si se desea configurar un DN diferente, se puede hacer en la entrada de texto LDAP DN. El menú Usuarios y Grupos ‣ Modo sólo está disponible si no se ha configurado el módulo todavía, este es el caso cuando se selecciona servidor esclavo o sincronización con AD en el asistente de instalación.

[7] Cada entrada en un directorio LDAP tiene un identificador único llamado nombre distinguido que tiene similitudes con el concepto de ruta completa de fichero en un sistema de ficheros.

Page 121: Manual zentyal

Modo de usuarios de Zentyal

Otros servidores pueden ser configurados para usar un maestro como fuente de sus usuarios, convirtiéndose así en directorios esclavos. Para hacer esto, se debe seleccionar el modo esclavo en Usuarios y Grupos ‣ Modo. La configuración del esclavo necesita dos datos más, la IP o nombre de máquina del directorio maestro y su clave de LDAP. Esta clave no es la de Zentyal, sino una generada automáticamente al activar el módulo usuarios y grupos. Su valor puede ser obtenido en el campo Contraseña de la opción de menú Usuarios y Grupos ‣ Datos LDAP en el servidor Zentyal maestro.

Información de LDAP

Hay un requisito más antes de registrar un servidor esclavo en uno maestro. El maestro debe de ser capaz de resolver el nombre de máquina del esclavo utilizando DNS. Para ello hay que configurar el servicio DNS de Zentyal, añadiendo un nuevo dominio con nombre de la máquina esclava y su dirección IP.

Si el módulo cortafuegos está habilitado en el servidor maestro, debe ser configurado de manera que permita el tráfico entrante de los esclavos. Por defecto, el cortafuegos prohíbe este tráfico, por lo que es necesario asegurarse de hacer los ajustes necesarios en el mismo antes de proseguir.

Una vez que todos los parámetros han sido establecidos y el nombre de máquina del esclavo puede ser resuelto desde el maestro, el esclavo puede registrarse en el servidor Zentyal maestro habilitando el módulo de usuarios y grupos en Estado de los módulos.

Los esclavos crean una réplica del directorio maestro cuando se registran por primera vez, que se mantiene actualizada automáticamente cuando se añaden nuevos usuarios y grupos. Se puede ver la lista de esclavos en el menú Usuarios y grupos ‣ Estado de los esclavos de la Zentyal maestra.

Estado de los esclavos

Los módulos que utilizan usuarios como por ejemplo correo y compartición de ficheros pueden instalarse ahora en los esclavos y utilizarán los usuarios disponibles en la Zentyal maestra. Algunos módulos necesitan que se ejecuten algunas acciones cuando se añaden usuarios, como por ejemplo compartición de ficheros, que necesita crear los directorios de usuario. Para hacer esto, el maestro notifica a los esclavos sobre nuevos usuarios y grupos cuando son creados, dando la oportunidad a los esclavos de ejecutar las acciones apropiadas.

Puede haber problemas ejecutando estas acciones en ciertas circunstancias, por ejemplo si uno de los esclavos está apagado. En ese caso, el maestro recordará que hay acciones pendientes que deben realizarse y lo reintentará periódicamente. El administrador puede comprobar también el estado de los esclavos en Usuarios y Grupos ‣ Estado de Esclavo y forzar el reintento de las acciones manualmente en cualquier momento. Desde esta sección también es posible borrar un esclavo.

Page 122: Manual zentyal

Hay una importante limitación en la arquitectura maestro/esclavo actual. El maestro Zentyal no puede tener instalados módulos que dependan de usuarios y grupos, como por ejemplo compartición de ficheros o correo. Si el maestro tiene alguno de estos módulos instalados, deben ser desinstalados antes de intentar registrar un esclavo en él.

Truco

Configuración de Zentyal como esclavo de Windows Active Directory

Además de los despliegues maestro-esclavo que se pueden realizar entre distintas máquinas Zentyal, un servidor Zentyal puede adoptar el papel de esclavo de una máquina Windows Active Directory que actúe como maestro.

La replicación se realiza sólo en una dirección, desde Windows a Zentyal, y existen dos procesos distintos para los datos y las contraseñas. Todos los datos de usuarios y grupos se sincronizan a través del protocolo LDAP. Sin embargo, las contraseñas se transfieren mediante una comunicación TCP cifrada, con el servidor escuchando en la máquina Zentyal y el cliente notificando las contraseñas cuando se crea un nuevo usuario o se modifica una contraseña en el servidor Windows actuando como maestro.

Para desplegar un escenario como este necesitaremos un servidor Zentyal instalado con configuración avanzada del directorio de usuarios y un servidor Windows con Active Directory configurado. En el servidor Windows tendremos que instalar el software encargado de sincronizar los esclavos y en los esclavos tendremos que registrarnos en el maestro.

Configuración del servidor Windows como maestro

Se necesita instalar un paquete especial en el servidor de Active Directory para poder notificar los cambios de contraseña a Zentyal.

Este paquete puede ser descargado, para las diferentes versiones de Zentyal desde la página de descargas del proyecto [8].

[8] http://sourceforge.net/projects/zentyal/files/Una vez descargado ejecutarlo, lo que lanzará la herramienta de configuración automáticamente, donde podremos introducir los siguientes datos:

Zentyal slave host (Máquina esclava Zentyal): Dirección IP de la máquina Zentyal.

Port (Puerto): Se puede dejar el valor por defecto o cambiarlo por otro distinto que esté disponible en la máquina Zentyal.

Secret key (Clave secreta): Se puede elegir cualquier contraseña, siempre y cuando su longitud sea de 16 carácteres.

Enable service (Activar servicio): Marcar esta casilla si queremos que se escriban los datos en el registro de Windows de manera inmediata. No tendrá efecto hasta que no se reinicie el servidor.

Diálogo de configuración durante la instalación

Page 123: Manual zentyal

Los valores de puerto y clave secreta tendrán que ser introducidos posteriormente en la configuración de la máquina Zentyal como se explica en la siguiente sección.

Para finalizar la instalación pulsar el botón Save to Registry and Exit (Guardar en el registro y salir). No se recomienda reiniciar el servidor todavía, ya que todavía hay que realizar algunos pasos adicionales.

En el menú Inicio, ir a Herramientas Administrativas ‣ Política de seguridad del dominio y activar los requisitos de complejidad para contraseñas como se muestra en la imagen:

Editando la política de contraseñas

Allí añadiremos un usuario y le asignaremos una contraseña. Se ha de tener en cuenta que estos credenciales serán utilizados para conectar vía LDAP, por tanto, la parte relevante es el nombre completo (CN) y no el nombre de usuario. La recomendación para evitar problemas es dejar en blanco los cambios de nombre y apellidos y asignar el mismo valor al Nombre completo y al Nombre de inicio de sesión.

Añadiendo el nuevo usuario eboxadsync

Una vez finalizada esta configuración ya se puede reiniciar la máquina como advirtió el instalador.

Configuración del servidor Zentyal como esclavo

Teniendo listo el servidor Windows maestro, se puede proceder a la configuración de Zentyal desde Usuarios y Grupos ‣ Modo. Allí podremos rellenar los siguientes datos:

Page 124: Manual zentyal

Modo: Elegir la opción Esclavo Windows AD.

Host maestro: Dirección IP del servidor Windows.

Modo de usuarios de Zentyal

Una vez introducidos estos valores podremos activar el módulo Usuarios y Grupos y guardar cambios. Una vez que Zentyal está preparado para trabajar en este modo, podremos introducir los datos de autenticación con el servidor Windows desde Usuarios y Grupos ‣ Sincronización Windows AD.

Usuario del AD: Nombre del usuario que hemos creado en la máquina Windows.

Contraseña del AD: La contraseña del usuario anterior.

Puerto de recepción: Puerto introducido durante la configuración del servidor Windows.

Clave secreta AD: La clave de 16 caracteres que se introdujo durante la configuración en la máquina Windows.

Advertencia

Las contraseñas asignadas a los usuarios previamente existentes necesitarán ser reasignadas de nuevo (o cambiadas) para que puedan ser notificadas a Zentyal. Una vez sincronizados los usuarios, las actualizaciones pueden retrasarse hasta 5 minutos.

Configuración de un servidor LDAP con Zentyal

Opciones de configuración de LDAP

Habiendo configurado nuestro servidor Zentyal como maestro, desde Usuarios y Grupos ‣ Opciones de configuración de LDAP podemos comprobar cual es nuestra configuración actual de LDAP y realizar algunos ajustes relacionados con la configuración de autenticación PAM del sistema.

En la parte superior podremos ver la Información de LDAP:

Configuración de ldap en Zentyal

DN Base: Base de los nombres de dominio de este servidor.

DN Raíz:

Page 125: Manual zentyal

Nombre de dominio de la raíz del servidor. Contraseña:

Contraseña que tendrán que usar otros servicios o aplicaciones que quieran utilizar este servidor LDAP. Si se quiere configurar un servidor Zentyal como esclavo de este servidor, esta será la contraseña que habrá de usarse.

DN de Usuarios: Nombre de dominio del directorio de usuarios.

DN de Grupos: Nombre de dominio del directorio de grupos.

En la parte inferior podremos establecer ciertas Opciones de configuración PAM:

Configuración de PAM en Zentyal

Habilitando PAM permitiremos que los usuarios gestionados por Zentyal puedan ser también utilizados como usuarios normales del sistema, pudiendo iniciar sesiones en el servidor.

También podemos especificar desde esta sección el intérprete de comandos predeterminado para nuestros usuarios. Esta opción está inicialmente configurada como nologin, evitando que los usuarios puedan iniciar sesiones. Cambiar esta opción no modificará los usuarios ya existentes en el sistema, se aplicará únicamente a los usuarios creados a partir del cambio.

Creación de usuarios y grupos

Se puede crear un grupo desde el menú Usuarios y Grupos ‣ Grupos. Un grupo se identifica por su nombre, y puede contener una descripción.

Añadir grupo a Zentyal

A través de Usuarios y Grupos ‣ Grupos se pueden ver todos los grupos existentes para poder editarlos o borrarlos.

Mientras se edita un grupo, se pueden elegir los usuarios que pertenecen al grupo, además de la información que tiene que ver con aquellos módulos de Zentyal instalados que poseen alguna configuración específica para los grupos de usuarios.

Editar grupo

Entre otras cosas con grupos de usuarios es posible:

Page 126: Manual zentyal

Disponer de un directorio compartido entre los usuarios de un grupo. Dar permisos sobre una impresora a todos los usuarios de un grupo. Crear un alias de cuenta de correo que redirija a todos los usuarios de un grupo. Asignar permisos de acceso a las distintas aplicaciones de groupware a todos los usuarios de un grupo.

Los usuarios se crean desde el menú Usuarios y Grupos ‣ Usuarios, donde tendremos que rellenar la siguiente información:

Añadir usuario a Zentyal

Nombre de usuario: Nombre que tendrá el usuario en el sistema, será el nombre que use para identificarse en los procesos de autenticación.

Nombre: Nombre del usuario.

Apellidos: Apellidos del usuario.

Comentario: Información adicional sobre el usuario.

Contraseña: Contraseña que empleará el usuario en los procesos de autenticación. Esta información se tendrá que dar dos veces para evitar introducirla incorrectamente.

Grupo: Es posible añadir el usuario a un grupo en el momento de su creación.

Desde Usuarios y Grupos ‣ Usuarios se puede obtener un listado de los usuarios, editarlos o eliminarlos.

Listado de usuarios en Zentyal

Mientras se edita un usuario se pueden cambiar todos los datos anteriores exceptuando el nombre del usuario, además de la información que tiene que ver con aquellos módulos de Zentyal instalados que poseen alguna configuración específica para los usuarios. También se puede modificar la lista de grupos a los que pertenece.

Page 127: Manual zentyal

Editar usuario

Editando un usuario es posible:

Crear una cuenta para el servidor Jabber. Crear una cuenta para la compartición de ficheros o de PDC con una cuota personalizada. Dar permisos al usuario para usar una impresora. Crear una cuenta de correo electrónico para el usuario y alias para la misma. Asignar una extensión telefónica a dicho usuario. Activar o desactivar la cuenta de usuario para zarafa y controlar si dispone de permisos de administración.

En una configuración maestro/esclavo, los campos básicos de usuarios y grupos se editan desde el maestro, mientras que el resto de atributos relacionados con otros módulos instalados en un esclavo dado se editan desde el mismo.

Rincón del Usuario

Los datos del usuario sólo pueden ser modificados por el administrador de Zentyal, lo que comienza a dejar de ser escalable cuando el número de usuarios que se gestiona comienza a ser grande. Tareas de administración como cambiar la contraseña de un usuario pueden hacer perder la mayoría del tiempo del encargado de dicha labor. De ahí surge la necesidad del nacimiento del rincón del usuario. Dicho rincón es un servicio de Zentyal para permitir cambiar a los usuarios sus datos. Esta funcionalidad debe ser habilitada como el resto de módulos. El rincón del usuario se encuentra escuchando en otro puerto por otro proceso para aumentar la seguridad del sistema.

Configurar puerto del rincón del usuario

El usuario puede entrar en el rincón del usuario a través de:

https://<ip_de_Zentyal>:<puerto_rincon_usuario>/

Una vez el usuario introduce su nombre y su contraseña puede realizar cambios en su configuración personal. Por ahora, la funcionalidad que se presenta es la siguiente:

Cambiar la contraseña actual. Configuración del buzón de voz del usuario. Configurar una cuenta personal externa para recoger el correo y sincronizarlo con el contenido en su cuenta del

servidor de correo en Zentyal.

Page 128: Manual zentyal

Cambiar contraseña en el rincón de usuario

Ejemplos prácticos

Ejemplo práctico A

Crear un grupo en Zentyal llamado contabilidad.

Para ello:

1. Acción: Activar el módulo usuarios y grupos. Entrar en Estado de los módulos y activar el módulo en caso de que no esté habilitado.

Efecto:

El módulo está activado y listo para ser usado.

2. Acción: Acceder a Usuarios y Grupos ‣ Grupos. Añadir contabilidad como grupo. El parámetro comentario es opcional.

Pulsar Añadir.

Efecto:

El grupo contabilidad ha sido creado. No es necesario que se guarden los cambios ya que las acciones sobre LDAP tienen efecto inmediato.

Ejemplo práctico B

Crear el usuario pedro y añadirlo al grupo contabilidad.

Para ello:

1. Acción: Acceder a Usuarios ‣ Añadir usuario. Rellenar los distintos campos para nuestro nuevo usuario. Se puede añadir al usuario pedro al grupo contabilidad desde esta pantalla.

Pulsar Añadir.

Efecto:

El usuario ha sido añadido al sistema y al grupo contabilidad. Se puede comprobar desde la lista de usuarios.

Servicio de compartición de ficheros y de autenticación

Introducción a la compartición de ficheros y a la autenticación

La compartición de ficheros [1] es el proceso por el cual una serie de ficheros se ponen a disposición de los usuarios de una red, dándoles acceso para trabajar sobre ellos, descargarlos o modificarlos. Los principales sistemas existentes para ello son Network File System (NFS) [2] , Andrew File System (AFS) y Common Internet File System (CIFS) [3]. Este último es

Page 129: Manual zentyal

el protocolo de archivos compartidos de Microsoft Windows y anteriormente era conocido como Server Message Block (SMB). Por ello, en muchos contextos se le denomina SMB/CIFS.

[1] http://es.wikipedia.org/wiki/Distribucion_de_archivos

[2] http://es.wikipedia.org/wiki/Network_File_System

[3] http://es.wikipedia.org/wiki/SMBLos usuarios acceden a estos ficheros compartidos y efectúan operaciones sobre ellos (creación, lectura, escritura) de la misma forma a cómo lo harían si éstos estuvieran en su propio ordenador. Sin embargo, esta información puede estar dispersa en diferentes lugares, siendo por tanto transparente en cuanto a su localización. Idealmente, el usuario no debería notar diferencia accediendo a un fichero almacenado en su ordenador o en un servidor, aunque en realidad notará las latencias asociadas a la operación con ficheros en red, así como las cuestiones relacionadas con la edición simultánea de ficheros y su correspondiente actualización concurrente.

Zentyal usa Samba para implementar SMB/CIFS [4].

[4] http://es.wikipedia.org/wiki/Samba_(programa)Los puertos usados por Samba van del 137 al 139 tanto de TCP como UDP, para diferentes servicios como la transferencia de datos o la autenticación.

Samba: la implementación de SMB/CIFS en Linux

Samba [5] es una implementación libre del protocolo SMB/CIFS para Linux y Unix, facilitando de esta forma que ordenadores con Linux puedan colaborar en redes Windows como servidores o actúen como clientes. Además, Samba también puede actuar como Controlador Principal de Dominio (PDC), autenticando usuarios en la red, o incluso como Active Directory (servicio de directorio de Microsoft) para redes basadas en Windows. Así mismo, también permite compartir directorios e impresoras en la red. Samba puede instalarse no sólo en servidores Linux, sino también en Solaris, BSD y Mac OS X Server.

[5] http://es.wikipedia.org/wiki/Samba_(programa)Zentyal integra Samba para implementar la compartición de ficheros e impresoras y la autenticación de usuarios en la red.

Para más información sobre Samba se recomienda acceder directamente a la página web del proyecto (en inglés) [6]. Para profundizar en el funcionamiento e implementación de CIFS se recomienda la lectura del libro on-line Implementing CIFS (en inglés) [7].

[6] http://www.samba.org/

[7] http://www.ubiqx.org/cifs/Para saber cómo configurar el servidor Samba mediante línea de comandos en Linux se recomienda la lectura correspondiente a redes Windows en la documentación de Ubuntu Server (en inglés) [8].

El servidor de Samba escucha por defecto en los puertos 139 y 445 de TCP.

[8] https://help.ubuntu.com/10.04/serverguide/C/windows-networking.html

Controlador Primario de Dominio (PDC)

Un PDC [9] (del inglés Primary Domain Controller) es un servidor Windows que autentica usuarios en la red y mantiene la base de datos del servicio de directorio para un dominio actualizada ante cualquier cambio. En el contexto de redes Windows, un dominio es un concepto usado por los servidores NT por el que a un usuario se le permite el acceso a una serie

Page 130: Manual zentyal

de recursos de la red mediante el uso de una única combinación de nombre de usuario y contraseña.

Esta implementación se mantuvo en los servidores Windows hasta la versión NT. A partir de Windows Server 2000 fue reemplazada por el servicio de directorio Active Directory [10], mejor adaptado para grandes organizaciones, aunque las nuevas versiones de Windows, tanto de cliente como de servidor, siguen siendo compatibles con PDC.

Samba es capaz de emular fielmente un servidor PDC sobre un sistema operativo Linux.

[9] http://en.wikipedia.org/wiki/Primary_Domain_Controller

[10] http://es.wikipedia.org/wiki/Active_Directory

Configuración de un servidor de ficheros con Zentyal

Los servicios de compartición de ficheros están activos cuando el módulo de Compartición de ficheros está activo, sin importar si la función de PDC lo está.

Con Zentyal la compartición de ficheros está integrada con los usuarios y grupos. De tal manera que cada usuario tendrá su directorio personal y cada grupo puede tener un directorio compartido para todos sus usuarios.

El directorio personal de cada usuario es compartido automáticamente y sólo puede ser accedido por el correspondiente usuario.

También se puede crear un directorio compartido para un grupo desde Usuarios y Grupos ‣ Grupos ‣ Editar grupo. Todos los miembros del grupo tendrán acceso a ese directorio y podrán leer o escribir los ficheros y directorios dentro de dicho directorio compartido.

Creando un directorio compartido para un grupo

Para configurar los parámetros generales del servicio de compartición de ficheros, ir a Compartir Ficheros ‣ Configuración general.

Configuración general de la compartición de ficheros

Establecemos el dominio donde se trabajará dentro de la red local en Windows, y como nombre NetBIOS el nombre que identificará al servidor Zentyal dentro de la red Windows. Se le puede dar una descripción larga para describir el dominio. Además se puede establecer de manera opcional un límite de cuota. Con el Grupo Samba se puede opcionalmente configurar un grupo exclusivo en el que sus usuarios tengan cuenta de compartición de ficheros en vez de todos los usuarios, la sincronización se hace cada hora.

Para crear un directorio compartido, se accede a Compartir Ficheros ‣ Directorios compartidos y se pulsa Añadir nuevo.

Page 131: Manual zentyal

Añadir un nuevo recurso compartido

Habilitado: Lo dejaremos marcado si queremos que este directorio esté compartido. Podemos deshabilitarlo para dejar de compartirlo manteniendo la configuración.

Nombre del directorio compartido: El nombre por el que será conocido el directorio compartido.

Ruta del directorio compartido: Ruta del directorio a compartir. Se puede crear un subdirectorio dentro del directorio de Zentyal /home/samba/shares, o usar directamente una ruta existente del sistema si se elige Ruta del sistema de ficheros.

Comentario: Una descripción más extensa del directorio compartido para facilitar la gestión de los elementos compartidos.

Acceso de invitado: Marcar esta opción hará que este directorio compartido esté disponible sin autenticación. Cualquier otra configuración de acceso o de permisos será ignorada.

Lista de directorios compartidos

Desde la lista de directorios compartidos podemos editar el control de acceso. Allí, pulsando en Añadir nuevo, podemos asignar permisos de lectura, lectura y escritura o administración a un usuario o a un grupo. Si un usuario es administrador de un directorio compartido podrá leer, escribir y borrar ficheros de cualquier otro usuario dentro de dicho directorio.

Page 132: Manual zentyal

Añadiendo una nueva ACL (Access Control List, o lista de control de acceso)

También se puede crear un directorio compartido para un grupo desde Usuarios y Grupos ‣ Grupos. Todos los miembros del grupo tendrán acceso, podrán escribir sus propios ficheros y leer todos los ficheros en el directorio.

Si se quieren almacenar los ficheros borrados dentro de un directorio especial llamado RecycleBin, se puede marcar la casilla Habilitar Papelera de Reciclaje dentro de Compartir ficheros ‣ Papelera de Reciclaje. Si no se desea activar la papelera para todos los recursos compartidos, se pueden añadir excepciones en la sección Recursos excluidos de la Papelera de Reciclaje. También se pueden modificar algunos otros valores por defecto para esta característica, como por ejemplo el nombre del directorio, editando el fichero /etc/zentyal/samba.conf.

Papelera de reciclaje

En Compartir ficheros ‣ Antivirus existe también una casilla para habilitar o deshabilitar la búsqueda de virus en los recursos compartidos y la posibilidad de añadir excepciones para aquellos en los que no se desee buscar. Nótese que para acceder la configuración del antivirus para el módulo de compartir ficheros es requisito tener instalado el paquete samba-vscan en el sistema. El módulo antivirus de Zentyal debe estar así mismo instalado y habilitado.

Configuración de clientes Samba

Una vez tenemos el servicio ejecutándose podemos compartir ficheros a través de Windows o Linux.

Cliente Windows

A través de Mis sitios de red ‣ Toda la red. Buscamos el dominio que hemos elegido y al acceder a él aparecerá la máquina servidora con el nombre seleccionado, pudiendo ver sus recursos compartidos:

Page 133: Manual zentyal

Recursos compartidos en Windows

Cliente Linux

Konqueror (KDE)

En Konqueror basta con poner en la barra de búsqueda smb:// para ver la red de Windows en la que podemos encontrar el dominio especificado:

Recursos compartidos en Konqueror

Nautilus (Gnome)

En Nautilus vamos a Lugares ‣ Servidores de Red ‣ Red de Windows, ahí encontramos nuestro dominio y dentro del mismo el servidor Zentyal donde compartir los recursos.

Page 134: Manual zentyal

Recursos compartidos en Nautilus

Hay que tener en cuenta que los directorios personales de los usuarios no se muestran en la navegación y para entrar en ellos se debe hacer directamente escribiendo la dirección en la barra de búsqueda. Por ejemplo, para acceder al directorio personal del usuario pedro, debería introducir la siguiente dirección:

smb://<ip_de_ebox>/pedro

Configuración de un servidor de autenticación con Zentyal

Para aprovechar las posibilidades del PDC como servidor de autenticación y su implementación Samba para Linux debemos marcar la casilla Habilitar PDC a través de Compartir ficheros ‣ Configuración General.

Habilitar PDC

Si la opción Perfiles Móviles está activada, el servidor PDC no sólo realizará la autenticación, sino que también almacenará los perfiles de cada usuario. Estos perfiles contienen toda la información del usuario, como sus preferencias de Windows, sus cuentas de correo de Outlook, o sus documentos. Cuando un usuario inicie sesión, recibirá del servidor PDC su perfil. De esta manera, el usuario dispondrá de su entorno de trabajo en varios ordenadores. Hay que tener en cuenta antes de activar esta opción que la información de los usuarios puede ocupar varios gygabytes de información, el servidor PDC necesitará espacio de disco suficiente. También se puede configurar la letra del disco al que se conectará el directorio personal del usuario tras autenticar contra el PDC en Windows.

Es posible definir políticas para las contraseñas de los usuarios a través de Compartir ficheros ‣ PDC.

Longitud mínima de contraseña. Edad máxima de contraseña, la contraseña deberá renovarse tras superar los días configurados.

Page 135: Manual zentyal

Forzar historial de contraseñas, esta opción forzará a almacenar un máximo de contraseñas, impidiendo que puedan ser repetidas en sucesivas modificaciones.

Estas políticas son únicamente aplicables cuando se cambia la contraseña desde Windows con una máquina que está conectada a nuestro dominio. De hecho, Windows forzará el cumplimiento de dicha política al entrar en una máquina registrada en el dominio.

Configuración de PDC

Configuración de clientes PDC

Para poder configurar la autenticación PDC en una máquina, se necesita utilizar una cuenta que tenga privilegios de administrador en el servidor. Esto puede configurarse en Usuarios y Grupos ‣ Usuarios ‣ Cuenta de compartición de ficheros o de PDC. Además, puede establecerse una Cuota de disco.

Configuración de autenticación PDC

Ahora vamos a otra máquina dentro de la misma red de área local (hay que tener en cuenta que el protocolo SMB/CIFS funciona en modo de difusión total) con un Windows capaz de trabajar con CIFS (Ej. Windows XP Professional). Allí, en Mi PC ‣ Propiedades, lanzamos el asistente para asignar una Id de red a la máquina. En cada pregunta se le da como nombre de usuario y contraseña la de aquel usuario al que hemos dado privilegios de administrador, y como dominio el nombre de dominio escrito en la configuración de Compartir Ficheros. El nombre de la máquina puede ser el mismo que estaba, siempre y cuando no colisione con el resto de equipos a añadir al dominio. Tras finalizar el asistente, se debe reiniciar la máquina.

Una vez hemos entrado con uno de los usuarios, podemos entrar en Mi PC y aparecerá una partición de red con una cuota determinada en la configuración de Zentyal.

Page 136: Manual zentyal

Partición de Windows

Servicio de compartición de impresoras

Acerca de la compartición de impresoras

La gestión de las impresoras es por lo general una tarea crítica para cualquier organización, y una de las funcionalidades más demandadas de Zentyal. La combinación de la gestión de impresoras y la autenticación de usuarios y grupos de forma centralizada permite segmentar el uso de las impresoras de la organización, asignándoles permisos de uso por usuarios, grupos o departamentos. De esta forma, además, se puede racionalizar la inversión y consumo de las impresoras, asignando equipamiento de alta calidad para aquellos grupos de la organización que lo necesiten y buscando equipos más duraderos y económicos para el resto.

Para la gestión de impresoras y de los permisos de acceso a cada una, Zentyal utiliza Samba, descrito en la sección Configuración de un servidor de ficheros con Zentyal . Como sistema de impresión, actuando en coordinación con Samba, Zentyal integra CUPS [1], Common Unix Printing System o Sistema de Impresión Común de UNIX.

[1] http://es.wikipedia.org/wiki/Common_Unix_Printing_System

CUPS es un sistema de impresión para sistemas Linux y UNIX que está compuesto por varias herramientas, tales como una cola de impresión, un sistema de conversión de datos en formatos comprensibles por las impresoras y un sistema de envío de datos al equipo de impresión.

Para más información sobre CUPS se recomienda acceder directamente a la página web del proyecto (en inglés) [2].

[2] http://www.cups.org/

Configuración de un servidor de impresoras con Zentyal

Para compartir una impresora de nuestra red, permitiendo o denegando el acceso a usuarios y grupos para su uso, debemos tener accesibilidad a dicha impresora desde la máquina que contenga Zentyal ya sea por conexión directa, puerto paralelo, USB, o a través de la red local. Además debemos conocer información relativa al fabricante, modelo y controlador de la impresora para poder obtener un funcionamiento correcto.

En primer lugar, hay que destacar que el mantenimiento de las impresoras no se realiza directamente desde la interfaz de

Page 137: Manual zentyal

Zentyal sino desde la propia interfaz de CUPS. Si administramos el servidor Zentyal de forma local no necesitamos hacer nada especial, pero si deseamos acceder a desde otras máquinas de la red se deberá permitir explícitamente la interfaz de red correspondiente, ya que por defecto CUPS no escuchará en ninguna por motivos de seguridad.

Gestión de impresoras

El puerto de administración de CUPS por defecto es el 631 y se accede a su interfaz de administración mediante protocolo HTTPS a través de una interfaz de red en la que hayamos habilitado la escucha de CUPS, o localhost si estamos operando directamente sobre la máquina Zentyal.

https://direccion_zentyal:631/admin

Aunque para mayor comodidad, si estamos accediendo a la interfaz de Zentyal, podemos acceder directamente a CUPS mediante el enlace Interfaz web de CUPS.

Para la autenticación se usará el mismo par de usuario y contraseña con el que se accede a la interfaz de Zentyal.

Una vez que hayamos iniciado sesión en la interfaz de administración de CUPS, podremos añadir una impresora a través de Impresoras ‣ Añadir Impresora.

En el primer paso del asistente de añadir impresora se debe seleccionar el tipo de impresora. Este método depende del modelo de impresora y de cómo esté conectada a nuestra red. CUPS dispone también de una característica de descubrimiento automático de impresoras. Por tanto, en la mayoría de los casos es posible que nuestra impresora sea detectada automáticamente facilitando así la labor de configuración.

Añadir impresora

En función del método seleccionado, se deben configurar los parámetros de la conexión. Por ejemplo, para una impresora en red, se debe establecer la dirección IP y el puerto de escucha de la misma como muestra la imagen.

Page 138: Manual zentyal

Parámetros de conexión

En el siguiente paso del asistente, podremos asignarle a la impresora el nombre con el que será identificada posteriormente así como otras descripciones adicionales sobre sus características y ubicación. Estas descripciones podrán ser cualquier cadena de caracteres y su valor será meramente informativo, a diferencia del nombre, que no podrá contener espacios ni caracteres especiales.

Nombre y descripción de la impresora

Posteriormente, se debe establecer el fabricante, modelo y controlador de impresora a utilizar. Una vez que se ha seleccionado el fabricante aparecerá la lista de modelos disponibles junto con los distintos controladores para cada modelo a la derecha, separados por una barra. También tenemos la opción de subir un fichero PPD proporcionado por el fabricante, en caso de que nuestro modelo de impresora no aparezca en la lista.

Fabricante y modelo

Finalmente tendremos la opción de cambiar sus parámetros de configuración.

Page 139: Manual zentyal

Parámetros de configuración

Una vez finalizado el asistente, ya tenemos la impresora configurada. Podremos observar qué trabajos de impresión están pendientes o en proceso mediante Trabajos ‣ Administrar trabajos en la interfaz de CUPS. Se pueden realizar muchas otras acciones, como por ejemplo imprimir una página de prueba. Para más información sobre la administración de impresoras con CUPS se recomienda consultar su documentación oficial [3].

[3] http://www.cups.org/documentation.phpUna vez añadida la impresora a través de CUPS, Zentyal es capaz de exportarla usando Samba para ello.

Una vez habilitamos el servicio y salvamos cambios podemos comenzar a permitir el acceso a dichos recursos a través de la edición del grupo o del usuario (Grupos ‣ Editar Grupo ‣ Impresoras o Usuarios ‣ Editar Usuario ‣ Impresoras).

Gestión de accesos a impresoras

Copias de seguridad

Diseño de un sistema de copias de seguridad

La pérdida de datos en un sistema es un accidente ocasional ante el que debemos estar prevenidos. Fallos de hardware, fallos de software o errores humanos pueden provocar un daño irreparable en el sistema o la pérdida de datos importantes.

Es por tanto imprescindible diseñar un correcto procedimiento para realizar, comprobar y restaurar copias de seguridad o respaldo del sistema, tanto de configuración como de datos.

Una de las primeras decisiones que deberemos tomar es si realizaremos copias completas, es decir, una copia total de todos los datos, o copias incrementales, esto es, a partir de una primera copia completa copiar solamente las diferencias. Las copias incrementales reducen el espacio consumido para realizar copias de seguridad aunque requieren lógica adicional para la restauración de la copia de seguridad. La decisión más habitual es realizar copias incrementales y de vez en cuando hacer una copia completa a otro medio, pero esto dependerá de nuestras necesidades y recursos de almacenamiento disponibles.

Otra de las decisiones importantes es si realizaremos las copias de seguridad sobre la misma máquina o sobre una remota. El uso de una máquina remota ofrece un nivel de seguridad mayor debido a la separación física. Un fallo de hardware, un fallo

Page 140: Manual zentyal

de software, un error humano o una intrusión en el servidor principal no deberían afectar a la integridad de las copias de seguridad. Para minimizar este riesgo el servidor de copias debería estar exclusivamente dedicado a tal fin y no ofrecer otros servicios adicionales más allá de los requeridos para realizar las copias. Tener dos servidores no dedicados realizando copias uno del otro es definitivamente una mala idea, ya que un compromiso en uno lleva a un compromiso del otro.

Backup de la configuración de Zentyal

Zentyal ofrece un servicio de backups de configuración, vital para asegurar la recuperación de un servidor ante un desastre, debido por ejemplo a un fallo del disco duro del sistema o un error humano en un cambio de configuración.

Los backups se pueden hacer en local, guardándolos en el disco duro de la propia máquina Zentyal. Tras ello se recomienda copiarlos en algún soporte físico externo, ya que si la máquina sufriera un fallo grave podríamos perder también el backup de la configuración.

También es posible realizar estos backups de forma remota, ya que están incluidos en los servicios de subscripción que provee Zentyal. Tanto la Subscripción Profesional como la Subscripción Empresarial, ambas como parte de la oferta comercial de Zentyal, incluyen estos backups de configuración. Así mismo, la Subscripción Básica [1], totalmente gratuita y orientada a dar soporte a entornos de prueba del servidor Zentyal, también incluye los backups remotos de la configuración. Con cualquiera de las tres opciones, en caso de que por fallo de sistema o humano se perdiera la configuración del servidor, ésta siempre se podría recuperar rápidamente desde los repositorios en la nube de Zentyal.

[1] http://store.zentyal.com/serversubscriptions/subscription-basic.htmlPara acceder a las opciones de la copia de seguridad de configuración iremos a Sistema ‣ Importar/Exportar configuración. No se permite realizar copias de seguridad si existen cambios en la configuración sin guardar.

Realizar una copia de seguridad

Una vez introducido un nombre para la copia de seguridad, aparecerá una pantalla donde se mostrará el progreso de los distintos módulos hasta que finalice con el mensaje de Backup exitoso.

Posteriormente, si volvemos a acceder a la pantalla anterior, veremos que en la parte inferior de la página aparece una Lista de backups. A través de esta lista podemos restaurar, descargar a nuestro disco, o borrar cualquiera de las copias guardadas. Así mismo aparecen como datos informativos la fecha de realización de la misma y el tamaño que ocupa.

Page 141: Manual zentyal

En la sección Restaurar backup desde un archivo podemos enviar un fichero de copia de seguridad que tengamos previamente descargado, por ejemplo, perteneciente a una instalación anterior de un servidor Zentyal en otra máquina, y restaurarlo mediante Restaurar. Al restaurar se nos pedirá confirmación, hay que tener cuidado porque la configuración actual será reemplazada por completo. El proceso de restauración es similar al de copia, después de mostrar el progreso se nos notificará el éxito de la operación si no se ha producido ningún error.

Herramientas de línea de comandos para el backup de la configuración

Existen dos herramientas disponibles a través de la línea de comandos que también nos permiten guardar y restaurar la configuración. Residen en /usr/share/zentyal, se denominan make-backup y restore-backup.

make-backup nos permite realizar copias de seguridad de la configuración, entre sus opciones están elegir qué tipo de copia de seguridad queremos realizar. Entre éstos está el informe de configuración que ayuda a los desarrolladores a diagnosticar un fallo al enviarlo, incluyendo información extra. Cabe destacar que en este modo, las contraseñas de los usuarios son reemplazadas para mayor confidencialidad. El informe de configuración puede generarse también desde Sistema ‣ Importar/Exportar configuración, botón Generar y Descargar fichero de informe en la interfaz web.

Podemos ver todas las opciones del programa con el parámetro –help.

restore-backup nos permite restaurar ficheros de copia de seguridad de la configuración. Posee también una opción para extraer la información del fichero. Otra opción a señalar es la posibilidad de hacer restauraciones parciales, solamente de algunos módulos en concreto. Es el caso típico cuando queremos restaurar una parte de una copia de una versión antigua. También es útil cuando el proceso de restauración ha fallado por algún motivo. Tendremos que tener especial cuidado con las dependencias entre los módulos. Por ejemplo, si restauramos una copia del módulo de cortafuegos que depende de una configuración del módulo objetos y servicios debemos restaurar también estos primero. Aún así, existe una opción para ignorar las dependencias que puede ser útil usada con precaución.

Si queremos ver todas las opciones de este programa podemos usar también el parámetro –help.

Configuración de las copias de seguridad de datos en un servidor Zentyal

Podemos acceder a las copias de seguridad de datos a través del menú Sistema ‣ Copia de seguridad.

En primer lugar, debemos decidir si almacenamos nuestras copias de seguridad local o remotamente. En este último caso, necesitaremos especificar qué protocolo se usa para conectarse al servidor remoto.

Configuración de las copias de seguridad

Método: Los distintos métodos que son soportados actualmente son FTP, Rsync, SCP, Zentyal Cloud y Sistema de ficheros. Debemos tener en cuenta que dependiendo del método que se seleccione deberemos proporcionar más o menos información. Todos los métodos salvo Sistema de ficheros acceden a servicios remotos. Si se selecciona FTP, Rsync o SCP tendremos que introducir la dirección del servidor remoto y la autenticación asociada.

Advertencia

Si usamos SCP, tendremos que ejecutar sudo ssh usuario@servidor y aceptar la huella del servidor remoto para añadirlo a la lista de servidores SSH conocidos. Si no se realiza esta operación, la copia de respaldo no podrá ser realizada ya que

Page 142: Manual zentyal

fallará la conexión con el servidor.

Ordenador o destino: Para FTP, y SCP tenemos que proporcionar el nombre del servidor remoto o su dirección IP con el siguiente formato: otro.servidor:puerto/directorio_existente. En caso de usar Sistema de ficheros, introduciremos la ruta de un directorio local.

Usuario: Nombre de usuario para autenticarse en la máquina remota.

Clave: Contraseña para autenticarse en la máquina remota.

Cifrado: Se pueden cifrar los datos de la copia de seguridad usando una clave simétrica que se introduce en el formulario, o se puede seleccionar una clave GPG ya creada para dar cifrado asimétrico a tus datos. El anillo de claves de GPG se obtiene del usuario ebox.

Frecuencia de copia de seguridad completa:

Este parámetro se usa para determinar la frecuencia con la que las copias de seguridad completas se llevan a cabo. Los valores son: Sólo la primera vez, Diario, Semanal, Dos veces al mes y Mensual. Si seleccionas Semanal, Dos veces al mes o Mensual, aparecerá una segunda selección para poder decidir el día exacto de la semana o del mes en el que se realizará la copia.

Si se selecciona Sólo la primera vez, entonces hay que establecer una frecuencia para el backup incremental.

Frecuencia de backup incremental:

Este valor selecciona la frecuencia de la copia incremental o la deshabilita.

Si la copia incremental está activa podemos seleccionar una frecuencia Diaria o Semanal. En el último caso, se debe decidir el día de la semana. Sin embargo, hay que tener en cuenta que la frecuencia seleccionada debe ser mayor que la frecuencia de copia completa.

Los días en los que se realice una copia completa, no se realizará cualquier copia incremental programada.

El proceso de respaldo comienza a las: Este campo es usado para indicar cuándo comienza el proceso de la toma de la copia de respaldo, tanto el completo como el incremental. Es una buena idea establecerlo a horas cuando no haya nadie en la oficina ya que puede consumir bastante ancho de banda de subida.

Guardar copias completas anteriores:

Este valor se usa para limitar el número de copias totales que están almacenadas. Puedes elegir limitar por número o por antigüedad.

Si limitas por número, solo el número indicado de copias, sin contar la última copia completa, será guardado. En el caso de limitar por antigüedad, sólo se guardarán las copias completas que sean más recientes que el período indicado.

Cuando una copia completa se borra, todas las copias incrementales realizadas a partir de ella también son borradas.

Configuración de los directorios y ficheros que son respaldados

Desde la pestaña Inclusiones y Exclusiones podemos determinar exactamente que datos deseamos respaldar.

La configuración por defecto efectuará una copia de todo el sistema de ficheros excepto los ficheros o directorios explícitamente excluidos. En el caso de que usemos el método Sistema de ficheros, el directorio objetivo y todo su contenido será automáticamente excluido.

Puedes establecer exclusiones de rutas y exclusiones por expresión regular. Las exclusiones por expresión regular excluirán cualquier ruta que coincida con ella. Cualquier directorio excluido, excluirá también todo su contenido.

Para refinar aun más el contenido de la copia de seguridad también puedes definir inclusiones, cuando un ruta coincide con una inclusión antes de coincidir con alguna exclusión, será incluida en el backup.

Page 143: Manual zentyal

El orden en que se aplican las inclusiones y exclusiones se puede alterar usando los iconos de flechas.

La lista por defecto de directorios excluidos es: /mnt, /dev, /media, /sys, /tmp, /var/cache y /proc. Es una mala idea incluir alguno de estos directorios ya que como resultado el proceso de copia de respaldo podría fallar.

Una copia completa de un servidor Zentyal con todos sus módulos pero sin datos de usuario ocupa unos 300 MB.

Lista de inclusión y exclusión

Comprobando el estado de las copias

Podemos comprobar el estado de las copias de respaldo en la sección Estado de las copias remotas. En esta tabla podemos ver el tipo de copia, completa o incremental, y la fecha de cuando fue tomada.

Estado de las copias

Restaurar ficheros

Hay dos formas de restaurar un fichero. Dependiendo del tamaño del fichero o del directorio que deseemos restaurar.

Es posible restaurar ficheros directamente desde el panel de control de Zentyal. En la sección Sistema ‣ Copia de seguridad ‣ Restaurar ficheros tenemos acceso a la lista de todos los ficheros y directorios que contiene la copia remota, así como las

Page 144: Manual zentyal

fechas de las distintas versiones que podemos restaurar.

Si la ruta a restaurar es un directorio, todos sus contenidos se restaurarán, incluyendo subdirectorios.

El archivo se restaura con sus contenidos en la fecha seleccionada, si el archivo no está presente en la copia de respaldo en esa fecha se restaurará la primera versión que se encuentre en las copias anteriores a la indicada; si no existen versiones anteriores se notificará con un mensaje de error.

Advertencia

Los archivos mostrados en la interfaz son aquéllos que están presentes en la última copia de seguridad. Los archivos que están almacenados en copias anteriores pero no en la última no se muestran, pero podrían ser restaurados a través de la línea de comandos.

Podemos usar este método con ficheros pequeños. Con ficheros grandes, el proceso es costoso en tiempo y no se podrá usar el interfaz Web de Zentyal mientras la operación está en curso. Debemos ser especialmente cautos con el tipo de fichero que restauramos. Normalmente, será seguro restaurar ficheros de datos que no estén siendo abiertos por aplicaciones en ese momento. Estos archivos de datos están localizados bajo el directorio /home/samba. Sin embargo, restaurar ficheros del sistema de directorios como /lib, /var o /usr mientras el sistema está en funcionamiento puede ser muy peligroso. No hagas ésto a no ser que sepas muy bien lo que estás haciendo.

Restaurar un fichero

Los ficheros grandes y los directorios y ficheros de sistema deben ser restaurados manualmente. Dependiendo del fichero, podemos hacerlo mientras el sistema está en funcionamiento. Sin embargo, para directorios de sistema usaremos un CD de rescate como explicamos más tarde.

En cualquier caso, debemos familiarizarnos con la herramienta que usa este módulo: duplicity [2]. El proceso de restauración de un fichero o directorio es muy simple. Se ejecuta el siguiente comando:

duplicity restore --file-to-restore -t 3D <fichero o directorio a restaurar> <URL remota y argumentos> <destinos>

[2] duplicity: Encrypted bandwidth-efficient backup using the rsync algorithm <http://duplicity.nongnu.org/>.

Page 145: Manual zentyal

La opción -t se usa para seleccionar la fecha que queremos restaurar. En este caso, 3D significa hace tres días. Usando now podemos restaurar la copia más actual.

Podemos obtener <URL remota y argumentos> leyendo la nota que se encuentra encima de la sección Restaurar ficheros en Zentyal.

URL remota y argumentos

Por ejemplo, si queremos restaurar el fichero /home/samba/users/john/balance.odc ejecutaríamos el siguiente comando:

# duplicity restore --file-to-restore home/samba/users/john/balance.odc \ scp://[email protected] --ssh-askpass --no-encryption /tmp/balance.odc

El comando mostrado arriba restauraría el fichero en /tmp/balance.odc. Si necesitamos sobreescribir un fichero o un directorio durante una operación de restauración necesitamos añadir la opción –force, de lo contrario duplicity rechazará sobreescribir los archivos.

Cómo recuperarse de un desastre

Tan importante es realizar copias de seguridad como conocer el procedimiento y tener la destreza y experiencia para llevar a cabo una recuperación en un momento crítico. Debemos ser capaces de restablecer el servicio lo antes posible cuando ocurre un desastre que deja el sistema no operativo.

Para ello, puede optarse por la contratación de un servicio de subscripción de recuperación de desastres de Zentyal [3]. Este servicio permite guardar la configuración, los ficheros y los directorios críticos del servidor en una ubicación remota y, en caso de desastre, recuperar todo el sistema mediante la instalación del mismo CD de instalación de Zentyal y seguir unos sencillos pasos.

[3] https://store.zentyal.com/other/disaster-recovery.htmlPor otro lado, si no se ha contratado este servicio, el servidor se puede recuperar de un desastre usando un CD-ROM de rescate en el arranque que incluya el software de copia de respaldos duplicity, como por ejemplo grml [4].

[4] grml <http://www.grml.org/>.

Page 146: Manual zentyal

Descargaremos la imagen de grml y arrancaremos la máquina con ella. Usaremos el parámetro nofb en caso de problemas con el tamaño de la pantalla.

Arranque grml

Una vez que el proceso de arranque ha finalizado podemos obtener un intérprete de comandos pulsando la tecla enter.

Comenzar un intérprete de comandos

Si nuestra red no está configurada correctamente, podemos ejecutar netcardconfig para configurarla.

El siguiente paso es montar el disco duro de nuestro sistema. En este caso, vamos a suponer que nuestra partición raíz es /dev/sda1. Así que ejecutamos:

# mount /dev/sda1 /mnt

El comando anterior montará la partición en el directorio /mnt. En este ejemplo haremos una restauración completa. Primero eliminaremos todos los directorios existentes en la partición. Por supuesto, si no haces una restauración completa este paso no es necesario.

Para eliminar los ficheros existentes y pasar a la restauración ejecutamos:

Page 147: Manual zentyal

# rm -rf /mnt/*

Instalaremos duplicity en caso de no tenerlo disponible:

# apt-get update# apt-get install duplicity

Antes de hacer una restauración completa necesitamos restaurar /etc/passwd y /etc/group. En caso contrario, podemos tener problemas al restaurar archivos con el propietario incorrecto. El problema se debe a que duplicity almacena los nombres de usuario y grupo y no los valores numéricos. Así pues, tendremos problemas si restauramos ficheros en un sistema en el que el nombre de usuario o grupo tienen distinto UID o GID. Para evitar este problema sobreescribimos /etc/passwd y /etc/group en el sistema de rescate. Ejecutamos:

# duplicity restore --file-to-restore etc/passwd \# scp://[email protected] /etc/passwd --ssh-askpass --no-encryption --force

# duplicity restore --file-to-restore etc/group \# scp://[email protected] /etc/group --ssh-askpass --no-encryption --force

Advertencia

Si usamos SCP, tendremos que ejecutar sudo ssh usuario@servidor para añadir el servidor remoto a la lista de servidores SSH conocidos. Si no se realiza esta operación, la copia de respaldo no podrá ser realizada ya que fallará la conexión con el servidor.

Ahora podemos proceder con la restauración completa ejecutando duplicity manualmente:

# duplicity restore scp://[email protected] /mnt/ --ssh-askpass --no-encryption --force

Por último debemos crear los directorios excluidos de la copia de respaldo así como limpiar los directorios temporales:

# mkdir -p /mnt/dev# mkdir -p /mnt/sys# mkdir -p /mnt/proc# rm -fr /mnt/var/run/*# rm -fr /mnt/var/lock/*

El proceso de restauración ha finalizado y podemos reiniciar el sistema original.

Restaurando servicios

Además de los archivos se almacenan datos para facilitar la restauración directa de algunos servicios. Estos datos son:

copia de seguridad de la configuración de Zentyal copia de seguridad de la base de datos de registros de Zentyal

En la pestaña Restauración de servicios ambos pueden ser restaurados para una fecha dada.

La copia de seguridad de la configuración de Zentyal guarda la configuración de todos los módulos que hayan sido habilitados por primera vez en algún momento, los datos del LDAP y cualquier otro fichero adicional para el funcionamiento de cada módulo.

Debes tener cuidado al restaurar la configuración de Zentyal ya que toda la configuración y los datos de LDAP serán remplazados. Sin embargo, en el caso de la configuración no almacenada en LDAP deberás pulsar en “Guardar cambios” para que entre en vigor.

Page 148: Manual zentyal

Restaurar servicios

Zentyal Unified Communications

En este apartado se van a ver los diferentes servicios de comunicación integrados en Zentyal, que permite una gestión centralizada de las comunicaciones de una organización y facilita a los usuarios de la misma disfrutar de todos ellos usando la misma contraseña.

Primeramente se describe el servicio de correo electrónico, que permite una integración rápida y sencilla con el cliente de correo habitual de los usuarios de la red, ofreciendo servicios para la prevención del correo basura y virus.

El correo electrónico desde su popularización ha adolecido del problema del correo no deseado, enviado en masa, muchas veces con el fin de engañar al destinatario para extraer dinero de maneras fraudulentas, otras simplemente con publicidad no deseada. También veremos como filtrar el correo entrante y saliente de nuestra red para evitar tanto la recepción de estos correos no deseados como bloquear el envío desde algún posible equipo comprometido de nuestra red.

A continuación el servicio de mensajería instantánea corporativa, usando el estándar Jabber/XMPP. Éste nos evita depender de proveedores externos o de la conexión a Internet y garantiza que las conversaciones se mantendrán confidenciales, sin que los datos pasen por manos de terceros. Este servicio ofrece salas de conferencia comunes y permite, mediante la utilización de cualquiera de los múltiples clientes disponibles, una comunicación escrita síncrona, mejor adaptada para ciertos casos en los que el correo electrónico no es suficiente.

Cada día cobra más importancia disponer de un sistema que ayude a coordinar el trabajo diario de los empleados de una organización. Para ello Zentyal integra una herramienta de groupware o trabajo colaborativo que facilita la compartición de información tal como calendarios, tareas, direcciones, etc.

Finalmente, veremos una introducción a la voz sobre IP (o VoIP), con la que cada usuario de la organización puede disponer de una extensión a la que llamar o hacer conferencias fácilmente. Además, a través de un proveedor externo, Zentyal es capaz de configurarse para conectarse a la red telefónica tradicional y realizar llamadas a cualquier país del mundo a precios muy reducidos.

Servicio de correo electrónico (SMTP/POP3-IMAP4)

Introducción al servicio de correo electrónico

El servicio de correo electrónico, o en inglés e-mail (electronic mail) es un servicio de red que facilita a sus usuarios el envío o recepción de mensajes, con o sin documentos digitales adjuntos, mediante sistemas electrónicos de comunicación. Su conveniencia y bajo coste lo han convertido en uno de los principales medios de comunicación entre usuarios de Internet.

Originalmente, el email se mandaba directamente de una computadora a otra, lo que requería que ambas estuvieran encendidas al mismo tiempo para enviar el mensaje. De hecho el servicio de email es más antiguo que Internet en sí mismo, siendo usado en las primeras redes de computadoras. Los sistemas de email actuales almacenan temporalmente el contenido en servidores que reenvían a los clientes cuando estos se conectan.

Los correos electrónicos se intercambian usando SMTP Simple Mail Transfer Protocol (ó protocolo simple de transferencia de correo). Existen multitud de programas clientes de correo electrónico disponibles en todos los sistemas operativos, como Thunderbird u Outlook.

Al ser un sistema de comunicación tan extendido y tan antiguo, también ha sido frecuentemente objeto de software

Page 149: Manual zentyal

malicioso, como medio de infección de virus y gusanos, así como de propagación del conocido spam (Correo basura, conteniendo publicidad no deseada o estafas).

Zentyal usa varios servidores de correo libres como PostFix, Dovecot o Fetchmail, que se comentarán más adelante, junto con las referencias a las páginas principales de los proyectos.

Existen varios tipos de servidores de correo dependiendo del protocolo que utilicen. Los más populares son:

POP3 (Post Office Protocol version 3) [1]: Es uno de los más comúnmente utilizados y el soportado por un mayor número de clientes y servidores. Básicamente define los mecanismos para la obtención y borrado de mensajes alojados en un servidor remoto. Está orientado a la gestión local del correo, mientras que el servidor simplemente se encarga de guardarlo hasta que el cliente lo solicita. Utiliza el puerto 110 y el 995 para conexiones seguras sobre SSL.

IMAP (Internet Message Access Protocol) [2]: Este protocolo también es ampliamente soportado por los clientes de correo, pero no tanto por los servidores. A diferencia de POP3, está orientado a la gestión remota de buzones de correo, haciéndolo bastante más complejo, pero permitiéndole ya no solo ofrecer servicios de descarga y borrado, si no que también guarda estados de los correos, permite tener varios buzones de correo por usuario y que varios clientes gestionen simultáneamente el mismo buzón, entre otras muchas características. IMAP utiliza el puerto 143 y sus versiones seguras IMAP Seguro e IMAP4 sobre SSL el 585 y el 993 respectivamente.

SMTP (Simple Mail Transfer Protocol) [3]: Si los protocolos comentados anteriormente se encargaban de la comunicación de los clientes con sus correos alojados en los servidores, es decir, de la recepción final de los correos y su gestión, SMTP es el protocolo encargado del envío de correos hacia los servidores y de los servidores entre ellos. Es prácticamente el único usado para esta tarea y uno de los protocolos más antiguos todavía en uso. Utiliza el puerto 25 y su versión segura sobre SSL el 465.

Iremos hablando de estos protocolos y del software que lo implementa a lo largo de todo el capítulo.

[1] POP3 en Wikipedia: http://es.wikipedia.org/wiki/Post_Office_Protocol

[2] IMAP en Wikipedia: http://es.wikipedia.org/wiki/Internet_Message_Access_Protocol

[3] SMTP en Wikipedia: http://es.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol

Funcionamiento del correo electrónico

El siguiente diagrama muestra una secuencia típica de eventos que tienen lugar cuando Alice escribe un mensaje usando su cliente de correo o Mail User Agent (MUA) con destino la dirección de correo de su destinatario, Bob.

Diagrama correo electrónico Alice manda un correo a Bob

Las acciones que se llevan a cabo son las siguientes:

1. Su MUA da formato al mensaje y usa el protocolo Simple Mail Transfer Protocol (SMTP) que envía el mensaje a

Page 150: Manual zentyal

su agente de envío de correos o Mail Transfer Agent (MTA). 2. El MTA examina la dirección destino dada por el protocolo SMTP, en este caso [email protected], y hace una solicitud

al servicio de nombres para conocer la IP del servidor de correo del dominio del destino (registro MX o Mail eXchanger record [4]).

3. El servidor smtp.a.org envía el mensaje a mx.b.org usando SMTP, que almacena el mensaje en el buzón del usuario bob.

4. Bob obtiene el correo a través de su MUA, que recoge el correo usando el protocolo Post Office Protocolo 3 (POP3).

[4] http://en.wikipedia.org/wiki/MX_recordEsta situación puede cambiar de diversas maneras. Por ejemplo, Bob puede usar otro protocolo de obtención de correos como es Internet Message Access Protocol (IMAP) que permite leer directamente desde el servidor o usando un servicio de Webmail como el que usan diversos servicios gratuitos de correo vía Web.

Por tanto, podemos ver como el envío y recepción de correos entre servidores de correo se realiza a través de SMTP pero la obtención de correos por parte del usuario se realiza a través de POP3, IMAP o sus versiones seguras (POP3S y IMAPS) que permiten la interoperabilidad entre diferentes servidores y clientes de correo. También existen protocolos propietarios como los que usan Microsoft Exchange o Lotus Notes de IBM.

¿POP3 o IMAP?

El diseño del protocolo POP3 para recoger los mensajes del servidor de correo suele ser la mejor opción para escenarios con recursos limitado, puesto que permite a los usuarios recoger todo el correo de una vez para después verlo y manipularlo sin necesidad de estar conectado y sin que el servidor tenga que realizar ninguna acción. Estos mensajes, normalmente, se borran del buzón del usuario en el servidor, aunque actualmente la mayoría de MUAs permiten mantenerlos.

En cambio el protocolo IMAP, más complejo, permite trabajar en línea o desconectado además de sólo borrar los mensajes depositados en el servidor de manera explícita. Adicionalmente, permite que múltiples clientes accedan al mismo buzón o realicen lecturas parciales de mensajes MIME entre otras ventajas. Sin embargo, debido a su complejidad añade una carga de trabajo mayor en el lado del servidor que POP3. Las ventajas principales de IMAP sobre POP3 son:

Dispone de modo de operación conectado y desconectado. Permite que varios clientes permanezcan conectados simultáneamente al mismo buzón. Posibilita la descarga parcial de correos. Proporciona información del estado del mensaje usando banderas (leído, borrado, respondido, ...). Gestiona varios buzones en el servidor (el usuario los ve como simples carpetas) pudiendo configurarlos como

buzones públicos. Facilita la realización de búsquedas en el lado del servidor. Dispone de mecanismos de extensión incluidos en el propio protocolo.

Para el envío/recepción de correos Zentyal usa Postfix [5] como servidor SMTP. Así mismo, para el servicio de recepción de correos (POP3, IMAP) Zentyal usa Dovecot [6]. Ambos con soporte para comunicación segura con SSL. Por otro lado, para obtener el correo de cuentas externas, Zentyal usa el programa Fetchmail [7] .

[5] Postfix The Postfix Home Page http://www.postfix.org .

[6] Dovecot Secure IMAP and POP3 Server http://www.dovecot.org .

[7] http://fetchmail.berlios.de/Para profundizar en el conocimiento de los protocolos de correo comentados hasta ahora se recomienda la lectura de los enlaces de esta sección.

Para aprender cómo configurar un servidor de correo mediante línea de comandos en Linux se recomienda la lectura correspondiente en la documentación de comunidad de Ubuntu Server (en inglés) [8].

Page 151: Manual zentyal

[8] https://help.ubuntu.com/community/MailServer

Configuración de un servidor SMTP/POP3-IMAP4 con Zentyal

Recibiendo y retransmitiendo correo

Para comprender la configuración de un sistema de correo se debe distinguir entre recibir y retransmitir correo.

La recepción se realiza cuando el servidor acepta un mensaje de correo en el que uno de los destinatarios es una cuenta perteneciente a alguno de los dominio gestionados por el servidor. El correo puede ser recibido de cualquier cliente que pueda conectarse al servidor.

Sin embargo, la retransmisión ocurre cuando el servidor de correo recibe un mensaje de correo en el que ninguno de los destinatarios pertenecen a ninguno de sus dominios virtuales de correo gestionados, requiriendo por tanto su reenvío a otro servidor. La retransmisión de correo está restringida, de otra manera los spammers podrían usar el servidor para enviar spam en Internet.

Zentyal permite la retransmisión de correo en dos casos:

1. Usuarios autenticados 2. Una dirección de origen que pertenezca a un objeto que tenga una política de retransmisión

permitida.

Configuración general

A través de Correo ‣ General ‣ Opciones del servidor de correo ‣ Autenticacion podemos gestionar las opciones de autenticación. Están disponibles las siguientes opciones:

Page 152: Manual zentyal

Configuración general del correo

En la sección Correo ‣ General ‣ Opciones del servidor de correo ‣ Opciones se pueden configurar los parámetros generales del servicio de correo:

Smarthost al que enviar el correo:

Dirección IP o nombre de dominio del smarthost. También se puede establecer un puerto añadiendo el texto :[numero de puerto] después de la dirección. El puerto por defecto es el puerto estándar SMTP, 25.

Si se establece esta opción Zentyal no enviará directamente sus mensajes sino que cada mensaje de correo recibido sera reenviado al smarthost sin almacenar ninguna copia. En este caso, Zentyal actuará como un intermediario entre el usuario que envía el correo y el servidor que enviará finalmente el mensaje.

Autenticación del smarthost: Determina si el smarthost requiere autenticación y si es así provee un usuario y contraseña.

Nombre del servidor de correo: Determina el nombre de correo del sistema; será usado por el servicio de correo como la dirección local del sistema.

Dirección del postmaster:

La dirección del postmaster por defecto es un alias del superusuario (root) pero puede establecerse a cualquier dirección, perteneciente a los dominios virtuales de correo gestionados o no.

Esta cuenta está pensada para tener una manera estándar de contactar con el administrador de correo. Correos de notificación automáticos suelen usar postmaster como dirección de respuesta.

Page 153: Manual zentyal

Tamaño máximo permitido del buzón de correo: En esta opción se puede indicar un tamaño máximo en MiB para los buzones del usuario. Todo el correo que exceda el limite será rechazado y el remitente recibirá una notificación. Esta opción puede sustituirse para cada usuario en la página Usuarios y Grupos -> Usuarios.

Tamaño máximo de mensaje aceptado: Señala, si es necesario, el tamaño máximo de mensaje aceptado por el smarthost en MiB. Esta opción tendrá efecto sin importar la existencia o no de cualquier límite al tamaño del buzón de los usuarios.

Periodo de expiración para correos borrados: Si esta opción está activada el correo en la carpeta de papelera de los usuarios será borrado cuando su fecha sobrepase el límite de días establecido.

Periodo para correos de spam: Esta opción se aplica de la misma manera que la opción anterior pero con respecto a la carpeta de spam de los usuarios.

Para configurar la obtención de los mensajes, hay que ir a la sección Servicios de obtención de correo. Zentyal puede configurarse como servidor de POP3 o IMAP además de sus versiones seguras POP3S y IMAPS. En esta sección también pueden activarse los servicios para obtener correo de direcciones externas y ManageSieve, estos servicios se explicarán a partir de la sección Obtención de correo desde cuentas externas .

También se puede configurar Zentyal para que permita reenviar correo sin necesidad de autenticarse desde determinadas direcciones de red. Para ello, se permite una política de reenvío con objetos de red de Zentyal a través de Correo ‣ General

‣ Política de retransmisión para objetos de red basándonos en la dirección IP del cliente de correo origen. Si se permite el reenvío de correos desde dicho objeto, cualquier miembro de dicho objeto podrá enviar correos a través de Zentyal.

Política de retransmisión para objetos de red

Advertencia

Hay que tener cuidado con usar una política de Open Relay, es decir, permitir reenviar correo desde cualquier lugar, ya que con alta probabilidad nuestro servidor de correo se convertirá en una fuente de spam.

Finalmente, se puede configurar el servidor de correo para que use algún filtro de contenidos para los mensajes [9]. Para ello el servidor de filtrado debe recibir el correo en un puerto determinado y enviar el resultado a otro puerto donde el servidor de correo estará escuchando la respuesta. A través de Correo ‣ General ‣ Opciones de Filtrado de Correo se puede seleccionar un filtro de correo personalizado o usar Zentyal como servidor de filtrado.

[9] En la sección Filtrado de correo electrónico se amplia este tema.

Page 154: Manual zentyal

Opciones del filtrado de correo

Creación de cuentas de correo a través de dominios virtuales

Para crear una cuenta de correo se debe tener un usuario creado y un dominio virtual de correo.

Desde Correo ‣ Dominio Virtual, se pueden crear tantos dominios virtuales como queramos que proveen de nombre de dominio a las cuentas de correo de los usuarios de Zentyal. Adicionalmente, es posible crear alias de un dominio virtual de tal manera que enviar un correo al dominio virtual o a su alias sea indiferente.

Dominios virtuales de correo

Para crear cuentas de correo lo haremos de manera análoga a la compartición de ficheros, acudimos a Usuarios y Grupos ‣ Usuarios ‣ Crear cuenta de correo. Es ahí donde seleccionamos el dominio virtual principal del usuario. Si queremos asignar al usuario a más de una cuenta de correo lo podemos hacer a través de los alias. Indiferentemente de si se ha usado un alias o no, el correo sera almacenado una única vez en el buzón del usuario. Sin embargo, no es posible usar un alias para autenticarse, se debe usar siempre la cuenta real.

Configuración del correo para un usuario

Hay que tener en cuenta que se puede decidir si se deseas que a un usuario se le cree automáticamente una cuenta de correo cuando se le da de alta. Este comportamiento puede ser configurado en Usuarios y Grupos -> Plantilla de Usuario por defecto –> Cuenta de correo.

De la misma manera, se pueden crear alias para grupos. Los mensajes recibidos por estos alias son enviados a todos los usuarios del grupo con cuenta de correo. Los alias de grupo son creados a través de Usuarios y Grupos ‣ Grupos ‣ Crear un alias de cuenta de correo al grupo. Los alias de grupo están sólo disponibles cuando, al menos, un usuario del grupo tiene cuenta de correo.

Finalmente, es posible definir alias hacia cuentas externas. El correo enviado a un alias será retransmitido a la correspondiente cuenta externa. Esta clase de alias se establecen por dominio virtual de correo, no requieren la existencia de ninguna cuenta de correo y pueden establecerse en Correo ‣ Dominios Virtuales ‣ Alias a cuentas externas.

Page 155: Manual zentyal

Complementos para usuarios y grupos

Una vez tengamos al menos un dominio virtual de correo configurado, dispondremos de nuevos paneles en Usuarios y Grupos para facilitar la gestión de las cuentas de nuestros usuarios.

Usando el dominio virtual configurado se creará una cuenta de correo automáticamente con el formato usuario@nuestrodominio. Asimismo, observamos que podremos cambiar el tipo de cuota (personalizada, por defecto, sin cuota) y configurar el tamaño máximo del buzón en cuotas personalizadas.

Configuración automática de correo para nuevos usuarios

Otro añadido interesante del sistema de correo lo encontramos bajo Usuarios y Grupos ‣ Grupos -> Editar grupo deseado, donde podremos configurar un alias de grupo, esto es, una dirección para enviar simultáneamente a todos los componentes del mismo. Únicamente tendremos que escoger un nombre y pulsar en el icono de añadir.

Añadiendo un alias de correo para el grupo

Gestión de cola

Desde Correo ‣ Gestión de cola podemos ver los correos que todavía no han sido enviados con la información acerca del mensaje. Las acciones que podemos realizar con estos mensajes son: eliminarlos, ver su contenido o volver a tratar de enviarlos (reencolarlos). También hay dos botones que permiten borrar o reencolar todos los mensajes en la cola.

Gestión de cola

Obtención de correo desde cuentas externas

Se puede configurar Zentyal para recoger correo de cuentas externas y enviarlo a los buzones de los usuarios. Para ello, deberás activar en la sección Correo ‣ General ‣ Opciones del servidor de correo ‣ Servicios de obtención de correo. Una vez activado, los usuarios tendrán sus mensajes de correo de sus cuentas externas recogido en el buzón de su cuenta interna. Cada usuario puede configurar sus cuentas externas a través del Rincón del Usuario [10]. Para ello debe tener una cuenta de correo. Los servidores externos son consultados periódicamente, así que la obtención del correo no es instantánea.

Para configurar sus cuentas externas, un usuario debe entrar en el Rincón del Usuario y hacer clic en Recuperar correo de cuentas externas en el menú izquierdo. En la pagina se muestra la lista de cuentas de correo del usuario, el usuario puede añadir, borrar y editar cuentas. Cada cuenta tiene los siguientes parámetros:

Page 156: Manual zentyal

Cuenta externa: El nombre de usuario o dirección de correo requerida para identificarse en el servicio externo de recuperación de correo.

Contraseña: Contraseña para autenticar la cuenta externa.

Servidor de correo: Dirección del servidor de correo que hospeda la cuenta externa.

Protocolo: Protocolo de recuperación de correo usado por la cuenta externa; puede ser uno de los siguientes: POP3, POP3S, IMAP o IMAPS.

Puerto: Puerto usado para conectar al servidor de correo externo.

Configuración del correo externo en el user corner

[10] La configuración del rincón del usuario se explica en la sección Rincón del Usuario .

Lenguaje Sieve y protocolo ManageSieve

El lenguaje Sieve [11] permite el control al usuario de cómo su correo es recibido, permitiendo, entre otras cosas, clasificarlo en carpetas IMAP, reenviarlo o responderlo automáticamente con un mensaje por ausencia prolongada (o vacaciones).

ManageSieve es un protocolo de red que permite a los usuarios gestionar sus scripts Sieve. Para usarlo, es necesario que el cliente de correo pueda entender dicho protocolo [12].

Para usar ManageSieve en Zentyal debes activar el servicio en Correo ‣ General ‣ Opciones de servidor de correo -> Servicios de obtención de correo y podrá ser usado por todos los usuarios con cuenta de correo. Si ManageSieve está activado y el módulo de correo web [13] en uso, el interfaz de gestión para scripts Sieve estará disponible en el correo web.

La autenticación en ManageSieve se hace con la cuenta de correo del usuario y su contraseña.

Los scripts de Sieve de una cuenta son ejecutados independientemente de si ManageSieve está activado o no.

[11] Para mas información sobre Sieve http://sieve.info/ .

[12] Para tener una lista de clientes Sieve http://sieve.info/clients .

[13] El módulo de correo web (webmail) se explica en el capítulo Servicio de correo web .

Configuración del cliente de correo

A no ser que los usuarios sólo usen el correo a través del módulo de de correo web o a través de la aplicación de correo de groupware, deberán configurar su cliente de correo para usar el servidor de correo de Zentyal. El valor de los parámetros

Page 157: Manual zentyal

necesarios dependerá de la configuración del servicio de correo.

Hay que tener en cuenta que diferentes clientes de correo podrán usar distintos nombres para estos parámetros, por lo que debido a la multitud de clientes existente esta sección es meramente orientativa.

Parámetros SMTP

Servidor SMTP: Introducir la dirección del servidor Zentyal. La dirección puede ser descrita como una dirección IP o como nombre de dominio.

Puerto SMTP: 25, o alternativamente 587.

Conexión segura: Seleccionar TLS si tienes activada la opción TLS para el servidor SMTP; en otro caso seleccionar ninguna. Si se usa TLS lee la advertencia aparece más adelante sobre TLS/SSL.

Usuario SMTP: Como nombre de usuario se debe usar la dirección de correo completa del usuario; no uses su nombre de usuario o alguno de sus alias de correo. Esta opción sólo es obligatoria si está habilitado el parámetro Exigir autenticación, lo cual es el caso habitual.

Contraseña SMTP: La contraseña del usuario.

Parámetros POP3

Sólo puedes usar configuración POP3 cuando el servicio POP3 o POP3S está activado en Zentyal.

Servidor POP3: Introducir la dirección de Zentyal de la misma manera que la sección de parámetros SMTP.

Puerto POP3: 110, o 995 en el caso de usar POP3S.

Conexión segura: Selecciona SSL en caso de que se use POP3S, ninguno si se usa POP3. Si se utiliza POP3S, ten en cuenta la advertencia que aparece más adelante sobre TLS/SSL.

Usuario POP3: Dirección de correo completa del usuario; no se debe usar ni el nombre de usuario ni ninguno de sus alias de correo.

Contraseña POP3: La contraseña del usuario.

Parámetros IMAP

Sólo se puede usar la configuración IMAP si el servicio IMAP o IMAPS está activo.

Servidor IMAP: Introducir la dirección de Zentyal de la misma manera que la sección de parámetros SMTP.

Puerto IMAP: 443, o 993 en el caso de usar IMAPS.

Conexión segura: Seleccionar SSL en caso de que se use IMAPS, ninguno si se utiliza IMAP. Si se usa IMAPS, leer la advertencia que aparece más adelante sobre TLS/SSL.

Usuario IMAP: Dirección de correo completa del usuario; no se debe usar ni el nombre de usuario ni ninguno de sus alias de correo.

Contraseña IMAP: La contraseña del usuario.

Advertencia

En las implementaciones de los clientes de correo a veces hay confusión sobre el uso de los protocolos SSL y TLS. Algunos clientes usan SSL para indicar que van a conectar con TLS; otros usan TLS para indicar que van a tratar de conectar al

Page 158: Manual zentyal

servicio a través de un puerto tradicionalmente usado por las versiones del protocolo en claro. De hecho, en algunos clientes hará falta probar tanto los modos SSL como TLS para averiguar cual de los métodos funciona correctamente.

Tienes mas información sobre este asunto en el wiki de Dovecot, http://wiki.dovecot.org/SSL .

Configuración de Outlook

Vamos a ver como se aplican esos parámetros en un caso real, para ello vamos a configurar un cliente de email, en este caso Microsoft Outlook.

Para configurar Outlook, accedemos a Herramientas ‣ Cuentas. Aparecerá una ventana con varias pestañas, a nosotros nos interesa seleccionar la de Correo.

Configuración de cuentas

Pulsamos sobre agregar y seleccionamos Correo, primero deberemos introducir nuestro nombre.

Nombre de la cuenta

En el siguiente paso se ha de introducir la dirección de mail a la que se desea conectar el cliente.

Dirección de mail

En el siguiente paso se han de introducir las direcciones de los servidores, de correo entrante y saliente. Para el correo entrante se pueden configurar tres protocolos: POP3, IMAP y HTTP.

Page 159: Manual zentyal

Direcciones de los servidores de correo

Una vez introducidos los datos de los servidores al pulsar Siguiente, veremos un apartado donde configurar el usuario indicando el nombre de su cuenta y su contraseña.

Configuración del usuario

Una vez finalizado este paso se muestra una última ventana de confirmación, al pulsar finalizar la cuenta de correo debería aparecer en el listado de cuentas.

Final del asistente de configuración

Configuración de Thunderbird

En Ubuntu vamos a ver el mismo ejemplo pero configurando Thunderbird. La configuración de las cuentas se encuentra en el menú Archivo ‣ Nuevo ‣ Cuenta de correo.... Aparecerá una ventana que pide los siguientes datos: Nombre, Dirección de correo y Contraseña.

Page 160: Manual zentyal

Nombre de la cuenta y datos básicos

Un vez introducidos, el propio Thunderbird intenta configurar el resto de los datos del cliente de correo. Si se quiere realizar la configuración de manera manual, se pude pulsar el botón Configuración manual.... Esto abre una ventana donde podemos introducir nosotros los valores.

Autodetección de la configuración

Los valores del correo entrante se pueden ajustar en la opción Configuración del servidor, donde se puede configurar el nombre del servidor y su puerto, el nombre del usuario, la seguridad de la conexión (ninguna, STARTTLS o SSL/TLS) y si se va a usar identificación segura.

Parámetros del servidor de correo entrante

El correo saliente se puede configurar en la sección Servidor de salida (SMTP)

Page 161: Manual zentyal

Servidores de correo saliente

Se selecciona la cuenta que se quiere configurar y se pulsa sobre Editar.... Se abre una ventana donde se pueden configurar varios parámetros, como el nombre del servidor y el puerto, si se usa contraseña y si la conexión tiene que ser segura.

Parámetros del servidor de correo saliente.

Parámetros para ManageSieve

Para conectar a ManageSieve, se necesitan los siguientes parámetros:

Servidor Sieve: El mismo que tu servidor IMAP o POP3.

Puerto: 4190, hay que tener en cuenta que algunas aplicaciones usan, por error el puerto número 2000 como puerto por defecto para ManageSieve.

Conexión segura: Activar esta opción.

Nombre de usuario: Dirección de correo completa, como anteriormente evitar el nombre de usuario o cualquiera de sus alias de correo.

Contraseña:

Page 162: Manual zentyal

Contraseña del usuario. Algunos clientes permiten indicar que se va a usar la misma autenticación que para IMAP o POP, si esto es posible, hay que seleccionar dicha opción.

Cuenta para recoger todo el correo

Una cuenta para recoger todo el correo es una cuenta que recibe una copia de todo el correo enviado y recibido por un dominio de correo. En Zentyal se permite definir una de estas cuentas por cada dominio; para establecerla se debe ir a la pagina Correo ‣ Dominios Virtuales y después hacer clic en la celda Opciones.

Todos los mensajes enviados y recibidos por el dominio serán enviados como copia oculta (CCO ó BCC) a la dirección definida. Si la dirección rebota el correo, será devuelto al remitente.

Ejemplos prácticos

Ejemplo práctico A

Crear un dominio virtual para el correo. Crear una cuenta de usuario y una cuenta de correo en el dominio creado para dicho usuario. Configurar la retransmisión para el envío de correo. Enviar un correo de prueba con la cuenta creada a una cuenta externa.

1. Acción: Acceder a Zentyal, entrar en Estado del módulo y activa el módulo Correo, para ello marcar su casilla en la columna Estado. Habilitar primero los módulos Red y Usuarios y grupos si no se encuentran habilitados con anterioridad.

Efecto:

Zentyal solicita permiso para sobreescribir algunos ficheros y realizar algunas acciones.

2. Acción: Leer los cambios de cada uno de los ficheros que van a ser modificados y otorgar permiso a Zentyal para sobreescribirlos.

Efecto:

Se ha activado el botón Guardar Cambios.

3. Acción: Acceder al menú Correo ‣ Dominio Virtual, pulsar Añadir nuevo, introducir un nombre para el dominio y pulsar el botón Añadir.

Efecto:

Zentyal nos notifica de que debemos salvar los cambios para usar el dominio.

4. Acción: Guardar los cambios.

Efecto:

Zentyal muestra el progreso mientras aplica los cambios. Una vez que ha terminado lo muestra.

Ahora ya podemos usar el dominio de correo que hemos añadido.

5. Acción: Acceder a Usuarios y Grupos ‣ Usuarios ‣ Añadir usuario, rellenar sus datos y pulsar el botón Crear.

Efecto:

El usuario se añade inmediatamente sin necesidad de salvar cambios. Aparece la pantalla de edición del usuario recién creado.

6. Acción:

Solo si se ha deshabilitado la opción de crear cuentas de correo automáticamente en Usuarios y Grupos –> Plantilla de Usuario por defecto –> Cuenta de correo, escribir un nombre para la cuenta de correo del usuario en la sección Crear cuenta de correo y pulsar el botón Crear.

Page 163: Manual zentyal

Efecto:

La cuenta se ha añadido inmediatamente y nos aparecen opciones para eliminarla o crear alias para ella.

7. Acción: Acceder al menú Red ‣ Objetos ‣ Añadir nuevo. Escribir un nombre para el objeto y pulsar Añadir. Pulsar el icono de Miembros del objeto creado. Escribir de nuevo un nombre para el miembro, introducir la dirección IP de la máquina desde donde se enviará el correo y pulsar Añadir.

Efecto:

El objeto se ha añadido temporalmente y podemos usarlo en otras partes de la interfaz de Zentyal, pero no será persistente hasta que se guarden cambios.

8. Acción: Acceder a Correo ‣ General ‣ Política de reenvío sobre objetos. Seleccionar el objeto creado en el paso anterior asegurándose de que está marcada la casilla Permitir reenvío y pulsar el botón Añadir.

Efecto:

El botón Guardar Cambios estará activado.

9. Acción: Guardar los cambios.

Efecto:

Se ha añadido una política de reenvío para el objeto que hemos creado, que permitirá el envío de correos al exterior para ese origen.

10. Acción: Configurar el cliente de correo seleccionado para que use Zentyal como servidor SMTP y enviar un correo de prueba desde la cuenta que hemos creado a una cuenta externa.

Efecto:

Transcurrido un breve periodo de tiempo deberíamos recibir el correo enviado en el buzón de la cuenta externa.

Mantenimiento de Zentyal

En Zentyal no sólo se configuran los servicios de red de manera integrada, sino que además se ofrecen una serie de características que facilitan la administración y el mantenimiento del servidor.

En este apartado se explicarán aspectos como los registros de los servicios para conocer qué ha sucedido y en qué momento, notificaciones ante incidencias o determinados eventos, monitorización de la máquina o herramientas de soporte remoto.

Registros

Consulta de registros en Zentyal

Zentyal proporciona una infraestructura para que sus módulos registren todo tipo de eventos que puedan ser útiles para el administrador. Estos registros se pueden consultar a través de la interfaz de Zentyal y están almacenados en una base de datos para hacer la consulta, los informes y las actualizaciones de manera más sencilla y eficiente. El gestor de base de datos que se usa es PostgreSQL [1].

[1] PostgreSQL The world’s most advanced open source database http://www.postgresql.org/.Además podemos configurar distintos manejadores para los eventos, de forma que el administrador pueda ser notificado por distintos medios (Correo, Jabber o RSS [2]).

[2] RSS Really Simple Syndication es un formato XML usado principalmente para publicar obras frecuentemente

Page 164: Manual zentyal

actualizadas http://www.rssboard.org/rss-specification/.En Zentyal disponemos de registros para los siguientes servicios:

OpenVPN (Servicio de redes privadas virtuales (VPN) ) SMTP Filter (Filtrado de Correo SMTP ) POP3 proxy (Proxy transparente para buzones de correo POP3 ) Impresoras (Servicio de compartición de impresoras ) Cortafuegos (Cortafuegos) DHCP (Servicio de configuración de red (DHCP) ) Correo (Servicio de correo electrónico (SMTP/POP3-IMAP4) ) Proxy HTTP (Servicio de Proxy HTTP ) Ficheros compartidos (Servicio de compartición de ficheros y de autenticación ) IDS (Sistema de Detección de Intrusos (IDS) )

Así mismo, podemos recibir notificaciones de los siguientes eventos:

Valores específicos de los registros. Estado de salud de Zentyal. Estado de los servicios. Eventos del subsistema RAID por software. Espacio libre en disco. Problemas con los routers de salida a Internet. Finalización de una copia completa de datos.

En primer lugar, para que funcionen los registros, al igual que con el resto de módulos de Zentyal, debemos asegurarnos de que éste se encuentre habilitado.

Para habilitarlo debemos ir a Estado del módulo y seleccionar la casilla registros. Para obtener informes de los registros existentes, podemos acceder a la sección Mantenimiento ‣ Registros ‣ Consultar registros del menú de Zentyal.

Podemos obtener un Informe completo de todos los dominios de registro. Además, algunos de ellos nos proporcionan un interesante Informe resumido que nos ofrece una visión global del funcionamiento del servicio durante un periodo de tiempo.

Pantalla de consulta de registros

En el Informe completo se nos ofrece una lista de todas las acciones registradas para el dominio seleccionado. La información proporcionada es dependiente de cada dominio. Por ejemplo, para el dominio OpenVPN podemos consultar las conexiones a un servidor VPN de un cliente con un certificado concreto, o por ejemplo para el dominio Proxy HTTP podemos saber de un determinado cliente a qué páginas se le ha denegado el acceso. Por tanto, podemos realizar una

Page 165: Manual zentyal

consulta personalizada que nos permita filtrar tanto por intervalo temporal como por otros distintos valores dependientes del tipo de dominio. Dicha búsqueda podemos almacenarla en forma de evento para que nos avise cuando ocurra alguna coincidencia. Además, si la consulta se realiza hasta el momento actual, el resultado se irá refrescando con nuevos datos.

Pantalla de informe completo

El Informe resumido nos permite seleccionar el periodo del informe, que puede ser de un día, una hora, una semana o un mes. La información que obtenemos es una o varias gráficas, acompañadas de una tabla-resumen con valores totales de distintos datos. En la imagen podemos ver, como ejemplo, las estadísticas de peticiones y tráfico del proxy HTTP al día.

Page 166: Manual zentyal

Pantalla de informe resumido

Configuración de registros en Zentyal

Una vez que hemos visto cómo podemos consultar los registros, es importante también saber que podemos configurarlos en la sección Mantenimiento ‣ Registros ‣ Configurar los registros del menú de Zentyal.

Page 167: Manual zentyal

Pantalla de configuración de registros

Los valores configurables para cada dominio instalado son:

Habilitado: Si esta opción no está activada no se escribirán los registros de ese dominio.

Purgar registros anteriores a: Establece el tiempo máximo que se guardarán los registros. Todos aquellos valores cuya antigüedad supere el periodo especificado, serán desechados.

Además podemos forzar la eliminación instantánea de todos los registros anteriores a un determinado periodo mediante el botón Purgar de la sección Forzar la purga de registros, que nos permite seleccionar distintos intervalos comprendidos entre una hora y 90 días.

Registro de auditoría de administradores

Adicionalmente a los registros proporcionados por los distintos servicios de Zentyal, se ofrecen otros dos registros que no están vinculados a ningún servicio sino al panel de administración de Zentyal en sí. Esta característica es especialmente útil para servidores administrados por distintas personas, ya que quedan almacenados los cambios en la configuración y acciones ejecutadas por cada usuario, junto a la hora a la que fueron realizados.

Por defecto esta funcionalidad se encuentra deshabilitada, pero para habilitarla basta con acudir a Mantenimiento ‣ Registros ‣ Configurar los registros y habilitar el dominio audit, como se detalla en el apartado anterior.

Page 168: Manual zentyal

Configurar auditoría de registros

Una vez hecho esto, en Mantenimiento ‣ Registros ‣ Consultar registros podremos consultar las dos tablas siguientes:

Cambios en la configuración: Indica el módulo, sección, tipo de evento, y valores actual y anterior en caso de que proceda de todos los cambios de configuración producidos desde que se habilitó el registro.

Sesiones del administrador: Proporciona información sobre los inicios de sesión correctos o incorrectos, los cierres de sesión y las sesiones expiradas de los distintos usuarios. Añadiendo también la dirección IP desde donde se produjo la conexión.

Consultar registros de la auditoría

Dado que en Zentyal hay acciones que toman efecto de forma instantánea, como es el caso de reiniciar un servicio, y otras como los cambios de configuración no se aplican hasta que no se han guardado dichos cambios, a la hora de registrarlas se tiene en cuenta y se tratan de distinta forma. Las acciones inmediatas quedarán registradas para siempre (hasta que se purguen los registros) y las que estén pendientes del guardado de cambios, se mostrarán en la propia pantalla de guardar cambios, ofreciéndole al administrador un resumen de todo lo que ha modificado desde el último guardado, y en caso de que los cambios se descarten, dichas acciones que no han llegado a ser aplicadas se borrarán del registro.

Page 169: Manual zentyal

Registros al guardar cambios

Еjemplos prácticos

Ejemplo práctico A

Habilitar el módulo de registros. Usar el Ejemplo práctico A como referencia para generar tráfico de correo electrónico conteniendo virus, spam, remitentes prohibidos y ficheros prohibidos. Observar los resultados en Mantenimiento ‣ Registros ‣ Consulta Registros ‣ Informe completo.

1. Acción: Acceder a Zentyal, entrar en Estado del módulo y activar el módulo registros, para ello marcar su casilla en la columna Estado. Nos informa de que se creará una base de datos para guardar los registros. Permitir la operación pulsando el botón Aceptar.

Efecto:

Se ha activado el botón Guardar Cambios.

2. Acción: Acceder al menú Mantenimiento ‣ Registros ‣ Configurar registros y comprobar que los registros para el dominio Correo se encuentran habilitados.

Efecto:

Hemos habilitado el módulo registros y nos hemos asegurado de tener activados los registros para el correo.

3. Acción: Guardar los cambios.

Efecto:

Zentyal muestra el progreso mientras aplica los cambios. Una vez que ha terminado lo notifica.

A partir de ahora quedarán registrados todos los correos que enviemos.

4. Acción: Volver a enviar unos cuantos correos problemáticos (con spam o virus) como se hizo en el tema correspondiente.

Efecto:

Como ahora el módulo registros está habilitado, los correos han quedado registrados, a diferencia de lo que ocurrió cuando los enviamos por primera vez.

5. Acción: Acceder a Mantenimiento ‣ Registros ‣ Consulta Registros y seleccionar Informe completo para el dominio Correo.

Efecto:

Aparece una tabla con entradas relativas a los correos que hemos enviado mostrando distintas informaciones de cada uno.

Eventos y alertas

Page 170: Manual zentyal

La configuración de eventos y alertas en Zentyal

El módulo de eventos es un servicio muy útil que permite recibir notificaciones de ciertos eventos y alertas que suceden en un servidor Zentyal.

En Zentyal disponemos de los siguientes mecanismos emisores para la notificación de incidencias:

Correo [1] Jabber Registro RSS

[1] Teniendo instalado y configurado el módulo de correo (Servicio de correo electrónico (SMTP/POP3- IMAP4)).

Antes de activar los eventos debemos asegurarnos de que el módulo se encuentra habilitado. Para habilitarlo, como de costumbre, debemos ir a Estado del módulo y seleccionar la casilla Eventos.

A diferencia de los registros, que salvo en el caso del cortafuegos, se encuentran activados por defecto, para los eventos tendremos que activar explícitamente aquellos que nos interesen.

Podemos activar cualquiera de ellos accediendo al menú Mantenimiento ‣ Eventos ‣ Configurar eventos y marcando la casilla Habilitado de su fila.

Pantalla de configuración de eventos

Además, algunos eventos como el observador de registros o el observador de espacio restante en disco tienen sus propios parámetros de configuración.

La configuración para el observador de espacio en disco libre es sencilla. Sólo debemos especificar el porcentaje mínimo de espacio libre con el que queremos ser notificados (cuando sea menor de ese valor).

En el caso del observador de registros, podemos elegir en primer lugar qué dominios de registro queremos observar. Después, por cada uno de ellos, podemos añadir reglas de filtrado específicas dependientes del dominio. Por ejemplo, peticiones denegadas en el proxy HTTP, concesiones DHCP a una determinada IP, trabajos de cola de impresión cancelados,

Page 171: Manual zentyal

etc. La creación de alertas para monitorizar también se puede hacer mediante el botón Guardar como evento a través de Mantenimiento ‣ Registros ‣ Consultar registros ‣ Informe completo.

Respecto a la selección de medios para la notificación de los eventos, podemos seleccionar los emisores que deseemos en la pestaña Configurar emisores.

Pantalla de configuración de emisores

De idéntica forma a la activación de eventos, debemos seleccionar du casilla Habilitado. Excepto en el caso del fichero de registro (que escribirá implícitamente los eventos recibidos al fichero general de registro /var/log/zentyal/zentyal.log), los emisores requieren algunos parámetros adicionales que detallamos a continuación:

Correo: Debemos especificar la dirección de correo destino (típicamente la del administrador de Zentyal); además podemos personalizar el asunto de los mensajes.

Jabber: Debemos especificar el nombre y puerto del servidor Jabber, el nombre de usuario y contraseña del usuario que nos notificará los eventos, y la cuenta Jabber del administrador que recibirá dichas notificaciones. Desde esta pantalla de configuración podremos elegir también crear una nueva cuenta con los parámetros indicados en caso de que no exista.

RSS: Nos permite seleccionar una política de lectores permitidos, así como el enlace del canal. Podemos hacer que el canal sea público, que no sea accesible para nadie, o autorizar sólo a una dirección IP u objeto determinado.

Еjemplos prácticos

Ejemplo práctico A

Usar el módulo eventos para hacer aparecer el mensaje “Zentyal is up and running” en el fichero /var/log/zentyal/zentyal.log. Dicho mensaje se generará cada vez que se reinicie el módulo de eventos.

1. Acción: Acceder a Zentyal, entrar en Estado del módulo y activar el módulo eventos; para ello marcar su casilla en la columna Estado.

Efecto:

Se ha activado el botón Guardar Cambios.

2. Acción: Acceder al menú Mantenimiento ‣ Eventos y en la pestaña Configurar eventos marcar la casilla Habilitado de la fila Estado.

Page 172: Manual zentyal

Efecto:

Veremos que en la tabla de eventos aparece como habilitado el evento de Estado.

3. Acción: Acceder a la pestaña Configurar emisores y marcar la casilla Habilitado de la fila Registro

Efecto:

Veremos que en la tabla de emisores aparece como habilitado el emisor de Registro.

4. Acción: Guardar los cambios.

Efecto:

Zentyal muestra el progreso mientras aplica los cambios. Una vez que ha terminado lo notifica.

Al final del fichero de registro /var/log/zentyal/zentyal.log aparecerá un evento con el mensaje ‘Zentyal is up and running’.

5. Acción: Reiniciar la máquina o el servicio de eventos desde el Dashboard.

Efecto:

En el fichero de registro /var/log/zentyal/zentyal.log volverá a aparecer un nuevo evento con el mensaje ‘Zentyal is up and running’.

Monitorización

La monitorización en Zentyal

El módulo de monitorización permite al administrador conocer el estado del uso de los recursos del servidor Zentyal. Esta información es esencial tanto para diagnosticar problemas como para planificar los recursos necesarios con el objetivo de evitar problemas.

Monitorizar implica conocer ciertos valores que nos ofrece el sistema para determinar si dichos valores son normales o están fuera del rango esperado, tanto en su valor inferior como superior. El principal problema de la monitorización es la selección de aquellos valores significativos del sistema. Para cada una de las máquinas esos valores pueden ser diferentes. Por ejemplo, en un servidor de ficheros el espacio libre de disco duro es importante. Sin embargo, para un encaminador la memoria disponible y la carga son valores mucho más significativos para conocer el estado del servicio ofrecido. Es conveniente evitar la obtención de muchos valores sin ningún objetivo concreto.

Es por ello que las métricas que monitoriza Zentyal son relativamente limitadas. Estas son: carga del sistema, uso de CPU, uso de memoria y uso del sistema de ficheros.

La monitorización se realiza mediante gráficas que permiten hacerse fácilmente una idea de la evolución del uso de recursos. Podremos acceder a las gráficas desde Monitorización. Colocando el cursor encima de algún punto de la línea de la gráfica en la que estemos interesados podremos saber el valor exacto para un momento determinado.

Podemos elegir la escala temporal de las gráficas entre una hora, un día, un mes o un año. Para ello simplemente pulsaremos sobre la pestaña correspondiente.

Page 173: Manual zentyal

Pestañas con los diferentes informes de monitorización

Métricas

Carga del sistema

La carga del sistema trata de medir la relación entre la demanda de trabajo y el realizado por el computador. Esta métrica se calcula usando el número de tareas ejecutables en la cola de ejecución y es ofrecida por muchos sistemas operativos en forma de media de uno, cinco y quince minutos.

La interpretación de esta métrica es la cantidad de procesos simultáneos que están ejecutándose durante el periodo elegido. De modo que, para una máquina con una sola CPU, una carga de 1 significaría que esta operando a plena capacidad. Un valor de 0.5 significaría que podría llegar a soportar el doble de trabajo. Y siguiendo la misma proporción, un valor de 2 se interpretaría como que le estamos exigiendo el doble del trabajo que puede realizar. Para los mismos datos la interpretación sería diferente si la máquina dispusiera de varias CPUs, por ejemplo con dos CPUs tener una carga de 1 significaría que los procesadores podrían soportar el doble de trabajo.

Hay que tener en cuenta que los procesos que están interrumpidos por motivos de lectura/escritura en almacenamiento también contribuyen a la métrica de carga. En estos casos no se correspondería bien con el uso de la CPU, pero seguiría siendo útil para estimar la relación entre la demanda y la capacidad de trabajo.

Gráfica de la carga del sistema

Uso de la CPU

Con esta gráfica tendremos una información detallada del uso de la CPU. En caso de que dispongamos de una maquina con múltiples CPUs tendremos una gráfica para cada una de ellas.

En la gráfica se representa la cantidad de tiempo que pasa la CPU en alguno de sus estados, ejecutando código de usuario, código del sistema, estamos inactivo, en espera de una operación de entrada/salida, entre otros valores. Ese tiempo no es un

Page 174: Manual zentyal

porcentaje sino unidades de scheduling conocidos como jiffies. En la mayoría de sistemas Linux ese valor es 100 por segundo pero nada garantiza que no pueda ser diferente.

Gráfica de uso de la CPU

Uso de la memoria

La gráfica nos muestra el uso de la memoria. Se monitorizan cuatro variables:

Memoria libre: Cantidad de memoria no usada

Caché de pagina: Cantidad destinada a la caché del sistema de ficheros

Buffer caché: Cantidad destinada a la caché de los procesos

Memoria usada: Memoria usada que no está destinada a ninguno de las dos anteriores cachés.

Gráfica del uso de memoria

Uso del sistema de ficheros

Esta gráfica nos muestra el espacio usado y libre del sistema de ficheros en cada punto de montaje.

Page 175: Manual zentyal

Gráfica del uso del sistema de ficheros

Temperatura

Con esta gráfica es posible leer la información disponible sobre la temperatura del sistema en grados centígrados usando el sistema ACPI [1]. Para que esta métrica se active, es necesario que la máquina disponga de este sistema y que el kernel lo soporte.

[1] La especificación Advanced Configuration and Power Interface (ACPI) es un estándar abierto para la configuración de dispositivos centrada en sistemas operativos y en la gestión de energía del computador. http://www.acpi.info/

Gráfica del diagrama del sensor del temperatura

Monitorización del uso de ancho de banda

Además del módulo de monitorización también existe un módulo de Monitorización de Ancho de Banda, que se encarga de monitorizar el flujo de red de manera específica. Como resultado se obtiene el uso de red para cada cliente conectado a las redes internas de Zentyal.

Una vez instalado y activado el módulo se puede acceder a él a través de Red –> Monitor de ancho de banda.

Pestaña de configuración de interfaces a monitorizar

Configurar interfaces

Esta pestaña permite configurar las interfaces internas en las que la monitorización se llevará a cabo. Por defecto se realiza en todas ellas.

Page 176: Manual zentyal

Pestaña de uso de ancho de banda en la última hora

Uso de ancho de banda en la última hora

Aquí se muestra un listado del uso de ancho de banda durante la última hora de todos los clientes conectados a las interfaces monitorizadas. Las columnas muestran, para cada IP cliente, la cantidad de tráfico transmitida hacia y desde redes externas, así como para redes internas.

Nota

Los datos en esta pestaña se actualizan cada 10 minutos, con lo que en los primeros momentos después de la configuración del módulo todavía no habrá información disponible.

Alertas

La monitorización carecería en gran medida de utilidad si no estuviera acompañada de un sistema de notificaciones que nos avisara cuando se producen valores anómalos, permitiéndonos saber al momento que la máquina está sufriendo una carga inusual o está llegando a su máxima capacidad.

Las alertas de monitorización deben configurarse en el módulo de eventos. Entrando en Mantenimiento ‣ Eventos ‣ Configurar eventos, podemos ver la lista completa, los eventos de monitorización están agrupados en el evento Monitor.

Pantalla de configuración de los observadores de la monitorización

Pulsando en la celda de configuración, accederemos a la configuración de este evento. Podremos elegir cualquiera de las métricas monitorizadas y establecer umbrales que disparen el evento.

Page 177: Manual zentyal

Pantalla de configuración de los umbrales de eventos

En cuanto a los umbrales tendremos de dos tipos, de advertencia y de fallo, pudiendo así discriminar entre la gravedad del evento. Tenemos la opción de invertir, lo que hará que los valores que estén dentro del umbral sean considerados fallos y lo contrario si están fuera. Otra opción importante es la de persistente:. Dependiendo de la métrica también podremos elegir otros parámetros relacionados con esta, por ejemplo para el disco duro podemos recibir alertas sobre el espacio libre, o para la carga puede ser útil la carga a corto plazo, etc.

Cada medida tiene una métrica que se describe como sigue:

Carga del sistema: Los valores se deben establecer en número de tareas en la cola de ejecución.

Uso de la CPU: Los valores se deben establecer en jiffies o unidades de scheduling.

Uso de la memoria física: Los valores deben establecerse en bytes.

Sistema de ficheros: Los valores deben establecerse en bytes.

Temperatura: Los valores a establecer debe establecer en grados.

Una vez configurado y activado el evento deberemos configurar al menos un observador para recibir las alertas. La configuración de los observadores es igual que la de cualquier evento, así que deberemos seguir las indicaciones contenida en el capítulo de Eventos y alertas .

Herramientas de soporte

Acerca del soporte en Zentyal

Los servidores Zentyal disponen de algunas utilidades que facilitan la obtención de soporte. En este capítulo se describirán las principales.

Además, puedes consultar la oferta de servicios de soporte en la página web de Zentyal [1].

Page 178: Manual zentyal

[1] http://www.zentyal.com/es/services/support/

Informe de la configuración

El informe de la configuración es un archivo que contiene la configuración de Zentyal y bastante información sobre el sistema. Proveerlo cuando se solicite soporte puede ahorrar tiempo ya que probablemente contendrá la información requerida por nuestros ingenieros.

Se puede generar el informe de dos maneras:

#. En la interfaz web, accediendo a Sistema -> Importar/Exportar configuración – >Informe de configuración y pulsando en el botón para que se empiece a generar el

informe. Una vez listo el navegador lo descargará.

1. En la línea de comandos, ejecuta /usr/share/zentyal/configuration-report. Cuando el informe este listo, el comando indicará su localización en el sistema de archivos.

Informe de configuración

Acceso remoto de soporte

En casos difíciles, si tu entorno de trabajo lo permite, puede ser útil dejar acceder a un ingeniero de soporte a tu servidor Zentyal.

El módulo Zentyal Cloud Client contiene una característica para facilitar este proceso. El acceso se realiza utilizando canales cifrados con clave pública [2], por lo que no hace falta compartir ninguna contraseña.

[2] Puedes encontrar más información sobre criptografía de clave pública en el capítulo de Autoridad de certificación (CA).

Además el acceso sólo estará disponible a través de la red privada virtual de Zentyal Cloud, garantizando la seguridad del proceso de soporte. Para las situaciones en las que el servidor no se ha podido suscribir a los servicios en la nube o cuando la red privada virtual no funciona correctamente, existe una opción para permitir el acceso desde cualquier dirección de Internet.

El acceso sólo estará disponible mientras esta opción esté activada, por ello sólo es recomendable activarla durante el tiempo en que se necesite.

Antes de activarla, se deben cumplir estos requisitos:

Tu servidor debe o bien estar subscrito a Zentyal Cloud o ser visible en Internet, es decir, que se puedan realizar conexiones desde redes externas.

El servicio ssh debe estar en ejecución. Si el puerto de escucha no es el predeterminado (TCP/22), deberás reiniciar el módulo de cortafuegos.

En caso de usar cortafuegos debe estar configurado para permitir conexiones ssh entrantes (estas conexiones se realizan normalmente en el puerto TCP/22).

En la configuración del servidor sshd la opción PubkeyAuthentication debe estar activada, lo estará si se mantiene su configuración predeterminada.

Truco

Si cambias de puerto de escucha para el servidor sshd después de haber activado el acceso remoto, deberás reiniciar el módulo del cortafuegos.

Page 179: Manual zentyal

Para activar esta característica, accede a Subscripción ‣ Soporte Técnico y activa Permitir acceso remoto a personal de Zentyal, a continuación guarda los cambios de la manera habitual.

Si quieres permitir acceso desde Internet, deberás activar también la opción Permitir acceso desde cualquier dirección de Internet. En este caso deberás suministrar tu dirección IP al ingeniero de soporte y asegurarte que el acceso ssh está permitido desde redes externas.

Acceso remoto de soporte

Después de dar la dirección de Internet del servidor al ingeniero de soporte, éste podrá acceder mientras esta opción esté activada.

Puedes usar el programa screen para ver en tiempo real la sesión de soporte; esto puede ser útil para compartir información.

Para hacer esto debes tener una sesión con un usuario que pertenezca al grupo adm. El usuario creado durante el proceso de instalación cumple este requisito. Puedes unirte a la sesión de soporte con este comando:

screen -x ebox-remote-support/

Por defecto, tan sólo puedes ver la sesión; si necesitas escribir en la línea de comandos y ejecutar programas deberás pedir al ingeniero de soporte que le otorgue los permisos adecuados a tu usuario.

Importación de datos de configuración

Aunque la interfaz de Zentyal facilita enormemente la labor del administrador de sistemas, algunas de las tareas de configuración a través de dicha interfaz pueden resultar tediosas si tenemos que repetirlas un número elevado de veces. Ejemplos de esto serían añadir 100 nuevas cuentas de usuario o habilitar una cuenta de correo electrónico para todos los usuarios de Zentyal.

Estas tareas se pueden automatizar fácilmente a través de la interfaz para la programación que nos proporciona Zentyal. Para ello sólo son necesarios unos conocimientos básicos de lenguaje Perl [1], así como conocer los métodos expuestos por el módulo de Zentyal que queramos utilizar. De hecho, la interfaz Web utiliza la misma interfaz de programación.

[1] Perl es un lenguaje dinámico de programación interpretado de alto nivel y de propósito general. http://www.perl.org/

A continuación se muestra un ejemplo de cómo crear una pequeña utilidad, haciendo uso del API de Zentyal, para añadir automáticamente un número arbitrario de usuarios definidos en un fichero CSV (Comma Separated Values):

#!/usr/bin/perl

use strict;use warnings;

use EBox;use EBox::Global;

EBox::init();my $usersModule = EBox::Global->modInstance('users');

my @users;open (my $USERS, 'users');

Page 180: Manual zentyal

while (my $line = <$USERS>) { chomp ($line); my $user; my ($username, $givenname, $surname, $password) = split(',', $line); $user->{'user'} = $username; $user->{'givenname'} = $givenname; $user->{'surname'} = $surname; $user->{'password'} = $password; push (@users, $user);}close ($USERS);

foreach my $user (@users) { $usersModule->addUser($user, 0);}

1;

Guardamos el fichero con el nombre bulkusers y le damos permisos de ejecución mediante el comando chmod +x bulkusers.

Antes de ejecutar el script debemos tener un fichero llamado users en el mismo directorio. El aspecto de este fichero debe ser así:

jfoo,John,Foo,jfoopassword,jbar,Jack,Bar,jbarpassword,

Finalmente nos situamos en el directorio donde lo hayamos guardado y ejecutamos:

sudo ./bulkusers

En esta sección se ha mostrado un pequeño ejemplo de las posibilidades de automatización de tareas con el API de Zentyal, pero estas son prácticamente ilimitadas.

Personalización avanzada de servicios

En esta sección se comentan dos posibilidades de personalización del sistema para aquellos usuarios que puedan tener necesidades especiales.

Personalización de ficheros de configuración de servicios gestionados por Zentyal. Ejecución de acciones en el proceso de asentar cambios en la configuración.

Cuando un módulo de Zentyal se encarga de configurar automáticamente un servicio intenta abarcar sus opciones de configuración más comunes. Además, en algunos casos son tantas las posibilidades de configuración que nos ofrecen las herramientas de software libre, que aunque se quisiese sería imposible controlarlas todas con un producto como Zentyal cuyo fin es la simplicidad. Sin embargo, hay usuarios que pueden tener necesidades especiales y desean ajustar alguno de estos parámetros que Zentyal no maneja. Una de las posibilidades es modificando directamente los ficheros de configuración del software en cuestión.

Antes de lanzarnos a modificar un fichero de configuración manualmente, debemos comprender cómo funciona Zentyal internamente. Los módulos, una vez que se han habilitado, se encargan de sobreescribir los ficheros de configuración originales del sistema de aquellos servicios que controlan. Esto lo hacen mediante unas plantillas que contienen fundamentalmente la estructura básica de un fichero de configuración típico para el servicio en cuestión, pero algunas de las partes están parametrizadas mediante variables de sustitución. El valor de estas variables se asigna a la hora de escribir el fichero, en función de los valores de configuración que hayamos establecido a través de la interfaz de Zentyal. Puede quedar más claro con la siguiente imagen:

Page 181: Manual zentyal

Cómo funciona el sistema de plantillas de configuración

Por tanto, si queremos que los cambios que realicemos sobre los ficheros de configuración sean persistentes, y no sean sobrescritos cada vez que Zentyal salve cambios, debemos editar las anteriormente mencionadas plantillas en lugar de los ficheros. Estas plantillas se encuentran en /usr/share/zentyal/stubs, distribuidas en directorios para cada módulo y su nombre coincide con el nombre del fichero de configuración original seguido de la extensión .mas.

Hay que tener en cuenta, que aunque estos cambios que realicemos en las plantillas serán persistentes aunque se modifique la configuración de Zentyal; dejarán de serlo en el momento en que realicemos una actualización del módulo al que pertenece la plantilla, al instalar una nueva versión se sobreescribirán todos los ficheros .mas. Si queremos que estos cambios se mantengan al actualizar el módulo, deberemos copiar la plantilla a /etc/zentyal/stubs/ dentro de un directorio con el nombre del módulo. Así si por ejemplo queremos modificar la plantilla /usr/share/zentyal/stubs/dns/named.conf.options.mas, crearemos el directorio /etc/zentyal/stubs/dns/, copiaremos la plantilla ahí dentro y será esta copia la que modificaremos:

sudo mkdir /etc/zentyal/stubs/dnssudo cp /usr/share/zentyal/stubs/dns/named.conf.options.mas /etc/zentyal/stubs/dns

Otra de las ventajas de copiar las plantillas a /etc/zentyal/stubs/ es que podemos mantener un control de las modificaciones que hemos efectuado sobre las plantillas originales de Zentyal, y siempre podremos ver estas diferencias utilizando la herramienta diff, por ejemplo para el caso anterior:

diff /etc/zentyal/stubs/dns/named.conf.options.mas /usr/share/zentyal/stubs/dns/named.conf.options.mas /etc/zentyal/stubs/dns

Es posible que en lugar de personalizar ficheros de configuración, lo que necesitemos sea ejecutar ciertas acciones adicionales además de las que ejecuta Zentyal cuando guarda los cambios en sus módulos.

Por ejemplo, cuando Zentyal guarda los cambios relativos al cortafuegos, lo primero que hace es eliminar todas las reglas existentes, y posteriormente añade las que tengamos definidas en la configuración. Si tenemos unas necesidades avanzadas que nos llevan a añadir una regla de iptables que no está contemplada en la interfaz de Zentyal, y la añadimos manualmente, en el momento en que el módulo se reinicie la regla desaparecerá. Para evitar esto, Zentyal nos permite ejecutar scripts durante el proceso de aplicación de los cambios en la configuración de los servicios. Existen 6 puntos de entrada para la ejecución de dichos scripts también conocidos como hooks. Dos de ellos son generales y los otros 4 por módulo:

Antes de guardar cambios: Los scripts con permisos de ejecución situados en el directorio /etc/zentyal/pre-save se ejecutarán antes de comenzar el proceso.

Después de guardar cambios: Se ejecutarán los scripts con permisos de ejecución del directorio /etc/zentyal/post-save cuando el proceso haya finalizado.

Antes de guardar la configuración de un módulo: Escribiendo el fichero /etc/zentyal/hooks/<module>.presetconf siendo <module> el nombre del módulo que se quiere personalizar. Se ejecutará antes de sobreescribir la configuración del módulo. Es el sitio ideal para modificar las plantillas de configuración de un módulo.

Después de guardar la configuración de un módulo:

Page 182: Manual zentyal

El fichero /etc/zentyal/hooks/<module>.postsetconf se ejecutará tras guardar la configuración. Antes de reiniciar el servicio:

Se ejecutará el fichero /etc/zentyal/hooks/<module>.preservice. Este script puede ser útil, por ejemplo, para cargar módulos en el demonio de apache.

Después de reiniciar el servicio: Se ejecutará el fichero /etc/zentyal/hooks/<module>.postservice. Para el ejemplo del cortafuegos, se deberían escribir aquí las reglas personalizadas necesarias que no puedan ser añadidas desde la interfaz de Zentyal.

Como se puede intuir, esto tiene un gran potencial y permite una personalización muy avanzada del funcionamiento y la integración de un servidor Zentyal.

Entorno de desarrollo de nuevos módulos

Zentyal está diseñado precisamente pensando en la extensibilidad y es relativamente sencillo crear nuevos módulos.

Cualquiera con conocimientos del lenguaje Perl puede aprovecharse de las facilidades que proporciona Zentyal para la creación de interfaces Web, y también beneficiarse de la integración con el resto de módulos y las demás características comunes de Zentyal.

El diseño de Zentyal es completamente orientado a objetos y hace uso del patrón Modelo-Vista-Controlador (MVC) [2], de forma que el desarrollador sólo necesita definir qué características desea en su modelo de datos, y el resto será generado automáticamente por Zentyal. Por si esto no fuese suficiente, se dispone de una herramienta llamada zmoddev [3] que facilita más todavía el desarrollo de nuevos módulos, proporcionando plantillas auto-generadas en función de parámetros definidos por el usuario, lo que se traduce en un ahorro de tiempo. Sin embargo, su explicación y desarrollo está fuera del alcance de este curso.

[2] Una explicación más desarrollada del patrón MVC http://es.wikipedia.org/wiki/Modelo_Vista_Controlador.

[3] Acceso al repositorio de zmoddev https://svn.zentyal.org/zentyal/trunk/extra/zmoddev.Zentyal está pensado para ser instalado en una máquina dedicada. Esta recomendación es también extensible para el caso del desarrollo de módulos. No se recomienda desarrollar sobre la propia máquina del usuario, en su lugar se recomienda servirse de un entorno virtualizado como se detalla en Apéndice A: Entorno de pruebas con VirtualBox .

Política de gestión de errores

Cada proyecto de software libre tiene su propia política de gestión de defectos, denominados bugs en el argot informático.

En Ubuntu puede existir más de una versión considerada estable y mantenida al mismo tiempo. Esto es, entendemos por mantenida que cuando se arregla un bug previamente detectado, se pone oficialmente a disposición del público una actualización que lo corrije. El tema de las actualizaciones será tratado más detenidamente en la siguiente sección.

En el caso de Zentyal, existe una versión estable. Sobre esta versión se van incorporando progresivamente las modificaciones que corrigen los distintos bugs detectados. También se mantiene la anterior versión estable, incorporándole actualizaciones cuando se detectan bugs críticos o de seguridad. Actualmente el ciclo de vida de una versión es de un año como estable y de otro en mantenimiento. Se recomienda utilizar siempre la versión más actualizada, ya que incorpora todas las mejoras y correcciones.

En Zentyal se utiliza la herramienta de gestión de proyectos Trac [4]. Es usada por los desarrolladores para gestionar los bugs y sus tareas, pero también la creación de tickets para reportar problemas está abierta a todos los usuarios. Una vez que el usuario ha creado un ticket, puede realizar un seguimiento del estado del mismo mediante correo electrónico. Se puede acceder al Trac de Zentyal desde http://trac.zentyal.org/.

[4] Trac: es una herramienta para la gestión de proyectos y el seguimiento de errores http://trac.edgewall.org/.Ubuntu usa Launchpad [5], una herramienta desarrollada y mantenida por Canonical, para la gestión de bugs.

Page 183: Manual zentyal

[5] Launchpad es accesible desde https://launchpad.net/.Se recomienda reportar un bug cuando nos hemos asegurado de comprobar que el problema se puede repetir fácilmente. Mejor incluso si proporcionamos instrucciones detalladas para su reproducción. También conviene asegurarse de que lo que nos ocurre es realmente un bug y no un comportamiento esperado del programa bajo determinadas circunstancias. Incluso puede ser de gran utilidad dar una solución para dicho problema, ya sea modificando la aplicación (parche) o mediante instrucciones para evitar el problema temporalmente (workaround).

Parches y actualizaciones de seguridad

Entendemos por parche una modificación en el código fuente que permite solucionar un bug o añadir una nueva caracterí-stica al software. En los proyectos libres, los miembros de la comunidad tienen la posibilidad de enviar parches a los mantenedores del proyecto y si estos lo ven conveniente, esas modificaciones serán incluidas en la aplicación.

Los propios desarrolladores también suelen publicar parches oficiales que, por ejemplo, corrijan una vulnerabilidad conocida. Pero, típicamente, lo que se hace en casos como el de Ubuntu o Zentyal, es sacar una nueva versión del paquete en cuestión que incluya el susodicho parche.

La política de Ubuntu para sus versiones estables es sacar actualizaciones únicamente para corregir los bugs que afecten a la seguridad o el funcionamiento básico del sistema.

Por defecto, cuando se instala una versión estable de Ubuntu, el sistema queda preparado para la posterior instalación de actualizaciones de seguridad. Existe un fichero /etc/apt/sources.list donde se definen los repositorios para la obtención de paquetes. Este fichero incluye una línea específica para las actualizaciones de seguridad similar a la que podemos ver a continuación:

deb http://security.ubuntu.com/ubuntu/ lucid-security universe main multiverse restricted

Podemos comprobar la disponibilidad de actualizaciones e instalarlas como se explica con aptitude, pero si tenemos Zentyal instalado también podemos hacer esto a través de su propia interfaz de forma más amigable.

Las actualizaciones de seguridad en Zentyal se pueden gestionar a través del módulo de software [6].

[6] Este módulo se explica con detalle en la sección Actualización de software .

Soporte técnico

Típicamente, los proyectos de software libre ofrecen soporte técnico a los usuarios de su aplicación a través de distintos medios. Ubuntu y Zentyal no son una excepción.

Tenemos que diferenciar dos tipos de soporte: el soporte proporcionado a la comunidad, que es gratuito, y el soporte comercial que es aquel que ofrece una empresa a cambio de una retribución económica.

Soporte de la comunidad

El soporte de comunidad se produce principalmente a través de Internet. En muchas ocasiones es la propia comunidad la que se ofrece soporte a sí misma. Es decir, usuarios de la aplicación que ayudan desinteresadamente a otros usuarios.

La comunidad proporciona una mejora importante en el desarrollo del producto, los usuarios contribuyen a descubrir fallos en la aplicación que no se conocían hasta la fecha o también con sus sugerencias ayudan a dar ideas sobre la forma en que se puede mejorar la aplicación.

Este soporte desinteresado, lógicamente, no está sujeto a ninguna garantía. Si un usuario formula una pregunta, es posible que por distintas circunstancias nadie con el conocimiento apropiado tenga tiempo para responderle en el plazo que este desearía.

Los medios de soporte de la comunidad de Zentyal se centran en el foro [7], aunque tambien hay listas de correo [8] y canales de IRC [9] disponibles.

[7] http://forum.zentyal.org

Page 184: Manual zentyal

[8] http://lists.zentyal.org

[9] servidor irc.freenode.net, canalrd #Zentyal (inglés) y #Zentyal-es (español).

Toda esta información, junto a otra documentación, se encuentra en la sección de la comunidad de la Web de Zentyal (http://www.zentyal.org/).

Soporte comercial

El soporte comercial permite acceso a soporte como servicio comercial. A diferencia del soporte de comunidad, el soporte comercial sí que ofrece garantías de servicio como pueden ser:

Máximos tiempos de respuesta, en función del paquete de soporte contratado. Soporte por parte de profesionales capacitados, respaldados por los propios desarrolladores. Características adicionales que dan valor añadido al producto y que no están disponibles para el resto de la

comunidad.

Las ventajas del soporte comercial son evidentes, y generalmente su coste compensa al coste de las horas que se pueden llegar a perder enfrentándose a un problema sin el soporte adecuado. Esta opción es la recomendada, sin duda, para empresas y profesionales del sector que utilicen el software para sistemas en producción.

Apéndice A: Entorno de pruebas con VirtualBox

Acerca de la virtualización

Abstraer los recursos físicos de un equipo (CPU, memoria, discos, etc.) para simular un ordenador virtual es lo que conocemos como virtualización. A través de diversas técnicas, primero la virtualización por software, más tarde la paravirtualización y, por último, virtualización asistida por hardware, se consigue ejecutar simultáneamente más de un sistema en un mismo equipo físico.

Dos conceptos que se han de tener muy claros, ya que aparecen continuamente en la literatura sobre virtualización, son los de sistema host y sistema guest.

El host o anfitrión es el continente, la máquina que ejecutará el sistema de virtualización y sobre el que se ejecutarán las máquinas virtuales. Generalmente es una máquina física que funciona directamente sobre el hardware.

El guest o invitado es el sistema contenido, es decir, la máquina virtualizada propiamente dicha que se ejecuta dentro de la plataforma de virtualización del host.

Existen múltiples razones para la adopción de la virtualización; las más destacables son:

Alta disponibilidad para los servicios de red o servidores. Ejecución de varios servicios o sistemas al mismo tiempo con el consiguiente ahorro de costes. Aislamiento de aplicaciones inseguras o en pruebas. Ejecución de aplicaciones para pruebas en diferentes entornos. Asignación de recursos y su monitorización en distintos servidores.

Dos funcionalidades que llegaron gracias a la virtualización han sido los snapshots o imágenes instantáneas y las migraciones ininterrumpidas. Los snapshots consisten en realizar una copia exacta del estado de ejecución de una máquina (disco y memoria) para realizar una copia de seguridad o backup sin afectar a la continuidad del servicio o para poder efectuar cambios en la máquina como actualizaciones y pruebas teniendo la seguridad de que vamos a poder volver al estado anterior. Las migraciones ininterrumpidas nos permiten cambiar el hardware subyacente sin parar en ningún momento la ejecución de esa máquina virtual. Así podríamos migrar de un servidor a otro más potente, o con unas características distintas, sin padecer interrupciones en el servicio.

Aunque existen muchas plataformas de virtualización (VMWare, QEMU, Xen, etc), la plataforma de referencia que se usará en nuestra documentación y ejercicios será VirtualBox.

Page 185: Manual zentyal

VirtualBox

VirtualBox [1] originalmente fue desarrollado por Innotek, adquirida posteriormente por Sun Microsystems, más adelante absorbida por Oracle. Es un software de virtualización que aprovecha tanto técnicas por software como por hardware si están disponibles. Existen versiones para Linux, Solaris, Mac OS X y Windows XP/Vista/7, tanto para 32 como para 64 bits.

[1] VirtualBox http://www.virtualbox.org/Esta es la herramienta seleccionada como referencia en este manual debido a su sencillez de uso, a tener interfaz gráfica, a su velocidad, suficiente aún sin soporte hardware para virtualización y, como valor añadido, por disponer de una versión libre.

Creación de una máquina virtual en VirtualBox

Para instalar VirtualBox en nuestro sistema deberemos descargar el paquete adecuado para nuestro sistema operativo y arquitectura desde la página de descargas del proyecto [2].

[2] http://www.virtualbox.org/wiki/Downloads

Descargar VirtualBox

Vamos a explicar el caso de Ubuntu Lucid, pero los pasos serían similares en cualquier otro sistema operativo.

En la página de descargas primero hemos de indicar el sistema operativo sobre el que vamos a instalar VirtualBox; en nuestro caso la opción seleccionada será VirtualBox X.Y.Z for Linux hosts.

Descargamos la versión para Ubuntu Lucid de la lista; en caso de que el host sea de 32 bits descargamos la versión etiquetada como i368; si necesitamos la versión de 64 bits se descarga la versión etiquetada como AMD64 (no importa si la arquitectura de la máquina es Intel o AMD).

Descargar VirtualBox para Linux

Page 186: Manual zentyal

Si nuestro navegador está configurado para abrir los ficheros descargados automáticamente, bastará con que se inicie el instalador de paquetes que nos permitirá instalar la aplicación o actualizarla en caso de que ya esté instalada. Si no se abre automáticamente el instalador, bastará con que hagamos doble click sobre el paquete descargado.

Instalando VirtualBox

Una vez abierto, pulsar el botón de instalar / reinstalar para realizar la instalación.

Tras instalarse, podremos ejecutar la aplicación desde Aplicaciones ‣ Herramientas del sistema ‣ Oracle VM VirtualBox. La primera vez se nos pide que aceptemos la licencia.

Aceptación de licencia

Una lista de las máquinas virtuales que tenemos disponibles aparece a la izquierda mientras que las características de hardware, imágenes instantáneas y comentarios o notas sobre esta máquina aparecen en las pestañas de la derecha.

En el menú Máquina ‣ Nueva... podemos crear una nueva máquina virtual con un asistente:

Asistente de creación de nueva máquina virtual

Page 187: Manual zentyal

Elegimos el nombre que le queremos dar a nuestra nueva máquina, el tipo de sistema operativo y su variante. El sistema operativo y su variante, especialmente entre sistemas Linux no tiene mayor importancia que describir las características de la máquina y designarle un icono representativo.

Nombre y sistema operativo de la máquina virtual

En el siguiente paso definiremos la cantidad de memoria RAM que asignaremos a la máquina virtual, en ningún caso una cantidad mayor que la memoria libre actual. Alrededor de 512 MB serán suficientes para una instalación básica de Zentyal, aunque se recomienda poner, al menos, 768 MB, sobre todo si se van a probar herramientas con un alto consumo de memoria como puede ser el antivirus o algunas características del proxy. Este valor podrá modificarse posteriormente apagando la máquina virtual.

Asignación de memoria

A la hora de configurar el disco duro virtual que se conectará a la máquina virtual tenemos dos opciones, crear uno nuevo o seleccionar uno existente que hayamos bajado de los escenarios preparados para Zentyal, por ejemplo.

Disco duro virtual

En este momento optaremos por crear un nuevo disco dejando la utilización de un disco con Ubuntu preinstalado para un ejercicio posterior.

Los discos duros virtuales pueden tener el tamaño fijo en el momento de su creación o este tamaño puede crecer dinámicamente a medida que vayamos escribiendo datos en el disco. Elegiremos la primera de las opciones del interfaz.

Page 188: Manual zentyal

Para el guest esta elección es irrelevante, pues verá el disco virtualizado como uno rígido normal elijamos la opción que elijamos. Sin embargo, en el host, un disco dinámicamente expandido resultará mucho más eficiente al no reservar inmediatamente el espacio libre del disco virtualizado.

Tipo de disco duro

Igual que anteriormente determinábamos el nombre y el tamaño de la memoria RAM para nuestra nueva máquina, lo mismo vamos a hacer para nuestro nuevo disco. Para una instalación de pruebas de Zentyal 8GB serán más que suficientes.

Tamaño del disco virtual

Confirmamos todos los pasos realizados y VirtualBox procede a generar la imagen del nuevo disco virtual.

Resumen y confirmación para generar un nuevo disco duro virtual

Ahora también confirmamos todos los pasos realizados para completar la máquina virtual.

Page 189: Manual zentyal

Resumen y confirmación para crear la máquina virtual

Y nos aparece la ventana principal con nuestra máquina recién creada.

Aspecto que presenta VirtualBox

Configuración de una máquina virtual en VirtualBox

Es hora de que veamos algunas de las características avanzadas de VirtualBox adentrándonos en la configuración de la máquina virtual mediante el botón Configuración. Este botón sólo estará disponible con la máquina virtual apagada.

En General, en la pestaña Básico podremos cambiar valores predefinidos anteriormente como el nombre, el sistema operativo y la versión del mismo.

Page 190: Manual zentyal

Parámetros generales básicos de la máquina virtual

En la pestaña Avanzado se permite cambiar la configuración del portapapeles y el directorio donde residen las snapshots (Carpetas instantáneas).

Parámetros generales avanzados de la máquina virtual

En Sistema, pestaña Placa base, es donde podremos cambiar el tamaño de la Memoria base asignada y el Orden de arranque de los dispositivos, fundamental si queremos iniciar un instalador desde CD-ROM. También podremos habilitar características avanzadas de la BIOS virtualizada como APIC o EFI. Normalmente dejaremos estas opciones en su configuración predeterminada.

Configuración de la placa base

En Pantalla podemos ajustar el tamaño de la memoria de vídeo. Cuanto mayor sea la resolución de pantalla que queramos para nuestra máquina virtual mayor será la memoria de vídeo que tengamos que asignar. Esta característica, así como la aceleración 3D no son muy importantes a la hora de virtualizar servidores, pues la interacción con éstos se realiza a través de la consola o el interfaz Web de Zentyal.

Page 191: Manual zentyal

Configuración de pantalla

Desde la sección Almacenamiento podemos añadir, quitar o modificar los discos duros virtuales asignados a esta máquina, así como las unidades de CD/DVD-ROM e incluso montar imágenes ISO directamente añadiendo y seleccionando un Dispositivo CD/DVD.

Configuración de almacenamiento

Para ello, pulsaremos el icono de Agregar dispositivo CD/DVD del Controlador IDE. Aparecerá un disco Vacío; si pulsamos sobre él, nos aparecerá a la derecha su configuración, donde, desde el botón situado a la derecha del selector de Dispositivo CD/DVD accederemos al Administrador de medios virtuales. Ahí podremos añadir imágenes de CD o DVD pulsando en el botón Agregar y seleccionando el archivo de imagen.

De un modo similar podremos crear, añadir o eliminar discos duros, partiendo de una nueva conexión del Controlador IDE o del Controlador SATA. Esta característica se describe más detalladamente en la sección Añadir un disco duro virtual adicional.

Podremos liberar discos o imágenes pulsando el botón Liberar.

Este es el momento de añadir la imagen ISO del instalador de Zentyal a nuestra colección y definirla como imagen a cargar en el lector de la máquina virtual.

Page 192: Manual zentyal

Imagen ISO del instalador de Zentyal añadida

Podemos acceder al Administrador de medios virtuales desde Archivo ‣ Administrador de medios virtuales....

Una vez instalado Zentyal será necesario eliminar la imagen ISO. Para ello basta con ir de nuevo a la sección Almacenamiento, pulsar con el botón derecho en la ISO y seleccionar Eliminar conexión. También podemos cambiar el orden de arranque como se ha comentado anteriormente para evitar que arranque de nuevo desde CD.

El kernel de Zentyal usa PAE, asi que tendremos que habilitar esta opción en Sistema, Procesador, y marca Habilitar PAE/NX.

Habilitar PAE/NX

En Red se puede configurar la conectividad de la máquina virtual. Desde el interfaz gráfico podemos asignar hasta un máximo de 4 interfaces de red para cada máquina virtual, asignándoles un controlador, nombre y dirección de red. Existen varios modos de funcionamiento que condicionan lo que podemos hacer en la red. En modo NAT es posible acceder desde la máquina virtual a redes externas como Internet, pero no en sentido contrario. Este es el modo de red indicado para máquinas de escritorio. Sin embargo, para servidores virtualizados a los cuales queremos acceder también en el otro sentido (de la red externa a la máquina) deberemos usar el modo Adaptador sólo-anfitrión o el Adaptador puente. La diferencia entre ellos es que el Adaptador sólo-anfitrión crea una red para las máquinas virtuales sin necesidad de interfaz física, mientras que el Adaptador puente se conecta a una de las interfaces de red del sistema. El último modo, Red Interna, crea una red interna entre las máquinas virtuales.

Page 193: Manual zentyal

Configuración de red

Instantáneas en VirtualBox

Desde la pestaña Instantáneas podemos gestionar las mismas en VirtualBox.

Pestaña de instantáneas

En principio tenemos un único estado Current State (estado actual). VirtualBox nos ofrece una serie de botones para acceder a las distintas funcionalidades:

Tomar instantánea: Crea una nueva instantánea.

Restaurar instantánea: Restaura el estado de la instantánea seleccionada.

Eliminar instantánea: Eliminar la instantánea seleccionada.

Mostrar detalles: Muestra la descripción de una instantánea.

Cuando creamos una instantánea nueva podemos asignarle un nombre y una descripción de los cambios.

Page 194: Manual zentyal

Nombre y descripción de la instantánea

Por cada instantánea que tomemos se creará un elemento hijo del estado actual que estemos ejecutando. De esta manera se puede llegar a desplegar un árbol de modificaciones.

Lista de instantáneas

Añadir un disco duro virtual adicional

Para añadir un disco duro virtual adicional a una de las máquinas virtuales existentes la seleccionaremos e iremos a Configuración y a la sección Almacenamiento. Primero seleccionaremos Controlador SATA y luego con el botón Agregar disco duro añadiremos un nuevo disco duro virtual. Para modificar la imagen de ese disco lo seleccionamos y con el botón a la derecha de Disco duro abriremos el Administrador de medios virtuales. Desde ahí con el icono Nuevo lanzaremos el asistente que nos permite crear un disco duro virtual como ya hicimos en la creación de la máquina virtual.

Configuración de VirtualBox

Administrador de medios virtuales de VirtualBox

Page 195: Manual zentyal

Configuración de VirtualBox (disco añadido)

Una vez creado este nuevo disco duro virtual, lo seleccionaremos y pulsaremos Seleccionar. Ya sólo queda que guardemos los cambios con Aceptar. Al arrancar de nuevo esta máquina virtual podremos identificar un nuevo dispositivo con el que podremos trabajar como si se tratara de otro disco duro conectado a la máquina.

Apéndice B: Escenarios avanzados de red

Vamos a ver cómo desplegar escenarios de red algo más complejos que una máquina virtual que tiene acceso a Internet a través del modo Adaptador puente o Bridge, en inglés.

Escenario 1: Servidor Zentyal virtualizado con conexión a Internet y acceso desde el anfitrión y otro cliente

Este primer escenario consistirá en un servidor Zentyal virtualizado con tres redes. Una es del tipo Adaptador Sólo-Anfitrión que conecta con el servidor host. Esta red funcionará sobre la intefaz vboxnet0 (Por defecto). Una segunda red que conectará el servidor con un cliente virtual, la conexión será del tipo Red Interna. Por último la tercera conexión conectará el servidor con Internet y para ello se usará una conexión de tipo Adaptador puente con resolución DHCP.

La primera de estas redes funciona sobre la interfaz vboxnet0 con el rango de direcciones 192.168.56.0/24. Esta red será considerada red interna y será la que Zentyal use para conectar con el Host. La segunda funcionará sobre la interfaz intnet con el rango 192.168.200.0/24 y será considerada la red interna, usándose para acceder a los servicios internos. La tercera red conectará el servidor con Internet y la dirección se asignará por DHCP. Deberemos comprobar que estos rangos de direcciones no entran en conflicto con ninguna de las redes a las que estamos conectados. Si es así, cambia las redes ejemplo por otras. Puedes comprobar el escenario en la siguiente figura:

Diagrama del escenario 1

El primer paso es crear la interface de red vboxnet en el host.

Nota: En versiones modernas de VirtualBox, la interfaz vboxnet0 ya está creada por defecto en la máquina anfitrión, por lo que solo necesitamos configurar la máquina virtualizada para que use uno de los adaptadores de red en modo sólo-anfitrión y conectado a esta interfaz vboxnet0. Si este es tu caso, puedes saltar directamente al paso indicado por el gráfico Configuración de red 1.

Para ello utilizaremos una interfaz de tipo Adaptador Sólo-Anfitrión. Primero deberemos de configurar la red virtual. En el menú de VirtualBox en Archivo se selecciona Preferencias. Aparecerá una pantalla como la de la siguiente figura:

Page 196: Manual zentyal

Pantalla Preferencias

Para agregar nuevas redes se pulsa sobre el botón Agregar red sólo-anfitrión

Agregar red sólo-anfitrión

Una vez creada las red que necesitamos le asignaremos una dirección de red en el rango establecido. Para configurar la red pulsa sobre el botón Editar red sólo-anfitrión

Page 197: Manual zentyal

Editar red sólo-anfitrión

Aparecerá una pantalla como la siguiente:

Pantalla de configuración de la red sólo-anfitrión

En esa pantalla se puede indicar la IP de la maquina host y la máscara de red. Si fuera necesario se puede configurar un servidor DHCP para la red Adaptador Sólo-Anfitrión, pero en este caso no es necesario.

Configuración servidor DHCP de la red sólo-anfitrión

Ahora desde Configuración –> Red de la máquina virtual donde vayamos a instalar Zentyal conectaremos la interfaces a vboxnet0.

Page 198: Manual zentyal

Configuración de red 1

Configuraremos la segunda interfaz como red interna, que en este caso la llamaremos intnet.

Configuración de red 2

La tercera interfaz la configuraremos como Adaptador puente. Con eso ya podemos arrancar el servidor Zentyal y configurar las interfaces del mismo.

Es recomendable asignar la cantidad mínima de recursos a las máquinas clientes, sobre todo en cuanto a memoria RAM. Por esto, aunque se pueda utilizar cualquier sistema operativo para esta máquina cliente, nosotros hemos usado un distribución de Linux Live CD basada en Debian y orientada a administradores de sistemas llamada grml [1]. 92 MB de memoria RAM serán suficientes y la red se autoconfigurará automáticamente al arranque.

[1] grml <http://grml.org/>

Escenario 2: Servidor Zentyal virtualizado con acceso desde el anfitrión y otro cliente con conexión a Internet a través de dos gateways

El siguiente escenario tiene las dos primeras interfaces exactamente iguales que el escenario anterior, pero ahora la tercera interfaz se conectará a una red externa con dos gateways gestionando el tráfico hacia Internet.

Page 199: Manual zentyal

Diagrama del escenario 2

Para ello deberemos de usar otra conexión del tipo red interna. Como tiene que ser una red diferente llamaremos a esta wan con un rango de IPs 192.168.20.0/24. Para añadir una interfaz de red hemos de apagar la máquina. Igual que antes, en Configuración ‣ Red, en la pestaña del tercer adaptador de red, seleccionaremos Red Interna y le daremos el nombre wan.

Configuración de red 3

Conectaremos dos máquinas que actuarán como gateways en esta red interna wan.

Escenario 3: Servidor Zentyal virtualizado con conexión a Internet y acceso desde el anfitrión y otros dos clientes

Este escenario es idéntico que el escenario primero pero añadiéndole otra red virtual con el rango 192.168.199.0/24 a la que vamos a denominar intnet2.

Page 200: Manual zentyal

Diagrama del escenario 3

Esta interfaz es de tipo red interna y se crea de manera similar a la del escenario anterior. Pero asociada a la cuarta interfaz.

Configuración de red 4

Escenario 4: Servidor Zentyal virtualizado conectado a otro Zentyal virtualizado uniendo redes separadas

Para construir este escenario es necesario duplicar el escenario primero, y conectarlos a través de una conexión de tipo red interna que llamaremos wan. Atención al esquema que es necesario crear una nueva red interna intnet1 con rango de IPs 192.168.199.0/24 y que cumplirá un función similar a la que cumple intnet.

Page 201: Manual zentyal

Diagrama del escenario 4

Configuraremos la cuarta interfaz de cada servidor como pertenecientes a esa red.

Configuración de red 5

Escenario 5: Servidor Zentyal virtualizado con conexión a Internet, acceso desde el anfitrión, clientes en red interna y externa

Este escenario es similar al escenario primero, pero añadiremos una cuarta interfaz de red. En VirtualBox la configuraremos como ‘Red Interna’ de nombre ‘wan’ (Para indicar que será configurada como red externa). En Zentyal configuraremos marcaremos esta nueva interfaz como ‘Red Externa’ y le asignaremos una configuración manual con IP y máscara de red 10.0.5.1/24.

Así mismo añadiremos un nuevo cliente en una máquina virtual, este cliente tendrá una única interfaz, que configuraremos manualmente con IP y máscara de red 10.0.5.2/24. De esta forma ambas máquinas deberían situarse en la misma red externa

Nota: El firewall de Zentyal no acepta pings (Servicio ICMP) provenientes de redes externas por defecto.

Page 202: Manual zentyal

Diagrama del escenario 5