INSTITUTO POLITÉCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ELÉCTRICA UNIDAD ZACATENCO
Ingeniería en Comunicaciones y Electrónica
CONFIGURACIÓN E IMPLEMENTACIÓN DE UN SERVICIO DE CORREO ELECTRÓNICO CON
PLATAFORMA LINUX
NANCY SUGEY RANGEL GUAZO
INSTITUTO POLITÉCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ELÉCTRICA UNIDAD ZACATENCO
Ingeniería en Comunicaciones y Electrónica
CONFIGURACIÓN E IMPLEMENTACIÓN DE UN SERVICIO DE CORREO ELECTRÓNICO CON
PLATAFORMA LINUX
QUE PARA OBTENER EL GRADO DE INGENIERO EN COMUNICACIONES Y ELECTRÓNICA PRESENTA:
NANCY SUGEY RANGEL GUAZO
ASESORES:
Ing. Juan Carlos Torres Villasánchez M. en C. Gregorio García Pérez
i
Dedicatoria
A aquellas personas que me observaron crecer en
distintas etapas de mi vida, quienes a pesar de tantos
errores cometidos confiaron en mí y me alentaron para
caminar por este sendero tan extenso y complicado.
Les dedico el esfuerzo depositado estos años en la
universidad, el éxito con el que concluyo esta etapa y el
orgullo que me proporciona.
Les dedico mi cansancio, las noches de desvelo y los días
interminables, los que me orillaron a cosechar este fruto,
que lleva implícito mi respeto y admiración hacia
ustedes.
Dedico este trabajo a aquellas personas que a pesar de
tolerar todo tipo de sufrimiento no flaquean y luchan
por sus sueños, a pesar de que el viento nunca sople a
ii
Agradecimientos:
A Dios por permitirme ser una persona capaz y expresar
mis ideas, lograr objetivos y a pesar de las caídas me
permitió levantarme y continuar.
A mis padres porque me trajeron al mundo y con esfuerzos y
luchas me enseñaron a crecer y confiar en mí.
Gracias por su amor, por que junto a ustedes crecí, sufrí y
llore, pero también aprendí a ser feliz.
A mis hermanos por ser mis cómplices y amigos, por las
batallas que enfrentamos juntos, por los días de juego, las
palabras de aliento y el amor que compartieron a mi lado.
Padres, hermanos y amigos sepan que nunca terminare de
agradecerles por haber hecho que mi soledad fuera más
amena con su compañía, hasta el grado de sentirlos siempre
iii
ÍNDICE
GENERAL
JUSTIFICACIÓN ... 1
OBJETIVOGENERAL ... 2
OBJETIVOSESPECÍFICOS ... 3
HIPÓTESISDELPROYECTO ... 4
ALCANCEDELPROYECTO ... 5
CAPÍTULO I ... 6
ELCORREOELECTRÓNICO(E-MAIL) ... 6
1.1 IMPORTANCIA Y DEFICIENCIA DEL CORREO ELECTRÓNICO ... 7
1.2 PRINCIPALES PROBLEMAS DEL SERVICIO DE CORREO ELECTRÓNICO ... 8
1.3 IMPLEMENTACIÓN DEL SISTEMA DE CORREO ELECTRÓNICO CON SOFTWARE LIBRE ... 9
1.4 JUSTIFICACIÓN DE LA UTILIZACIÓN DEL SOFTWARE LIBRE PARA LA IMPLEMENTACIÓN DEL SERVICIO DE CORREO ELECTRÓNICO ... 10
CAPÍTULO II ... 11
¿QUÉESUNSERVICIODECORREOELECTRÓNICO? ... 11
2.1 COMPONENTES DEL SERVICIO DE CORREO ELECTRÓNICO ... 11
2.1.1 AGENTE DE USUARIO DE CORREO (MUA, MAIL USER AGENT). ... 11
2.1.1.1 EJEMPLOS DE MUA ... 12
2.1.2 AGENTE DE TRANSPORTE DE CORREO (MTA, MAIL TRANSPORT AGENT) ... 12
2.1.2.1 EJEMPLOS DE MTA ... 12
2.1.3 SISTEMA DE NOMBRES DE DOMINIOS (DNS, DOMAIN NAME SYSTEM) ... 13
2.1.3.1 EJEMPLOS DE DNS ... 13
2.1.4.1 DIRECTORIO ... 14
2.1.4.2 EJEMPLOS DE BASE DE DATOS ... 14
2.1.5 AGENTE DE ENTREGA DE CORREO (MDA, MAIL DELIVERY AGENT) ... 15
2.1.5.1 EJEMPLOS DE MDA ... 16
2.1.6 SPAM ... 16
2.1.7 ANTIVIRUS ... 16
2.2 ARQUITECTURA DE UN SERVICIO DE CORREO ELECTRÓNICO ... 17
2.2.1. ESTRUCTURA DE UNA CUENTA DE CORREO ELECTRÓNICO... 18
2.2.1.1 EJEMPLO DE CUENTAS DE CORREO ELECTRÓNICO ... 19
2.2.2 FORMATO DE UN CORREO ELECTRÓNICO ... 19
2.3 FUNCIONAMIENTO DE UN SERVICIO DE CORREO ELECTRÓNICO ... 20
2.3.1 RECHAZO DE LOS MENSAJES DE CORREO ELECTRÓNICO ... 22
2.3.2 CARACTERÍSTICAS DE HARDWARE DE LOS SERVIDORES DE CORREO ELECTRÓNICO ... 23
CAPÍTULO III ... 24
iv
3.1 HARDWARE DEL SERVIDOR A IMPLEMENTAR ... 24
3.2 SOFTWARE PARA EL SERVICIO A IMPLEMENTAR ... 24
3.2.1 SOFTWARE IMP WEB MA ... 25
3.2.2 SOFTWARE POSTFIX ... 26
3.2.3 SOFTWARE BIND ... 26
3.2.4 SOFTWARE OPEN LDAP ... 26
3.2.4.1 DIRECTORIO OPEN LDAP ...... 27
3.2.5 SOFTWARE CYRUS E-MAIL ... 27
3.2.6 SOFTWARE MAIL SCANNER ... 28
3.2.7 SOFTWARE WEB SERVER APACHE ... 28
3.2.8 SOFTWARE RED HAT ENTERPRISE LINUX ... 28
3.3 MÓDULO MTA ... 29
3.3.1 COMPORTAMIENTO DEL MÓDULO MTA ... 30
3.4 MÓDULO BASE DE DATOS ... 30
3.4.1 COMPORTAMIENTO DEL MÓDULO BASE DE DATOS ... 30
3.5 MÓDULO ALMACÉN ... 31
3.5.1 COMPORTAMIENTO DEL MÓDULO ALMACÉN ... 32
3.6 MÓDULO DNS ... 32
3.6.1 COMPORTAMIENTO DEL MÓDULO DNS ... 32
3.7 MÓDULO ANTIVIRUS ... 34
3.7.1 COMPORTAMIENTO DEL MÓDULO ANTIVIRUS ... 34
3.8 INTERACCIÓN DE LOS MÓDULOS EN EL SERVIDOR DE CORREO ... 35
3.9 ENLACE A INTERNET ... 36
CAPÍTULO IV... 37
IMPLEMENTACIÓNDELPROYECTO ... 37
4.1 PREPARACIÓN Y CONFIGURACIÓN DE LA PLATAFORMA RED HAT ENTERPRICE LINUX ... 37
4.1.1 DESACTIVACIÓN DEL MODO GRÁFICO DE RED HAT ENTERPRISE LINUX ... 37
4.1.2 CONFIGURACIÓN INICIAL DEL SISTEMA OPERATIVO ... 38
4.1.2.1 CONFIGURACIÓN DEL NOMBRE DEL SERVIDOR ... 38
4.1.2.2 CONFIGURACIÓN DEL FIREWALL... 39
4.1.2.3 CONFIGURACIÓN DEL SERVICIO DNS Y DIRECCIONAMIENTO IP ... 40
4.1.2.4 CONFIGURACIÓN DE LOS SERVICIOS DEL SISTEMA OPERATIVO ... 42
4.2 ASEGURAMIENTO DEL SERVIDOR DE CORREO ... 45
4.3 INSTALACIÓN DEL SOFTWARE PARA LOS MÓDULOS ... 46
4.4 CONFIGURACIÓN DE LOS MÓDULOS ... 50
4.4.1 CONFIGURACIÓN DEL ARCHIVO SASLAUTH.CONF ... 51
4.4.2 CONFIGURACIÓN DEL ARCHIVO SLAPD.CONF ... 52
4.4.3 CONFIGURACIÓN DEL ARCHIVO MAIN.CF ... 53
4.4.4 CONFIGURACIÓN DEL ARCHIVO CYRUS.CONF ... 54
v
4.5 MONITOREO DE REGISTROS DE LOS MÓDULOS ... 56
4.6 CREACIÓN DE LA BASE DE DATOS Y ALMACÉN ... 57
4.6.1 CREACIÓN DE LA BASE DE DATOS Y USUARIOS ... 57
4.6.2 CREACIÓN DE LOS ALMACENES ... 57
4.6.3 CREACIÓN DE LA INTERFAZ DE ADMINISTRACIÓN ... 60
4.7 CONFIGURACIÓN DEL MUA ... 60
CAPÍTULO V ... 62
ANÁLISISDERESULTADOSYAPORTACIONES ... 63
5.1 PRUEBAS DE FUNCIONAMIENTO POR MÓDULO ... 63
LDAP: ...63
SASLAUTHD: ... 63
CYRUS-IMAP: ... 64
POSTFIX: ... 65
5.2 PRUEBA DE FUNCIONAMIENTO GLOBAL ....... 66
5.4 RECOMENDACIONES... 68
RECOMENDACIÓN 1 ... 68
RECOMENDACIÓN 2 ... 68
RECOMENDACIÓN 3 ... 69
RECOMENDACIÓN 4 ... 69
RECOMENDACIÓN 5 ... 69
RECOMENDACIÓN 6 ... 70
CONCLUSIONES ... 72
GLOSARIO O APÉNDICE ... 76
BIBLIOGRAFÍA ... 78
ÍNDICE
DE
TABLAS
CAPÍTULO III ... TABLA 3.2-1 SOFTWARE PROPUESTO PARA CUBRIR CADA UNO DE LOS SIGUIENTES ASPECTOS DEL SERVICIO DE CORREO ELECTRÓNICO A IMPLEMENTAR. ... 22TABLA 3.8-1 MÓDULO DEL SERVICIO DE CORREO ELECTRÓNICO CON DESCRIPCIÓN DE LA FUNCIÓN QUE REALIZA Y EL PUERTO-PROTOCOLO QUE NECESITA PARA INTERACTUAR CON OTROS MÓDULOS. ... 33
CAPÍTULO IV... TABLA 4.1.2.4-1 SERVICIOS QUE SE DEBEN MANTENER ACTIVOS PARA EL FUNCIONAMIENTO DEL SISTEMA…. ... 39
TABLA 4.2-1PUERTOS Y PROTOCOLOS QUE SE DEBEN MANTENER ACTIVOS …. ... 42
TABLA 4.3-1 SOFTWARE INDISPENSABLE PARA LA INSTALACIÓN DE LOS MÓDULOS DEL SERVICIO DE CORREO ELECTRÓNICO EN EL SERVIDOR DE CORREO ... 44
vi
TABLA 4.4 ARCHIVOS DE CONFIGURACIÓN DEL SERVICIO DE CORREO ELECTRÓNICO, INDICANDO RUTA
DONDE SE ENCONTRARAN DICHOS ARCHIVOS Y ORDEN DE CONFIGURACIÓN ... 47
ÍNDICE
DE
FIGURAS
CAPÍTULO I ... FIG.1.2-1 FALLA DE DISPONIBILIDAD EN EL SERVICIO DE CORREO ELECTRÓNICO ... 4FIG.1.2-2 FALLA DE CONTACTO CON EL ADMINISTRADOR DEL SISTEMA ... 5
CAPÍTULO II ... FIG.2.1-1 DIAGRAMA A BLOQUES DEL SERVICIO DE CORREO ELECTRÓNICO ... 15
CAPÍTULO III ... FIG.3.4-1 DIAGRAMA A BLOQUES DE LA CONSULTA A LA BASE DE DATOS ... 28
FIG.3.5-1DIAGRAMA A BLOQUES DE LA ENTREGA A ALMACÉN ... 29
FIG.3.6-1 DIAGRAMA A BLOQUES DE CONSULTA DE DOMINIO EN SERVIDOR DNS ... 30
FIG.3.6-2RESOLUCIÓN DEL SERVICIO DNS ... 31
FIG.3.7-1DETECCIÓN DE VIRUS MODULO ANTIVIRUS ... 32
FIG.3.9-1COMPROBACIÓN DE ENLACE INFINITUM ... 33
CAPÍTULO IV... FIG.4.1-1PANTALLA DE LA DESACTIVACIÓN DEL MODO GRÁFICO ... 35
FIG.4.1-2PANTALLA DE CAMBIO DE NOMBRE DEL SERVIDOR ... 36
FIG.4.1.2.2-1SELECCIÓN DE LA CONFIGURACIÓN DEL FIREWALL ... 37
FIG.4.1.2.3-1 CONSULTA DE LA CONFIGURACIÓN DE RED ... 38
FIG.4.1.2.3-2COMPROBACIÓN DE CONECTIVIDAD HACIA INTERNET ... 38
FIG.4.1.2.3-3CREACIÓN DEL ARCHIVO RESOLV.CONF ... 39
FIG.4.1.2.4-1SELECCIÓN DE HORARIO AMÉRICA/MÉXICO CITY ... 40
FIG.4.1.2.4-2REVISIÓN DE LA FECHA Y HORA DEL SERVIDOR ... 41
FIG.4.1.2.4-3REVISIÓN DE LOS PERMISOS DEL SCRIPT GENERADO ... 41
FIG.4.1.2.4-4VERIFICACIÓN DE LA CONSULTA CON SERVIDORES CON RELOJES ATÓMICOS ... 42
FIG.4.1.2.4-4VERIFICACIÓN DE LA CONSULTA CON SERVIDORES CON RELOJES ATÓMICOS ... 42
FIG.4.2.1-1COMANDO NMAP, MUESTRA LOS PROTOCOLOS Y LOS PUERTOS UTILIZADOS ... 43
FIG.4.3-1ACCESO AL DISCO PARA INSTALACIÓN DE LOS PAQUETES ... 43
FIG.4.3-2BÚSQUEDA DEL SOFTWARE PARA INSTALACIÓN ... 44
FIG.4.3-3INSTALACIÓN DEL SOFTWARE ... 45
FIG.4.3-4BÚSQUEDA Y DESCARGA DEL SOFTWARE MAIL SCANNER ... 45
vii
FIG.4.3-6VERIFICACIÓN DEL ESTADO DE LA BASE DE DATOS ... 46
FIG.4.4.1-1ARCHIVO DE CONFIGURACIÓN SASLAUTH.CONF ... 48
FIG.4.4.2-1ARCHIVO DE CONFIGURACIÓN LDAP.CONF ... 48
FIG.4.4.3-1ARCHIVO DE CONFIGURACIÓN MAIN.CF ... 50
FIG.4.4.4-1ARCHIVO DE CONFIGURACIÓN CYRUS.CONF ... 51
FIG.4.4.5-1ARCHIVO DE CONFIGURACIÓN IMAPD.CONF ... 51
FIG.4.5-1MONITOREO DE LOS REGISTROS LOG/MAILLOG... 52
FIG.4.5-2MONITOREO DE LOS REGISTROS MESSAGES ... 53
FIG.4.5-3MONITOREO DE LOS REGISTROS TCPDUMP ... 53
FIG.4.6-1PANTALLA PRINCIPAL DE LA INTERFAZ DE ADMINISTRACIÓN DE CUENTAS ... 57
FIG.4.6-1PANTALLA DE SOLICITUD DE DATOS DE LA CUENTA ... 57
FIG.4.7-1CONFIGURACIÓN DEL MUA OUTLOOK ... 55
CAPÍTULO V ... FIG.5.1-1 VERIFICACIÓN DEL ESTADO DEL SERVICIO LDAP ... 56
FIG.5.1-2 CONSULTA AL DIRECTORIO ... 56
FIG.5.1-3RESULTADO OBTENIDO DE LA CONSULTA ... 57
FIG.5.1-4VERIFICACIÓN DEL ESTADO DEL SERVICIO SASLAUTH ... 57
FIG.5.1-5CONEXIÓN A LA BASE DE DATOS LDAP ... 57
FIG.5.1-6VERIFICACIÓN DEL ESTADO DEL SERVICIO CYRUS-IMAPD ... 58
FIG.5.1-7 ACCESO A CYRUS Y LISTAR LAS CUENTAS EXISTENTES ... 58
FIG.5.1-8VERIFICACIÓN DEL ESTADO DEL SERVICIO POSTFIX ... 59
FIG.5.1-9CONEXIÓN TELNET AL PUERTO 25 ... 59
FIG.5.2-1ENVÍO DE CORREO POR MEDIO DE LA CUENTA HSUHEY@ESIME.IPN.MX ... 60
FIG.5.2-2RECEPCIÓN DEL CORREO ELECTRÓNICO A LA CUENTA HSUHEY@ESIME.IPN.MX ... 60
ANEXO 1
FIG.A1-1INICIO DE INSTALACIÓN DE RHEL
FIG.A1-2EJECUCIÓN DE LA INSTALACIÓN DE RHEL
FIG.A1-3PANTALLAS DE OMISIÓN DE MEDIOS DE COMUNICACIÓN EN LA INSTALACIÓN DE RHEL
FIG.A1-4SELECCIÓN DE IDIOMA DE LA INSTALACIÓN DE RHEL
FIG.A1-5PANTALLA DE INDICIO DE FORMATO DE PARTICIÓN
FIG.A1-6UTILIZACIÓN DE LA PARTICIÓN DEL DISCO DURO
FIG.A1-7SELECCIÓN DE DHCP Y REGIÓN
FIG.A1-9PANTALLA DE SELECCIÓN DE SOFTWARE E INICIO DE INSTALACIÓN PRIMERA ETAPA
FIG.A1-10INSTALACIÓN RHEL
FIG.A1-11TERMINO DE INSTALACIÓN DE RHEL, Y REINICIO DEL SISTEMA
FIG.A1-12PANTALLAS DE REQUERIMIENTOS DE SEGURIDAD DE RHEL(2DA. ETAPA)
FIG.A1-13INSTALACIÓN RHEL
FIG.A1-14CREACIÓN DE USUARIOS DIFERENTES A ROOT
FIG.A1-15VERIFICACIÓN DE LA TARJETA DE SONIDO Y DISCOS ADICIONALES
viii
RESUMEN
El presente trabajo presenta la implementación y configuración de un servicio de correo electrónico. Desde presentar los módulos necesarios para un servicio adecuado y eficiente, hasta plantear la selección de alternativas de software. Detalla la configuración de cada uno de los módulos de la manera más sencilla para que el lector entienda la configuración realizada, concluyendo con la cobertura de las características de seguridad, flexibilidad, escalabilidad, operatividad, las cuales se definen como objetivos.
INTRODUCCIÓN
Si el correo electrónico es una aplicación tan importante en la sociedad es importante además de conocer el funcionamiento de dicho servicio. Los usuarios cada vez mas exigen el servicio más estable y con la mayor estabilidad posible, debido a esto se permitió realizar una tesis acerca de la configuración, implementación y funcionamiento del servicio de correo electrónico, el cual tiene como objetivo ser un servidor que proporcione un servicio seguro, escalable, operativo y funcional.
ix
En el capítulo se da a conocer la importancia y la problemática del servicio de correo y la justificación de la implementación con software libre.
En el capítulo segundo se presenta una breve investigación de cada uno de los componentes y sus ejemplos, seguido de la arquitectura y el funcionamiento general del servicio de correo electrónico.
En el capítulo tercero se proporciona la investigación pertinente para el servidor a implementar, la estructura del servidor de correo electrónico, hardware, software para cada uno de los módulos, y explica como es el funcionamiento de cada uno de los módulos.
En el capítulo cuarto se detalla la implementación del servicio de correo, instalación del software y la configuración de cada uno de los módulos planteados en el capítulo 3.
JUSTIFICACIÓN
Presentar una definición de servidor que cumpla las características óptimas para un servicio de correo ideal, cabe mencionar que aunque existe la suficiente diversidad de servicios de correo electrónico no todos los servicios cumplen con las características ideales de infraestructura y configuración, además de presentar una configuración con costos bajos comparada con una solución propietaria (Microsoft Exchange, por mencionar alguna).
Proporcionar al mercado empresarial un servicio de correo personalizado, previendo seriedad a su servicio de correo que hoy en día lleva la firma personal de la empresa.
Este servicio al ser implementado en un servidor no permitirá la propaganda, ni cobrará una cuota extra para el retiro de ella, además de no tener un límite de capacidad de envío de datos adjuntos que es una característica que no se tiene actualmente en los servicios actuales (hotmail, Yahoo, Gmail, entre otros).
OBJETIVO GENERAL
Planear, diseñar e implementar un servicio de correo electrónico de alta disponibilidad en un servidor con plataforma LINUX y software libre para proveer un servicio de correo electrónico de alta disponibilidad.
La implementación del servidor deberá tomar en cuenta que la configuración realizada para el servicio deberá tener las siguientes características:
Seguridad.- Tener la configuración adecuada para no permitir que personas
que no tengan accesos puedan hacer uso del servicio, ni del servidor.
Escalabilidad.-Que tenga la capacidad de incrementar la infraestructura si la
demanda crece.
Flexibilidad.- Que sea accesible al momento de administrar las cuentas, los
almacenes y la generación de respaldos.
Interoperabilidad.- Que sea integrable y compatible con otros servicios de correo, así como con los clientes existentes.
OBJETIVOS ESPECÍFICOS
Analizar la problemática de los actuales servicios de correo electrónico y su comportamiento en diversas plataformas.
Proporcionar una infraestructura adecuada de un equipo para que realice la función de servidor de correo en el cual se instalará Linux Red Hat (Proporcionando los prerrequisitos necesarios para la implementación).
Implementación y configuración de cada uno de los paquetes de programas
del servicio de correo electrónico, incluyendo las aplicaciones de seguridad como el anti-spam y antivirus.
Configuración de un Cliente que se utilice por medio del navegador, como
alternativa para permitir a los usuarios consultar el correo electrónico sin necesidad de instalar de manera local algún software para la lectura del correo electrónico (Outlook o similares) El único requisito es un navegador de internet y conexión a internet.
Creación e implementación de una aplicación que permita administrar las
HIPÓTESIS DEL PROYECTO
Configuración de un sistema de correo electrónico implementado en un servidor con plataforma Linux, con características de hardware y software para el óptimo funcionamiento dependiendo del número de usuarios predefinido.
Las características del servidor estarán determinadas por el número de usuarios de correo. Pero de ninguna manera será la única opción de configuración posible, la implementación propuesta debe solucionar los problemas comunes descritos con anterioridad.
ALCANCE DEL PROYECTO
Como todo proyecto la configuración de un servidor de correo electrónico tiene limitantes con base a diversos factores, este proyecto define como limites los siguientes:
Será un sistema de una plataforma, contemplando que Linux es el sistema operativo sobre el cual se ejecutará el software y la configuración, no pudiendo hacer esto en una plataforma de Windows, ni MAC.
Se limita al número de cuentas soportada por el servidor utilizado en la presentación del proyecto
No. Usuarios: 50
Espacio asignado a cada cuenta: 500 Mb
Los servicios de correo electrónico y su velocidad dependerán de las características del ancho de banda del enlace a internet y las características del hardware de dicho servidor, se establecerá un enlace de internet de 4 MB de tecnología ADSL para la configuración de este servicio y para la presentación de este trabajo se utilizará la red del Instituto Politécnico Nacional.
CAPÍTULO
I
EL CORREO ELECTRÓNICO (E-MAIL)
A partir del siglo XX, el correo ha evolucionado hacia medios de transporte alternativos como son las redes de computadoras, ahora manejando tecnologías computacionales para la entrega de correspondencia en tiempos cortos. Estos nuevos medios de transporte incluyen el telegrama, el facsímil (fax) y el correo electrónico.
El correo electrónico cuyo servicio es casi instantáneo ha hecho que el sistema
postal tradicional haya pasado a ser llamado “correo de caracoles” (snail mail) en
el lenguaje informal de Internet, que hace referencia a la lentitud del correo tradicional comparado con el correo electrónico.
No es ahora cuando ha surgido la necesidad de crear herramientas para la comunicación vía internet; dado que el correo electrónico data de principios de los años 70, cuando los primeros mensajes fueron enviados a través del ARPANET, el precursor del internet de hoy, desde aquel tiempo, el correo electrónico ha sido, y sigue siendo, la aplicación más extensamente usada en la internet.
En aquellos días la entrega del correo electrónico era relativamente simple y generalmente consistía en mover archivos de una computadora a otra, cuando el internet evolucionó y la red misma se hizo más compleja se necesitaron herramientas más flexibles para mover el correo electrónico entre diferentes redes y entre diferentes tipos de redes.
1.1 IMPORTANCIA Y DEFICIENCIA DEL CORREO ELECTRÓNICO
El avance de las tecnologías no respeta tiempo ni espacio, no obstante se han convertido en una necesidad para la sociedad. Uno de los servicios más utilizado es el correo electrónico el cuál además de ser una herramienta sumamente útil, está desplazando los servicios de correspondencia impresa, ya es parte de nosotros proporcionar una cuenta de correo electrónico en lugar de números telefónicos, incluso números celulares, por las ventajas que tiene como son: el costo bajo, acceso desde cualquier lugar sin necesidad de estar en la sede donde está instalado (como la red del servicio telefónico que está instalada en los hogares y oficinas), aun comparándolo con la telefonía celular existen diferencias importantes que lo hacen ser usado.
El correo electrónico es un servicio imprescindible hoy en día, por lo que es necesario garantizar la alta disponibilidad, estabilidad y confiabilidad de esta herramienta para mantener la continuidad de servicio y así que los usuarios queden conformes con el servicio otorgado.
1.2 PRINCIPALES PROBLEMAS DEL SERVICIO DE CORREO ELECTRÓNICO
El dejar un mensaje de voz, un mensaje instantáneo o enviar un correo electrónico, se está convirtiendo para las organizaciones en un importante dolor de cabeza, pues la nueva tecnología acarrea problemas con ella, las deficiencias detectadas con mayor frecuencia son:
Mala configuración del antivirus, provocando la pérdida de archivos
adjuntos importantes en cada uno de los correos.
Mala configuración del servidor, permitiendo a usuarios no autorizados el
envío de correo no solicitado, situación conocida como “reenvío abierto
(open relay)”.
Constantes caídas del servidor de correo, provocando falta de
disponibilidad.
Mala configuración del servicio de DNS provocando que otros servidores
rechacen el correo por considerarlo spam si tienen configurada la
protección contra la falsificación de direcciones “criterios de política de
envío (sender policy framework)”.
El costo del las licencias de las soluciones propietarias creadas para este
tipo de servicio, ha sido un factor problema para las empresas que deseen implementar un servicio de correo electrónico a bajo costo.
La administración deficiente y/o desconocimiento por parte de las personas
que administran el servicio de correo electrónico o los servidores para dicho servicio, permitiendo con ello, la suplantación de identidad, spam, etc.
Fig. 1.2-1 Falla de disponibilidad en el servicio de correo electrónico
Fig. 1.2-2 Falta de contacto con el administrador del sistema
1.3 IMPLEMENTACIÓN DEL SISTEMA DE CORREO ELECTRÓNICO CON SOFTWARE LIBRE
El mundo del correo electrónico ha estado dominado desde los inicios por soluciones basadas en software libre, en un principio casi un 90% de los
aumentando con la aparición de más soluciones tanto de software libre (Postfix, Qmail, Exim, etc.) como propietarias.
1.4 JUSTIFICACIÓN DE LA UTILIZACIÓN DEL SOFTWARE LIBRE PARA LA IMPLEMENTACIÓN DEL SERVICIO DE CORREO
ELECTRÓNICO
Una de las principales razones de implementar un sistema de correo electrónico con software libre es la utilización de estándares abiertos, lo que nos brinda una gran interoperabilidad con la mayoría de los sistemas de correo.
Otra de las ventajas de utilizar software libre es el no tener que pagar algún tipo de licencia por el uso de la aplicación, además de permitir conocer y modificar el código del software en caso de ser necesaria una modificación de tal nivel.
CAPÍTULO
II
¿QUÉ ES UN SERVICIO DE CORREO ELECTRÓNICO?
El e-mail o correo electrónico es un servicio de red que funciona sobre Internet, que permite enviar y recibir mensajes (y todo tipo de documentos) de manera instantánea.
Básicamente, el e-mail es un servicio que copia un archivo de una computadora a otra y lo añade al buzón de correo del destinatario.
Pero no es un asunto sencillo: el envío de un mensaje de correo es un proceso largo y complejo, en el que intervienen varios programas trabajando en cadena para conseguir que el e-mail llegue a su destino.
2.1 COMPONENTES DEL SERVICIO DE CORREO ELECTRÓNICO
Los componentes del servicio de correo electrónico deben cubrirse totalmente para el óptimo funcionamiento de éste; a continuación se detalla cada uno de los componentes que se requerirán y se agrega la opción a configurar en nuestro servidor de correo electrónico.
2.1.1 AGENTEDEUSUARIODECORREO (MUA,MAILUSERAGENT).
2.1.1.1 EJEMPLOS DE MUA
Los clientes más comunes son:
Microsoft Outlook, Horde Web Mail, Microsoft Entourage , Mozilla Thunderbird, Novell Evolution, Windows live mail, Qualcomm Eudora, Pegasus Mail, kmail, Netscape Messenger
2.1.2 AGENTE DE TRANSPORTE DE CORREO (MTA, MAIL
TRANSPORTAGENT)
Es un programa especializado que entrega el correo y lo transporta entre máquinas. Su función es similar a la oficina postal en el caso del correo tradicional, generalmente hay un solo MTA por máquina.
Para llevar a cabo su función debe comunicarse con otros MTA, funciona en
modo continuo pero espera peticiones de los MUA’s o de los otros MTA´s y las
atiende.
Existen aplicaciones que contienen MUA y MTA´s juntos como el Netscape Messaging Server.
2.1.2.1 EJEMPLOS DE MTA
Los MTA más comunes son:
2.1.3 SISTEMA DE NOMBRES DE DOMINIOS (DNS, DOMAIN NAME SYSTEM)
Es el bloque fundamental de internet, es el responsable de resolver nombres a direcciones y viceversa, el MTA se apoya de este servicio para el enrutamiento del correo a su destino.
Es el intérprete de los nombres de dominio y las direcciones IP, con la finalidad de proporcionar el resultado de una dirección IP a los que solicitaron nombres de dominios.
Describe la relación entre un nombre de host y la dirección IP correspondiente en el DNS, funcionando como base de datos distribuida y jerárquica en redes como internet.
La implementación de este servicio requiere también de software que realice las funciones mencionadas.
2.1.3.1 EJEMPLOS DE DNS
Los DNS más comunes son:
Powerdns, Bind, Dnsmasq, Mydns, Dns (windows 2000, 2003, 2008), Maradns, Djbdns (utilizan el protocol DNS)
2.1.4 BASE DE DATOS DE USUARIOS DE CUENTAS DE CORREO ELECTRÓNICO
utilizar desde un simple archivo de texto (/etc/passwd) hasta una base de datos relacional (RDBMS).
La base de datos de un servicio de correo electrónico debe tener como característica principal: rapidez en las consultas.
2.1.4.1 DIRECTORIO
Se definirá como contenedor de registros detallados basados en atributos.
La actividad de un directorio indica que la lectura de los registros es mayor que la inserción de datos, no siendo necesario implementar esquemas complejos para transacciones o actualizaciones. Estando así optimizados para una respuesta rápida de operación de búsqueda o consulta.
Los esquemas de transacción o actualización los utilizan las bases de datos relacionales RDBMS para las actualizaciones de sí mismas con un gran volumen de datos. En los directorios las actualizaciones son cambios sencillos de todo o nada, si es que la característica de dicho directorio lo permite.
Cuando se duplica la información de un directorio, pueden aceptarse inconsistencias temporales entre la información que hay en las réplicas, siempre que finalmente exista una sincronización.
2.1.4.2 EJEMPLOS DE BASE DE DATOS
Las bases de datos más comunes para los servicios de correo son:
2.1.5 AGENTE DE ENTREGA DE CORREO (MDA, MAIL DELIVERY AGENT)
El almacenamiento de datos se puede manejar por:
Cantidad de datos a almacenar, medio de almacenamiento, método de
almacenamiento, y tipo de información.
Para que el sistema de correo electrónico almacene los mensajes o correos de los usuarios registrados, cada uno debe tener un buzón que es un espacio de almacenamiento en el disco duro.
El almacén se limita de acuerdo a las características de infraestructura del servidor puesto que si un usuario almacenara en exceso podría saturar la capacidad del disco duro provocando problemas de funcionalidad en el servidor, si el usuario no almacenara en tal extremo pero aun así no se limitara el uso de almacén, el servicio de correo sigue funcionando pues aun tiene recursos óptimos para trabajar.
Los límites de uso en el almacén se conocen como cuotas de disco y se asignan a los usuarios en la configuración de alta de la cuenta.
Para buena administración de los almacenes de correo se recomienda:
Si la infraestructura que se tiene no es robusta, definir desde el inicio el espacio a las cuentas.
Informar al usuario cuando llegue aproximadamente a un 85% de
Que el usuario visualice las características de almacenamiento en el MUA, como son: la capacidad total asignada del almacén y el espacio utilizado.
Observación: Si el MUA se encuentra configurado para acceder a la cuenta por medio del protocolo POP3 el correo electrónico se descargará en el equipo del cliente borrándose automáticamente del servidor y liberando la cuota asignada por el administrador de correos, pero también debe contemplar que no existirá copia de sus correos electrónicos en el servidor.
2.1.5.1 EJEMPLOS DE MDA
Los almacenadores de correo electrónico más comunes son:
Cyrus E-mail, Efficient E-mail, “appliance” MSV Server
2.1.6 SPAM
Se llama spam al correo basura o mensajes basura, mensajes no solicitados, habitualmente de tipo publicitario, enviados en grandes cantidades que perjudican de alguna o varias maneras al receptor.
Parte importante de un servicio de correo electrónico es la configuración del filtro spam que aplicado en el servicio nos filtrará el correo basura del correo deseado.
2.1.7 ANTIVIRUS
La protección que en un servidor antivirus se instala dentro del servidor SMTP/MTA, ya que es por donde entra el correo electrónico a la red, haciendo necesario ser la primera barrera de los virus evitando continúen estos por la red.
Este servicio de antivirus debe tener la capacidad de identificar, separar, desinfectar y rechazar los mensajes de correo electrónico infectados y dar un mensaje de notificación.
2.2 ARQUITECTURA DE UN SERVICIO DE CORREO ELECTRÓNICO
Para entender el comportamiento de un servicio de correo electrónico organizaremos su arquitectura en 5 módulos principales, que son:
Módulo MTA
Módulo BASE DE DATOS
Módulo ALMACEN
Módulo DNS
Módulo ANTIVIRUS
Fig. 2.2-1 Diagrama a bloques del servicio de correo electrónico
2.2.1. ESTRUCTURA DE UNA CUENTA DE CORREO ELECTRÓNICO
Una dirección de correo electrónico está compuesta de tres elementos:
La parte intermedia no considerada por algunos autores consultados como
elemento, pero es importante mencionarla es el símbolo
@ (at=”en”)
,que es el símbolo seguido de Usuario ó Login.
La tercera parte se refiere al nombre del dominio configurado en el servidor
de correo que almacenará la cuenta.
Para el acceso a un servidor de correo electrónico es necesario tener su Usuario ó Login y contar con una contraseña establecida cuando se da de alta la cuenta.
2.2.1.1 EJEMPLO DE CUENTAS DE CORREO ELECTRÓNICO
2.2.2 FORMATO DE UN CORREO ELECTRÓNICO
Un correo electrónico consta de tres partes principales:
El encabezado
El cuerpo del mensaje
Datos adjuntos
Los campos del encabezado del formato de correo obligatorios son:
From: ……… Indica el remitente del Correo
To: ……… Indica el destinatario del Correo
Date: ……… Indica la fecha del envío
Organization: ………..…… Indica la organización a la que pertenece el remitente
Message-ID: ………….Numero de mensaje a enviar
MIME-Versión: ………….Versión de estándares de correo que utiliza el MTA
El cuerpo del mensaje es en si el mensaje, es la redacción en texto plano y puede ser complementado por lenguaje HTML que le permite darle formato al texto.
Los archivos adjuntos son archivos (tipo.zip, .exe, .rar, etc.), imágenes (tipo .gif, .jpg, etc.) estos se agregan por medio de programas que permiten adjuntar los archivos al texto que se va a enviar.
2.3 FUNCIONAMIENTO DE UN SERVICIO DE CORREO ELECTRÓNICO
Para explicar el funcionamiento de un servidor de correo electrónico se propone lo siguiente:
Caso 1: Se envía un correo electrónico de la cuenta [email protected] a la cuenta [email protected].
La secuencia de eventos es:
En la cuenta [email protected] el MUA adecúa el correo de acuerdo al formato mencionado, utilizando el protocolo SMTP.
1. El MTA verifica en la base de datos configurada que el usuario suhey esté
2. Cuando el MTA (hotmail) verifica que se puede proceder, retoma el correo y verifica quién es el dominio del correo destinatario, y pregunta a un servidor DNS cual es la dirección IP de dicho dominio.
3. Al proporcionar la resolución del dominio, el MTA (hotmail) envía el correo al MTA (ipn) del servidor marcado como MX en el servicio DNS.
4. El MTA (ipn) recibe el correo por medio del protocolo SMTP y consulta en la
base de datos, si la dirección de correo [email protected] está
registrada en ese dominio.
5. Al corroborar que la dirección del correo electrónico es válida el MTA recibe el correo y procesa la supervisión de spam y virus (si es que este servicio está configurado).
6. Después de esta supervisión se entrega el correo al buzón de la cuenta
[email protected] y es listo para revisarlo por el usuario.
Caso 2: Se envía un correo electrónico de la cuenta [email protected] a la
cuenta [email protected].
La secuencia de eventos es la misma en los casos 1, 2, 3 ,6 y 7; y en los pasos 4 y 5 se hace lo siguiente:
4. Al proporcionar la resolución del dominio, el MTA (hotmail) observa el
dominio de la cuenta de correo del destinatario es el mismo que el remitente, entonces no requiere preguntar a un servidor DNS externo
5. El MTA consulta en su base de datos, si la dirección de correo
2.3.1 RECHAZO DE LOS MENSAJES DE CORREO ELECTRÓNICO
Cuando un sistema de correo electrónico no puede hacer entrega del mismo el sistema identifica el problema y envía un mensaje al remitente para que conozca el motivo por el cual no lo entrega.
Los mensajes más comunes son:
User address requerid: no se escribió la dirección del destinatario.
User unknown: El Usuario ó Login no existe.
Domain of sender address does not resolve: El servidor DNS no puede resolver el dominio indicado, pero el dominio existe.
Domain of sender does not exist: El dominio de la cuenta no existe, y por consiguiente no existen cuentas con ese nombre de dominio.
Relaying denied: El servidor no permite reenvíos.
User Over Quota: La capacidad de almacenamiento de la cuenta al que se quiere enviar el correo está llena. Ya no permite correos en la bandeja de entrada.
Relaying denied IP name lookup failed: La resolución del servidor DNS indica que la dirección IP no está inscrita en él.
2.3.2 CARACTERÍSTICAS DE HARDWARE DE LOS SERVIDORES DE CORREO ELECTRÓNICO
Las características de un ordenador más solicitadas por negocios, industrias, comercios, empresas e instituciones para implementación de servidores de correo electrónico son:
Disco duro:
Tecnología RAID 0, RAID 1
Tipo de interface: IDE/SATA, SCSI/SAS
Capacidad de: 146 GB, 250 GB, 300 GB, 500 GB, 750 GB, 1 TB ó 2 TB
Memoria RAM:
Capacidad de: 2 GB, 4 GB, 8 GB, 16 GB, 24 GB, 36 GB
Procesador:
Intel Pentium G6950 2.8 GHz Dual Core Processor
CAPÍTULO
III
ESTRUCTURA DEL SERVIDOR DE CORREO ELECTRÓNICO
3.1 HARDWARE DEL SERVIDOR A IMPLEMENTAR
MEMORIA RAM DE 2 GB
MEMORIA VIRTUAL (SWAP) DE 512 MB
DISCO DURO DE 80 GB (en este caso no se utilizará discos con tecnología
RAID, pero en la implementación para un mayor número de correos electrónicos será necesaria esta tecnología).
PROCESADOR Intel Pentium IV
3.2 SOFTWARE PARA EL SERVICIO A IMPLEMENTAR
Para la configuración del servidor de correo electrónico se utilizará software Open Source (de código abierto o software libre).
Tabla 3.2-1
Software propuesto para cubrir cada uno de los aspectos del servicio de correo electrónico a implementar.
SOFTWARE PARA IMPLEMENTAR EL SERVICIO DE CORREO ELECTRÓNICO.
COMPONENTE SOFTWARE
Cliente de Correo Electrónico (MAU) IMP Webmail Client, PHP y HTML
Agente de Transferencia de Correo (MTA) POSTFIX
DNS BIND
Base de Datos OPEN LDAP
Almacén de Datos CYRUS E-MAIL
Antivirus MAIL SCANNER
Anti- spam SPAMASSASIN
Gestor de Servidor (Servidor WEB) APACHE
Plataforma (Sistema operativo) RED HAT LINUX
3.2.1 SOFTWARE IMP WEB MA
IMP es un cliente de correo electrónico vía web, o Webmail, utiliza una biblioteca llamada horde, que está desarrollada en el lenguaje de programación PHP al igual que todo el proyecto IMP.
Este proyecto es un MUA, y las características son las siguientes:
Utilizaremos este tipo de Webmail, por ser software libre de código abierto (open source), con una funcionalidad suficiente para la implementación de este servicio.
3.2.2 SOFTWARE POSTFIX
En el caso del sistema de correo electrónico propuesto, proporcionará el servicio que implemente los protocolos SMTP, POP2 e IMAP, como se contempla que sea un servicio que tenga escalabilidad, el Sendmail no soportaría más de 500 cuentas, además de ser más estable, seguro y de capacidad ilimitada, comparado con Sendmail.
El diseño es modular (trabaja por módulos), y una característica importante es que soporta la base de datos LDAP y la autenticación de SASL, es el MTA que mejor se adecua a la implementación que se realizará.
3.2.3 SOFTWARE BIND
BIND (Berkeley internet Name Daemon) Es el software para el servicio de DNS más utilizado en el internet, provee una plataforma estable y robusta, haciendo con esto que las organizaciones puedan construir sistemas de computación distribuidos con los estándares de DNS publicados, características que hacen que sean un software utilizado de sobremanera.
3.2.4 SOFTWARE OPEN LDAP
Es una implementación rápida comparada con una base de datos relacional, proporcionando eficiencia en las consultas.
3.2.4.1 DIRECTORIO OPEN LDAP
Se tiene un directorio OPEN LDAP que realiza peticiones a un servidor LDAP, el servidor procesará todas las peticiones que el directorio solicite, pero esta base procesa las instrucciones de borrado y actualización de un modo lento.
Con esto hacemos énfasis que OPEN LDAP no es una base de datos del tipo relacional, no está diseñada para procesar cientos de cambios por minuto, sino para realizar lecturas de datos muy eficientemente.
3.2.5 SOFTWARE CYRUS E-MAIL
Cyrus E-mail es un software de almacenamiento de correos electrónicos altamente escalable, diseñado para empresas de diversos tamaños utilizando tecnologías basadas en estándares.
Es considerado un servidor del protocolo IMAP, aunque también los usuarios pueden acceder a sus buzones por medio del protocolo IMAPS, POP3, POP3-S y K-POP, el almacén Cyrus mail, es compatible con software para correo electrónico y puede ser configurado de manera accesible.
3.2.6 SOFTWARE MAIL SCANNER
Trabaja con un sistema basado en Unix, que es compatible con un gran rango de MTA´s, contiene 25 diferentes paquetes de escáner de virus, entre ellos incluidos el ClamAV scanner, que se utilizará para incrementar el nivel de seguridad al escanear los correos que pasen por el servidor y funcionara como nuestro software de antivirus.
Otro paquete que este software nos proporciona es el SpamAssasin el cual nos
brinda protección contra malware, complementa a este software consultando listas negras y rechazando los correos que los mismos usuarios de internet reportan como Spam.
3.2.7 SOFTWARE WEB SERVER APACHE
Apache es un servidor web más popular en internet, es de código abierto (open source). Contiene las siguientes características:
Ejecución rápida con los requerimientos mínimos de software, Soporta
multitareas, autenticación de solicitantes, código de respuesta al encontrar error en la ejecución, negociador de estilos y lenguajes, soporta una variedad de diferentes formatos de imágenes y es seguro.
El servidor web en este trabajo se utilizará para el web mail IMP, no es parte de la implementación del correo electrónico servidor pero si se imprentará en el cliente web, a parte se utilizará para la creación de una interfaz de administración para dar de alta las cuentas de correo.
3.2.8 SOFTWARE RED HAT ENTERPRISE LINUX
Cabe mencionar que aunque Red Hat Enterprise Linux es una aplicación del Linux Red Hat que tiene costo por el soporte que brinda, para esta implementación no utilizaremos dicho soporte.
Es importante hacer saber que por pertenecer a la familia de Unix, se le atribuyen las siguientes características:
Robustez.- Plataforma con gran estabilidad, probada y comprobada, por lo
que requiere poco mantenimiento de software.
Consistencia.- Evolución conforme han pasado los años
Agentes de usuario.- Herramientas simplificadas para administración y
configuración.
Características específicas.- Ya está caracterizado para las conexiones en
red, entre otras.
Interoperabilidad.- Esto indica flexibilidad del sistema para ser compatible con otro software.
3.3 MÓDULO MTA
3.3.1 COMPORTAMIENTO DEL MÓDULO MTA
El MTA recibe los correos enviados de: un MTA o un MUA, la transmisión de correo será detallada por los SMTP.
Cuando el MTA recibe un correo consulta la base de datos para determinar si el buzón del destinatario existe en el servidor. Cuando un usuario trata de enviar un correo el MTA verifica el nombre de usuario y contraseña para ver si el usuario tiene permiso para utilizar ese servidor de correo por medio del SMTP-AUTH, que es la extensión del SMTP para su autorización.
Fig. 3.3.1-1 Diagrama a bloques del módulo MTA
3.4 MÓDULO BASE DE DATOS
3.4.1 COMPORTAMIENTO DEL MÓDULO BASE DE DATOS
Se basa en el modelo Cliente- Servidor, es decir el servidor contiene los datos que conforman el árbol de directorios LDAP o base de datos troncal, el cliente LDAP se conecta con el servidor LDAP y realiza la consulta (de lectura, por lo antes expuesto).
[image:43.612.91.525.238.452.2]El servidor procesa la consulta y devuelve los resultados, en caso de no obtener la respuesta el servidor indicará al cliente dónde localizarla.
Fig. 3.4.1-1 Diagrama a bloques de la consulta a la Base de Datos
3.5 MÓDULO ALMACÉN
3.5.1 COMPORTAMIENTO DEL MÓDULO ALMACÉN
El MDA se encuentra en espera permanente del correo, después de recibirlo el
MDA separa los correos basados en el encabezado “Para:”, depositando por
Fig. 3.5.1-1 Diagrama a bloques de la entrega a almacén
3.6 MÓDULO DNS
3.6.1 COMPORTAMIENTO DEL MÓDULO DNS
El MTA para entregar el correo al dominio de destino necesita conocer la dirección IP de los mail Exchange del dominio destino, si no lo conociera no se puede entregar (es como pretender entregar una carta sin dirección de destinatario).
Fig. 3.6.1-1 Diagrama a bloque de consulta de dominio en Servidor DNS
Cuando un listado de mail Exchange tenga el mismo número de prioridad el MTA elegirá uno al azar, para observar su comportamiento realizaremos lo siguiente:
Damos el siguiente comando:
#dig @ns1.todomexico hotmail.com
–
t MX
dig: utilería para consultar el DNS
@ns1.todomexico: servidor DNS donde se va a consultar
hotmail.com: nombre del dominio del que se quiere conocer la dirección IP (resolución del dominio).
Fig. 3.6.1-1 Resolución del servicio DNS
3.7 MÓDULO ANTIVIRUS
3.7.1 COMPORTAMIENTO DEL MÓDULO ANTIVIRUS
Se encarga de la actualización de una base de datos que tiene registrado diversos tipos de virus informáticos, posteriormente efectúa una exploración del contenido del correo electrónico y los compara con la base de datos de virus actualizada.
Fig. 3.7.1-1 Detección de Virus módulo Antivirus
3.8 INTERACCIÓN DE LOS MÓDULOS EN EL SERVIDOR DE CORREO
Cada uno de los módulos necesarios para el servidor de correo electrónico proporciona un servicio como toda aplicación necesita protocolos y puertos para la comunicación.
Tabla 3.8-1
Módulos del servicio de correo electrónico con descripción de la función que realiza y el puerto-protocolo que necesita para interactuar con otros módulos.
PROTOCOLOS Y PUERTOS DE LOS MÓDULOS.
PROTOCOLO PUERTO DESCRIPCIÓN APLICACIÓN
SMTP 25 Recibe el correo del cliente y reenvía a otro server (relay) POSTFIX
POP3 110 Lee el correo del servidor, descargándolo con el cliente CYRUS-IMAP CLIENTE
IMAP 143 Lee el correo del servidor, conservándolo en el almacén CYRUS-IMAP
LDAP 389
Interactúa entre el cliente y la base de datos autenticando.
Interactúa entre la base de datos y el almacén.
OPENLDAP
3.9 ENLACE A INTERNET
Para poder proporcionar el acceso correcto a cada uno de los usuarios y estos a su vez puedan obtener la información lo más rápido posible para su buzón de correos, el enlace que tendrá el servidor de correo electrónico será de 4MB de tecnología de Línea de Suscriptor Digital Asimétrica (ADSL).
Se utilizará un enlace de internet infinitum, pero es importante mencionar que las empresas especializadas en el servicio de correo electrónico el servicio que contratan es un enlace dedicado, utilizando tecnología de fibra óptica y enlaces E1 exclusivos para el servicio.
CAPÍTULO
IV
IMPLEMENTACIÓN DEL PROYECTO
4.1 PREPARACIÓN Y CONFIGURACIÓN DE LA PLATAFORMA RED HAT ENTERPRICE LINUX
Ya instalado el sistema operativo (para ver la instalación de la plataforma ver anexo A1); se trabajará en modo texto, por lo que es recomendable deshabilitar el modo gráfico.
4.1.1 DESACTIVACIÓN DEL MODO GRÁFICO DE RED HAT ENTERPRISE LINUX
Para deshabilitar el modo gráfico se hace lo siguiente:
Después de acceder al sistema como usuario root (administrador general
del sistema operativo), abrimos el archivo <inittab> existente en el directorio< /etc>, el cual muestra los niveles de ejecución, y en la siguiente línea: <Id: 5: initdefault >.
Se cambia el valor <5> que indica X11, que es el modo gráfico de Linux, por <3>, que indica modo multiusuario completo.
Al cambiar el valor de la línea en el archivo inittab, queda desactivado el modo gráfico, pero para que surta efecto se reinicia el servidor. Y se vuelve
a entrar al sistema como usuario <root> para continuar con la
Fig. 4.1.1-1 Pantalla de la desactivación del modo gráfico
4.1.2 CONFIGURACIÓN INICIAL DEL SISTEMA OPERATIVO
Para la configuración principal del sistema con el comando: <setup>, despliega un menú en el que se selecciona la opción que quiera configurar, a excepción del nombre el cual se detalla en el siguiente apartado.
4.1.2.1 CONFIGURACIÓN DEL NOMBRE DEL SERVIDOR
La primera configuración del sistema es el nombre, y éste se cambia en el archivo <network> ubicado en la ruta </etc/sysconfig>.
nombre que llevará el servidor; para esta implementación se coloca
[image:51.612.123.490.136.360.2]“<HOSTNAME=mail.esime.ipn.mx>”, se guarda y se cierra el documento.
Fig. 4.1.2.1 Pantalla de cambio de nombre del servidor
Para que el cambio se vea reflejado escribiremos en la línea de comando <hostname mail.esime.ipn.mx>, y se corrobora con el comando; hostname, entonces imprimirá el nombre correcto del servidor.
4.1.2.2 CONFIGURACIÓN DEL FIREWALL
Inicialmente desactivamos el firewall, con el objetivo de que no cause obstáculos en la configuración del servicio de correo, ya que puede bloquear puertos, no permitir acceso a archivos, etc.
Cabe mencionar que el servicio de Firewall deberá activarse finalizando la configuración y las pruebas del servicio de correo, ya que brinda mayor seguridad.
Fig. 4.1.2.2-1 Selección de la configuración del firewall
Cuando se habilite el Firewall se verifica que se tenga activo solo para los puertos contenidos, pero no para las interfaces Ethernet.
4.1.2.3 CONFIGURACIÓN DEL SERVICIO DNS Y DIRECCIONAMIENTO IP
El direccionamiento IP que se coloca al servidor es de una conexión Infinitum (ver sección 3.8), la configuración es estática es decir; se desactiva el Protocolo de Configuración Dinámica de Host (DHCP), ya que es para un servidor. La dirección asignada es:
Dirección IP: 192.168.1.100
Submascara: 255.255.255.0
Puerta de Enlace: 192.168.1.255
La dirección del servicio DNS es la dirección IP que proporciona la resolución en el servicio Infinitum, que es la IP: 192.168.1.254.
Hay que corroborar la configuración de la tarjeta de red, y la conectividad a su puerta de enlace, ya que eso nos permite mantener la comunicación del servidor
Fig. 4.1.2.3-1 Consulta de la configuración de red
Y la conectividad hacia internet la comprobaremos con la herramienta <ping>, la cual utiliza el protocolo ICMP para diagnosticar mensajes de conectividad entre computadoras de una red.
Fig. 4.1.2.3-2 Comprobación de conectividad hacia internet
Cabe mencionar que la limitante del servidor de correo tomando un enlace de infinitum es que como no se tiene contratada una IP fija, no permite salir los servicios con el puerto 25, ya que es una restricción que tiene el tipo de enlace infinitum, nos bastará con tener una IP de la red local y que el servicio de correo sea local.
Fig. 4.1.2.3-3 Creación del archivo resolv.conf
En esta línea estamos comentando que es la dirección IP del servidor DNS, que en el enlace infinitum es la dirección 192.168.1.254 quien nos resuelve las direcciones IP, es por ello que le colocamos esa dirección.
4.1.2.4 CONFIGURACIÓN DE LOS SERVICIOS DEL SISTEMA OPERATIVO
Se dejan activos solo los servicios necesarios para la funcionalidad óptima del servidor que son los de la siguiente tabla:
Tabla 4.1.2.4-1
Servicios que se deben mantener activos para el funcionamiento del sistema.
SERVICIOS NECESARIOS PARA EL DESEMPEÑO INICIAL DEL SISTEMA OPERATIVO
anacron.- Software para ejecutar tareas periódicamente atd.- Software para ejecutar tareas periódicamente autofs.- Monta archivos del sistema automáticamente
cpuspeed.- Cambia dinámicamente la velocidad del procesador crond.- Software para ejecutar tareas periódicamente
irqbalance.- Balancea y distribuye los IRQ cuando hay varios procesadores lvm2-monitor.- Herramienta para manejar volúmenes lógicos
mcstrans.- Servicio necesario para la ejecución de SELinux mdmonitor.- Utilerías para arreglos de disco
messagebus.- Utilería para mandar mensajes entre aplicaciones network.- Servicios de red
saslauthd .- Librería de autenticación
setroubleshoot.- Resuelve problemas de SeLinux smartd .- Monitoreo de discos duros
sshd.- Servidor de Secure Shell
syslog.- Registro de eventos del sistema
xinetd – Demonio de servicios de internet
[image:55.612.226.389.472.627.2]Estos servicios se revisan al inicio de la configuración para desactivar los servicios que no se necesiten y sean riesgo en la seguridad del equipo, además de que puede haber programas ejecutándose que ocasionen conflicto en la instalación del software para el servicio de correo electrónico.
Fig. 4.1.2.4-1 Selección de Horario América /México City
Para la actualización de la hora y fecha se elabora un script, el cuál consulta unos servidores que tienen relojes atómicos, actualizando la hora y la fecha.
El script que se ejecuta debe contener lo siguiente:
Fig. 4.1.2.4-2 Revisión de la fecha y hora del servidor
Es almacenado en la ruta /etc / cron.daily, la que por características del directorio es actualizada por el programa crond diariamente.
Para que el script se haga válido se verifican los permisos (full access), ya que requiere actualizarse.
Fig. 4.1.2.4-3 Revisión de los permisos del script generado
Fig. 4.1.2.4-4 Verificación de la consulta con servidores con relojes atómicos
4.2 ASEGURAMIENTO DEL SERVIDOR DE CORREO
Como medida de seguridad, se desactivan los servicios innecesarios, se instala el firewall y se configura para abrir solo los puertos que se van a utilizar en el servidor de correo.
Los puertos que se dejan abiertos son los mostrados en la siguiente tabla:
Tabla 4.2-1
Se muestran los protocolos y puertos que se deberán mantener activos
PROTOCOLOS Y PUERTOS DE LOS MÓDULOS
PROTOCOLO PUERTO
smtp 25
pop3 110
imap 143
ssh 22
Podemos corroborar que solamente estén abiertos estos puertos con el comando:
Fig. 4.2-1 Comando nmap, muestra los protocolos y los puertos utilizados
4.3 INSTALACIÓN DEL SOFTWARE PARA LOS MÓDULOS
Como la plataforma de Linux no contiene los módulos necesarios para la configuración del servicio de correo electrónico.
Es necesario montar el disco de instalación de Linux, para poder instalar los paquetes de los módulos. Lo montamos con el comando:
<mount /dev/cdrom /media/cdrom>
Y ahora ya podemos leer el contenido del disco.
Dentro del directorio /media/disco/Server se encuentran todos los paquetes que necesitamos instalar para el servicio de correo que son:
Tabla 4.3-1
Software indispensable para la instalación de los módulos del servicio de correo electrónico en el servidor de correo.
MÓDULO PAQUETE
MAU mysql-server-5.0.77-3.el5.i386.rpm mysql-devel-5.0.77-3.el5.i386.rpm php-5.1.6-23.2.el5_3.i386.rpm php-common-5.1.6-23.2.el5_3.i386.rpm php-imap-5.1.6-23.2.el5_3.i386.rpm php-ldap-5.1.6-23.2.el5_3.i386.rpm php-pdo-5.1.6-23.2.el5_3.i386.rpm php-mysql-5.1.6-23.2.el5_3.i386.rpm php-devel-5.1.6-23.2.el5_3.i386.rpm php-pear-5.1.6-23.2.el5_3.i386.rpm
MTA postfix-2.3.3-2.1 el 5_2.i386.rpm
DNS bind-9.3.6-4.P1.el.i386.rpm caching-nameserver-9.3.6-4.p1.el5.i386.rpm
Base de Datos openldap-2.3.43-3.el5.i386.rpm openldap-clients-2.3.43-3.el5.i386.rpm openldap-servers-2.3.43-3.el5.i386.rpm
MDA cyrus-imapd–2.3.7-7.el5.i386.rpm
Librerías de
Autenticación cyrus-sasl-2.1.22-5.el5.i386.rpm cyrus-sasl-ldap–2.1.22-5.el5.i386.rpm Gestor de
Servidor
(Servidor WEB) httpd-2.2.3-31.el5_3.i386.rpm
Fig. 4.3-2 Búsqueda del software para instalación
Se instala el software de la siguiente manera:
Fig. 4.3-3 Instalación del Software
EL módulo para el antivirus y el anti-spam no se encuentra dentro del disco de Red Hat Enterprise Linux (RHEL), pero se descarga por el explorador con la utilería <links>. El módulo a buscar es:
Tabla 4.3-2
Software indispensable para la instalación del módulo Antivirus y Anti-spam del servicio de correo electrónico en el servidor de correo.
Paquete para instalar el módulo de Antivirus y antispam
Antivirus y Anti-spam MailScanner-4.79.11-1.rpm.tar.gz
El software se debe de colocar en algún directorio del servidor, para poder descomprimirlo e instalarlo. A diferencia de los otros paquetes éste tiene un
Fig. 4.3-4 Búsqueda y Descarga del software MailScanner
Para ver que los módulos se están ejecutando correctamente revisamos los servicios; se revisan en el archivo < services>, de la ruta < /etc/>, y así veremos los servicios que actualmente se encuentran corriendo y los puertos con los que están estableciendo comunicación.
Ya instalado el módulo, el sistema lo incorpora como un servicio, eso lo observamos en el archivo <init.d> en la ruta </etc/rc.d/init.d>.
Fig. 4.3-5 Servicios que se encuentran activos en el servidor
Verificamos que el estado de los servicios que instalamos se hayan iniciado con el
Fig. 4.3-6 Verificación del estado de la base de datos
4.4 CONFIGURACIÓN DE LOS MÓDULOS
Ya instalados los paquetes y verificado que los servicios estén arriba, buscaremos de cada módulo, los archivos de configuración, que son:
Tabla 4.4-1
Archivos de configuración del servicio de correo electrónico, indicando la ruta donde se encontraran dichos archivos y el orden de configuración.
ARCHIVOS DE CONFIGURACIÓN DEL SERVICIO DE CORREO ELECTRÓNICO.
ORDEN PAQUETE CONFIGURACIÓN ARCHIVO DE RUTA
1 SASL saslauthd.conf /etc/
2 OPENLDAP slapd.conf /etc/openldap/
3 POSFIX main.cf /etc/Postfix/
3 CYRUS cyrus.conf /etc/
7 IMAPD imapd.conf /etc/
se pueda configurar otro pero llevaremos ese orden para hacer pruebas de la instalación.
4.4.1 CONFIGURACIÓN DEL ARCHIVO SASLAUTH.CONF
En el archivo saslauth se agregan los datos que permitan que el saslauth sepa de dónde se tomarán los datos de los usuarios. Se escribirán las siguientes líneas:
Nombre de usuario con el que se conectará a la ldap
ldap_bind_dn: cn=Manager, dc=esime,dc=ipn,dc=mx
Contraseña con la que se conectará a la ldap
ldap_bind_pw: oracle //contraseña
Definición de la raíz donde se realizará las consultas a la base de datos
ldap_search_base:ou=MailAccounts,dc=esime,dc=ipn,dc=mx
Fig. 4.4.1-1 Archivo de configuración saslauth.conf
4.4.2 CONFIGURACIÓN DEL ARCHIVO SLAPD.CONF
En el archivo slapd.conf es el archivo de configuración de la base de datos ldap las líneas que se escribirán son:
Indica que serán accedidas por el usuario y contraseña mencionadas:
by dn="cn=Manager,dc=esime,dc=ipn,dc=mx" write
by * none
acces to *
by self write
by anonymous auth
by dn="cn=Manager,dc=esime,dc=ipn,dc=mx" write
Define la base de datos
suffix
"dc=esime,dc=ipn,dc=mx"
rootdn
"cn=Manager,dc=esime,dc=ipn,dc=mx"
Se coloca la contraseña encriptada
rootpw
{SSHA}6+ffBk3F/QZJg4sBVh5po7pYrwWho+EX
Fig. 4.4.2-1 Archivo de configuración ldap.conf