Intégration de Sendmail avec le service de transmission de messages

Utilisez Sendmail pour envoyer des courriels au moyen du service de transmission de messages.

Configurer Sendmail pour l'envoi de courriels au moyen du service de transmission de messages

Sendmail est un outil général de routage de courriels interréseau, qui prend en charge de nombreux modes de transfert et de livraison des courriels, dont le protocole de transfert de courrier simple (SMTP) utilisé pour le transport des courriels sur Internet. Vous pouvez utiliser Sendmail pour envoyer des courriels au moyen du service de transmission de messages. Avant d'utiliser Sendmail, vous devez configurer le service de transmission de messages pour Oracle Cloud Infrastructure dans votre application Sendmail.

Important

Ces instructions contiennent un exemple de code pour vous faciliter la tâche et doivent être utilisées comme référence. Pour obtenir de l'assistance, vous devez communiquer avec le soutien à la clientèle de Sendmail.
Note

Les étapes ci-dessous permettent de configurer Sendmail pour l'envoi de courriels au moyen du service de transmission de messages pour Oracle Cloud Infrastructure. Ces étapes ont été testées sur une instance de calcul Oracle Linux Server version 7.9 et Sendmail-8.14.7-6.el7.x86_64.

Pour activer l'intégration entre Sendmail et le service de transmission de messages :

  1. Assurez-vous que le service de transmission de messages est configuré. Voir Introduction.

    Note

    Les données d'identification SMTP sont requises pour configurer Sendmail afin qu'il puisse utiliser le service de transmission de messages. Veuillez noter le nom d'utilisateur et le mot de passe lorsque vous générez les données d'identification SMTP.

  2. Exécutez les commandes de mise à jour et d'installation suivantes :

    sudo yum update
    sudo yum install sendmail sendmail-cf m4 cyrus-sasl-plain
  3. Mettez à jour /etc/mail/authinfo. Exécutez la commande suivante :

    sudo vi /etc/mail/authinfo
    Note

    Si /etc/mail/authinfo n'existe pas, vous pouvez le créer en exécutant la commande sudo vi /etc/mail/authinfo.

    Ajoutez la ligne suivante :

    AuthInfo:<SMTP connection endpoint> "U:root" "I:<username from smtp credentials>" "P:<password from smtp credentials>" "M:PLAIN"
  4. Générez le fichier /etc/mail/authinfo.db.

    Exécutez la commande suivante :

    sudo sh -c 'makemap hash /etc/mail/authinfo.db < /etc/mail/authinfo'
  5. Ajoutez une prise en charge du relais au point d'extrémité SMTP du service de transmission de messages pour Oracle Cloud Infrastructure.

    Exécutez la commande suivante :

    sudo sh -c 'echo "Connect:<SMTP connection endpoint> RELAY" >> /etc/mail/access'
  6. Régénérez le fichier /etc/mail/access.db.

    Exécutez la commande suivante :

    sudo sh -c 'makemap hash /etc/mail/access.db < /etc/mail/access'
  7. Créez une sauvegarde des fichiers sendmail.cf et sendmail.mc.

    Exécutez la commande suivante :

    sudo sh -c 'cp /etc/mail/sendmail.cf /etc/mail/sendmail_cf.backup && cp /etc/mail/sendmail.mc /etc/mail/sendmail_mc.backup'
  8. Mettez à jour le fichier /etc/mail/sendmail.mc.

    Exécutez la commande suivante :

    sudo vi /etc/mail/sendmail.mc

    Recherchez les définitions MAILER().

    Entrez /MAILER et appuyez sur Entrée.

    En mode d'insertion, ajoutez les paramètres suivants avant toute définition MAILER() :

    define(`SMART_HOST', `<SMTP connection endpoint>')dnl
    define(`RELAY_MAILER_ARGS', `TCP $h 587')dnl
    define(`confAUTH_MECHANISMS', `LOGIN PLAIN')dnl
    FEATURE(`authinfo', `hash -o /etc/mail/authinfo.db')dnl
    MASQUERADE_AS(`<sending_domain>')dnl
    FEATURE(masquerade_envelope)dnl
    FEATURE(masquerade_entire_domain)dnl

    Désactivez le mode d'insertion.

  9. Faites en sorte que Sendmail soit accessible en écriture.

    Exécutez la commande suivante :

    sudo chmod 666 /etc/mail/sendmail.cf
  10. Régénérez le fichier sendmail.cf.

    Exécutez la commande suivante :

    sudo sh -c 'm4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf'
    Note

    Si vous recevez une erreur, par exemple "Commande introuvable" ou "Aucun fichier ou répertoire", vérifiez que les paquetages m4 et sendmail sont installés sur votre système.

  11. Réinitialisez les autorisations pour sendmail.cf (lecture seule).

    Exécutez la commande suivante :

    sudo chmod 644 /etc/mail/sendmail.cf
  12. Redémarrez Sendmail.

    Exécutez la commande suivante :

    sudo /etc/init.d/service sendmail restart
  13. Testez la configuration en envoyant un courriel de test.

    Exécutez la commande suivante :

    /usr/sbin/sendmail -vf <from_email_address> <recipient_email_address>

    Entrez les détails du courriel. Après chaque ligne, appuyez sur Entrée.

    Par exemple :

    From: <from_email_address>
    To: <recipient_email_address>
    Subject: OCI Email Delivery test email
    This is a test message sent from OCI Email Delivery using Sendmail.

    Appuyez sur Ctrl + D pour envoyer le courriel.

  14. Vérifiez la réception du courriel de test.

    Note

    Vous pouvez résoudre un problème éventuel en consultant le journal de Sendmail sur votre serveur de courriel, à l'emplacement /var/log/mail.log.