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.
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.
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:
-
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.
-
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>
-
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:
- Führen Sie den folgenden Befehl aus, um die Zertifikatskette anzuzeigen:
Beispielausgabe:echo | openssl s_client -starttls smtp -crlf -connect <SMTP-endpoint>:587 -showcerts
[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----- ......
- 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 separateDigiCert.pem
-Datei ein, einschließlich der FelderBEGIN CERTIFICATE
undEND CERTIFICATE
. - 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.