Mailx mit Email Delivery integrieren

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

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

Mailx ist ein UNIX-Utility zum Senden und Empfangen von E-Mail, auch als Mail User Agent-Programm bezeichnet. Sie können Mailx für den Versand von E-Mails über Email Delivery verwenden. Bevor Sie Mailx verwenden können, müssen Sie Oracle Cloud Infrastructure Email Delivery in Ihrer Mailx-Anwendung konfigurieren.

Verwenden Sie diese Anleitungen nur, wenn kein MTA (Mail Transfer Agent) wie Postfix oder Sendmail im System verwendet wird. Wenn Sie einen MTA konfigurieren, befolgen Sie die Konfigurationsanweisungen für dieses Programm, und übernehmen Sie die Mailx-Einstellungen auf ihren Standardeinstellungen. Dadurch verwendet Mailx das lokale MTA-Programm zum Senden von ausgehenden E-Mails.

Wichtig

Diese Anweisungen enthalten praktischen Beispielcode und müssen als Referenz verwendet werden. Um Clientsupport zu erhalten, müssen Sie sich an den Mailx-Kundensupport wenden.
Hinweis

Bei diesen Schritten wird vorausgesetzt, dass Sie bei einer Oracle Linux-Instanz angemeldet sind. Andere Linux-Distributionen haben möglicherweise andere Befehle und Dateispeicherorte. Diese Schritte wurden auf einer Oracle Linux Server-Release 7.9 Compute-Instanz und Mailx-Version 12.5 7/5/10 getestet.

So ermöglichen Sie die Integration von Mailx 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 Mailx zur Verwendung von Email Delivery zu konfigurieren. Notieren Sie den Benutzernamen und die Kennwörter, wenn Sie die SMTP-Zugangsdaten generieren.

  2. Aktualisieren Sie die Mailx-Datei .mailrc.

    Um die Datei .mailrc zu öffnen, führen Sie den folgenden Befehl ein:

    sudo vi ~/.mailrc

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

    #smtp config
    
    set nss-config-dir=/etc/pki/nssdb/
    set smtp-use-starttls
    set smtp-auth=plain
    set smtp=<SMTP connection endpoint>:25
    set from=<from_email_address>
    set smtp-auth-user=<OCID from smtp credentials>
    set smtp-auth-password=<password from smtp credentials>
  3. Testen Sie die Konfiguration, indem Sie eine Test-E-Mail senden.

    Führen Sie den folgenden Befehl aus:

    echo "Test Email" | mail -v -s "Send an email via mailx" -r "From Name <from_email_address>" <recipient_email_address>

Fehlerbehebung

Beim Senden von E-Mails tritt der Fehler "Error in certificate: Peer's certificate issuer has been marked as not trusted" auf

Führen Sie die folgenden Schritte aus, um diesen Fehler zu beheben:

  1. Führen Sie den folgenden Befehl aus, um die Zertifikatskette anzuzeigen:
    echo | openssl s_client -starttls smtp -crlf -connect <SMTP-endpoint>:587 -showcerts
    Beispielausgabe:
    [root@ociuvddatg01 ~]# echo | openssl s_client -starttls smtp -crlf -connect smtp.email.us-ashburn-1.oci.oraclecloud.com:587 -showcerts
              CONNECTED(00000003)
              depth=2 C = US, O = DigiCert Inc, OU = www.digicert.com, CN = DigiCert Global Root G2
              verify return:1
              depth=1 C = US, O = DigiCert Inc, CN = DigiCert Global CA G2
              verify return:1
              depth=0 C = US, ST = California, L = Redwood City, O = Oracle Corporation, OU = Oracle OCI-PROD ASHBURN, CN = smtp.email.us-ashburn-1.oci.oraclecloud.com
              verify return:1
               ---
             Certificate chain
     0 s:/C=US/ST=California/L=Redwood City/O=Oracle Corporation/OU=Oracle OCI-PROD ASHBURN/CN=smtp.email.us-ashburn-1.oci.oraclecloud.com
       i:/C=US/O=DigiCert Inc/CN=DigiCert Global CA G2
     1 s:/C=US/O=DigiCert Inc/CN=DigiCert Global CA G2
       i:/C=US/O=DigiCert Inc/OU=www.digicert.com/CN=DigiCert Global Root G2
     2 s:/C=US/O=DigiCert Inc/OU=www.digicert.com/CN=DigiCert Global Root G2
       i:/C=US/O=DigiCert Inc/OU=www.digicert.com/CN=DigiCert Global Root G2
    ---
    Server certificate
    -----BEGIN CERTIFICATE-----
    ......
    -----END CERTIFICATE-----
    ......
  2. Extrahieren Sie das Zertifikat, mit dem Ihre Domain signiert wurde. In diesem Beispiel ist dies das letzte Zertifikat (2 s:/C=US/O=DigiCert Inc/OU=www.digicert.com/CN=DigiCert Global Root G2). Kopieren Sie das Zertifikat, und fügen Sie es in eine separate DigiCert.pem-Datei ein, einschließlich der Felder BEGIN CERTIFICATE und END CERTIFICATE.
  3. Installieren Sie das Zertifikat in der Centos NSSDB-Datenbank. Ersetzen Sie "DigiCert Global Root G2" im folgenden Beispiel durch Ihr Zertifikat:
    sudo certutil -A -t "C,," -n "DigiCert Global Root G2" -d /etc/pki/nssdb/ -i DigiCert.pem
    Verwenden Sie den folgenden Befehl, um das Zertifikat anzuzeigen:
    sudo certutil -L -d /etc/pki/nssdb/

Weitere Informationen

Informationen zu Netzwerksicherheitsservices finden Sie in der Mailx-Dokumentation.