You are on page 1of 12

Configuración Servidor SMTP con PostFix en Fedora 13 25/04/11

Guía de Instalación y Configuración de un
Servidor SMTP en Fedora 13 - PostFix

Por: Luis Alberto Baigorria Rodas.
E-mail: uialberto@gmail.com

Autor: Luis Alberto Baigorria Rodas 1
Web: http://uialberto.wordpress.com
Configuración Servidor SMTP con PostFix en Fedora 13 25/04/11

El presente documento explica como instalar y configurar PostFix en una maquina con Fedora 13
GNU/Linux. El objetivo real es, principalmente, habilitar un mecanismo que permita escribir
correos electrónicos off-line, es decir, sin tener que conectar con Internet en el momento de
escribirlos. Para ello, comenzaremos conociendo algunas definiciones muy importantes.

SMTP

Simple Mail Transfer Protocol (SMTP) Protocolo Simple de Transferencia de Correo, 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 (PDA's, teléfonos móviles,
etc.). Está definido en el RFC 2821 y es un estándar oficial de Internet.1

Funcionamiento

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 <CRLF>. 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.

MUA( MailUser Agent)

Es un programa de ordenador usado para leer y enviar e-mails.

Originalmente, los clientes de correo electrónico fueron pensados para ser programas simples para
leer los mensajes del correo de usuario, enviados por el agente de reparto de correo (MDA)
conjuntamente con el agente de transferencia de correo (MTA) a un buzón local.
Los formatos de buzón de correo más importantes son mbox y Maildir. Estos simplísimos
protocolos para el almacenamiento local de e-mails realizan de una forma muy sencilla la
importación, exportación y copia de seguridad de las carpetas de correo.
Los e-mails pendientes de envío serán entregados al MTA, tal vez a través de un agente de correo
saliente, de forma que el cliente de correo electrónico no necesita proporcionar ninguna clase de
función de transporte.
Dado que las diferentes versiones de Microsoft Windows para uso doméstico nunca han
proporcionado un agente de transferencia de correo, los clientes de correo más modernos deben
soportar protocolos como POP3 e Internet Message Access Protocol (IMAP) para comunicarse con
un MTA remoto localizado en la máquina de proveedores de correo electrónico.

Autor: Luis Alberto Baigorria Rodas 2
Web: http://uialberto.wordpress.com
Configuración Servidor SMTP con PostFix en Fedora 13 25/04/11

IMAP está optimizado para almacenar correos electrónicos en el servidor, mientras que el protocolo
POP3 asume generalmente que el e-mail se descarga al cliente. La gran mayoría de clientes de
correo electrónico emplean el Protocolo de Transferencia Simple de Correo (Simple Mail Transfer
Protocol, SMTP) para enviar los e-mails.

Además de los clientes de correo electrónico de "cliente grueso" y de los pequeños clientes de
correo que cooperan con un MDA/MTA local, aquí presentados, existen también programas de
correo electrónicos basados en la Web, denominados webmail o correo web.

Un importante estándar soportado por la mayoría de los clientes de correo electrónico es MIME,
que se emplea para el envío de archivos binarios adjuntos al correo. Los adjuntos son ficheros que
no forman parte del correo electrónico propiamente dicho, pero que se envían junto con éste.
Messaging Application Programming Interface (MAPI) es una interfaz de programación de
aplicaciones (API) privativa de Microsoft Windows que puede emplearse para acceder al servidor
de correo Microsoft Exchange o para interactuar con el cliente Microsoft Outlook.

MTA(MailTransport Agent)

Es un programa encargado de recoger menssajes y enviarlos, comunicando para ello con otros MTA
segun sea preciso. Lo normal es que funcione como servicio (es decir, de modo continnuo,
esperando peticiones de los MUAs o de otros MTAs y atendiendolas). En Unix/Linux se
implementan como uno o mas demonios. El MTA mas famoso y utilizado es Sendmail; otros MTA
son: PostFix, Qmail. Ademas, productos de groupware como Microsoft Exchange, Lotus Domino
Server, Novell Groupwise o Netscape Messagin Server incluyen MTAs.

Configuración Local

Todos los cambios que se realizaran deberá realizarse con privilegios de administrador (Super
Usuario root).

En el anterior articulo publicado “Guía de Instalación y Configuración de un Servidor DNS”
hemos configurado dos dominios. En este articulo utilizaremos como dominio principal el primer
dominio: www.uagrmdti.edu.bo

Ver: “Guía de Instalación y Configuración de un Servidor DNS”
Ver: Guia de Instalacion y Configuracion de VtingerCRM 5.02

Cambiamos nuestro nombre de host de nuestra maquina:

[root@server home]# gedit /etc/hosts Establecemos el nombre de host nuestro servidor
[root@server etc]# gedit /etc/sysconfig/network acompañado del nombre de nuestro dominio.
[root@server etc]# hostname Los archivos a configurar son: /etc/hosts
server.uagrmdti.edu.bo /etc/sysconfig/network
Ejemplo: server.uagrmdti.edu.bo

Autor: Luis Alberto Baigorria Rodas 3
Web: http://uialberto.wordpress.com
Configuración Servidor SMTP con PostFix en Fedora 13 25/04/11

Deshabilitamos SELinux

[root@server home]# gedit /etc/sysconfig/selinux Editando el archivo
/etc/sysconfig/selinux desabilitamos
SELinux.

Autor: Luis Alberto Baigorria Rodas 4
Web: http://uialberto.wordpress.com
Configuración Servidor SMTP con PostFix en Fedora 13 25/04/11

Luego de haber realizado estos cambios debemos reiniciar la maquina para que esos tengan efectos.

Verificamos o agregamos el registro MX al dominio a configurar el Servidor
SMTP

Un de los requerimiento para un servidor Mail es tener un registro DNS MX para el dominio (en mi
caso uagrmdti.edu.bo) que apunte a mi servidor de Mail (en mi caso mail.uagrmdti.edu.bo).

Si recordamos esta configuración la realizamos el la “Guía de Instalación y Configuración de un
Servidor DNS”

Bien. Entonces verificamos y actualizamos si fuera necesario el archivo:

[root@server home]# service named restart Levantamos el servicio de DNS named.
[root@server home]# /etc/var/named/chroot/var/named Verificamos que la configuración del
[root@server named]# gedit uagrmdti.edu.bo.regs archivo: uagrm.edu.bo.regs tenga los
siguiente valores.

Autor: Luis Alberto Baigorria Rodas 5
Web: http://uialberto.wordpress.com
Configuración Servidor SMTP con PostFix en Fedora 13 25/04/11

Realizada esta configuración estamos listo para proceder a instalar nuestro Servidor SMTP con
PostFix.

Verificar que toda la configuración este correcta.

Instalando Servidor SMPT PostFix

Toda la configuración e instalación deberá realizarse con privilegios de Super Usuario (Root).

Instalamos o verificamos todos los paquetes necesarios para la configuración de Postfix con SASL,
SMTP AUTH, IMAP y POP3. Esto instalara todos lo paquetes requeridos:

1. Instalando paquetes requeridos

[ServerDTI@server ~]$ su -l
Contraseña:
[root@server ~]# yum install postfix
postfix-pflogsumm dovecot cyrus-sasl cyrus-
sasl-devel cyrus-sasl-gssapi cyrus-sasl-md5
cyrus-sasl-ntlm cyrus-sasl-plain cyrus- Ingresamos como Administrador o Super
sasl-sql Usuario (Root). Instalamos los paquetes
...
...
necesarios para PostFix.
Actualizado:
dovecot.i686 1:1.2.16-1.fc13

¡Listo!
[root@server named]#
[root@server named]#

Autor: Luis Alberto Baigorria Rodas 6
Web: http://uialberto.wordpress.com
Configuración Servidor SMTP con PostFix en Fedora 13 25/04/11

1.2 Desintalamos Sendmail

[ServerDTI@server ~]$ su -l
Contraseña:
[root@server named]# yum remove sendmail
Eliminado(s):
sendmail.i686 0:8.14.4-4.fc13
Desintalamos SendMail.
Dependencia(s) eliminada(s):
sendmail-cf.noarch 0:8.14.4-4.fc13

¡Listo!
[root@server named]#

Con eso ya tenemos instalado el paquete a utilizar.

Realizando ajustes necesarios en el archivo de configuración

Editaremos el archivo:

/etc/postfix/main.cf

Y configuraremos los parámetros importantes.

[root@server home]# cd /etc/postfix Editamos el archivo de configuración de
[root@server postfix]# gedit main.cf PostFix. Con los siguientes parámetros.

myhostname = server.uagrmdti.edu.bo
mydomain = uagrmdti.edu.bo

Autor: Luis Alberto Baigorria Rodas 7
Web: http://uialberto.wordpress.com
Configuración Servidor SMTP con PostFix en Fedora 13 25/04/11

myorigin = $uagrmdti.edu.bo

Las siguentes lineas deberan ser descomentadas:

inet_interfaces = $myhostname, localhost

mydestination = $myhostname, $mydomain, localhost

local_recipient_maps = unix:passwd.byname $alias_maps

unknown_local_recipient_reject_code = 550

mynetworks_style = subnet

mynetworks = 192.168.4.0/30, 127.0.0.0/8 // Aquí mi red Local.

relay_domains = $mydestination

mail_spool_directory = /var/spool/mail

Esos son todos los cambios originales que necesitan realizarse.

Aquí hay algunos ítems añadidos para SASL / SMTP AUTH (añadidos al final del archivo
/etc/postfix/main.cf):

smtpd_sasl_auth_enable = yes

smtpd_sasl_security_options = noanonymous

broken_sasl_auth_clients = yes

Autor: Luis Alberto Baigorria Rodas 8
Web: http://uialberto.wordpress.com
Configuración Servidor SMTP con PostFix en Fedora 13 25/04/11

smtpd_recipient_restrictions = permit_sasl_authenticated, permit_mynetworks,
reject_unauth_destination

También al final del archivo /etc/postfix/main.cf, usted puede añadir una configuración para el
máximo tamaño del buzón de mensajes y archivos adjunto.

Yo asumiré un máximo de 20mb para archivos adjuntos y 100mb para el buzón de mensajes.

Para ello, tenemos que añadir:

message_size_limit = 20971520

mailbox_size_limit = 104857600

Instalando Dovecot Pop3 /Imap

Verificamos si tenemos instalado el paquete. Si no se encuentra, procedemos con lainstalacion del
paquete.

[root@server postfix]# rpm -qa | grep dovecot Ingresamos como Administrador o
dovecot-1.2.16-1.fc13.i686 Super Usuario (Root). Instalamos
[root@server postfix]# yum install dovecot dovecot si no se encuentra instalado.

Realizando ajustes necesarios en el archivo de configuración

Editaremos el archivo:

/etc/dovecot.conf

Y configuraremos los parámetros importantes.

[root@server home]# cd /etc/ Editamos el archivo de configuración de
[root@server postfix]# gedit dovecot.conf dovecot.conf. Con los siguientes
parámetros.

protocols = imap pop3
imap_listen = *
pop3_listen = *

#imaps_listen = *

Autor: Luis Alberto Baigorria Rodas 9
Web: http://uialberto.wordpress.com
Configuración Servidor SMTP con PostFix en Fedora 13 25/04/11

#pop3s_listen = *
ssl_disable = yes
#ssl_cert_file = /usr/share/ssl/certs/dovecot.pem
#ssl_key_file = /usr/share/ssl/private/dovecot.pem

Si tiene activado Iptables, puede ajustar los puertos abiertos con el siguiente comando:

system-config-securitylevel-tui

Seleccione habilitar (si esta desactivado) y luego en Personalizar…
Usted necesitara abrir los puestos imap:tcp pop3:tcp https:tcp en a parte inferior, como también
habilitar ssh y www en la parte superior (eso incluye el agregarle a squirrelmail luego) y también le
permite conectarse mediante SSH al servidor o puede utilizar el siguiente archivo en
/etc/sysconfig/iptables

Enviando correo de prueba con el Servidor PostFix

Por cada usuario creado en el Sistema usted dispone de una cuenta de correo. En este ejemplo el
usuario:

grupo1sa@uagrmdti.edu.bo

Envia un correo electrónico al usuario:

grupo2sa@uagrmdti.edu.bo

Al final verificamos si el correo llego al usuario destinatario con el comando:

En PostFix los usuarios se encuentran el el directorio:

/var/spool/mail/

En el se crea un directorio por cada usuario de sistema.

[root@server etc]# ls -l /var/spool/mail
total 24
-rw-rw----. 1 grupo1sa mail 0 abr 4 11:05 dti
-rw-rw---- 1 grupo1sa mail 11828 abr 15 10:24 grupo1sa
-rw-rw---- 1 grupo2sa mail 2184 abr 26 13:28 grupo2sa
-rw------- 1 root root 5208 abr 14 11:58 root
-rw-rw----. 1 rpc mail 0 ago 14 2010 rpc
-rw-rw----. 1 ServerDTI mail 0 mar 31 11:28 ServerDTI
-rw-rw----. 1 Albertinho mail 0 ago 15 2010 uiAlberto
[root@server etc]

Autor: Luis Alberto Baigorria Rodas 10
Web: http://uialberto.wordpress.com
Configuración Servidor SMTP con PostFix en Fedora 13 25/04/11

[root@server etc]# service dovecot start
Iniciando Dovecot Imap:
[root@server etc]# service dovecot restart
Parando Dovecot Imap: [ OK ]
Iniciando Dovecot Imap: [ OK ]
[root@server etc]# service postfix restart
Apagando postfix: [ OK ]
Iniciando postfix: [ OK ]
[root@server etc]# telnet 127.0.0.1 25
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
220 server.uagrmdti.edu.bo ESMTP Postfix
mail from: grupo1sa@uagrmdti.edu.bo
250 2.1.0 Ok
rcpt to: grupo2sa@uagrmdti.edu.bo
250 2.1.5 Ok
data
354 End data with <CR><LF>.<CR><LF>
Prueba de envio de correo maual por PostFix
Probando otra linea. :)
.
250 2.0.0 Ok: queued as EE4FB889FF
bye
502 5.5.2 Error: command not recognized
q
502 5.5.2 Error: command not recognized
quit
221 2.0.0 Bye
Connection closed by foreign host.
[root@server etc]# cat /var/spool/mail/grupo2sa
From ServerDTI@server.uagrmdti.edu.bo Wed Apr 13 10:31:15 2011
Return-Path: <ServerDTI@server.uagrmdti.edu.bo>
Received: from server.uagrmdti.edu.bo (localhost.localdomain [127.0.0.1])
by server.uagrmdti.edu.bo (8.14.4/8.14.4) with ESMTP id p3DEVFVD003985
for <grupo2sa@uagrmdti.edu.bo>; Wed, 13 Apr 2011 10:31:15 -0400
Received: (from root@localhost)
by server.uagrmdti.edu.bo (8.14.4/8.14.4/Submit) id p3DEVFXb003984
for grupo2sa@uagrmdti.edu.bo; Wed, 13 Apr 2011 10:31:15 -0400
From: ServerDTI@server.uagrmdti.edu.bo
Message-Id: <201104131431.p3DEVFXb003984@server.uagrmdti.edu.bo>
Date: Wed, 13 Apr 2011 10:31:15 -0400
To: grupo2sa@uagrmdti.edu.bo
Subject: Prueba Fedora
User-Agent: Heirloom mailx 12.4 7/29/08
MIME-Version: 1.0

Autor: Luis Alberto Baigorria Rodas 11
Web: http://uialberto.wordpress.com
Configuración Servidor SMTP con PostFix en Fedora 13 25/04/11

Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

Te envio un correo probando SMTP

From grupo1sa@uagrmdti.edu.bo Wed Apr 13 11:22:53 2011
Return-Path: <grupo1sa@uagrmdti.edu.bo>
Received: from server.uagrmdti.edu.bo ([192.168.1.81])
by server.uagrmdti.edu.bo (8.14.4/8.14.4) with ESMTP id p3DFMrLw005153
for <grupo2sa@uagrmdti.edu.bo>; Wed, 13 Apr 2011 11:22:53 -0400
From: Grupo 1 SA <grupo1sa@uagrmdti.edu.bo>
Organization: DTI
To: grupo2sa@uagrmdti.edu.bo
Subject: Prueba Grupo 2 SA
Date: Wed, 13 Apr 2011 11:22:53 -0400
User-Agent: KMail/1.13.2 (Linux/2.6.34.7-56.fc13.i686; KDE/4.4.2; i686; ; )
MIME-Version: 1.0
Message-Id: <201104131122.53203.grupo1sa@uagrmdti.edu.bo>
Content-Type: Text/Plain;
charset="us-ascii"
Content-Transfer-Encoding: 7bit

Hola Prueba de DTI Correo Electronico

From grupo1sa@uagrmdti.edu.bo Tue Apr 26 13:28:48 2011
Return-Path: <grupo1sa@uagrmdti.edu.bo>
X-Original-To: grupo2sa@uagrmdti.edu.bo
Delivered-To: grupo2sa@uagrmdti.edu.bo
Received: from server.uagrmdti.edu.bo (server.uagrmdti.edu.bo [127.0.0.1])
by server.uagrmdti.edu.bo (Postfix) with SMTP id EE4FB889FF
for <grupo2sa@uagrmdti.edu.bo>; Tue, 26 Apr 2011 13:27:24 -0400 (BOT)
Message-Id: <20110426172754.EE4FB889FF@server.uagrmdti.edu.bo>
Date: Tue, 26 Apr 2011 13:27:24 -0400 (BOT)
From: grupo1sa@uagrmdti.edu.bo
To: undisclosed-recipients:;

Prueba de envio de correo maual por PostFix
Probando otra linea. :)

[root@server etc]#

Autor: Luis Alberto Baigorria Rodas 12
Web: http://uialberto.wordpress.com