Upload
sadidmonsalve
View
88
Download
3
Embed Size (px)
DESCRIPTION
Servidor Correo Centos
Citation preview
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.
¿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.
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
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
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.
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
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.
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
Agregamos un nuevo atributo. (mailbox y mailenable)
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.
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.
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.
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.
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.
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.
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.
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:
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).
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.)
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.
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.
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.
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.
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.
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.
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.
Configuramos el DNS para que la autenticación sea por medio de el.
Archivo de configuración Directa.
Archivo de configuración Inversa.
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.
Enviamos un nuevo correo desde Karen a Luis.
Verificamos que haya llegado.
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.