Sendmail mit Email Delivery integrieren
Verwenden Sie Sendmail zum Senden von E-Mails über den Email Delivery-Service.
Sendmail so konfigurieren, dass E-Mails über Email Delivery gesendet werden
Sendmail ist eine General-Purpose-Funktion für die Weiterleitung von Netzwerk-E-Mails, die viele Arten von E-Mail-Übertragungs- und -Zustellungsmethoden unterstützt, einschließlich des Simple Mail Transfer Protocols, das für den E-Mail-Transport über das Internet verwendet wird. Sie können Sendmail für den Versand von E-Mails über Email Delivery verwenden. Bevor Sie Sendmail verwenden, müssen Sie Oracle Cloud Infrastructure Email Delivery in Ihrer Sendmail-Anwendung konfigurieren.
Diese Anweisungen enthalten praktischen Beispielcode und sollten als Referenz verwendet werden. Um Clientsupport zu erhalten, müssen Sie sich an den Sendmail-Kundensupport wenden.
Mit den unten aufgeführten Schritten wird Sendmail zum Senden von E-Mails über Oracle Cloud Infrastructure Email Delivery konfiguriert. Diese Schritte wurden auf einer Oracle Linux Server Release 7.9 Compute-Instanz und Sendmail-8.14.7-6.el7.x86_64 getestet.
So ermöglichen Sie die Integration von Sendmail mit Email Delivery:
-
Stellen Sie sicher, dass Email Delivery zum Senden von E-Mails konfiguriert ist. Siehe Erste Schritte.
Hinweis
SMTP-Zugangsdaten sind erforderlich, um Sendmail zur Verwendung von Email Delivery zu konfigurieren. Notieren Sie den Benutzernamen und das Kennwort, wenn Sie die SMTP-Zugangsdaten generieren.
-
Führen Sie die folgenden Aktualisierungs- und Installationsbefehle aus:
sudo yum update sudo yum install sendmail sendmail-cf m4 cyrus-sasl-plain -
Aktualisieren Sie
/etc/mail/authinfo. Führen Sie den folgenden Befehl aus:sudo vi /etc/mail/authinfoHinweis
Wenn die Datei
/etc/mail/authinfonicht vorhanden ist, können Sie sie mit dem Befehlsudo vi /etc/mail/authinfoerstellen.Fügen Sie die folgende Zeile hinzu:
AuthInfo:<SMTP connection endpoint> "U:root" "I:<username from smtp credentials>" "P:<password from smtp credentials>" "M:PLAIN" -
Erstellen Sie die Datei
/etc/mail/authinfo.db.Führen Sie den folgenden Befehl aus:
sudo sh -c 'makemap hash /etc/mail/authinfo.db < /etc/mail/authinfo' -
Fügen Sie Unterstützung für die Übermittlung an den SMTP-Endpunkt von Oracle Cloud Infrastructure Email Delivery hinzu.
Führen Sie den folgenden Befehl aus:
sudo sh -c 'echo "Connect:<SMTP connection endpoint> RELAY" >> /etc/mail/access' -
Erstellen Sie
/etc/mail/access.dbneu.Führen Sie den folgenden Befehl aus:
sudo sh -c 'makemap hash /etc/mail/access.db < /etc/mail/access' -
Erstellen Sie ein Backup der Dateien
sendmail.cfundsendmail.mc.Führen Sie den folgenden Befehl aus:
sudo sh -c 'cp /etc/mail/sendmail.cf /etc/mail/sendmail_cf.backup && cp /etc/mail/sendmail.mc /etc/mail/sendmail_mc.backup' -
Aktualisieren Sie die Datei
/etc/mail/sendmail.mc.Führen Sie den folgenden Befehl aus:
sudo vi /etc/mail/sendmail.mcSuchen Sie die
MAILER()-Definitionen.Geben Sie
/MAILERein, und drücken Sie dieEINGABETASTE.Fügen Sie im Einfügemodus vor allen
MAILER()-Definitionen die folgenden Einstellungen hinzu: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)dnlDeaktivieren Sie den Einfügemodus.
-
Versehen Sie Sendmail mit Schreibzugriff.
Führen Sie den folgenden Befehl aus:
sudo chmod 666 /etc/mail/sendmail.cf -
Erstellen Sie
sendmail.cfneu.Führen Sie den folgenden Befehl aus:
sudo sh -c 'm4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf'Hinweis
Wenn eine Fehlermeldung angezeigt wird, beispielsweise "Befehl nicht gefunden" oder "Datei oder Verzeichnis nicht vorhanden", vergewissern Sie sich, dass die m4- und sendmail-Packages auf Ihrem System installiert sind.
-
Setzen Sie die Berechtigungen für "sendmail.cf" wieder auf schreibgeschützt.
Führen Sie den folgenden Befehl aus:
sudo chmod 644 /etc/mail/sendmail.cf -
Starten Sie Sendmail neu.
Führen Sie den folgenden Befehl aus:
sudo /etc/init.d/service sendmail restart -
Testen Sie die Konfiguration, indem Sie eine Test-E-Mail senden.
Führen Sie den folgenden Befehl aus:
/usr/sbin/sendmail -vf <from_email_address> <recipient_email_address>Geben Sie die Details der E-Mail ein. Drücken Sie nach jeder Zeile die
Eingabetaste.Beispiel:
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.Drücken Sie
Strg+D, um die E-Mail zu senden. -
Bestätigen Sie den Eingang der Test-E-Mail.
Hinweis
Sie können ein Problem beheben, indem Sie das Sendmail-Log im Verzeichnis
/var/log/mail.logauf dem E-Mail-Server prüfen.
Weitere Informationen
Weitere Informationen finden Sie in der Installations- und Betriebsdokumentation zu Sendmail.