Postfix mit Email Delivery integrieren

Verwenden Sie Postfix, um E-Mails über den Email Delivery-Service zu senden.

Postfix so konfigurieren, dass E-Mails über Email Delivery gesendet werden

Postfix ist ein freier und Open-Source-Mail-Transfer-Agent, der E-Mails weiterleitet und zustellt. Er wird unter der IBM Public License 1.0 veröffentlicht, einer kostenlosen Software-Lizenz, die möglicherweise bereits installiert ist. Weitere Informationen zu Postfix finden Sie auf der Postfix-Website. Sie können Postfix für den Versand von E-Mails über Email Delivery verwenden. Vor der Verwendung von Postfix müssen Sie Oracle Cloud Infrastructure Email Delivery in der Postfix-Anwendung konfigurieren.

Wichtig

Diese Anweisungen enthalten praktischen Beispielcode und dienen als Referenz. Um Clientsupport zu erhalten, wenden Sie sich an den Postfix-Kundensupport. Diese Schritte wurden auf einer Oracle Linux Server Release 7.9 Compute-Instanz und Postfix-Version 2.10.1 getestet.
Hinweis

Die Pfade und Befehle, die im folgenden Verfahren zur Angabe von Dateispeicherorten verwendet werden, sind spezifisch für Ubuntu/Debian. Die Dateipfade oder Bearbeitungsbefehle können je nach verwendetem Betriebssystem unterschiedlich sein. Die Änderungen an den Konfigurationsdateien sind identisch.

So ermöglichen Sie die Integration von Postfix mit Email Delivery:

  1. Stellen Sie sicher, dass Email Delivery zum Senden von E-Mails konfiguriert ist. Siehe Erste Schritte.

    Hinweis

    Die SMTP-Zugangsdaten sind erforderlich, um Postfix zur Verwendung von Email Delivery zu konfigurieren. Notieren Sie den SMTP-Benutzernamen und das SMTP-Kennwort, wenn Sie die SMTP-Zugangsdaten generieren, die in den Benutzereinstellungen angezeigt werden. Diese spezifischen Werte und nicht Ihre OCI-Benutzeridentität sind für die Konfiguration erforderlich. Wenn Sie die Kennwortzugangsdaten für Ihre SMTP-Zugangsdaten verloren haben, müssen Sie eine neue Gruppe von Zugangsdaten erstellen.

  2. Um die Datei main.cf zu öffnen, führen Sie den folgenden Befehl aus:

    sudo vi /etc/postfix/main.cf

    Fügen Sie die folgenden Informationen am Ende der Datei hinzu:

    smtp_tls_security_level = may 
    smtp_sasl_auth_enable = yes 
    smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd 
    smtp_sasl_security_options =
  3. Email Delivery erfordert sichere TLS-Verschlüsselung (Sicherheit auf Transportebene) für alle SMTP-E-Mail-Weiterleitungen. Verwenden Sie die smtp_tls_security_level-Einstellung, damit Postfix beim Herstellen einer Verbindung zu Remote-SMTP-Servern wie OCI Email Delivery die STARTTLS-Unterstützung verwendet:

    smtp_tls_security_level = may

    Verwenden Sie die folgende Einstellung, um die Verwendung von TLS für alle Remoteserverkommunikationen durchzusetzen:

    smtp_tls_security_level = encrypt
    Hinweis

    Standardmäßig geht der Postfix-Client davon aus, dass die maximal zulässige Nachrichtengröße die Größe der ursprünglichen Extended HELO-(EHLO-)Antwort ist. Dies wird immer unser Deployment-Standardwert von 2 MB sein. Wenn Sie einen höheren Grenzwert für die Nachrichtengröße haben, müssen Sie den Postfix-Client so konfigurieren, dass er diesen Standardwert ignoriert. Bearbeiten Sie die Datei /etc/postfix/main.cf, und fügen Sie Folgendes hinzu:
    smtp_discard_ehlo_keywords = size
  4. Aktualisieren Sie relayhost, um den SMTP-Verbindungsendpunkt und -Port aufzunehmen, und speichern oder aktualisieren Sie die Datei. Beispiel: Um Nachrichten über den neuen Standardport für die Mailweiterleitung 587 zu senden, verwenden Sie:

    relayhost = smtp.email.us-ashburn-1.oraclecloud.com:587		
    Hinweis

    Informationen zum richtigen Endpunktwert finden Sie unter Authentifizierungs- und Verbindungsendpunkte. Wir empfehlen Port 587. Hängen Sie daher ":587" an das Ende des Endpunkts an, den Sie wie im Beispiel angegeben benötigen.
  5. Erstellen Sie die Datei sasl_passwd im selben Verzeichnis wie main.cf.

    Führen Sie den folgenden Befehl aus:

    sudo vi /etc/postfix/sasl_passwd
  6. Fügen Sie Ihren Relay-Host und -Port hinzu, indem Sie Folgendes eingeben:

    server:port user:pass

    Hierbei gilt:

    • server ist Ihr Relay-Host, und port ist 25 oder vorzugsweise 587.
    • user ist der SMTP-Benutzername, den Sie erstellt haben, und pass ist das Kennwort, das Sie beim Generieren Ihrer SMTP-Zugangsdaten erhalten haben.
  7. Legen Sie die Berechtigungen in der Kennwortdatei fest.

    Führen Sie den folgenden Befehl aus:

    sudo chown root:root /etc/postfix/sasl_passwd && sudo chmod 600 /etc/postfix/sasl_passwd
  8. Generieren Sie den Kennworthash.

    Führen Sie den folgenden Befehl aus:

    sudo postmap hash:/etc/postfix/sasl_passwd
  9. Laden Sie Postfix neu.

    Führen Sie den folgenden Befehl aus:

    sudo postfix reload
  10. Testen Sie die Konfiguration, indem Sie eine Test-E-Mail senden.

    Führen Sie den folgenden Befehl aus:

    echo "This is a test message" | mail -s "Test" -r <approved sender email address> <recipient email address>
    Hinweis

    Einige Versionen von Mail und Mailx unterstützen weder den Schalter -r, um den Absender in der E-Mail festzulegen, noch den Schalter -a, um zusätzliche Header zu erstellen. In diesen Fällen wird der Absender vom Betriebssystem bestimmt und kann durch verschiedene andere Mittel außer Kraft gesetzt werden. Wenn Sie in diesem Fall die vom System generierten E-Mail-Adressen überschreiben möchten, können Sie in /etc/postfix/header_checks Regeln zum Umschreiben verwenden.

    Eine Meldung status=sent (250 Ok) im Log gibt an, dass die E-Mail erfolgreich gesendet wurde.

Hinweis

In einigen Umgebungen erfordert die Verwendung der SASL-Authentifizierung das folgende RPM-Package: cyrus-sasl-plain. Weitere Informationen zur Konfiguration der SASL-Authentifizierung finden Sie auf der Postfix-Website.

Weitere Informationen

  • Weitere Informationen zur Konfiguration von Postfix finden Sie auf der Postfix-Website.
  • Weitere Informationen zur Standard-SMTP-TLS-Sicherheitsebene für den Postfix-SMTP-Client finden Sie unter smtp_tls_security_level.
  • Weitere Informationen zur STARTTLS-Unterstützung für Remote-SMTP-Clients finden Sie unter smtpd_use_tls. Dieses Feature wurde in Postfix Version 2.2 eingeführt, aber seit Version 2.3 veraltet.
  • Siehe TLS-Fehler bei der Integration mit Postfix für die Fehlerbehebung in Verbindung mit Email Delivery.