Comment configurer SendGrid SMTP sur CyberPanel

SendGrid est un service SMTP basé sur le cloud qui permet l’envoi d’e-mails sans avoir à gérer des serveurs de messagerie.

NB :Le port 25 est fermé pour les connexions sur nos VM par défaut. Si vous souhaitez ouvrir le port 25, achetez Mail Bridge et configurez-le dans VPS Manager.

Pour configurer l’e-mail SendGrid sur WHM, veuillez utiliser ce guide.

Veuillez suivre les étapes ci-dessous pour configurer le service SendGrid et le système de messagerie pour votre nom de domaine du côté de CyberPanel :

1. Inscrivez-vous à SendGrid :

Une fois que vous avez rempli toutes les coordonnées, cliquez sur « Continue ».

2. Vous serez redirigé vers un nouvel onglet du navigateur pour vérifier votre compte e-mail. Copiez le code de vérification envoyé à votre compte e-mail, saisissez-le dans le champ « Code », puis cliquez sur « Verify » :

3. Vérifiez votre numéro de téléphone en saisissant le code de vérification qui y a été envoyé dans le champ « Enter certification code », puis cliquez sur « Verify » :

4. Ensuite, un code de récupération vous sera fourni. Il est utile si vous perdez votre téléphone ou n’avez pas accès à votre appareil de vérification. Copiez le code, enregistrez-le, puis cliquez sur « Continue ». Il existe également une option pour télécharger le code sous forme de fichier :

5. Remplissez vos coordonnées sur la page suivante, puis cliquez sur « Next » :


6. Depuis la page suivante, veuillez ouvrir votre tableau de bord SendGrid :

7. Une fois sur place, allez dans le menu « Settings » >> « API Keys » pour y créer une nouvelle clé API :


8. Dans le menu qui s’ouvre, saisissez le nom de la clé API, définissez les autorisations de la clé API sur l’option « Full Access », puis enregistrez la configuration :

9. Configurez l’authentification de l’expéditeur SendGrid. Il existe deux façons de procéder :

Méthode 1 : vérification d’un expéditeur unique

Single Sender Verification - est une méthode de vérification rapide qui permet d’ajouter un destinataire autorisé (une ou plusieurs adresses e-mail) lors de l’utilisation d’un compte SendGrid. Elle peut être utilisée, par exemple, si vous souhaitez envoyer des e-mails depuis john.doe@example.com, qui est ajouté sur le serveur cPanel, vers jane.doe@gmail.com. L’adresse e-mail jane.doe@gmail.com doit être ajoutée à Single Sender Verification sur Sendgrid pour cela.

NB : Single Sender Verification est recommandé uniquement pour les tests.

NB : vous pouvez envoyer des e-mails uniquement depuis l’adresse que vous vérifiez, et non depuis n’importe quelle adresse d’un domaine authentifié.

Pour configurer Single Sender Verification, accédez à « Settings » depuis votre tableau de bord SendGrid >> au menu « Sender Authentication » >> cliquez sur le bouton « Verify a Single Sender » :

Sur la page suivante, créez un expéditeur en remplissant les coordonnées, puis cliquez sur « Create » pour tout enregistrer :

Après cela, vous recevrez un e-mail de vérification de la part de SendGrid. Pour confirmer l’ajout de l’adresse e-mail, cliquez sur le bouton « Verify Single Sender » dans l’e-mail :

Méthode 2 : authentification du domaine (recommandée)

Cliquez sur  « Settings » >> accédez au menu « Sender Authentication » >> dans le champ « Domain Authentication », cliquez sur « Authenticate Your Domain » :

Sur la page suivante, authentifiez votre nom de domaine en répondant aux questions des première et deuxième étapes, puis cliquez sur « Next » :

NB : dans la capture d’écran, nous avons choisi la réponse « No » à la deuxième question. Cependant, cette réponse est facultative.

Après cela, saisissez le nom de domaine requis, définissez des paramètres supplémentaires si nécessaire, puis cliquez sur « Next » :

Il est maintenant nécessaire de vérifier le nom de domaine en configurant les enregistrements DNS CNAME et TXT correspondants.

Une fois les enregistrements DNS créés pour le domaine, confirmez leur ajout à l’étape 2 en cochant la case « I’ve added these records », puis cliquez sur « Verify » ci-dessous :

NB : la propagation des enregistrements DNS peut prendre jusqu’à 24 à 48 heures.

10. L’étape suivante consistera à configurer les paramètres SMTP pour le serveur CyberPanel.

Malheureusement, CyberPanel n’offre pas encore aux utilisateurs d’interface spéciale pour les configurations SMTP. SendGrid doit être configuré via le terminal SSH. 

  • Tout d’abord, connectez-vous à votre serveur en tant que root :

ssh root@SERVER_IP_ADDRESS -p PORT


Où SERVER_IP_ADDRESS est l’adresse IP de votre serveur, et PORT est le port de connexion SSH (par défaut, il s’agit de 22022)

  • Ouvrez le fichier /etc/postfix/main.cf avec un éditeur de texte :

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

  • Ajoutez les lignes suivantes en bas du fichier :

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

  • Vous devez maintenant spécifier vos identifiants (utilisez apikey comme nom d’utilisateur et une clé API comme mot de passe) dans le fichier séparé /etc/postfix/sasl_passwd (vous devrez probablement le créer) :

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

Où YOUR_SENDGRID_API_KEY est la clé que vous avez créée à l’étape 8.

  • Ensuite, assurez-vous que le fichier dispose d’un accès en lecture et en écriture restreint à root uniquement, puis utilisez la commande postmap pour mettre à jour les tables de hachage de Postfix afin d’utiliser ce nouveau fichier :

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

  • Enfin, redémarrez Postfix :

systemctl restart postfix

  • Installez le plugin SASL sur votre serveur :

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

De plus, certaines instances peuvent nécessiter un pilote MySQL pour Dovecot afin de configurer le backend MySQL pour l’authentification :

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

  • Après cela, redémarrez Dovecot :

systemctl restart dovecot

  • Vous pouvez maintenant tester si un e-mail est relayé via SendGrid :

sendmail -f YOUR_LOCAL_EMAIL -v DESTINATION_EMAIL

Où YOUR_LOCAL_EMAIL est le compte e-mail que vous avez créé dans votre compte CyberPanel, et DESTINATION_EMAIL est l’adresse e-mail du destinataire à laquelle un e-mail de test est envoyé.

Saisissez ensuite le corps de votre message et appuyez sur Ctrl+D pour l’envoyer.

Vous pouvez également utiliser Webmail dans votre compte CyberPanel pour envoyer un e-mail de test depuis celui-ci.

Une adresse e-mail valide est requise