GNU/Linux >> Tutoriales Linux >  >> Debian

Cómo configurar Postfix SMTP Relay en Debian con Mailjet

Este tutorial le mostrará cómo configurar la retransmisión SMTP de Postfix con Mailjet en Debian. Postfix es un popular servidor SMTP de código abierto. Anteriormente escribí un artículo sobre cómo configurar rápidamente su propio servidor de correo electrónico en Debian con Modoboa, que ayudó a muchos lectores a ejecutar su propio servidor de correo electrónico.

Sin embargo, algunos lectores me dijeron que el puerto 25 está bloqueado por el proveedor de alojamiento o ISP como una forma de controlar el correo no deseado, por lo que no podían enviar correos electrónicos. Vultr desbloquearía el puerto 25 si se lo pide, y ScalaHosting no bloquea el puerto 25 en absoluto, por lo que recomiendo usar ScalaHosting VPS. Algunos otros proveedores de alojamiento o ISP como DigitalOcean no desbloquearían el puerto 25, entonces, ¿qué puede hacer para evitar este bloqueo, si no puede o no quiere cambiar su proveedor de alojamiento?

Retransmisión SMTP al rescate

Puede omitir el puerto 25 y enviar correos electrónicos al mundo exterior con la retransmisión SMTP porque utiliza el puerto 587. Con la retransmisión SMTP, su propio servidor de correo electrónico no envía correos electrónicos directamente a la dirección de correo electrónico de destino. En cambio, hay un servidor de correo intermedio, también conocido como host inteligente o host de retransmisión, que envía correos electrónicos en su nombre. Su servidor de correo electrónico se comunica con el host inteligente en el puerto 587, luego el host inteligente habla con el servidor de correo del destinatario en el puerto 25.

La retransmisión SMTP también puede ayudarlo a sortear las listas negras antispam, si su dirección IP está en la lista negra por cualquier motivo. El servidor de correo del destinatario verifica la dirección IP del host inteligente en las listas negras antispam públicas, en lugar de la dirección IP de su servidor y porque los servicios de retransmisión SMTP mantienen una buena reputación de IP, por lo que sus correos electrónicos pueden pasar por las listas negras de IP.

Uso de Mailjet para enviar 200 correos electrónicos por día de forma gratuita

Hay varios proveedores de servicios de correo electrónico (ESP) que pueden actuar como host inteligente. Algunos cobran una pequeña tarifa, algunos ofrecen cuotas gratuitas todos los meses. En este artículo, me gustaría mostrarte cómo usar Mailjet, que es un proveedor de servicios de correo electrónico que te permite enviar 200 correos electrónicos por día de forma gratuita.

Lo bueno de Mailjet es que no requiere que ingrese los detalles de su tarjeta de crédito cuando utiliza el servicio de retransmisión SMTP gratuito. Hay otros ESP que ofrecen una cuota gratuita todos los meses, pero requieren que ingrese los detalles de la tarjeta de crédito. (Sé lo frustrante que puede ser no tener una tarjeta de crédito). Mailjet también es más fácil de configurar, en comparación con otros ESP.

Crea una cuenta en mailjet.com. Luego, en el tablero, puede ver las 3 cosas que debe hacer.

  • Configuración de SMTP
  • Gestionar direcciones de remitentes
  • configurar la autenticación de dominio (SPF y DKIM)

Paso 1:configurar Postfix SMTP Relay en Debian

Primero, instalemos el servidor Postfix SMTP en Debian con el siguiente comando. Si Postfix ya se está ejecutando en su servidor, omita la instalación de Postfix , pero aún necesita instalar los libsasl2-modules paquete.

sudo apt install postfix libsasl2-modules

Cuando vea el siguiente mensaje, presione la tecla Tab y presione Entrar.

Luego elige la segunda opción:Internet Site .

A continuación, establezca el nombre de correo del sistema. Por ejemplo, ingreso mi nombre de dominio linuxbabe.com .

Después de instalar Postfix, abra el archivo de configuración.

sudo nano /etc/postfix/main.cf

Busque la siguiente línea.

relayhost =

Por defecto, su valor no está establecido. Debe obtener este valor de su cuenta de Mailjet. En el panel de Mailjet, haz clic en setup my SMTP .

Verá la dirección del servidor SMTP y las credenciales SMTP.

En el archivo de configuración de Postfix, establezca el valor de relayhost a in-v3.mailjet.com:587 .

relayhost = in-v3.mailjet.com:587

Luego agregue las siguientes líneas al final de este archivo.

# outbound relay configurations
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_tls_security_level = may
header_size_limit = 4096000

Guarde y cierre el archivo. Luego cree el /etc/postfix/sasl_passwd archivo.

sudo nano /etc/postfix/sasl_passwd

Agregue el host de retransmisión SMTP y las credenciales SMTP a este archivo como se muestra a continuación. Reemplazar api-key y secret-key con tu clave API real de Mailjet y tu clave secreta.

in-v3.mailjet.com:587  api-key:secret-key

Guarde y cierre el archivo. Luego cree el archivo hash db correspondiente con postmap .

sudo postmap /etc/postfix/sasl_passwd

Ahora debería tener un archivo /etc/postfix/sasl_passwd.db . Reinicie Postfix para que los cambios surtan efecto.

sudo systemctl restart postfix

Por defecto, sasl_passwd y sasl_passwd.db Cualquier usuario del servidor puede leer el archivo. Cambie el permiso a 600 para que solo la raíz pueda leer y escribir en estos dos archivos.

sudo chmod 0600 /etc/postfix/sasl_passwd /etc/postfix/sasl_passwd.db

A partir de ahora, Postfix enviará correos electrónicos a través de Mailjet.

Paso 2:agregar direcciones de remitente

Debe agregar el dominio del remitente o la dirección del remitente para enviar un correo electrónico a través de Mailjet. En el panel de Mailjet, haz clic en manage sender addresses . Puede validar todo su dominio o direcciones de correo electrónico específicas.

Paso 3:Configuración de la autenticación de dominio

En este paso, debemos configurar el registro SPF y DKIM, lo cual es muy recomendable si desea que sus correos electrónicos lleguen a la bandeja de entrada del destinatario en lugar de a la carpeta de correo no deseado.

  • SPF:marco de política del remitente. Este es un registro DNS que especifica qué direcciones IP pueden enviar correos electrónicos desde su dominio.
  • DKIM:correo identificado de claves de dominio. Mailjet firmará digitalmente tus correos electrónicos con una clave privada. El registro DKIM contiene una clave pública que permite que el servidor de correo electrónico del destinatario verifique la firma.

En el panel de Mailjet, haz clic en setup domain authentication . De forma predeterminada, tanto el estado SPF como el estado DKIM son erróneos. Haz clic en manage y siga las instrucciones para agregar registros SPF y DKIM.

Después de crear los registros SPF y DKIM, espere unos momentos y actualice la página web de Mailjet. Sus nuevos registros DNS pueden tardar algún tiempo en propagarse en Internet, según su servicio de alojamiento de DNS. Si los registros SPF y DKIM están configurados correctamente y la propagación está completa, mailjet le indicará que los registros SPF y DKIM son buenos.

Envío de correo electrónico de prueba

Ahora podemos enviar un correo electrónico de prueba con mailx comando como a continuación.

sudo apt install bsd-mailx

echo "this is a test email." | mailx -r from-address -s hello to-address

También puede enviar un correo electrónico de prueba desde su cliente de correo web o cliente de correo de escritorio. También es una buena idea probar su puntaje de correo electrónico en https://www.mail-tester.com. Como puede ver, obtuve una puntuación perfecta.

Resolución de problemas

Si su correo electrónico no se entregó y encontró el siguiente mensaje en el registro de correo (/var/log/mail.log ),

Relay access denied (in reply to RCPT TO command))

entonces es posible que deba editar /etc/postfix/sasl_passwd y elimine el número de puerto después del nombre de host como se muestra a continuación.

in-v3.mailjet.com    api-key:secret-key

Guarde y cierre el archivo. A continuación, vuelva a crear el archivo de índice.

sudo postmap /etc/postfix/sasl_passwd

Reinicie Postfix para que los cambios surtan efecto.

sudo systemctl restart postfix

Ahora puede vaciar la cola de correo electrónico (intentar entregar los correos electrónicos anteriores).

sudo postqueue -f

Adición de dominios adicionales

Si configura un servidor de correo en una máquina nueva para un nuevo nombre de dominio y desea configurar la retransmisión SMTP para este nuevo nombre de dominio, siga los mismos pasos:

  • Configure los ajustes de retransmisión SMTP de Postfix,
  • Validar el nuevo nombre de dominio en el panel de control de Mailjet
  • Configurar verificaciones SPF y DKIM

Debian
  1. Cómo configurar WireGuard VPN en Debian 10

  2. Establecer una IP estática en Debian 11 - ¿Cómo hacerlo?

  3. Cómo configurar un servidor SFTP en Debian 11 Server

  4. Cómo configurar un cortafuegos con UFW en Ubuntu \ Debian

  5. Cómo configurar Nginx con soporte HTTP/2 en Debian 9

Cómo configurar ModSecurity con Nginx en Debian/Ubuntu

Cómo configurar fácilmente un servidor de correo en Debian 9 Stretch con iRedMail

Cómo configurar fácilmente un servidor de correo en Debian 10 Buster con iRedMail

Cómo cambiar el nombre de host en Debian 10

Cómo configurar Mailman con Debian e ISPConfig

Cómo configurar un cortafuegos con UFW en Debian 11