GLOSARIO CONCEPTOS TEORICOS CORREO MANDRIVA DIRECTORY SERVER Es una plataforma empresarial de directorio basado en LDAP diseñado para la gestión de identidades, control de acceso a la información, las políticas, la aplicación y la configuración de los perfiles de usuario.
SERVIDOR DE CORREO: es una aplicación informática que nos permite enviar mensajes (correos) de unos usuarios a otros, con independencia de la red que dichos usuarios estén utilizando.
SMTP: Protocolo simple de transferencia de correo. Protocolo de red basado en texto utilizado para el intercambio de mensajes de correo electrónico entre computadoras u otros dispositivos MTA: MAIL TRANSFER AGENT Agente de transferencia de correo electrónico; los agentes de correo electrónico son por lo común demonios del sistema que operan en segundo plano. El MTA se encarga del transporte de los mensajes de una maquina a otra en una red. MDA: MAIL DELIVERY AGENT Agente de entrega de correos. Se encarga de entregar los mensajes que Llegan por el MTA a cada MDA de cada usuario dentro de una misma Maquina. Entre otras cosas un MDA puede aplicar filtros, generar Respuestas automáticas. MUA: MAIL USER AGENT El MUA permite: leer, componer, responder y disponer (por ejemplo borrar o archivar) de los mensajes de correo electrónico. Estos funcionan con varias reglas. 1. Aceptan mensajes entrantes. 2. Comprueban dirección del mensaje. 3. Si son direcciones locales, almacenan el mensaje para después recuperarlo. 4. Si son direcciones remotas, envían el mensaje.
WEBMAIL: Es un programa informático, concretamente un cliente de correo electrónico, que provee una interfaz Web por la que acceder al correo electrónico. El webmail permite listar, desplegar y borrar vía un navegador Web los correos almacenados en el servidor remoto. Los correos pueden ser consultados posteriormente desde otro computador conectado a la misma red (por ejemplo Internet) y que disponga de un navegador Web. Algunos webmail libres: • • • • • • •
RoundCube SquirrelMail Horde Openwebmail Ilohamail BlogMail Zimbra
Existen empresas privadas que dan servicio de webmail, por ejemplo: • • • •
Gmail Yahoo Hotmail AOL
POSTFIX: Es un Agente de Transporte de Correo (MTA) de software libre/código abierto, un programa informático para el enrutamiento y envío de correo electrónico, creado con la intención de que sea una alternativa más rápida, fácil de administrar y segura al ampliamente utilizado Sendmail. DOVECOT: Es un servidor IMAP Y POP3.Estos son utilizados para recuperar los mensajes de los servidores MDA. POP3 El protocolo POP descarga, por defecto, todos los mensajes a su ordenador y luego los borra del servidor. Es el protocolo más indicado para las personas que utilizan un único PC para almacenar y gestionar sus mensajes. Cuando se emplea más de un PC hay que realizar configuraciones especiales indicando que los mensajes se mantengan en el servidor. Siendo realmente difícil trabajar con el mismo conjunto de mensajes en todos los clientes. Una alternativa a estas configuraciones es Webmail. Se trata de un cliente Web de correo (no requiere configuración) y que permite consultar los mensajes desde otros PCS (casa, congresos, etc.), sin descargarlos. La operativa habitual con POP3 es la siguiente: el usuario descarga mensajes de correo en su PC y esporádicamente lee los nuevos mensajes en otros equipos secundarios con Webmail. Cuando vuelve al equipo habitual, descarga los mensajes y los borra del servidor. Eso permite centralizar todos los mensaje en un único PC, evitando posibles pérdidas. Importante: Webmail es un cliente de correo IMAP y como tal tiene sus propias funcionalidades, independientes de las que tiene su cliente local (Mozilla u Outlook). Ponga atención si crea carpetas adicionales en Webmail para almacenar sus mensajes. Cualquier mensaje en estas carpetas no será accesible por el cliente POP. Sólo
los mensajes que estén en la bandeja de entrada de Webmail se podrán descargar con POP3. IMAP trabaja mucho mejor en entornos en los que un usuario utiliza varios ordenadores (trabajo, casa, etc..) para acceder al buzón correo, ya que los mensajes se mantienen centralizados en el servidor. Todo lo contrario que POP, donde los mensajes se descargan al PC. Con IMAP también podrá organizar sus carpetas para clasificar mensajes. Aunque IMAP use por defecto carpetas remotas en el servidor, esto no quiere decir que no se puedan crear carpetas locales (similares a POP) para almacenar muchos más mensajes de los que permite la cuota del buzón. El límite de mensajes que puede almacenar en las carpetas locales depende de las características de su cliente y del tamaño de su disco duro. En cualquier caso, siempre será mucho más grande que la cuota de la cuenta IMAP. Por lo tanto, no olvide que el espacio en disco destinado para los mensajes en el servidor es limitado y puede llenarse, impidiendo la entrada de nuevos mensajes. Con IMAP aparecen nuevos términos como: • •
•
carpetas IMAP: carpetas remotas creadas en el servidor IMAP. purgar mensajes borrados: aunque depende del cliente, los mensajes borrados nos suelen moverse a la carpeta Papelera, en su lugar se marcan para borrar. Para realizar el borrado definitivo se requiere la acción "purgar mensajes". suscripción a carpetas. Se trata de las carpetas remotas del servidor que están visibles y en uso desde su cliente. Es decir, el servidor puede tener varias carpetas y sólo algunas se están visualizando con el cliente, porque son las más utilizadas. Esto suele optimizar el rendimiento del servidor.
AMAVIS-NEW: Es una interfaz entre el MTA y los filtros contenido (clamAV y spammassasin). Este se comunica con el MTA mediante el protocolo SMTP o LMTP.Trabajan por el puerto 10025 SPAMASSASSIN: Es un filtro de correos, el cual cumple la función de identificar el spam mediante el análisis del texto contenido en el mensaje. CLAMAV: Este paquete cumple la función de escanear el texto y los archivos adjuntos del mensaje, de esta forma el clamAV bloque los malware o códigos maliciosos. La base de datos de este se encuentra permanentemente actualizada. SASL: SASL es un framework para autenticación y autorización en protocolos de internet. Separa los mecanismos de autenticación de los protocolos de la aplicación permitiendo, en teoría, a cualquier protocolo de aplicación que use SASL usar cualquier mecanismo de autenticación soportado por SASL. A pesar de que mediante SASL sólo se maneja la autenticación (y se requieren otros mecanismos -como por ejemplo TLS-- para cifrar el contenido que se transfiere), SASL proporciona medios para un uso negociado del mecanismo elegido. Slapd tiene soporte de autentificación fuerte gracias al uso de SASL. La implementación SASL de slapd hace uso del software Cyrus SASL, el cual soporta un gran número de mecanismos de autentificación, como: DIGEST-MD5, EXTERNAL, y GSSAPI.
CYRUS IMAP (Internet Message Access Protocol) A diferencia de otros servidores IMAP, Cyrus usa su propio método para almacenar el correo de los usuarios. Cada mensaje es almacenado en su propio fichero. El beneficio de usar ficheros separados es una mayor fiabilidad ya que sólo un mensaje se pierde en caso de error del sistema de ficheros. Los metadatos, tales como el estado de un mensaje (leído, etc.) se almacenan en una base de datos. Además, los mensajes son indexados para mejorar el rendimiento de Cyrus, especialmente con muchos usuarios e ingentes cantidades de mensajes. No hay nada tan rápido como el servidor IMAP Cyrus. Otra característica muy importante es que no son necesarias cuentas locales de Linux para cada usuario. Todos los usuarios son autenticados por el servidor IMAP. Esto lo convierte en una magnífica solución cuando se tiene una gran cantidad de usuarios. La administración es llevada a cabo mediante comandos especiales de IMAP. Esto le permite usar tanto la interfaz de línea de comandos como los interfaces Web. Este método es mucho más seguro que un interfaz Web para /etc/passwd. Desde la versión 2.1 de Cyrus, se usa la versión 2 de la librería SASL para la autenticación. En la configuración descrita en este artículo se implementa una autenticación de tres capas. Cyrus se autentica con saslauthdaemon, quien redirige la petición al mecanismo que le hayamos definido, por ejemplo PAM, que buscará la información del usuario en la base de datos MySql.
SSL: Protocolo de Capa de Conexión Segura- (SSL) Protocolo de comunicación de datos desarrollado para transmitir documentos privados a través del Internet. SSL utiliza un sistema criptográfico que emplea dos llaves para encriptar los datos, una llave pública que puede ser compartida o publicada y otra privada o secreta conocida solo por el receptor del mensaje. Muchos sitios en el Internet utilizan SSL para obtener información confidencial del usuario como por ejemplo el número de la tarjeta de crédito. Por convención las direcciones (URLS) de sitios que utilizan SSL empiezan con https en lugar de http. TLS: Protocolo de comunicación de datos desarrollado para transmitir documentos privados a través del Internet. Es un protocolo criptográfico que proporciona un canal de comunicación seguro por una red, comúnmente Internet. Slapd provee protecciones de privacidad e integridad gracias al uso de TLS (o SSL). La implementación TLS de slapd hace uso del software OpenSSL. OPENSSL: Consiste en un robusto paquete de herramientas de administración y librerías relacionadas con la criptografía, que suministran funciones criptográficas a otros paquetes como OpenSSH y navegadores Web (para acceso seguro a sitios HTTPS). Estas herramientas ayudan al sistema a implementar el Secure Sockets Layer (SSL), así como otros protocolos relacionados con la seguridad, como el Transport Layer Security (TLS). Este paquete de software es importante para cualquiera que esté planeando usar cierto nivel de seguridad en su máquina con un sistema operativo Libre basado en GNU/Linux. OpenSSL también nos permite crear certificados digitales que podremos aplicar a nuestro servidor, por ejemplo Apache. OPENLDAP: OpenLDAP es una implementación del protocolo (LDAP) basada en el concepto de software libre desarrollada por el proyecto OpenLDAP. Está liberada bajo su propia licencia es un protocolo de comunicación independiente de la plataforma. SQUIRRELMAIL: es una aplicación web mail escrita en PHP. Puede ser instalado en la mayoría de servidores web siempre y cuando éste soporte PHP y el servidor web tenga acceso a un servidor IMAP y a otro SMTP.
TIPOS DE BUZONES PARA CORREO MAILDIR: Es un formato de spool de correo electrónico que no bloquea los ficheros para mantener la integridad del mensaje, porque los mensajes se almacenan en ficheros distintos con nombres únicos. Maildir es un directorio (usualmente llamado Maildir) con tres subdirectorios llamados tmp, new, y cur. Todos los subdirectorios deben residir en el mismo sistema de archivos. MAILBOX: (Buzón) Es un espacio dentro de un dispositivo de almacenamiento, como podría ser un disco duro, donde se coloca el correo electrónico. En este sistema de correo, cada persona tiene un mailbox privado; cuando recibe un e-mail, el sistema de correo automáticamente lo pone en el mailbox del usuario.
CONCEPTOS TEORICOS LDAP QUE ES UN SERVIDOR DE DIRECTORIOS Un directorio es una base de datos optimizada para lectura, navegación y búsqueda. Los directorios tienden a contener información descriptiva basada en atributos y tienen capacidades de filtrado muy sofisticada. Los directorios generalmente no soportan transacciones complicadas ni esquemas de vuelta atrás como los que se encuentran en los sistemas de bases de datos diseñados para manejar grandes y complejos volúmenes de actualizaciones. Las actualizaciones de los directorios son normalmente cambios simples, o todo o nada, siempre y cuando estén permitidos. Los directorios están afinados para dar una rápida respuesta a grandes volúmenes de búsquedas. Estos tienen la capacidad de replicar la información para incrementar la disponibilidad y la fiabilidad, al tiempo que reducen los tiempos de respuesta. Cuando la información de un directorio se replica, se pueden producir inconsistencias temporales entre las réplicas mientras esta se está sincronizando. Hay muchas formas diferentes de proveer un servicio de directorio. Diferentes métodos permiten almacenar distintos tipos de información en el directorio, tener distintos requisitos sobre como la información ha de ser referenciada, consultada y actualizada, como es protegida de los accesos no autorizados, etc. Algunos servicios de directorio son locales, es decir, proveen el servicio a un contexto restringido (como por ejemplo, el servicio finger en una única máquina). Otros servicios son globales y proveen servicio a un contexto mucho más amplio (como por ejemplo, Internet). Los servicios globales normalmente son distribuidos, esto significa que los datos están repartidos a lo largo de distintos equipos, los cuales cooperan para dar el servicio de directorio. Típicamente, un servicio global define un espacio de nombres uniforme que da la misma visión de los datos, independientemente de donde se esté, en relación a los propios datos. El servicio DNS (Domain Name System) es un ejemplo de un sistema de directorio globalmente distribuido.
¿QUÉ ES LDAP? Es un protocolo ligero para acceder al servicio de directorio, especialmente al basado en X.500. LDAP se ejecuta sobre TCP/IP o sobre otros servicios de transferencia orientada a conexión. LDAP también es considerado una base de datos (aunque su sistema de almacenamiento puede ser diferente) a la que pueden realizarse consultas. Habitualmente, almacena la información de login (usuario y contraseña) y es utilizado para autentificarse aunque es posible almacenar otra información (datos de contacto del usuario, ubicación de diversos recursos de la red, permisos,certificados,etc) En conclusión, LDAP es un protocolo de acceso unificado a un conjunto de información sobre una red.
¿QUÉ TIPO DE INFORMACIÓN SE PUEDE ALMACENAR EN UN DIRECTORIO? El modelo de información de LDAP está basado en entradas. Una entrada es una colección de atributos que tienen un único y global Nombre Distinguido (DN). El DN se utiliza para referirse a una entrada sin ambigüedades. Cada atributo de una entrada posee un tipo y uno o más valores. Los tipos son normalmente palabras nemotécnicas, como “cn” para common name, o “mail” para una dirección de correo. La sintaxis de los atributos depende del tipo de atributo.
¿CÓMO SE ALMACENA LA INFORMACIÓN? En LDAP, las entradas están organizadas en una estructura jerárquica en árbol.
¿QUÉ ES SLAPD Y QUÉ PUEDE HACER? Slapd es un servidor de directorio LDAP que se ejecuta en distintas plataformas. Algunas de las características más interesantes de slapd son: LDAPv3 Slapd implementa la versión 3 de Lightweight Directory Access Protocol. Slapd soporta LDAP sobre IPv4, IPv6 y Unix IPC. SIMPLE AUTHENTICATION AND SECURITY LAYER (SASL) Slapd tiene soporte de autentificación fuerte gracias al uso de SASL. La implementación SASL de slapd hace uso del software Cyrus SASL, el cual soporta un gran número de mecanismos de autentificación, como: DIGEST-MD5, EXTERNAL, y GSSAPI. TRANSPORT LAYER SECURITY Slapd provee protecciones de privacidad e integridad gracias al uso de TLS (o SSL). La implementación TLS de slapd hace uso del software OpenSSL. CONTROL TOPOLÓGICO Slapd se puede configurar para restringir el acceso a la capa de socket basándose en la información topológica de la red. Esta característica hace uso de los TCP wrappers. CONTROL DE ACCESO Slapd provee facilidades de control de acceso muy potentes, permitiéndole controlar el acceso a la información de su(s) base(s) de datos. Puede controlar el acceso a las entradas basándose en la información de autorización de LDAP, en la dirección IP, en los nombres de dominio y otros criterios. Slapd soporta tanto el control de acceso a la información dinámico como estático.
INTERNACIONALIZACIÓN Slapd soporta Unicode y etiquetas de lenguaje.
ELECCIÓN DEL BACKEND DE LA BASE DE DATOS Slapd viene con una serie de backends para diferentes bases de datos. Estos incluyen DBD, un backend de una base de datos transaccional de alto rendimiento; LDBM, un backend ligero basado en DBM; SHELL, una interface para scripts de Shell; y PASSWD, un backend simple para el archivo passwd (5). El backend BDB hace uso de Sleepycat Berkeley DB. LDBM utiliza cualquiera de las siguientes: Berkeley DB o GDBM. MUCHAS INSTANCIAS DE BASES DE DATOS Slapd se puede configurar para servir a múltiples bases de datos al mismo tiempo. Esto significa que un único servidor slapd puede responder a peticiones de diferentes porciones lógicas del árbol de LDAP, haciendo uso del mismo o distintos backends de bases de datos. ¿CUÁL ES LA DIFERENCIA ENTRE LDAPV2 Y LDAPV3? LDAPv3 fue desarrollado en los años 90 para reemplazar a LDAPv2. LDAPv3 incorpora las siguientes características a LDAP: o o o o o o
Autentificación fuerte haciendo uso de SASL Protección de integridad y confidencialidad haciendo uso de TLS (SSL) Internacionalización gracias al uso de Unicode Remisiones y continuaciones Descubrimiento de esquemas Extensibilidad (controles, operaciones extendidas y más)
LDAPv2 es histórico (RFC3494). Muchas implementaciones de LDAPv2 (incluyendo slapd (8)) no se adaptan a las especificaciones técnicas de LDAPv2, la interoperabilidad entre las distintas implementaciones de LDAPv2 es muy limitada. Como LDAPv2 difiere significativamente de LDAPv3, la interactuación entre ambas versiones puede ser un poco problemática. LDAPv2 ha de evitarse, por lo que en la implementación de OpenLDAP viene deshabilitado por defecto.
REGISTRO MX: Mail Exchange Record Registro de intercambio de correo. Tipo de registro, recurso de DNS que especifica como debe ser encaminado el correo electrónico. Estos apuntan a los servidores a los cuales enviar un correo y al cual debería ser enviado en 1er lugar por prioridad. Cuando se envía un mensaje el MTA hace una consulta DNS solicitando registro MX para los nombres de dominio destino. Esta consulta devuelve una lista de nombres de dominios de servidores de intercambio de correo que aceptan correo entrante para dicho dominio, junto con un numero de preferencia. Aquí se intenta establecer SMTP empezando con el menor numero de preferencia y envía el correo al primer servidor el que establece conexión, si no hay MX una 2da petición es solicitada el registro A.