servidor correo centos

31

Upload: sadidmonsalve

Post on 15-Dec-2015

101 views

Category:

Documents


3 download

DESCRIPTION

Servidor Correo Centos

TRANSCRIPT

Page 1: Servidor Correo Centos
Page 2: Servidor Correo Centos

INTRODUCCIÓN

Nunca habíamos tenido un método de comunicación y transmisión tan rápido como

el correo electrónico (electronic mail o e-mail en inglés). Desde que "se inventó" en

los primeros años de la década de los 70, el uso del mismo resulta prácticamente

imprescindible para la comunicación casi diaria en el hogar y sobre todo en el

entorno empresarial. Ha llegado a ser un sistema tan eficaz que incluso mucha

gente lo usa de forma exclusiva y ni siquiera navega por Internet. Y es que el poder

enviar casi de inmediato textos y archivos es toda una revolución.

En el siguiente trabajo observaremos la configuración básica de un servidor de

correo en el sistema operativo Centos 6.5. Donde se describe cada una de los

paquetes que tenemos que utilizar para la configuración.

Page 3: Servidor Correo Centos

¿QUE ES SERVIDOR DE CORREO?

Un servidor de correo es una aplicación que nos permite enviar mensajes (correos)

de unos usuarios a otros, con independencia de la red que dichos usuarios estén

utilizando.

Para lograrlo se definen una serie de protocolos, cada uno con una finalidad

concreta:

SMTP, Simple Mail Transfer Protocol: Es el protocolo que se utiliza para que

dos servidores de correo intercambien mensajes.

POP, Post Office Protocol: Se utiliza para obtener los mensajes guardados

en el servidor y pasárselos al usuario.

IMAP, Internet Message Access Protocol: Su finalidad es la misma que la de

POP, pero el funcionamiento y las funcionalidades que ofrecen son

diferentes.

Así pues, un servidor de correo consta en realidad de dos servidores: un servidor

SMTP que será el encargado de enviar y recibir mensajes, y un servidor POP/IMAP

que será el que permita a los usuarios obtener sus mensajes.

Page 4: Servidor Correo Centos

Antes de instalar los paquetes de postfix y dovecot, debemos modificar

algunos archivos del LDAP.

Crear o descargar el esquema mail.schema

Debe crearse un nuevo archivo llamado mail.schema y guardarse en

/etc/openldap/schema/. Luego debe copiarse el contenido del archivo como se

muestra a continuación:

Nota: Instalación y configuración de LDAP con sus respectivas unidades

organizativas y/o usuarios.

Link de archivo: https://mega.co.nz/#F!KNxS3SzS!f-kKyWtLQqYlh-IAIIoVzA

Page 5: Servidor Correo Centos

Conversión de mail.schema a mail.ldif

Para visualizar los esquemas actuales usados en openldap podemos usar el

comando tree.

Crear el archivo misesquemas.conf:

Ingresamos lo siguiente

Page 6: Servidor Correo Centos

Crear un directorio para la creación de los esquemas en formato LDIF

Ejecutar el comando slaptest para realizar la conversión:

NOTA: El comando slaptest creó el siguiente árbol a partir del directorio conf que

se creó previamente.

Hacemos una copia del archivo cn={11}mail.ldif y la editamos.

Abrimos el archivo que copiamos.

Page 7: Servidor Correo Centos

Editamos las líneas.

Luego, debemos borrar las siguientes líneas del mail.ldif:

structuralObjectClass: olcSchemaConfig

entryUUID: 007940a2-0289-1031-873b-89615207f42d

creatorsName: cn=config

createTimestamp:20120315012157Z

entryCSN:20120315012157.547939Z#000000#000#000000

modifiersName: cn=config modifyTimestamp: 20120315012157Z

Page 8: Servidor Correo Centos

Por último se importa el esquema al LDAP:

# ldapadd –x –D cn=admin,cn=config –W –f mail.ldif Enter LDAP Password: adding

new entry "cn=mail,cn=schema,cn=config "

Verificamos.

Page 9: Servidor Correo Centos

Crear o modificar usuarios para que sean usuarios de correo electrónico

Para este procedimiento se usará el cliente gráfico Apache Directory Studio. En

primer lugar se creará una nueva entrada en el directorio como se muestra en la

figura:

Editamos la entrada con la clase: mailAccount

Page 10: Servidor Correo Centos

Agregamos un nuevo atributo. (mailbox y mailenable)

Page 11: Servidor Correo Centos

Los valores de mailbox y mailenable son ingresados manualmente.

El atributo mail será usado para indicarle al servidor de correo el e-mail del

usuario.

NOTA: El atributo mailbox será usado para indicarle al servidor de correo cual será

la ruta (path) del buzón del usuario. Por ejemplo si se almacenan los correos en

/var/mail, el buzón de Elvis estará en la ruta /var/mail/elvis/Maildir/.

NOTA: El atributo mailenable será usado para indicarle al servidor de correo que la

cuenta se encuentra activa o inactiva.

Page 12: Servidor Correo Centos

Instalación de postfix

Verificamos si está el postfix instalado con el comando (rpm –q postfix), en caso de

no estar instalado procederemos a instalarlo.

Procedemos a instalar postfix con el siguiente comando (yum –y install postfix) esto

en Centos.

Editaremos el archivo /etc/postfix/main.cf y configuraremos los parámetros

importantes.

myhostname: Corresponde al nombre del servidor de correo (Hostname). Debe

existir un registro en el servidor DNS.

Page 13: Servidor Correo Centos

Habilitamos inet_protocols el cual es para permitir IPv4 o IPv6.

Habilitamos mydestination = $myhostname, localhost,$mydomain, localhost

Especifica una lista de nodos y nombres de dominio, para los cuales este servidor aceptará y procesara correo. Con $mydomain estoy diciendo que este servidor aceptara y procesara correos para todo el dominio $mydomain

Para crear las cuentas virtuales esto se definirán un poco más de parámetros, unos

específicos para el almacenamiento de el correo virtual. Para este ejemplo

asumimos que se creó el usuario y grupo Unix vmail con

el UID de 5000 y GID de 5000, y su directorio HOME es /home/vmail. Usaremos el

directorio home del usuario vmail como el lugar donde almacenaremos nuestro

repositorio de correo virtual. Los dos primeros parámetros se usan para decirle

donde está la base del repositorio de los correos virtuales. y la otra para decirle cual

es la fuente LDAP donde buscaremos la ruta del buzón del correo, recordemos que

en la fuente LDAP "accounts" se obtiene como parámetro "mailbox". Las siguientes

configuraciones se usan para definir el UID y GID del usuario vmail, y el parámetro

"virtual_minimum_uid" significa que UID mínimos al 5000 serán rechazados y el

mensaje será "deferred". Todos estos parámetros están completamente

documentados en los archivos README_FILES/VIRTUAL_README [16] que

vienen con las fuentes de Postfix.

Page 14: Servidor Correo Centos

Nota: si en el archivo solo modificamos estas líneas podremos hacer pruebas

enviado un correo a nuestro Gmail.

myhostname = mail.abc.com

mydomain = abc.com

myorigin = $mydomain

inet_interfaces = all

mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain

mynetworks = 10.0.0.0/8, 127.0.0.0/8

home_mailbox = Maildir/

Prueba envió de correo a Gmail

Nos dirigimos a nuestros Spam y verificamos que haya llegado el correo.

NOTA: El directorio /var/vmail debe existir, por eso lo crearemos un usuario a partir

del cual se crearán los buzones y el cual tendrá como directorio personal /var/vmail

y su uid será 5000.

Page 15: Servidor Correo Centos

El archivo /etc/postfix/ldap-accounts.cf debe tener la información necesaria para la

conexión con el servidor LDAP y el atributo de respuesta para la consulta.

Creamos el archivo.

Ingresamos lo siguiente.

A continuación se comprobará con el usuario Karen que existe en el directorio.

Creamos el archivo virtual-ldap para que este haga consultas sobre los usuarios de

ldap.

Ingresamos los siguientes parámetros dentro del archivo virtual-ldap.

Ahora vamos a crear el directorio donde van a quedar los correos y los usuarios de

LDAP.

Page 16: Servidor Correo Centos

Ahora vamos a crear un grupo que se va llamar VMAIL.

Vamos a crear el usuario con el UID 5000 y lo vamos a integrar con el grupo que

acabamos de crear, y también el usuario se va a llamar VMAIL el mismo nombre del

grupo.

Ahora vamos a desactivar el SELINUX para poder hacer pruebas (Es más viable

deshabilitado desde el archivo de configuración de Selinux ( /etc/sysconfig/Selinux).

Ahora vamos asignarle el usuario propietario y el grupo al directorio /var/vmail.

Vamos a crearle atributos al usuario VMAIL que son de lectura, escritura y ejecucion

es como una especie de permisos a el directorio que pertenece este usuario que es

/var/vmail.

Page 17: Servidor Correo Centos

Este comando sirve para ver los atributos del usuario.

Ahora vamos hacer una prueba para ver si el postfix y LDAP están integrados, en

este caso el POSTFIX y LDAP están integrados por que el postfix está haciendo

consultas al el servidor LDAP en forma de MAILDIR.

Enviamos un correo al Usuario Karen de ldap.

Verificamos que el mensaje haya llegado.

Page 18: Servidor Correo Centos

Configuración e integración de Dovecot con LDAP.

Configuración de dovecot

Dovecot tiene varios archivos de configuración. A continuación se explican los que

serán usados para nuestra configuración:

/etc/dovecot/dovecot.conf: Configuraciones básicas de protocolos (IMAP, POP o

ambos), redes de confianza, etc. Además se incluyen los archivos del directorio

/etc/dovecot/conf.d/

/etc/dovecot/conf.d/10-mail.conf: En este archivo se le indicará a dovecot la ruta

en la que debe buscar el buzón de los usuarios y, el UID y GID del usuario local a

través del cual se accede al mail (En nuestro caso el usuario vmail).

/etc/dovecot/conf.d/10-auth.conf: Antes de que un usuario pueda acceder a su

buzón desde el MUA, debe pasar por un proceso de autenticación con el servidor

POP/IMAP. Este archivo permite configurar configurar qué tipo de backends se

usarán para usuarios y contraseñas. En nuestro caso usaremos LDAP.

/etc/dovecot/conf.d/auth-ldap.conf.ext: En este archivo se le indicará a dovecot

los parámetros para la búsqueda de usuarios y contraseñas en LDAP.

Lo primero que vamos hacer es copiar el archivo del ejemplo y lo dirigimos al

el directorio/etc/dovecot/.

Ahora vamos a editar el archivo que acabamos de copiar.

En este archivo tenemos que descomentar algunas líneas de configuración muy

importantes que son:

Page 19: Servidor Correo Centos

Explicación:

El servidor LDAP está en la misma máquina del servidor de correo (127.0.0.1)

No se usará SASL ni TLS.

La directiva scope subtree indica que la búsqueda de usuarios se realizará

a partir la base dentro de todos los contenedores y sub-contenedores.

Las búsquedas son anónimas, no se requerirá la autenticación con el servidor

LDAP (auth_bind)

La directiva base indica la base de búsqueda para los usuarios, en este caso

será dc=grupo4,dc=com.

Como muchos de los usuarios que hemos creado son instancias de la clase

posixAccount será necesario borrar los demás atributos de respuesta para

dovecot (user_attrs). Más adelante usaremos el atributa quota.

user_filter y pass_filter son las directivas que permiten filtrar las búsquedas

de usuarios y passwords, respectivamente. En otras palabras, los usuarios

para DOVECOT serán aquellas entradas del directorio que sean instancias

de la clase mailAccount, que el correo esté habilitado (mailenable=OK) y

cuyo uid sea la parte de username del correo electrónico (%n).

Page 20: Servidor Correo Centos

pass_attrs especifica cuáles serán las credenciales para autenticarse en el

servidor POP/IMAP. En este caso se usará el atributo uid como el login y el

atributo userPassword como contraseña.

Vamos a editar el archivo de configuración principal del servicio dovecot.

En este archivo vamos a colocar las líneas de configuración del archivo que son:

mail_debug = yes (es para que salgan los errores del dovecot).

Protocols = imap pop3 (descomentar esta línea y quitar el ultimo protocolo).

listen =*,:: (descomentarla simplemente).

login_greeting = mensaje de bienvenida (descomentarla y ponerle un

mensaje cualquiera).

Ahora vamos a copiar el archivo del directorio /etc/dovecot/conf.d/auth-

ldap.conf.ext para copiarlo en el mismo directorio, pero debe cambiarle el

nombre como (auth-ldap.conf), deben de estar los dos archivos.

Ahora vamos a editar el archivo que acabamos de copiar, y le colocaremos las

siguientes líneas de configuración que son:

args = /etc/dovecot/dovecot-ldap.conf (En esta línea le quitamos .ext para que

reconozca el archivo de configuración dovecot-ldap.conf)

args = uid=vmail gid=vmail home=/var/vmail/%u

(Descomentamos estas líneas de configuración y en ARGS en uid colocamos el

nombre del usuario que creamos junto con el grupo que se llama vmail y colocamos

el directorio donde se guardan los correos.)

Page 21: Servidor Correo Centos

NOTA: hay que comentar la siguiente línea de configuración.

#userdb {

#driver = ldap

#args = /etc/dovecot/dovecot-ldap.conf

#}

Así debe de quedar estas líneas de configuración.

Ahora vamos a editar el siguiente archivo.

Líneas que debemos editar.

Page 22: Servidor Correo Centos

Ingresamos al archivo /etc/dovecot/conf.d/10-auth.conf y editamos las

siguientes líneas.

Reiniciamos el servicio DNS.

Reiniciamos el servicio del LDAP.

Reiniciamos el servicio de postfix.

Reiniciamos el servicio de Dovecot.

Page 23: Servidor Correo Centos

CONFIGURACIÓN DEL CLIENTE DE CORREO GRÁFICO (MUA)

Ahora que tenemos instalados tres de los agentes de correo electrónico: Postfix

(MTA y MDA) y Dovecot (MAA: Servidor POP e IMAP), podemos instalar el cliente

de correo (MUA). El MUA que se utilizara es Thunderbird.

Damos en crear cuenta. Ingresamos los datos y damos clic en continue.

Damos clic en configuración manual.

Page 24: Servidor Correo Centos

Como no tenemos servidor DNS configurado, es recomendable realizar la

configuración manual.

Llenamos los datos.(clic en re-test para probar conexión y datos ingresados). Luego

de dar clic en Re-test y hacer la verificación de los datos se habilitara Done. (Damos

clic en Done).

Saldrá este mensaje de advertencia, aceptamos los riesgos.

Page 25: Servidor Correo Centos

Nuestro Usuario se creó, enviaremos un correo desde luis a un usuario

posteriormente agregado. Damos clic en escribir un nuevo mensaje.

Ingresamos el destinatario (Karen), el asusto y finalmente el cuerpo o mensaje.

Page 26: Servidor Correo Centos

Verificamos que el mensaje haya llegado, Ingresamos al correo de Karen y vemos

que hay un nuevo mensaje.

Vemos el contenido del mensaje. Fue exitoso.

Page 27: Servidor Correo Centos

Ingresamos a una maquina cliente de LDAP la cual tiene la cuenta de Luis y

configuramos su correo. Siguiendo los pasos anteriormente vistos.

Enviamos el correo y vemos que ha llegado sactisfactoriamente.

Page 28: Servidor Correo Centos

Configuramos el DNS para que la autenticación sea por medio de el.

Archivo de configuración Directa.

Archivo de configuración Inversa.

Page 29: Servidor Correo Centos

Creamos una nueva cuenta, utilizare la misma del usuario Luis. Vemos que después

de darle en continue automáticamente crea el incoming y el outgoing.

Solo damos en done.

Page 30: Servidor Correo Centos

Enviamos un nuevo correo desde Karen a Luis.

Verificamos que haya llegado.

Page 31: Servidor Correo Centos

Conclusión

En este artículo hemos aprendido las principales características del correo

electrónico, su funcionamiento básico suficiente para tener un concepto claro con el

fin de conseguir instalar nuestro servidor de e-mail, y disfrutar de él para optimizar

nuestra red y nuestra comunicación interna.

Además, configurarlo y probar las distintas funciones, así como hacer pruebas de

envíos y recepción nos dará experiencia para entender problemas que pueden

darse en cualquier lugar, cosa que siempre es de agradecer.