Pide tu presupuesto ya!
8th February 2024
¿Estás buscando un Agente de transferencia de correo (MTA) ¿Quieres transferir/enviar correo de un servidor a otro pero no tienes el presupuesto para conseguir uno? ¿Por qué no considerar ser parte del 25% de todos los servidores públicos que utilizan Postfix? Postfix es un MTA gratuito y de código abierto que enruta y entrega correo electrónico.
En este tutorial, aprenderá cómo instalar y configurar Postfix en un servidor Ubuntu y luego probará si Postfix envía correctamente sus correos electrónicos.
¡Sigue leyendo y envía tus correos electrónicos sin gastar!
Esta publicación será un tutorial paso a paso. Para seguir adelante, asegúrese de tener una computadora con al menos Ubuntu 14.04.4 LTS. Este tutorial utiliza Ubuntu 20.04.4 LTS.
Postfix es un agente de transferencia de mensajes (MTA) que transfiere correos electrónicos entre las computadoras de un remitente y un destinatario. Otra gran característica de Postfix es que es compatible con todos los principales sistemas operativos Unix, pero no viene instalado de forma predeterminada.
Para instalar Postfix en una máquina Ubuntu, tiene dos opciones; de forma remota a través de SSH o directamente en la consola Ubuntu VM a través de terminal ubuntu. Pero para este tutorial, instalarás Postfix de forma remota a través de SSH.
1. Ingrese SSH a su máquina virtual Ubuntu usando su cliente SSH favorito.
2. A continuación, ejecute el actualización adecuada comando a continuación para garantizar que su sistema tenga todas las fuentes de paquetes más recientes disponibles.
3. Ejecute el siguiente comando apt install para instalar el paquete postfix.
En el siguiente comando, pasa la variable ambiental DEBIAN_PRIORITY=low, lo que le permite configurar opciones adicionales.
Después de ejecutar el comando, verá la pantalla de configuración de Postfix (paso cuatro).
sudo DEBIAN_PRIORITY=low apt install postfix

4. Ahora, resalte el tipo de configuración del servidor de correo (Sitio de Internet), como se muestra a continuación, y presione Entrar.

5. Ahora, especifique el nombre de correo del sistema o el nombre de dominio completo (FQDN) y presione Entrar. Este tutorial utiliza el nombre de host de la máquina Ubuntu. Pero puedes elegir lo que sea adecuado para ti o tu dominio registrado.
Para encontrar el nombre de host de la máquina ubuntu, ejecute el comando hostname.

6. A continuación, configure su destinatario de correo raíz y postmaster (ubuntu) con lo que desee y presione Entrar. Este root y postmaster es la cuenta de Linux a la que se enviarán sus correos electrónicos.

7. Configure los dominios para los cuales su servidor de correo aceptará los correos electrónicos. Puede agregar varios dominios y presionar Enter.
La siguiente configuración utiliza dominios de correo electrónico predeterminados, como localhost, ip-172-31-45-167.ec2.internal.

8. Elija si desea forzar actualizaciones sincrónicas de la cola de correo o no. Pero en este caso, seleccione el valor predeterminado (

9. Configure la red local, que permitirá enviar/recibir correos electrónicos en su máquina, y presione Entrar. Este tutorial utiliza la red predeterminada con las que ya se proporcionan en el cuadro de entrada.

10. Ahora especifique el límite que debe tener Postfix para el buzón, para que no obtenga ningún error. Para este tutorial, establezca el valor predeterminado en 0 bytes y presione Entrar.

11. Después de configurar el límite de tamaño del buzón, especifique un carácter (+) que usará para definir una extensión de dirección local.

12. Elija los protocolos de Internet que desea utilizar con Postfix y presione Entrar. La elección de este tutorial es completa, que incluye tanto ipv4 como ipv6.

Después de realizar todos los cambios de configuración, notará en su terminal que Postfix extrae todos esos cambios de configuración y los instala automáticamente. A estas alturas, su software Postfix debería estar instalado correctamente.

13. Finalmente, ejecute el comando systemctl a continuación para verificar el software Postfix en su máquina Ubuntu.
sudo systemctl status postfix
El estado activo (salido) a continuación indica que Postfix se instaló exitosamente y se está ejecutando actualmente.

Ha instalado y configurado Postfix con éxito en su máquina Ubuntu, y ese es un gran paso para aprovechar Postfix. Pero todavía hay más configuraciones y ajustes de los que tendrás que encargarte, como mapear direcciones de correo electrónico para que puedas enviar correos electrónicos en tu máquina Linux.
Para recibir un correo electrónico de cualquiera de las direcciones de correo electrónico definidas en su máquina Linux, asigne la dirección de correo electrónico asociada con una cuenta de Linux:
1. Edite el /etc/postfix/virtual archivo en su editor de texto preferido.
2. A continuación, agregue la siguiente línea al virtual archivo, guarde los cambios y cierre el editor.
ubuntu (al final) es el usuario en la máquina Linux, mientras que [email protected] es la dirección de correo electrónico de origen y destino.
3. A continuación, ejecute los siguientes comandos, que no proporcionan resultados, pero aplican la asignación de correo electrónico (postmap) y reinicia postfix para que los cambios que realizó en el paso uno surtan efecto.
sudo postmap /etc/postfix/virtual
sudo systemctl restart postfix
4. Una vez que Postfix se reinicie, ejecute el siguiente comando para permitir Postfix en su firewall UFW. Hacerlo le permitirá enviar correos electrónicos sin que se bloquee en ninguna parte de su máquina.

5. Finalmente, ejecute el posconferencia comando a continuación para establecer la ubicación inicial del buzón (home_mailbox = Maildir/), que puede cambiar más tarde en cualquier momento.
sudo postconf -e 'home_mailbox= Maildir/'
Ahora que ha configurado Postfix por completo, es hora de probar si su máquina Ubuntu recibe correos electrónicos. Pero primero tendrás que instalar un cliente de correo electrónico, caracoluno de los clientes de correo más compatibles con Ubuntu.
1. Ejecute el siguiente comando para proporcionar un directorio de buzón (MAIL=~/Maildir) donde se reciben los correos electrónicos.
Este comando le dice a Postfix que reciba correos electrónicos en la sesión actual (/etc/bash.bashrc) y permanentemente (/etc/profile.d/mail.sh) en el directorio ~/Maildir.
El comando tee lee la entrada estándar y la escribe tanto en la salida estándar como en uno o más archivos.
echo 'export MAIL=~/Maildir' | sudo tee -a /etc/bash.bashrc | sudo tee -a /etc/profile.d/mail.sh

2. A continuación, ejecute el comando apt install para instalar s-nail en su máquina usando la variable MAIL.

3. Edite la configuración del cliente s-nail (/etc/s-nail.rc) en su editor y agregue los siguientes comandos.
Estos comandos permiten al cliente s-nail abrir la bandeja de entrada vacía (emptystart), establecer la ubicación del buzón como una ruta de directorio (carpeta=Maildir) y generar un archivo de buzón enviado (registro=+enviado).
set emptystart
set folder=Maildir
set record=+sent
4. Ahora, ejecute el siguiente comando para enviar un correo electrónico usando la opción -Snorecord, que genera la estructura de directorio adecuada dentro de su directorio de buzón configurado (/Maildir).
Este comando no proporciona resultados, pero verificará la estructura del directorio en el siguiente paso.
echo 'init' | s-nail -s 'init' -Snorecord ubuntu
5. Ejecute el siguiente comando ls para verificar si la estructura del directorio se ha creado correctamente.
Si tiene éxito, verá la estructura del directorio creada, como se muestra a continuación.

6. Finalmente, ejecute el comando s-nail a continuación para revisar su bandeja de entrada.
Al ejecutar el comando s-nail, notará que el correo electrónico (en el paso cuatro) se envió correctamente utilizando las siguientes configuraciones que estableció.

Acabas de aprender cómo se envía un correo electrónico en una máquina local utilizando Postfix. Pero, ¿Postfix es capaz de enviar correos electrónicos fuera de su máquina local? ¡Sí! Configurará Postfix para utilizar una retransmisión SMTP externa para enviar correos electrónicos.
Antes de configurar Postfix, consulte el siguiente diagrama para comprender el flujo de trabajo del correo electrónico cuando se utiliza un SMTP externo.

Para configurar Postfix para usar un SMTP externo:
1. Edite el /etc/postfix/sasl/sasl_passwd archivo y agregue la siguiente línea que contiene su dirección de correo electrónico de retransmisión SMTP, dirección de correo electrónico de Google y contraseña.
2. A continuación, ejecute el siguiente comando postmap para que las credenciales que configuró en el paso uno estén cifradas. Este comando crea un archivo de contraseña (sasl_passwd.db) en el mismo lugar.
sudo postmap /etc/postfix/sasl_passwd
3. Ejecute cada uno de los siguientes comandos, que no proporcionan resultados, pero cambian la seguridad y la propiedad del archivo de contraseña (sasl_passwd.db). Estos comandos restringen el acceso del usuario root y solo lectura y escritura.
sudo chown root:root /etc/postfix/sasl_passwd /etc/postfix/sasl_passwd.db
sudo chmod 0600 /etc/postfix/sasl_passwd /etc/postfix/sasl_passwd.db
4. Ahora, edite el /etc/postfix/main.cf y agregue la siguiente configuración, que le permite enviar un correo electrónico de forma segura.
relayhost = [smtp.gmail.com]:587
smtp_sasl_security_options = noanonymous
smtp_sasl_auth_enable = yes
header_size_limit = 4096
smtp_sasl_password_maps = hash:/etc/postfix/sasl/sasl_passwd
smtp_tls_security_level = encrypt
smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt
smtp_use_tls = yes
smtp_sasl_tls_security_options = noanonymous
5. Ejecute el siguiente comando, que no proporciona resultados, pero reiniciará el servicio postfix. Reiniciar el servicio Postfix garantiza las configuraciones que realizó en el /etc/postfix/main.cf El archivo del paso cuatro tendrá efecto.
sudo service postfix restart
6. Finalmente, ejecute los siguientes comandos para enviar un correo electrónico (eco) a su cuenta de Google y verificar los registros de su máquina (cola).
echo "Test Postfix Gmail SMTP Relay" | mail -s "Postfix Gmail SMTP Relay " [email protected]
sudo tail /var/log/mail.log
Como puede ver a continuación, el correo electrónico se envió correctamente al relé de Google.

Alternativamente, navegue hasta su cuenta de Gmail y debería ver un correo electrónico similar al siguiente.

En este tutorial, aprendió a instalar y configurar Postfix en una máquina Ubuntu. Ha instalado e integrado un cliente de correo con Postfix para enviar correos electrónicos sin procesar utilizando una dirección de correo electrónico asignada a una cuenta de Linux.
En este punto, tiene la confianza suficiente para utilizar Postfix como un útil agente de correo electrónico para enrutar y entregar correos electrónicos de forma segura.
Existen otras formas de enviar correos electrónicos, como utilizar API y SDK. Pero si desea enviar mensajes de correo electrónico en la red local, combinar Postfix con s-nail sería lo más adecuado para fines de desarrollo.
Leave a comment