Configuración de un servidor de correo Postfix básico

Introducción

Postfix es un potente agente de transporte de correo (MTA) de código abierto, conocido por su seguridad, rendimiento y facilidad de configuración. En este artículo detallado revisaremos un enfoque básico para montar un servidor de correo con Postfix sobre sistemas Linux (Debian, Ubuntu, CentOS, etc.). Además, veremos buenas prácticas para fortalecer la seguridad, autenticar usuarios y probar el funcionamiento.

1. Requisitos Previos

  • Acceso root o sudo en la máquina Linux.
  • Nombre de dominio válido y sus registros MX apuntando al servidor.
  • Puertos 25 (SMTP), 587 (submission) y 465 (SMTPS) abiertos en el firewall.
  • DNS inverso configurado para la IP del servidor.

2. Instalación de Postfix

En distribuciones basadas en Debian/Ubuntu:

sudo apt update
sudo apt install postfix

En CentOS o RHEL:

sudo yum install postfix

2.1 Configuración inicial

Durante la instalación, seleccione el Internet Site y coloque el nombre de dominio completo (por ejemplo, mail.ejemplo.com).

3. Configuración Básica

3.1 main.cf

Edite /etc/postfix/main.cf y asegúrese de incluir:

Parámetro Valor sugerido
myhostname mail.ejemplo.com
mydomain ejemplo.com
myorigin mydomain
inet_interfaces all
home_mailbox Maildir/

Al final del archivo, agregue:

smtpd_tls_cert_file=/etc/letsencrypt/live/mail.ejemplo.com/fullchain.pem
smtpd_tls_key_file=/etc/letsencrypt/live/mail.ejemplo.com/privkey.pem
smtp_tls_security_level=may
smtpd_tls_security_level=may
smtpd_tls_session_cache_database=btree:{data_directory}/smtpd_scache

3.2 master.cf

Asegúrese de habilitar los servicios de envío de correo autenticado:

submission inet n       -       y       -       -       smtpd
  -o syslog_name=postfix/submission
  -o smtpd_tls_security_level=encrypt
  -o smtpd_sasl_auth_enable=yes

4. Autenticación y Seguridad

Para permitir a los usuarios enviar correo con autenticación:

  • SASL: Instalar libsasl2-modules y activar smtpd_sasl_auth_enable = yes.
  • SPF, DKIM y DMARC: Implementar políticas DNS y firmar mensajes con OpenDKIM.
  • Firewall: Usar ufw o firewalld para restringir puertos.

4.1 Cifrado TLS

Obtener certificados gratuitos con Lets Encrypt:

sudo apt install certbot
sudo certbot certonly --standalone -d mail.ejemplo.com

5. Pruebas y Verificación

  1. Enviar un correo de prueba con mail o swaks.
  2. Verificar los logs en /var/log/mail.log.
  3. Usar herramientas online para comprobar SPF, DKIM y DMARC.

6. Solución de Problemas

Algunos problemas comunes y sus causas:

  • Rechazo 550: DNS inverso incorrecto o bloqueo por anti-spam.
  • Timeout SMTP: Firewall o puerto bloqueado.
  • Autenticación fallida: Credenciales SASL mal configuradas.

7. Consideraciones Adicionales

Si su red requiere túneles VPN para mayor privacidad, puede usar soluciones como OpenVPN o WireGuard. Esto asegura el tránsito de datos entre clientes y servidores de correo.

Conclusión

Configurar un servidor de correo Postfix básico implica instalar el paquete, ajustar main.cf y master.cf, habilitar TLS y SASL, ajustar políticas DNS y probar exhaustivamente. Con este enfoque escalable y seguro, obtendrá una plataforma de correo fiable y profesional.

  • Hola 👋 , soy la IA de Linuxmind.dev, te puedo ayudar a aprender.
Gathering thoughts ...

Leave a Reply

Your email address will not be published. Required fields are marked *