Ist es möglich, System-E-Mails auf einer Linux-Box einzurichten, die über einen anderen SMTP-Server gesendet werden sollen - möglicherweise sogar mit Authentifizierung? Wenn ja, wie mache ich das?
Wenn das unklar ist, geben Sie ein Beispiel. Wenn ich in der Befehlszeile bin und tippe:
cat body.txt | mail -s "just a test" [email protected]
ist es möglich, dass dies über einen externen SMTP-Server wie G-Mail gesendet wird?
Ich suche nicht nach einer Möglichkeit, E-Mails von Google Mail über die Befehlszeile zu senden, sondern nach einer Möglichkeit, das gesamte System für die Verwendung eines bestimmten SMTP-Servers oder möglicherweise eines Kontos auf einem SMTP-Server zu konfigurieren (wobei die Absenderadresse möglicherweise überschrieben wird). .
Antworten:
Ich fand sSMTP sehr einfach zu bedienen.
In Debian-basierten Systemen:
Bearbeiten Sie dann die Konfigurationsdatei in /etc/ssmtp/ssmtp.conf
Eine Beispielkonfiguration für die Verwendung von Google Mail zum Senden von E-Mails:
Anmerkung : Stellen Sie sicher, dass der Befehl "mail" in Ihrem System vorhanden ist. mailutils-Paket sollte dieses in Debian-basierten Systemen bereitstellen.
Update : Es gibt Leute (und Fehlerberichte für verschiedene Linux-Distributionen), die berichten, dass sSMTP keine Passwörter mit einem Leerzeichen oder einem # -Zeichen akzeptiert. Wenn sSMTP für Sie nicht funktioniert, ist dies möglicherweise der Fall.
quelle
mail
Syntax verwenden können :)mailutils
Paket nicht installieren (und es wird nicht automatisch installiert).ssmtp
out-of-the-box gearbeitet.Für Postfix :
/etc/hosts
und fügen Sie ein Alias- Mail-Relay hinzu.Ändern Sie die Postfix-Konfiguration:
Bearbeiten
/etc/postfix/smtp_auth
In Hash-Format konvertieren
postmap /etc/postfix/smtp_auth
Keine Notwendigkeit zu sagen, dass nur root dies lesen kann ...
chmod u=r,og=-
quelle
mailx unterstützt das Einstellen des SMTP-Servers auf der CLI ...
Es muss nichts installiert werden, sofern Sie auf Ihrem SMTP-Server nicht authentifizierte E-Mails senden können.
Es gibt keine Antwort, die den SMTP-Server für alle Software-Komponenten auf Ihrer Linux-Box einstellt . Jeder E-Mail-Client kann einen SMTP-Server konfigurieren.
quelle
-S var=val
vor Ihrem Empfänger zu setzen .Mein Favorit ist der E-Mail- Client ( Github ). Es ist wirklich einfach, keine komplexe Konfiguration erforderlich, keine Abhängigkeiten erforderlich. Und Sie können das Argument smtp-server über die Befehlszeile angeben, was bedeutet, dass es für Skripterstellung besser geeignet ist. Das einzige Schade ist, dass die meisten Linux-Distributionen dieses Tool nicht enthalten. Sie müssen es also selbst kompilieren.
Zitate aus E-Mail-Projekt auf Github
Vielen Dank an cygwin, dass Sie mir diesen nützlichen E-Mail- Client mitgeteilt haben .
Kompilieren und installieren
Befehlszeilenoptionen von E-Mail
Beispielnutzung
Einfache Mail mit angegebenem SMTP-Server
HTML-Mail
Anhänge)
quelle
Richten Sie einen lokalen Exim-SMTP-Server ein, indem Sie den Anweisungen auf dieser Seite folgen. Wählen Sie jedoch im ersten Bildschirm der Exim-Konfiguration die Option "Von Smarthost gesendete E-Mail; keine lokale E-Mail" . Dadurch wird ein SMTP-Server auf Ihrer Box eingerichtet, der E-Mails von den Befehlen "mail" oder "mailx" empfangen und alle Nachrichten zur Zustellung an den Smarthost (in Ihrem Fall einen Google Mail-Server) weiterleiten kann.
Um ausgehende E-Mails über einen Google Mail-Server zu senden, müssen Sie die TLS-Unterstützung für Exim einrichten , was nicht trivial ist. In diesem Howto finden Sie einige Erklärungen. Hier finden Sie einen Link mit weiteren Erklärungen zu Google Mail. Sie sollten sich mehrere Stunden Zeit nehmen, um dies zum Laufen zu bringen. Ich würde vorschlagen, zunächst E-Mails von Ihrer Box an einen TLS-fähigen SMTP-Server zu senden, auf den Sie Root-Zugriff haben, damit Sie Ihre Exim TLS-Konfiguration von beiden Seiten aus debuggen können, bevor Sie versuchen, über einen Google Mail-Server zu senden. Da die Kommunikation verschlüsselt ist, können Sie Tools wie tcpdump nicht zum Analysieren des Protokolls auf der Leitung verwenden.
quelle
Wenn Sie über eine externe SMTP-Serverkonnektivität mit Ihrem Host verfügen, können Sie SMTP auf Ihrem Host konfigurieren und E-Mails senden.
Die SMTP-Konfiguration in Linux-Schritten finden Sie hier: http://kerneltalks.com/config/guide-smtp-configuration-linux/
Beispiele für E-Mail-Befehle finden Sie hier: http://kerneltalks.com/commands/examples-send-email-through-terminal/
quelle