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 activarsmtpd_sasl_auth_enable = yes
. - SPF, DKIM y DMARC: Implementar políticas DNS y firmar mensajes con OpenDKIM.
- Firewall: Usar
ufw
ofirewalld
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
- Enviar un correo de prueba con
mail
oswaks
. - Verificar los logs en
/var/log/mail.log
. - 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.
Leave a Reply