Instalación y configuración de un servidor de correos postfix

Índice

Para instalar un servidor de correos postfix en Debian se instala el paquete postfix.

sudo apt update
sudo apt install postfix

Durante la instalación hay que elegir el tipo de servidor, en este caso Internet Site para recibir y enviar correo directamente y el mailname, que debe coincidir con el dominio, en este caso, javi.gonzalonazareno.org.

Para comprobar el funcionamiento del servidor de correos se puede usar la herramienta mail que se instala con el paquete bsd-mailx para enviar un correo a otro usuario del servidor.

sudo apt install bsd-mailx

Con esta herramienta se puede enviar un correo a otro usuario.

mail profesor@localhost

El usuario profesor recibe el correo.

profesor@sanji:/home/usuario$ mail
Mail version 8.1.2 01/15/2001.  Type ? for help.
"/var/mail/profesor": 1 message 1 new
>N  1 usuario@javi.gonz  Mon Feb  3 08:40   17/660   Mail de prueba
& 
Message 1:
From usuario@javi.gonzalonazareno.org  Mon Feb  3 08:40:36 2025
X-Original-To: profesor
To: profesor@javi.gonzalonazareno.org, to@javi.gonzalonazareno.org
Subject: Mail de prueba
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
Date: Mon,  3 Feb 2025 08:40:36 +0000 (UTC)
From: usuario <usuario@javi.gonzalonazareno.org>

Y en los logs se guarda la información del envío del correo.

usuario@sanji:~$ sudo tail /var/log/mail.log 
Feb  3 08:40:36 sanji postfix/cleanup[1530]: 7766560FA8: message-id=<20250203084036.7766560FA8@sanji.javi.gonzalonazareno.org>
Feb  3 08:40:36 sanji postfix/qmgr[1444]: 7766560FA8: from=<usuario@javi.gonzalonazareno.org>, size=487, nrcpt=2 (queue active)
Feb  3 08:40:36 sanji postfix/local[1532]: 7766560FA8: to=<profesor@javi.gonzalonazareno.org>, orig_to=<profesor>, relay=local, delay=0.06, delays=0.04/0.01/0/0.01, dsn=2.0.0, status=sent (delivered to mailbox)
Feb  3 08:40:36 sanji postfix/cleanup[1530]: 85BC760FAB: message-id=<20250203084036.85BC760FAB@sanji.javi.gonzalonazareno.org>
Feb  3 08:40:36 sanji postfix/qmgr[1444]: 7766560FA8: removed
Feb  3 08:40:36 sanji postfix/local[1533]: 85BC760FAB: to=<usuario@javi.gonzalonazareno.org>, relay=local, delay=0.01, delays=0.01/0/0/0, dsn=2.0.0, status=sent (delivered to mailbox)
Feb  3 08:40:36 sanji postfix/qmgr[1444]: 85BC760FAB: removed

Enviar correos desde el servidor a correos de Internet

Para poder enviar mensajes a correos de Internet, es necesario configurar el parámetro relayhost del fichero /etc/postfix/main.cf para que el servidor de correo reenvíe el mensaje al servidor de correos externo de la red.

relayhost = mail.gonzalonazareno.org

Con la herramienta mail se puede enviar un mensaje a un correo de Internet.

mail correo@javihuete.site
Subject: Mensaje de prueba
Esto es un mensaje de prueba enviado desde el servidor de correo electrónico instalado en Sanji
Cc: 

Recibir correos desde correos de Internet

Para poder recibir correos desde Internet hay que habilitar una regla de DNAT que redirija el tráfico de la máquina router al servidor de correos.

iptables -t nat -A PREROUTING -p tcp --dport 25 -i ens3 -j DNAT --to 192.168.0.3:25
iptables-save > /etc/iptables/rules.v4

Además, en la vista externa del DNS hay que añadir un registro MX.

@       IN      MX      10      luffy.javi.gonzalonazareno.org.

Como en esta red, además, hay otro servidor de correo externo, el dominio se debe añadir en el fichero de configuración de este servidor, bajo el parámetro relay_domains.

Tras seguir estos pasos, se pueden enviar correos electrónicos a direcciones de correo de Internet desde el servidor de correos local.

mail profesor@profesor.org
Subject: Ejercicio 4 - Taller 1       
Hola, José Domingo.
Te envío este correo como parte del ejercicio 4 del taller 1.
Un saludo.
Cc: 
comments powered by Disqus

Relacionados

Configuración de switches en GNS3

En este post se muestran varios ejemplos de configuración de switches gestionables en el simulador GNS3. A los dispositivos se les aplican configuraciones como la creación de VLAN, la configuración del port bonding entre switches o el uso del port mirroring para monitorizar el tráfico de la red.

Leer

Instalación de kind y creación de un cluster de kubernetes

Kind es una alternativa para instalar un cluster de Kubernetes que ejecuta sus diferentes nodos en contenedores docker.

Leer

Cifrado asimétrico con GPG y OpenSSL

En este post se resume brevemente el procedimiento para crear claves de cifrado asimétrico tanto con GPG como con OpenSSL.

Leer