Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de...

40
Instalación, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web. Universidad Francisco de Paula Santander Administration de Sistemas Operativos en Red Por: Eliecer Alejandro Molina Vergel 1151054 Edgar Yesid García Ortiz 1150967 Base Teórica: Existen tres estándares que utilizan actualmente la mayoría de servicios de correo electrónico (email). Estos son el SMTP, el POP3 y el IMAP. El estándar SMTP son las siglas de Simple Mail Transfer Protocol (Protocolo Simple de Transferencia de Correo). POP es el acrónimo de Post Office Protocol (Protocolo de Oficina Postal). Aunque pueda sonar algo confuso, POP es el protocolo de almacenamiento de email mientras que SMTP es el protocolo de envío y recepción. POP3 es la tercera versión desarrollada del estándar POP. IMAP (Internet Message Access Protocol) es otro protocolo de almacenamiento más moderno que POP3 y con más posibilidades. Si hacemos una analogía con el correo postal, el protocolo SMTP sería el análogo al cartero o a los servicios de transporte de cartas. Él o ella entregan y recoge el correo para transferirlo a otra localización. El protocolo POP3 y el protocolo IMAP serían como el buzón de correos de tu casa o un apartado postal. Es el sitio dónde el correo es enviado y dónde permanece hasta que el receptor está listo para leerlo. El correo saliente también puede ser puesto en el buzón de correo, es decir, los protocolos POP3 e IMAP también se utilizan para almacenar el correo enviado.

Transcript of Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de...

Page 1: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

Instalación, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3,

con cliente desktop y cliente web.

Universidad Francisco de Paula Santander

Administration de Sistemas Operativos en Red

Por:

Eliecer Alejandro Molina Vergel 1151054

Edgar Yesid García Ortiz 1150967

Base Teórica:

Existen tres estándares que utilizan actualmente la mayoría de servicios de correo electrónico (email). Estos son el SMTP, el POP3 y el IMAP. El estándar SMTP son las siglas de Simple Mail Transfer Protocol (Protocolo Simple de Transferencia de Correo). POP es el acrónimo de Post Office Protocol (Protocolo de Oficina Postal). Aunque pueda sonar algo confuso, POP es el protocolo de almacenamiento de email mientras que SMTP es el protocolo de envío y recepción. POP3 es la tercera versión desarrollada del estándar POP. IMAP (Internet Message Access Protocol) es otro protocolo de almacenamiento más moderno que POP3 y con más posibilidades.

Si hacemos una analogía con el correo postal, el protocolo SMTP sería el análogo al cartero o a los servicios de transporte de cartas. Él o ella entregan y recoge el correo para transferirlo a otra localización. El protocolo POP3 y el protocolo IMAP serían como el buzón de correos de tu casa o un apartado postal. Es el sitio dónde el correo es enviado y dónde permanece hasta que el receptor está listo para leerlo. El correo saliente también puede ser puesto en el buzón de correo, es decir, los protocolos POP3 e IMAP también se utilizan para almacenar el correo enviado.

Page 2: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

SMTP: el transporte de emails

La inmensa mayoría de emails que viajan por internet lo hacen utilizando el estándar SMTP, un protocolo de transferencia. Aunque fue inventado a principios de la década de 1980, se considera un protocolo muy fiable, principal motivo por el que sigue siendo el más utilizado de forma casi universal. La mayoría de correos electrónicos enviados utilizando SMTP llegan rápido al receptor sin problemas.

No obstante, SMTP presenta algunos inconvenientes ante eventos que no se tuvieron en cuenta cuándo se inventó, principalmente por ser problemas que no existían entonces y que no fueron anticipados. Por ejemplo, el protocolo SMTP no tiene forma de verificar si el remitente de un email es realmente quien dice ser. Si volvemos la vista a los años 1980, cuándo internet era utilizado por un selecto grupo de personas, principalmente en organismos gubernamentales y centros de docencia e investigación, esto no era un gran problema.

A partir de los años 1990 la incapacidad de verificación del remitente comenzó a ser un problema importante y lo que ha permitido el continuo incremento del SPAM y otros usos malintencionados del email, como la transferencia de virus o el email spoofing (suplantación de identidad). Por ejemplo, un programa puede buscar en el buzón de email y enviar un virus como archivo adjunto a toda la lista de contactos de una persona en nombre de esa persona en la que los receptores confían. Se han realizado avances para mejorar la seguridad del estándar SMTP pero está aún muy lejos de ser verdaderamente seguro.

POP3 e IMAP:

El estándar POP es el protocolo utilizado para el almacenamiento y organización de los correos electrónicos. Se diseñó en 1984 con la idea de permitir a los usuarios tener acceso a un servidor de correo, recibir los mensajes y almacenarlos en una carpeta local del ordenador propio y poder desconectarse de internet para leer y escribir mensajes. La capacidad de estar offline para leer o escribir era realmente útil cuándo permanecer conectado a internet era caro y se pagaba por minutos de conexión. Actualmente la mayoría de servidores de correo utilizan POP3, la tercera versión del estándar POP que fue desarrollada en 1988, o el estándar IMAP.

El protocolo IMAP es más moderno y ofrece más posibilidades que POP3. Por ejemplo, permite administrar varias bandejas de entrada, varios accesos a la vez o múltiples criterios de organización. Si deseas información detallada sobre cada protocolo puedes consultar los documentos RFC 821.

POP3

En informática se utiliza el Post Office Protocol (POP3, Protocolo de Oficina de Correo o "Protocolo de Oficina Postal") en clientes locales de correo para obtener los mensajes de correo electrónico almacenados en un servidor remoto, denominado Servidor POP. Es un protocolo de nivel de aplicación en el Modelo OSI.

Las versiones del protocolo POP, informalmente conocido como POP1 y POP2, se han quedado obsoletas debido a las últimas versiones de POP3. En general cuando se hace referencia al término POP, se refiere a POP3 dentro del contexto de protocolos de correo electrónico

Page 3: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

Características:

POP3 está diseñado para recibir correo, que en algunos casos no es para enviarlo; le permite a los usuarios con conexiones intermitentes o muy lentas (tales como las conexiones por módem), descargar su correo electrónico mientras tienen conexión y revisarlo posteriormente incluso estando desconectados. Cabe mencionar que aunque algunos clientes de correo incluyen la opción de dejar los mensajes en el servidor, el funcionamiento general es: un cliente que utilice POP3 se conecta, obtiene todos los mensajes, los almacena en la computadora del usuario como mensajes nuevos, los elimina del servidor y finalmente se desconecta. En contraste, el protocolo IMAP permite los modos de operación conectado y desconectado.

Los clientes de correo electrónico que utilizan IMAP dejan por lo general los mensajes en el servidor hasta que el usuario los elimina directamente. Esto y otros factores hacen que la operación de IMAP permita a múltiples clientes acceder al mismo buzón de correo. La mayoría de los clientes de correo electrónico soportan POP3 o IMAP; sin embargo, solo unos cuantos proveedores de internet ofrecen IMAP como valor agregado de sus servicios.

Los clientes que utilizan la opción dejar mensajes en el servidor por lo general utilizan la orden UIDL (Unique IDentification Listing). La mayoría de las órdenes de POP3 identifican los mensajes dependiendo de su número ordinal del servidor de correo. Esto genera problemas al momento que un cliente pretende dejar los mensajes en el servidor, ya que los mensajes con número cambian de una conexión al servidor a otra. Por ejemplo un buzón de correo contenía 5 mensajes en la última conexión, después otro cliente elimina el mensaje número 3, si se vuelve a iniciar otra conexión, ya el número que tiene el mensaje 4 pasará a ser 3, y el mensaje 5 pasará a ser número 4 y la dirección de estos dos mensajes cambiara. El UIDL proporciona un mecanismo que evita los problemas de numeración. El servidor le asigna una cadena de caracteres única y permanente al mensaje. Cuando un cliente de correo compatible con POP3 se conecta al servidor utiliza la orden UIDL para obtener el mapeo del identificador de mensaje. De esta manera el cliente puede utilizar ese mapeo para determinar qué mensajes hay que descargar y cuáles hay que guardar al momento de la descarga.

Al igual que otros viejos protocolos de internet, POP3 utilizaba un mecanismo de firmado sin cifrado. La transmisión de contraseñas de POP3 en texto plano aún se da. En la actualidad POP3 cuenta con diversos métodos de autenticación que ofrecen una diversa gama de niveles de protección contra los accesos ilegales al buzón de correo de los usuarios. Uno de estos es APOP, el cual utiliza funciones MD5 para evitar los ataques de contraseñas. Mozilla, Eudora, Novell Evolution así como Mozilla Thunderbird implementan funciones APP.

Imap

Internet Message Access Protocol (IMAP, Protocolo de acceso a mensajes de internet), es un protocolo de aplicación que permite el acceso a mensajes almacenados en un servidor de Internet. Mediante IMAP se puede tener acceso al correo electrónico desde cualquier equipo que tenga una conexión a Internet. IMAP tiene varias ventajas sobre POP(otro protocolo empleado para obtener correos desde un servidor). Por ejemplo, es posible especificar en IMAP carpetas del lado del servidor. Por otro lado, es más complejo que POP ya que permite visualizar los mensajes de manera remota y no descargando los mensajes como lo hace POP.

IMAP y POP3 (Post Office Protocol versión 3) son los dos protocolos que prevalecen en la obtención de correo electrónico. Todos los servidores y clientes de correo electrónico están

Page 4: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

virtualmente soportados por ambos, aunque en algunos casos hay algunas interfaces específicas del fabricante típicamente propietarias. Por ejemplo, los protocolos propietarios utilizados entre el cliente Microsoft Outlook y su servidor Microsoft Exchange Server o el cliente Lotus Notes de IBM y el servidor Domino. Sin embargo, estos productos también soportan interoperabilidad con IMAP y POP3 con otros clientes y servidores. La versión actual de IMAP, IMAP versión 4 revisión 1 (IMAP4rev1), está definida por el RFC 3501.

IMAP fue diseñado como una moderna alternativa a POP por Mark Crispin en el año 1986. Fundamentalmente, los dos protocolos les permiten a los clientes de correo acceder a los mensajes almacenados en un servidor de correo.

Ya sea empleando POP3 o IMAP4 para obtener los mensajes, los clientes utilizan SMTP para enviar mensajes. Los clientes de correo electrónico son comúnmente denominados clientes POP o IMAP, pero en ambos casos se utiliza SMTP.

Acerca de SASL y Cyrus SASL.

SASL (Simple Authentication and Security Layer) es un estructura para la seguridad de datos en protocolos de Internet. Desempareja mecanismos de la autenticación desde protocolos de aplicaciones, permitiendo, en teoría, cualquier mecanismo de autenticación soportado por SASL para ser utilizado en cualquier protocolo de aplicación que capaz de utilizar SASL. Actualmente SASL es un protocolo de la IETF (Internet Engineering Task Force) que ha sido propuesto como estándar. Está especificado en el RFC 2222 creado por John Meyers en la Universidad Carnegie Mellon.

Cyrus SASL es una implementación de SASL que puede ser utilizada del lado del servidor o del lado del cliente y que incluye como principales mecanismos de autenticación soportados a ANONYMOUS, CRAM-MD5, DIGEST-MD5, GSSAPI y PLAIN. El código fuente incluye también soporte para los mecanismos LOGIN, SRP, NTLM, OPT y KERBEROS_V4.

URL: http://asg.web.cmu.edu/sasl/sasl-library.html.

Page 5: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

Acerca de DSA.

DSA (Digital Signature Algorithm o Algoritmo de Firma digital) es un algoritmo creado por el NIST (National Institute of Standards and Technology o Instituto Nacional de Normas y Tecnología de EE.UU.), publicado el 30 de agosto de 1991, como propuesta para el proceso de firmas digitales. Se utiliza para firmar información, más no para cifrar ésta.

URL: http://es.wikipedia.org/wiki/DSA

Acerca de RSA.

RSA, acrónimo de los apellidos de sus autores, Ron Rivest, Adi Shamir y Len Adleman, es un algoritmo para el ciframiento de claves públicas que fue publicado en 1977, patentado en EE.UU. en 1983 por el el Instituto Tecnológico de Michigan (MIT). RSA es utilizado ampliamente en todo el mundo para los protocolos destinados para el comercio electrónico.

URL: http://es.wikipedia.org/wiki/RSA

Acerca de X.509.

X.509 es un estándar ITU-T (estandarización de Telecomunicaciones de la International Telecommunication Union ) para infraestructura de claves públicas (PKI o Public Key Infrastructure). Entre otras cosas, establece los estándares para certificados de claves públicas y un algoritmo para validación de ruta de certificación. Este último se encarga de verificar que la ruta de un certificado sea válida bajo una infraestructura de clave pública determinada. Es decir, desde el certificado inicial, pasando por certificados intermedios, hasta el certificado de confianza emitido por una Autoridad Certificadora (CA o Certification Authority).

URL: http://es.wikipedia.org/wiki/X.509

Acerca de OpenSSL.

OpenSSL es una implementación libre, de código abierto, de los protocolos SSL (Secure Sockets Layer o Nivel de Zócalo Seguro) y TLS (Transport Layer Security o Seguridad para Nivel de Transporte). Está basado sobre el extinto proyecto SSLeay, iniciado por Eric Young y Tim Hudson, hasta que éstos comenzaron a trabajar para la división de seguridad de EMC Corporation.

URL: http://www.openssl.org/

Page 6: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

Implementación

Instalación del servidor SMTP

Primero tendremos que instalar el servidor smtp, usaremos el servidor postfix, en consola ejecutamos:

dnf install postfix cyrus-sasl cyrus-sasl-plain

Si existe, eliminamos:

dnf remove cyrus-sasl-gssapi

dnf remove cyrus-sasl-md5

Definiendo Postfix como agente de transporte de correo predeterminado.

El mandato alternatives, con la opción alternatives--config mta, se utiliza para conmutar el servicio de correo electrónico del sistema y elegir que paquete utilizar. Sólo es necesario utilizar éste si previamente estaban instalados Sendmail o Exim. Sí este es el caso, ejecute lo siguiente desde una terminal y defina Postfix como agente de transporte de correo (MTA, Mail Transport Agent), seleccionado éste.

alternatives --config mta

Si existe mas de un MTA nos mostrará:

Generando firma digital y certificado para ambos servicios.

Acceda al directiorio /etc/pki/tls

cd /etc/pki/tls

La creación de la firma digital y certificado requiere utilizar una clave con algoritmo RSA de 4096 octetos (bits), con estructura X.509 y sin DES. En el ejemplo a continuación, se establece una validez por 1825 días (cinco años) para el certificado creado:

Page 7: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

openssl req -sha256 -x509 -nodes -newkey rsa:4096 -days 1825 \-out certs/alejandro.asor.com.crt -keyout private/alejandro.asor.com.key

La instrucción anterior nos solicitará datos como:

Código de dos letras para el país. Estado o provincia. Ciudad. Nombre de la empresa o razón social. Unidad o sección. Nombre del anfitrión. Dirección de correo.

Al finalizar nos mostrará un resumen:

Donde “dominio.tld” es nuestro nombre de dominio, en nuestro caso sería *.alejandro.asor.com, el asterisco permitirá que nuestro dominio tenga subdominios. Esto permitirá que el certificado sea valido para TLD’s Como: mail.alejandro.asor.com.

A fin de facilitar a los clientes de correo electrónico el poder gestionar una futura actualización de certificado, conviene añadir una huella distintiva indubitable (fingerprint) al certificado.

Page 8: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

openssl x509 -subject -fingerprint -noout -in certs/dominio.tld.crt

Es indispensable que todos los archivos de claves y certificados tengan permisos de acceso de sólo lectura para el usuario root:

chmod 400 certs/dominio.tld.crt private/dominio.tld.key

Configurando Postfix:

Permitiendo la autenficicación por sasl:

Nos pararemos en el directorio cd /etc/postfix

Editaremos el archivo master.cf nano master.cf

Descomentaremos las siguientes lineas:

submission inet n - n - - smtpd -o smtpd_tls_security_level=encrypt -o smtpd_sasl_auth_enable=yes -o smtpd_client_restrictions=permit_sasl_authenticated,reject -o milter_macro_daemon_name=ORIGINATING smtps inet n - n - - smtpd -o smtpd_tls_wrappermode=yes -o smtpd_sasl_auth_enable=yes -o smtpd_client_restrictions=permit_sasl_authenticated,reject -o milter_macro_daemon_name=ORIGINATING

Se verá algo parecido a:

Page 9: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

Configurando postfix Editamos el archivo main.cf

nano main.cf

Vamos a la línea comentada #myhostname la descomentamos y cambiamos después del signo igual, por el nombre del dominio de nuestro servidor en la red, en nuestro caso como tenemos el servidor dns configurado para que mi ip local sea mail.alejandro.asor.com

finalmente se vería así:

myhostname=mail.alejandro.asor.com

Más abajo,descomentamos y cambiamos la variable "mydomain" le damos el nombre de nuestro dominio, se vería algo como:

Page 10: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

mydomain=alejandro.asor.com

Más abajo, descomentamos y cambiamos la variable myoirigin y le damos el valor $mydomain

myorigin=$mydomain

Mas adelante configuramos las interfaces, si está comentada la descomentamos, o añadimos i

net_interfaces = all

esto nos permitirá que trabaje con todas las interfaces de red. Ahora definiremos con qué nombre seremos el destinatario

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

Ahora Si se van a manejar más dominios de correo electrónico, lo añadimos. Bajando nos encontraremos con la variable mynetworks, si está comentada la descomentamos y añadimos la ip y su mascara de aquellas direcciones locales que va a escuchar nuestro servidor.

mynetworks=192.168.1.0/24,

Buscamos la variable home_mailbox y le daremos el valor Maildir/

home_mailbox = Maildir/

Esto permitirá a cada usuario tener en su directorio de trabajo una carpeta que se llamará "Maildir"

Por ultimo añadiremos las lineas

# tamano del mensaje 10M

message_size_limit = 10485760

# tamaño del buzón 1GB O.o

mailbox_size_limit = 1073741824

#configuracion TSL

smtpd_tls_security_level = may # Sólo se utiliza si se adquiere un certificado con un CA # smtpd_tls_CAfile = /etc/pki/tls/certs/ca-bundle.crt # Las rutas deben corresponder a las del certificado y firma digital creados.

#ruta a nuestra llave del certificado smtpd_tls_key_file = /etc/pki/tls/private/alejandro.asor.com.key

Page 11: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

#ruta de nuestro certificado smtpd_tls_cert_file = /etc/pki/tls/certs/alejandro.asor.com.crt smtpd_tls_auth_only = no smtp_use_tls = yes smtpd_use_tls = yes smtp_tls_note_starttls_offer = yes smtpd_tls_loglevel = 1 smtpd_tls_received_header = yes smtpd_tls_session_cache_timeout = 3600s tls_random_source = dev:/dev/urandom smtpd_tls_protocols = !SSLv2,!SSLv3 smtpd_tls_mandatory_protocols = !SSLv2,!SSLv3 smtp_enforce_tls = yes

# Soporte para autenticar a través de SASL. # smtpd_sasl_local_domain = # Solo como referencia. smtpd_sasl_auth_enable = yes smtpd_sasl_security_options = noanonymous broken_sasl_auth_clients = yes smtpd_sasl_path = private/auth smtpd_sasl_authenticated_header = yes smtpd_recipient_restrictions permit_sasl_authenticated,permit_mynetworks,reject_unauth_destination smtpd_sasl_path = smtpd

Por ultimo reiniciamos el servicio, si no lo habíamos iniciado pues lo iniciamos.

systemctl restart postfix.service

Testeando el servidor postfix

Primero que todo añadiremos dos usuarios, en mi caso añadiremos el usuario “alejandro” y “alejandroemail”.

adduser alejandro adduser alejandroemail

Ahora cambiamos las contraseñas, a los dos usuarios le colocaremos como contraseña “12345” escribiremos la instrucción passwd seguido de el nombre del usuario, y seguimos las instrucciones:

Page 12: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

passwd alejandro,passwd alejandroemail

Verificamos que se crearon correctamente ejecutando las instrucciónes cd /home ls -l

Como vemos los usuarios se crearon correctamente.

Verificando desde fedora:

Instalamos telnet: dnf install telnet abrimos una sesión telnet a nuestro servidor postfix por el puerto 25: telnet mail.alejandro.asor.com 25

vemos que tenemos respuesta, para enviar un correo desde telnet le diremos la siguiente instruccion: mail from: [email protected]

El servidor nos ha respondido, ahora para especificar el destinatario escribiremos rcpt to: [email protected]

Page 13: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

Hemos obtenido respuesta, ahora escribiremos el mensaje con la instrucción: data

Nos responde con las instrucciones de como terminar el mensaje, en terminos coloquiales debemos hacer una linea con un solo punto “.”, es decir enter, punto, enter.

Como vemos obtenemos respuesta, saldremos con la instrucción quit

Para verificar que el correo se entregó correctamente vamos abriremos el directorio de correo del usuario a quien se lo mandamos, es decir a alejandroemail

cd /home/alejandroemail/Maildir/

En esta carpeta veremos la siguiente información:

donde new es la carpeta donde se almacenan los mensajes nuevos, los archivos que podemos ver son de administración, como archivos los, cache, y datos de nuestro cliente de correo (lo veremos mas adelante).

Dentro de la carpeta new veremos los correos

Este es el correo que hemos enviado, para visualizarlo copiamos la dirección y abrimos el archivo: nano 1462157275.Vfd02Iff812M871816.fedora

Page 14: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

como vemos el mensaje fue almacenado correctamente. Si usaramos el servidor pop el mensaje después de haberse leido sería borrado de la carpeta.

Instalación del servidor POP/IMAP

Para el servidor POP o IMAP usaremos dovecot, es un servidor que nos permitirá manejar ambos protocolos al tiempo:

dnf install dovecot

Configurando Dovecot:

Después de instalar procedemos a configurarlo, iremos a la carpeta de configuración de dovecot, esta se encuentra en la carpeta etc

cd /etc/dovecot

Encontraremos la carpeta conf.d cuyo contenido son varios archivos de configuración del servidor. Primero abrimos el archivo dovecot.conf

nano dovecot.conf

Buscaremos las siguientes lineas y si no existen las agregamos al final:

Page 15: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

Linea que buscamos

Linea final (cómo se vería)

protocols protocols = imap imaps pop3 pop3s

listen listen = *, :: Esta variable nos dirá que escuchará por todas las direcciones ipv4 (*), y las direcciones ipv6 (::)

protocol imap{ ... }

protocol imap { listen = *,:: #ssl_listen = * } Esta directiva configura el protocolo imap para que escuche por todas las direcciones ipv4 y las ipv6, si no la añadimos o configuramos cuando configuremos nuestro cliente de correo no podremos conectarnos con este protocolo

Abrimos el directorio conf.d y veremos los siguientes archivos

Page 16: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

Abrimos el archivo 10-mail.conf

Linea que buscamos Linea final (cómo se vería)

#mail_location = mail_location = maildir:~/Maildir

Habilitaremos el cifrado 10-ssl.conf

Linea que buscamos Linea final (cómo se vería)

ssl ssl=yes

ssl_cert ssl_cert = </etc/pki/tls/certs/alejandro.asor.com.crt

ssl_key ssl_key = </etc/pki/tls/private/alejandro.asor.com.key

Donde /etc/pki/tls/private/alejandro.asor.com.key es la ruta a nuestra llave y /etc/pki/tls/certs/alejandro.asor.com.crt es la ruta a nuestro certificado

Por razones de seguridad es buena idea deshabilitar el soporte para SSLv2 y SSLv3. El protocolo SSLv3 es muy inseguro y susceptible a la tristemente célebre vulnerabilidad conocida como POODLE. Si atacantes explotan exitosamente esta vulnerabilidad sólo necesitan hacer alrededor de 256 solicitudes SSL 3.0 para revelar datos de las conexiones cifradas. Lo más inteligente que puede hacer cualquier administrador de sistemas es deshabilitar el soporte para SSLv3.

Localice y comente

# SSL protocols to use #ssl_protocols = !SSLv2 !SSLv3

Reiniciamos el servicio dovecot.service, si no lo hemos iniciado lo iniciamos systemctl restart dovecot.service

Page 17: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

Testeando el servidor POP/IMAP

PRIMERO QUE TODO NOS SALTAREMOS LA CONFIGURACIÓN DE NUESTRO SERVIDOR DNS PUES YA SE HA HECHO, Y SU CONFIGURACIÓN EN WINDOWS.

Después de configurar nuestra conexión en windows para que use nuestro servidor dns en fedora, descargaremos un cliente de correo, en este documento usaremos el cliente thunderbird, de la casa mozilla.

Lo podemos descargar de su página oficial https://www.mozilla.org/es-ES/thunderbird/ o siguiendo este link:

https://download.mozilla.org/?product=thunderbird-45.0-SSL&os=win&lang=es-ES

Lo instalamos, no ocuparemos este tema, se instala como cualquier programa, si existe un error por favor remitirse a la documentación en la página oficial.

Primero añadiremos la cuenta “[email protected]

Page 18: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

Agregamos nuestro nombre, nuestra dirección de correo ([email protected]) y nuestra contraseña (la que le dimos anteriormente, es decir 12345)

Esperamos a que configure. Seleccionaremos el protocolo imap, por qué? porque si seleccionamos el protocolo POP nos eliminará el correo en nuestra carpeta, y no hemos configurado dovecot para que no lo elimine.

Page 19: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

Como vemos nos detectó que tenemos sasl, pero trabajaremos estrictamente con TLS asi que en los combos seleccionaremos TLS

Como vemos ha cambiado los puertos, estos son los puertos IMAPS y SMTPS respectivamente. Hacemos clic en en volver a probar, lo que permitirá a thunderbird probar que los puertos dichos están abiertos, lo que nos permitirá hacer clic en el botón “hecho”.

Page 20: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

Nos aparecerá la siguiente ventana:

Page 21: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

Esto indica que ha encontrado un certificado de seguiridad. Ahora veremos el cerificado. Demos clic en “ver..”

Page 22: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

Vemos por ejemplo todos los datos que guardamos cuando generamos el certificado, cerramos y damos clic en confirmar excepción de seguridad.

Como vemos nos dice que hemos recibido un correo, el cliente se ha sincronizado con el servidor y nos devolvió el correo.

Podemos ver quien nos envío el correo y a que hora. Lo abrimos:

Page 23: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

Efectivamente es el correo que enviamos desde telnet. Ahora configuraremos la cuenta con POP, veremos como se borra el mensaje en el servidor. HAcemos clic derecho en nuestro correo

hacemos clic en configuración:

Page 24: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

y luego en añadir cuenta de correo. Haremos igual que cuando configuramos el correo IMAP, pero seleccionamos el protocolo POP

Page 25: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

hacemos click en hecho, aceptamos los riesgos y continuamos.

Page 26: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

Vemos que recibió todos nuestros correos. Comprobaremos que se eliminó nuestro correo en el servidor dovecot.

Vamos a la carpeta de entrada de nuestro usuario alejandroemail

cd /home/alejandroemail/Maildir/new ls -l

Podemos observar que antes estaba, y ahora después de configurar POP3 ya no está, se “eliminó”.

Page 27: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

Testeando múltiples cuentas, inbox y outbox

Primero eliminaremos la cuenta pop de thunderbird, en el mismo menú que usamos para añadir la cuenta, y añadimos la cuenta/usuario “alejandro”. Y la configuramos como IMAP, de la misma manera que la cuenta alejandroemail. Verificamos que las carpetas o buzones estén vacíos, para el caso de imap, el los traslada a la carpeta CUR dentro de maildir

Desde nuestro cliente de correo thunderbird enviaremos y recibiremos correos de ambas cuentas

Primer correo:

from: [email protected] to: [email protected] subject: Prueba 1 mensaje: Te envio un correo, soy alejandroemail! Cómo estás?

Page 28: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

hemos verificado que se envió y recibió correctamente el correo. Lo comprobaremos en el servidor dovecot en la carpeta del usuario alejandro:

Hemos encontrado un nuevo archivo, es nuestro correo, lo comprobamos abriéndolo:

Page 29: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

Podemos ver que el correo fue entregado correctamente.

Page 30: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

IMPLEMENTACIÓN DE CLIENTE EMAIL WEB:

Instalaremos el servidor web, por defecto apache. dnf install httpd

Instalaremos el CGI, para nuestro caso instalaremos php, por defecto decargará php 5.6 dnf install php

En este documento no detallaremos la configuración del servidor, usaremos la que viene por defecto al igual que el CGI.

Descargaremos el cliente web en este caso Squirrelmail dnf install squirrelmail

Configurando squirrelmail:

Entramos a la carpeta: cd /usr/share/squirrelmail/config/

y ejecutaremos el guion de configuración ./conf.pl

Nos mostrará el siguiente menú

Page 31: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

escribimos “1” y enter para configurar los datos de la organización. Esto con fines administrativos. Igualmente escribiremos la opción y pulsamos enter para configurar la opción, al final podemos ver:

Guardamos con s, y retornamos al menú principal con R luego pulsamos “2” y enter para poder configurar el servidor de email:

Page 32: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

La opcion 1 configura nuestro nombre de dominio. La opcion 3 configuramos que no sea “sendemail” sino SMTP

Pulsamos A y enter para configurar las opciones de IMAP

Opcion 4:Como nuestro servidor imap está en la misma máquina pondremos “localhost” . Opción IMAP Port: Como nuestro servidor está en la misma máquina no es necesario usar IMAPS sino IMAP, puerto 143

Page 33: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

Opcion 6:

Nos pedirá si queremos detectar automáticamente nuestro mecanismo de autentificacion, para ver las opciones daremos que si “Y”

Como vemos no soporta CRAM-MD5 ni DIGEST-MD5, en nuestro caso solo usaremos login, pues estamos en la misma máquina que nuestro servidor IMAP, si el server imap estuviera en otro server él buscaría los mecanismos de auth del servidor especificado en la opción IMAP server.

Opción 7 Secure IMAP: false, porque estamos en la misma máquina, esto varía dependiendo si está en otro servidor nuestro server IMAP

Opción 8 server software: seleccionamos dovecot.

Pulsamos B y enter para configurar la conexión SMTP

Page 34: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

Pulsamos 4 SMTP server: especificamos localhost, porque estamos en la misma máquina que el server SMTP

opción 5: seleccionamos el puerto 25 SMTP, no SMTPS

Opción 7: usaremos login, nos pedirá autodetectar lo que aceptamos para ver que podemos hacer.

Seleccionamos login y luego damos que no “n”.

Page 35: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

Opción 8: deshabilitamos el SMTPS pues estamos en local, no es necesaria la autentificación, si nuestro server SMTP estuviera en otro server especificaremos este tipo de datos.

Configurando SquirrelMail en apache

Cuando usamos el gestor de repositorios dnf cuando instalamos squirrelmail el detectó que teníamos apache y en el momento de la instalación guardó los archivos necesarios en la carpeta de configuración de apache, esta se encuentra en /etc/httpd/conf.d/. Abrimos el achivo

nano /etc/httpd/conf.d/squirrelmail.conf

Y miramos su configuración

Page 36: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

Como vemos ha creado un alias (/webmail) al directorio raíz de squirrelmail, es decir que cada dominio podrá acceder al cliente web colocando /webmail.

Además podemos ver que deniega cualquier petición si no existe el modulo mod_authz_core.c de apache, si no lo tenemos en el servidor nos bloqueará cualquier intento de acceder a ese directorio, esto garantiza que solo se pueda acceder al por medio de conexiones seguras.

Page 37: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

Instalaremos el modulo ssl:

dnf install mod_ssl

Configurando SSL para nuestro dominio:

Nos dirigiremos a la carpeta cd /etc/httpd/conf.d/

Abriremos el archivo ssl.conf. Este archivo se ha agregado después de El gestor de repositorios instalará automáticamente el módulo de apache para conexiones seguras.

nano ssl.conf

Linea que buscamos Nuevo Valor

#DocumentRoot /var/www/html

DocumentRoot /var/www/html

#ServerName ServerName www.alejandro.asor.com

#SSLCertificateFile SSLCertificateFile /etc/pki/tls/certs/alejandro.asor.com.crt

Ruta al certificado

#SSLCertificateKeyFile

SSLCertificateKeyFile /etc/pki/tls/private/alejandro.asor.com.key

Ruta a la llave

#SSLCACertificateFile SSLCACertificateFile /etc/pki/tls/certs/ca-bundle.crt

Este es el certificado de autoridad. Cuando creamos el certificado indicamos que era valido para: “*.alejandro.asor.com” eso quiere decir para todo dominio que finalice con .alejandro.asor.com, es decir que el dominio no será valido para https://alejandro.asor.com, pero si será valido para https://www.alejandro.asor.com

Page 38: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

Como podemos ver el candado rojo nos indica que puede haber fraude. Sucede porque no hay alguien que pueda comprobar la identidad virtualmente, para eso tendríamos que comprar un certificado a una empresa y esta empresa certificaría al navegador que sí es la web que dice ser.

Para comprobar que configuramos bien el módulo abriremos el certificado y veremos su información, puedes observarlo según tu navegador.

Page 39: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

Como vemos los datos son correctos, tanto el emitido, como el emisor, y las fechas. En “detalles” podemos ver más detalles del certificado.

Entonces podemos observar que el certificado es el mismo que nosotros generamos. Podemos observar los mismo datos que el certificado que guardó thunderbird.

Page 40: Instalación, configuración y pruebas de servidor email …³n, configuración y pruebas de servidor email postfix usando el protocolo imap y pop3, con cliente desktop y cliente web.

Ingresamos nuestro nombre de usuario y contraseña y podemos loguearnos a nuestra cuenta de correo en nuestro servidor email.

Como podemos ver hemos accedido correctamente a nuestro correo usando un cliente mail web.