it-swarm.com.de

Wie konfiguriere ich exim4, um E-Mails über einen kennwortgeschützten SSL-SMTP-Mailserver zu senden?

Ich möchte, dass meine Cronjobs E-Mails von meinem Heimcomputer senden können. Meine Server konfigurieren exim4 folgendermaßen:

dc_eximconfig_configtype='internet'
dc_other_hostnames=''
dc_local_interfaces='127.0.0.1'
dc_readhost=''
dc_relay_domains=''
dc_minimaldns='false'
dc_relay_nets=''
dc_smarthost=''
CFILEMODE='644'
dc_use_split_config='false'
dc_hide_mailname=''
dc_mailname_in_oh='true'
dc_localdelivery='maildir_home'

Zu Hause blockiert mein ISP jedoch E-Mails, die direkt über eine Firewall gesendet werden. Ich habe einen kennwortgeschützten SSL-SMTP-Server, über den ich die E-Mails weiterleiten konnte, aber es ist mir nicht gelungen, herauszufinden, wie exim4 so konfiguriert werden kann, dass dies funktioniert. Ich hoffe, jemand kann mir ein Konfigurationsbeispiel geben, in dem ich den Hostnamen, den Benutzernamen, das Kennwort und "use ssl" eingeben kann, damit E-Mails über einen einzelnen SMTP-Server gesendet werden.

19

Ich habe endlich eine detaillierte Anleitung von Tony Scelfo gefunden, die tatsächlich funktioniert . Anscheinend müssen Sie Transport Layer Security (TLS) für Port 587 verwenden. Ich habe SSL SMTP nicht zum Laufen bekommen.

Führen Sie zuerst Sudo dpkg-reconfigure exim4-config aus und verwenden Sie diese Konfigurationsoptionen:

  • Allgemeine Art der E-Mail-Konfiguration: E-Mail von Smarthost gesendet; über SMTP oder Fetchmail empfangen
  • Name der System-Mail: <Ihr Hostname>
  • IP-Adresse zum Abhören eingehender SMTP-Verbindungen: 127.0.0.1
  • Andere Ziele, für die E-Mails akzeptiert werden: <Ihr Hostname>
  • Maschinen, für die E-Mails weitergeleitet werden sollen: <lassen Sie dieses Feld leer>
  • IP-Adresse oder Hostname des ausgehenden Smarthosts: mail.example.com::587
  • Lokalen Mailnamen in ausgehender Mail verbergen?
    • Ja, alle ausgehenden E-Mails scheinen von Ihrem Google Mail-Konto zu stammen
    • Nein - E-Mails, die mit einem gültigen Absendernamen gesendet werden, behalten den Namen des Absenders
  • Anzahl der DNS-Anfragen auf ein Minimum beschränken (Dial-on-Demand)? Nein
  • Zustellmethode für lokale Post: <Wählen Sie die von Ihnen bevorzugte Methode>
  • Konfigurationsdatei in kleine Dateien aufteilen? Ja (als nächstes müssen Sie eine der Dateien bearbeiten)

Führen Sie dann Sudo vi /etc/exim4/passwd.client aus, und fügen Sie die folgenden Zeilen für Ihren E-Mail-Host und alle darin enthaltenen Aliase hinzu (ermittelt durch nslookup). Ersetzen Sie <E-Mail-Adresse> und <Passwort> durch das Konto, über das Sie E-Mails weiterleiten möchten.):

mail.example.com:<email address>:<password>
mail.yourhosting.provider:<email address>:<password>

Nachdem Sie die Datei passwd.client bearbeitet haben, führen Sie Sudo update-exim4.conf aus, wodurch Ihre Änderungen in Ihre Exim4-Konfiguration integriert werden.

Führen Sie Sudo /etc/init.d/exim4 restart aus und stellen Sie sicher, dass der Dienst ordnungsgemäß beendet und gestartet wird. Wenn der Dienst nicht neu gestartet werden kann, ist wahrscheinlich beim Bearbeiten der Datei passwd.client ein Fehler aufgetreten.

Wenn Exim4 neu gestartet wurde, führen Sie Sudo tail -f /var/log/exim4/mainlog aus, um die E-Mail-Protokolle zu überwachen. Senden Sie in einem anderen Fenster eine E-Mail von Ihrem System und vergewissern Sie sich, dass ein Datensatz mit R=smarthost T=remote_smtp_smarthost H=gmail-smtp-msa.l.google.com ... X=TLS-1.0:RSA_ARCFOUR_MD5:16 darin angezeigt wird. Der X=TLS bedeutet, dass die Mail mit der gewünschten Transportschichtsicherheit gesendet wird.

25

Wenn Ihr ISP eine Authentifizierung erfordert, sollten Sie dc_smarthost auf die von Ihrem ISP verwendete Kombination aus Hostname und Port des Mailservers und dc_eximconfig_configtype auf "smarthost" setzen:

dc_eximconfig_configtype='smarthost'
dc_smarthost='mail.example.com::587'

Anschließend können Sie Ihre Anmeldeinformationen wie folgt zu /etc/exim4/passwd.client hinzufügen:

mail.example.com:username:password

Alle über Ihren exim4-Server gesendeten E-Mails werden dann über diesen E-Mail-Host weitergeleitet.

5
dobey

Das funktioniert bei mir sehr gut. Mein ISP verwendet Port 25 und dc_smarthost='myisp.mail.server:25', nachdem er diese Dateien geändert und die folgenden Befehle ausgegeben hat:

  1. update-exim4.conf
  2. /etc/init.d/exim4 restart

Nachdem ich einen Test gemacht habe, um eine E-Mail durch exim4 classic zu senden, Beispiel:

echo "content of mail body with pt-br chars ação avião língua é essa em 1609." | mail -s "Confirmar 16DOM" [email protected]

Und diese fließen in den Posteingang von my-user in my-domain-url.

4
gsavix