Was verwenden Sie als leichtgewichtiges SMTP nur für ausgehende E-Mails?
Ich verwende eine App, die E-Mails über SMTP sendet, wenn von Zeit zu Zeit Ereignisse auftreten, und benötige keinen voll ausgestatteten E-Mail-Server.
EDIT: Ich verwende gerne so etwas wie Postfix (und mache es), wenn das die beste Wahl ist. Ich dachte, es könnte etwas viel Einfacheres geben, das aus der Box läuft.
email
software-rec
smtp
FlappySocks
quelle
quelle
Antworten:
Es gibt mehrere Möglichkeiten für minimale Weiterleitungs-Mail-Transfer-Agents (MTAs oder "Mail-Server"), von denen einige in anderen Antworten erwähnt wurden:
Damit dies funktioniert, benötigen Sie irgendwo einen vollwertigen MTA, der Ihre Nachrichten weiterleitet (bekannt als "Mail-Hub"). Es wird dringend empfohlen, diesen Mail-Hub zu steuern. Bad Things ™ kann auch anders passieren.
quelle
IMHO ist der einfachste Weg, dies zu tun, mit Postfix. Sie können es mit den folgenden Befehlen als Lichtausgangsrelais konfigurieren:
Solange der unter angegebene SMTP-Server
relayhost
keine Authentifizierung erfordert, die Weiterleitung zulässt oder ein gültiges Ziel für die Empfängeradresse ist, funktioniert dies.Der
myorigin
Parameter ist der Standarddomänenname. Wenn Sie also eine E-Mail an foo senden, wird diese an [email protected] gesendet. Von der Benutzerleiste gesendete E-Mails werden von [email protected] gesendet.Wenn Sie sich authentifizieren müssen und TLS unterstützen möchten, führen Sie auch die folgenden Befehle aus:
Dann
/etc/postfix/sasl_password_maps
haben Sie diesen Inhalt:Alle E-Mails werden mit dem angegebenen Benutzernamen und Passwort an Ihren Relayhost gesendet.
quelle
relayhost=other.mailserver.com:465
thensmtp_tls_wrappermode=yes
undsmtp_tls_security_level=encrypt
aber es wird versucht, den lokalen Benutzer als Auth zu verwenden. Ich muss den Auth-Benutzer irgendwie umschreiben.Angenommen, Sie benötigen ein Programm, das Sie über die Shell wie sendmail (8) ausführen können, passt MSMTP möglicherweise zu Ihren Anforderungen? Es kann eine Verbindung zu einem Remote-SMTP-Server herstellen und E-Mails wie sendmail als stdin senden.
quelle
ESMTP ist ein Mail-Übertragungsserver, der nur für Weiterleitungen verwendet wird und möglicherweise für Ihre Anwendung geeignet ist.
quelle
Möglicherweise finden Sie sSMTP passend für Ihre Bedürfnisse. Lesen Sie diesen Artikel und seine Einschränkungen.
Ganz ehrlich, ich würde nicht zu sehr auf die Installation von Postfix oder Exim verzichten, auch wenn es nur zum Versenden von E-Mails gedacht ist.
quelle
Wenn Sie Docker verwenden, ist https://hub.docker.com/r/zixia/simple-mail-forwarder/ eine gute Wahl für eine einfache Bereitstellung mit einer Größe von nur 10 MB und vollständiger Unterstützung für SMTP (tls).
quelle
Sie benötigen technisch gesehen keinen E-Mail-Server auf Ihrem Host. Was Sie benötigen (und wahrscheinlich auch schon haben), ist ein SMTP-Client (oder MUA), der eine Verbindung zu Ihrem Unternehmens-SMTP-Server herstellen kann (mit dem Sie sich überall verbinden können) .)
Abhängig von der App (und der Programmiersprache, in der sie geschrieben wurde) gibt es viele verschiedene Möglichkeiten, wie sich Ihre App mit dem SMTP-Server in Ihrem Netzwerk verbindet.
Normalerweise gibt es mit PHP oder Python eine Konfigurationsdatei mit der App, um den "SMTP" -Server anzugeben (der sich auf Ihrem Host oder an einer anderen Stelle in Ihrem Netzwerk befinden kann.) Wenn Sie bereits einen Mailserver im Netzwerk haben, zeigen Sie einfach auf Konfiguration auf diesen Server.
Wenn keine anderen Optionen vorhanden sind, kann die App die E-Mail-Nachricht an die Standardausgabe generieren, die Sie folgendermaßen verarbeiten können:
listoftargets = "[email protected] [email protected]" Echo "Test Content" | mail -s "Test Subject" $ listoftargets
Auf einigen Systemen gibt es bereits einen minimalen Mailserver, der nur zum Senden verwendet werden kann.
Sam T.
quelle
mail
odersendmail
benennen. Systembenachrichtigungen. Das ist der springende Punkt, nicht wahr? Für alles andere gibt es keine Einschränkungen.