Cómo configurar SendGrid SMTP en CyberPanel

SendGrid es un servicio SMTP basado en la nube que permite la entrega de correos electrónicos sin la necesidad de administrar servidores de correo.

Nota: El puerto 25 está cerrado para la conexión en nuestras VMs por defecto. Si deseas abrir el puerto 25, compra Mail Bridge y configúralo en Starlight™ Manager.

Para configurar el correo de SendGrid en WHM, por favor usa esta guía.

Por favor, sigue los pasos a continuación para configurar el servicio SendGrid y el Sistema de Correo para tu nombre de dominio en el lado de CyberPanel:

1. Regístrate en SendGrid:

Una vez que completes toda la información de contacto, haz clic en “Continuar”.

2. Serás redirigido a una nueva pestaña en el navegador para verificar tu cuenta de correo. Copia el código de verificación enviado a tu cuenta de correo, ingrésalo en el campo “Código” y haz clic en “Verificar”:

3. Verifica tu número de teléfono ingresando el código de verificación enviado a este en el campo “Ingresa el código de certificación” y haz clic en “Verificar”:

4. Luego, se te proporcionará el código de recuperación que es útil en caso de perder tu teléfono o no tener acceso a tu dispositivo de verificación. Copia el código, guárdalo y haz clic en “Continuar”. También hay una opción para descargar el código como archivo:

5. Llena tu información de contacto en la siguiente página y haz clic en “Siguiente”:


6. En la siguiente página, por favor abre tu panel de SendGrid:

7. Una vez ahí, ve a “Configuración” >> el menú “Claves API” para crear una nueva clave API:


8. En el menú abierto, ingresa el nombre de la clave API, establece los permisos de la clave API en la opción “Acceso total” y guarda la configuración:

9. Configura la Autenticación de Remitente de SendGrid. Hay dos formas de hacerlo:

Método 1: Verificación de remitente único

Verificación de remitente único - es un método rápido de verificación que permite agregar un destinatario autorizado (una o varias direcciones de correo electrónico) al usar una cuenta de SendGrid. Puede usarse, por ejemplo, si deseas enviar correos desde john.doe@example.com que está agregado en el servidor cPanel a jane.doe@gmail.com. La dirección de correo jane.doe@gmail.com debe agregarse a la Verificación de remitente único en SendGrid para esto.

Nota: La verificación de remitente único se recomienda solo para pruebas.

Nota: Solo puedes enviar desde la dirección que verifiques y no desde cualquier dirección en un dominio autenticado.

Para configurar la verificación de remitente único, navega a “Configuración” desde tu panel de SendGrid >> el menú “Autenticación de remitente” >> haz clic en el botón “Verificar un remitente único”:

En la siguiente página, crea un remitente llenando la información de contacto y haz clic en “Crear” para guardar todo:

Después de eso, recibirás un correo de verificación de SendGrid. Para confirmar la adición de la dirección de correo, haz clic en el botón “Verificar remitente único” desde el correo:

Método 2: Autenticación de dominio (recomendado)

Haz clic en “Configuración” >> navega al menú “Autenticación de remitente” >> bajo el campo “Autenticación de dominio”, haz clic en “Autentica tu dominio”:

En la siguiente página, autentica tu nombre de dominio respondiendo las preguntas de los pasos uno y dos y haz clic en “Siguiente”:

Nota: En la captura de pantalla, hemos elegido la respuesta “No” a la segunda pregunta. Sin embargo, esta respuesta es opcional.

Después de eso, ingresa el nombre de dominio necesario, configura cualquier ajuste adicional si es necesario y haz clic en “Siguiente”:

Ahora es necesario verificar el nombre de dominio configurando los registros DNS CNAME y TXT correspondientes.

Una vez que los registros DNS se hayan creado para el dominio, confirma su adición en el paso 2 marcando la casilla “He agregado estos registros” y haz clic en “Verificar” abajo:

Nota: Puede tomar hasta 24-48 horas para que los registros DNS se propaguen.

10. El siguiente paso será configurar los ajustes SMTP para el servidor CyberPanel.

Desafortunadamente, CyberPanel aún no ofrece a los usuarios una interfaz especial para configuraciones SMTP. SendGrid debe configurarse vía terminal SSH. 

  • Primero, inicia sesión en tu servidor como root:

ssh root@SERVER_IP_ADDRESS -p PORT


Donde SERVER_IP_ADDRESS es la dirección IP de tu servidor y PORT es el puerto de conexión SSH (por defecto es 22022)

  • Abre el archivo /etc/postfix/main.cf con un editor de texto:

nano /etc/postfix/main.cf
o
vi /etc/postfix/main.cf

  • Agrega las siguientes líneas al final del archivo:

smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_sasl_tls_security_options = noanonymous
smtp_tls_security_level = encrypt
header_size_limit = 4096000
relayhost = [smtp.sendgrid.net]:587

  • Ahora necesitas especificar tus credenciales (usa apikey como usuario y una clave API como contraseña) en el archivo separado /etc/postfix/sasl_passwd (probablemente necesitarás crearlo):

echo “[smtp.sendgrid.net]:587 apikey:YOUR_SENDGRID_API_KEY> /etc/postfix/sasl_passwd

Donde YOUR_SENDGRID_API_KEY es la clave que creaste en el paso 8.

  • Luego, asegúrate de que el archivo tenga acceso restringido de lectura y escritura solo para root, y usa el comando postmap para actualizar las tablas hash de Postfix para usar este nuevo archivo:

sudo chmod 600 /etc/postfix/sasl_passwd
sudo postmap /etc/postfix/sasl_passwd

  • Finalmente, reinicia Postfix:

systemctl restart postfix

  • Instala el complemento SASL en tu servidor:

apt-get install libsasl2-modules  # para Ubuntu
dnf install cyrus-sasl-plain      # para Almalinux/CloudLinux
yum install cyrus-sasl-plain       # para CentOS

Además, algunas instancias pueden requerir un controlador MySQL para Dovecot para configurar el backend MySQL para autenticación:

apt install dovecot-sqlite dovecot-mysql   # para Ubuntu
dnf install dovecot-mysql               # para Almalinux/CloudLinux
yum install dovecot-mysql                # para CentOS

  • Después de eso, reinicia Dovecot:

systemctl restart dovecot

  • Ahora puedes probar si un correo se retransmite a través de SendGrid:

sendmail -f YOUR_LOCAL_EMAIL -v DESTINATION_EMAIL

Donde YOUR_LOCAL_EMAIL es la cuenta de correo que creaste en tu cuenta de CyberPanel, y DESTINATION_EMAIL es el correo destinatario al que se envía el correo de prueba.

Luego escribe el cuerpo de tu mensaje y presiona Ctrl+D para enviar.

Alternativamente, usa Webmail en tu cuenta de CyberPanel para enviar un correo de prueba desde ahí.

Se requiere un correo electrónico válido