Análisis y encuestas nos expresan comentarios muy buenos sobre Sendmail, esto de acuerdo a una encuesta realizada por la editorial O’Reilly, la cual formuló la siguiente pregunta. ¿Cuántas empresas tienen implementado como servidor de correo a Sendmail?
Para dicha encuesta se seleccionaron al rededor de 400.000 dominios. Entre ellos, más del 12 % de los encuestados respondieron que tenían implementado a Sendmail como servidor de correo. Por su parte, el segundo lugar fue para Postfix con un 8.6 % y en tercer lugar tenemos a Postini con el 8.5%.
Protocolo SMTP
El Simple Mail Transfer Protocol (SMTP en inglés y Protocolo Simple de Transferencia de Correo en español) es un protocolo de la capa de aplicación. Protocolo de red basado en texto utilizado para el intercambio de mensajes de correo electrónico entre computadoras u otros dispositivos SMTP se basa en el modelo cliente-servidor, donde un cliente envía un mensaje a uno o varios receptores.
La comunicación entre el cliente y el servidor consiste enteramente en líneas de texto compuestas por caracteres ASCII. El tamaño máximo permitido para estas líneas es de 1000 caracteres.
Las respuestas del servidor constan de un código numérico de tres dígitos, seguido de un texto explicativo. El número va dirigido a un procesado automático de la respuesta por autómata, mientras que el texto permite que un humano interprete la respuesta. En el protocolo SMTP todas las órdenes, réplicas o datos son líneas de texto, delimitadas por el carácter . Todas las réplicas tienen un código numérico al comienzo de la línea.
En el conjunto de protocolos TCP/IP, el SMTP va por encima del TCP, usando normalmente el puerto 25 en el servidor para establecer la conexión.
Protocolo POP3
POP3 está diseñado para recibir correo, no para enviarlo. A su vez, 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 la mayoría de los clientes de correo incluyen la opción de dejar los mensajes en el servidor, de manera tal que 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
- 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.
Protocolo IMAP
Internet Message Access Protocol, o su acrónimo IMAP, es un protocolo de red de acceso a mensajes electrónicos almacenados en un servidor. Mediante IMAP se puede tener acceso al correo electrónico desde cualquier equipo que tenga una conexión a Internet.
Al mismo tiempo, este tiene varias ventajas sobre POP, que es el otro protocolo empleado para obtener correo desde un servidor. Por ejemplo, es posible especificar en IMAP carpetas del lado 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.
Ventajas sobre POP3
Al utilizar POP3, los clientes se conectan brevemente al servidor de correo, solamente el tiempo que les tome descargar los nuevos mensajes. Al utilizar IMAP, los clientes permanecen conectados el tiempo que su interfaz permanezca activa y descargan los mensajes bajo demanda. Esta manera de trabajar de IMAP puede dar tiempos de respuesta más rápidos para usuarios que tienen una gran cantidad de mensajes o mensajes grandes.
A través de la utilización de señales definidas en el protocolo IMAP4 de los clientes, se puede vigilar el estado del mensaje, por ejemplo, si el mensaje ha sido o no leído, respondido o eliminado. Estas señales se almacenan en el servidor, de manera que varios clientes conectados al mismo correo en diferente tiempo pueden detectar los cambios hechos por otros clientes.
IMAP4 proporciona un mecanismo para que los clientes pidan al servidor que busque mensajes de acuerdo a una cierta variedad de criterios. Este mecanismo evita que los clientes descarguen todos los mensajes de su buzón de correo, agilizando, de esta manera, las búsquedas.
Instalación de Sendmail
El proceso de instalación de Sendmail requiere de los siguientes paquetes:
- Sendmail
- Sendmail.cf
- Dovecot
- Cyrus
- Cyrus-sasl-mmd5
- Cyrus-sasl-plain
- Make
- m4.
Configuración Básica de Sendmail
Los ficheros generados a partir de la instalación del servidor de correo Sendmail que modificaremos serán los siguientes:
- Access
- local-host-names
- relay-domains —> (Este fichero será creado por usted)
- sendmail.mc
Configuración del fichero –> /etc/mail/access
En este fichero se definen los dominios o conjunto de direcciones IP que podrán hacer uso o no del servidor de correo.
La sintaxis de este fichero es el siguiente
Connect:midominio1.net [acción]
Connect:midominio2.net [acción]
Connect:midominio3.net [acción]
Connect:midominio4.net [acción]
Los valores que puede tomar el parámetro [acción] son los siguientes:
RELAY | Permite el envío de correo a través de nuestro servidor. |
REJECT | Niega el uso de nuestro servidor para la entrega de correo. |
Configuración del fichero –> /etc/mail/local-host-names
Se suele utilizar para escribir aquellos dominios o equipos de los cuales sendmail va a recibir correo. Por ejemplo, si nuestro servidor de correo va a aceptar correo proveniente del dominio.
midominio.com.mx
Y también de la máquina:
correo.midominio.com.mx
Nuestro fichero local-host-names debería quedar editado de la siguiente forma:
correo.midominio.com.mx
midominio.com.mx
Configuración del fichero –> /etc/mail/relay-domains
En este fichero se introducirán los nombres de los equipos, redes o dominios desde o hacia las que podemos hacer transmisión de correo.
Por ejemplo:
midominio.com.mx
correoomidominio.com.mx
Como podemos observar estamos permitiendo la transmisión a cualquier correo que “venga de” o “vaya hacia” el dominio “midominio.com.mx” , así como también al dominio “correo.midominio.com.mx”.
Prácticamente es una copia del fichero /etc/mail/local-host-names
Configuración del fichero –> /etc/mail/sendmail.mc
Este fichero contiene la configuración completa del servidor de correo, es por ello que debe ser cuidadoso al momento de editarlo.
Activando interfaces de red
Por defecto, Sendmail está configurado para enviar correos desde la interfaz loopback 127.0.0.1. Esto quiere decir que unicamente el servidor envía correos a sí mismo, para cambiar este comportamiento solo deberás ubicar la siguiente línea.
DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl
Luego, eliminar el parámetro:
Addr=127.0.0.1
Al final, la línea deberá quedar de la siguiente manera.
DAEMON_OPTIONS(`Port=smtp, Name=MTA')dnl
Con esta acción, Sendmail asumirá que podrá enviar correos desde cualquier IP. A su vez, también podrás declarar cada una de las direcciones IP por las cuales se podrá enviar correo.
Ejemplo:
DAEMON_OPTIONS(`Port=smtp,Addr=192.168.0.1 Name=MTA')dnl
DAEMON_OPTIONS(`Port=smtp,Addr=172.16.0.10 Name=MTA')dnl