Es gibt Fälle, in denen soll das eigene Linux-System Mails verschicken können. Ein Beispiel wäre etwa Cron, das im Fall von Problemen Status-Mails verschicken kann. Oder man hat einen Webserver installiert, über den mittels der mail-Funktion von PHP Mails verschickt werden sollen usw., doch extra dafür schwere Brocken wie Postfix, Sendmail und Co. einzurichten wäre zu aufwändig. Noch dazu ist es für „Privatleute“ ohne richtigen Server, ohne ordentliche Zertifikate und ohne feste IPs sowieso nicht möglich direkt Mails zu verschicken, da die meisten Mail-Server den Empfang von solchen Servern sowieso ablehnen, sonst wäre ja SPAM-Versender Tür und Tor geöffnet. Für den Privatmann gilt es daher eigene Mails an einen SMTP-Relay-Server weiterzuleiten (also den SMTP-Mailserver eines „ordentlichen“ Anbieters) und dafür reicht auch ein simples Tool wie ssmtp.
ssmtp ist kein ausgewachsender MTA (Mail-Transfer-Agent) wie Postfix, Exim oder eben Sendmail, sondern einfach nur ein kleines Tool das eine Mail vom System entgegennimmt und zu einem zuvor konfigurierten Mailserver weiterleitet. Wie eingangs gesagt, müsste man mit einem Heimserver einen MTA wie Postfix sowieso als „Satellite System“ konfigurieren und Mails über einen Smarthost leiten, daher kann man sich den Aufwand mit der Einrichtung des Dienstes gleich sparen. ssmtp will erst einmal aus den Paketquellen installiert werden…
$ sudo apt-get install ssmtp
…danach gibt es mit den Dateien /etc/ssmtp/ssmtp.conf
und /etc/ssmtp/revaliases
zwei Konfigurationsdateien, die an die eigene Situation angepasst werden wollen. Ich fange mal mit der ssmtp.conf an, in der der zu nutzende Mailserver eingetragen wird.
$ sudo gedit /etc/ssmtp/ssmtp.conf
Als Beispiele führe ich die Konfiguration an, um Mails über Google bzw. GMX zu verschicken. Wie ihr seht steht das Passwort im Klartext in der Konfigurationsdatei. Ich würde daher für den eigenen Mailserver einen extra Account bei einem Freemailer einrichten, oder bei Google die 2-Step Verification aktivieren, so dass man ein Passwort extra für ssmtp erzeugen kann. Somit stünden dann die wichtigsten Zugangsdaten nicht mehr im Klartext auf der Platte.
Google Mail
root=EIN.BEISPIEL@gmail.com mailhub=smtp.gmail.com:587 hostname=EIN.BEISPIEL@gmail.com UseSTARTTLS=YES AuthUser=EIN.BEISPIEL AuthPass=GEHEIM FromLineOverride=YES
GMX.net
root=EIN.BEISPIEL@gmx.de mailhub=mail.gmx.net:465 rewriteDomain=gmx.net hostname=gmx.net UseTLS=YES AuthUser=EIN.BEISPIEL@gmx.DE AuthPass=GEHEIM FromLineOverride=NO
Passt die FETT geschriebenen Passagen bitte an eure Situation an, die restlichen Einstellungen solltet ihr direkt übernehmen können. Sobald ihr die ssmtp.conf vollständig eingerichtet habt, könnt ihr festlegen welcher User welchen Mailserver benutzen darf. Dies wird über die revaliases-Datei festgelegt, öffnet auch diese daher wieder in einen Editor.
$ sudo gedit /etc/ssmtp/revaliases
Hier tragt ihr nun im folgenden Format ein welcher Nutzer welchen Server benutzen darf. In meinem Beispiel greife ich wieder Google Mail auf, die FETT gedruckten Passagen müssten wieder angepasst werden.
root:EIN.BEISPIEL@gmail.com:smtp.gmail.com:587 www-data:EIN.BEISPIEL@gmail.com:smtp.gmail.com:587 OTTO:EIN.BEISPIEL@gmail.com:smtp.gmail.com:587
In meinem Fall darf also „root“, der User des Webservers „www-data“ und der Benutzer „otto“ Mails direkt vom System aus verschicken. Die zweite Zeile könnt ihr natürlich weglassen, wenn bei euch gar kein Webserver installiert ist, oder dieser gar keinen Zugriff auf ssmtp braucht.
Das Ganze will natürlich nun auch getestet werden. Eine Möglichkeit ist es direkt über ssmtp eine Mail zu schicken. Der folgende Befehl schickt etwa eine leere Mail an echo@tu-berlin.de, das diese wiederum gleich wieder zurück zu euch schickt. So könnt ihr bequem testen, ob eure Einstellungen funktioniert haben. Zudem bewirkt der Schalter -v
, dass bei der Aktion Rückgaben ins Terminal geschrieben werden. Zum Senden müsst ihr nach dem Ausführen des Befehls noch [STRG]+[D] drücken.
$ ssmtp -v echo@tu-berlin.de [<-] 220 smtp.gmail.com ESMTP x65sm8488142wmg.4 - gsmtp [->] EHLO EIN.BEISPIEL@gmail.com [<-] 250 SMTPUTF8 [->] STARTTLS [<-] 220 2.0.0 Ready to start TLS [->] EHLO EIN.BEISPIEL@gmail.com [<-] 250 SMTPUTF8 [->] AUTH LOGIN [<-] 334 ############# [->] ########## [<-] 334 ######### [<-] 235 2.7.0 Accepted [->] MAIL FROM:<EIN.BEISPIEL@gmail.com> [<-] 250 2.1.0 OK ########### - gsmtp [->] RCPT TO:<echo@tu-berlin.de> [<-] 250 2.1.5 OK x65s########### - gsmtp [->] DATA [<-] 354 Go ahead ############# - gsmtp [->] Received: by EIN.BEISPIEL@gmail.com (sSMTP sendmail emulation); Thu, 11 Feb 2016 16:34:00 +0100 [->] From: "USERNAME" <EIN.BEISPIEL@gmail.com> [->] Date: Thu, 11 Feb 2016 16:34:00 +0100 [->] [->] . [<-] 250 2.0.0 OK 1455204843 ########### - gsmtp [->] QUIT [<-] 221 2.0.0 closing connection ########### - gsmtp
Alternativ könntet ihr natürlich auch via mutt oder mailx direkt vollständige Mails verschicken. ssmtp ersetzt sicherlich nicht einen ordentlich aufgesetzten Postfix-Dienst auf einem richtigen Server, doch wenn die eigenen Workstation zuhause einfach nur in der Lage sein soll ein paar Status-Mails in Netz zu senden, dann ist ssmtp ein ganz praktisches Werkzeug.
Funktioniert super, danke!
bisher habe ich sendemail verwendet aber ssmtp bietet scheinbar mehr Möglichkeiten.
Vielen Dank für die Anleitung! Habe gerade einen Server am Start, wo ich das ganz gut gebrauchen kann.
Praktisch, dass ich das Versenden so direkt über meine Google Mail Adresse durchführen kann.
(Wie immer) super Anleitung. Aber GUIs sollte man doch eigentlich mit ‚gksu‘ rootrechtlich starten – ’sudo‘ war da doch irgendwie böse (obwohl ich ehrlich gesagt mich noch nie damit beschäftigt habe warum).
Bei Gedit ist das nicht wirklich problematisch 🙂
Ich sehe das, vor allem am eigenen Desktop Rechner, den man alleine nutzt als unproblematisch 😉
Ich setze bei mir für diesen Zweck immer auf Nullmailer – ssmtp werde ich mir aber definitiv auch mal anschauen. Danke für die tolle Anleitung!
Ah, nullmailer. Ich hatte auch danach gesucht, konnte mich an den Namen aber nicht mehr erinnern. Danke für den Hinweis.
Der Vollständigkeit halber möchte ich gerne noch esmtp erwähnen, damit sind dann meines Wissens nach alle Mail-Weiterleiter genannt.
Hehe, der „Screenshot“ von esmtp ist gut http://esmtp.sourceforge.net/screenshots.html 🙂
Danke für die Anleitung, habe mir einen extra gmx Account geschaffen zum testen bekomme im Moment aber folgenden Fehler
.. Creating SSL connection to host
.. sSMTP[1376] : Invalid response SMTP Server (STARTTLS)
.. sSMTP[1376] : Cannot open mail.gmx.net:465
Habe die Konfig mehrfach überprüft, finde aber den Fehler nicht.
Danke für die Hilfe
Ich habs gerade nochmal mit GMX unter Ubuntu Lucid 10.04 getestet. Ich hab einfach nur die Konfigurationen per Copy&Paste übernommen und meine Daten eingetragen. Wichtig ist die /etc/ssmtp/revaliases natürlich auf GMX zu trimmen, aber ich denke dass du das gemacht hast. Bei mir will es sofort laufen. Wie gehst du denn ins Netz? Kann es sein dass dein Zugangsanbieter SMTP zu anderen Mailservern als den eigenen blockt? Manche machen das um Spammer zu behindern.
Also ich kriegs mit Natty und google mail nicht zum Laufen. Ich hab natürlich noch nach anderen Howtos gesucht und auch genug gefunden, aber no chance.
Ich hab Deine Beispiele auf googlemail.com umgebogen, bin mir sicher über username/pass, typos etc pp.
Wenn ich den Testbefehl abschicke passiert nichts. Ich bekomme keine Befehlszeile mehr, und weder Strg-C/Strg-D helfen irgendwas. Ich muss den Job per kill wegschiessen.
Was mich irritiert: mein Thunderbird nutzt zum Versand Port 465 statt 587 und via SSL Login, nicht TLS…
Hat jemand ein Beispiel oder einen Hinweis, auf was man bei googlemail.com achten muß?
Danke trotzdem, ich bin sicher, wenn ich es mal ans Laufen gebracht habe, dann werd ichs auch mögen 😉
Sorry, hat sich erledigt. Waren diverse Kleinigkeiten. Man muß den Port nicht anpassen und ich hatte einen Fehler im Usernamen, den ich wirklich x-mal übersehen habe…. dann bekomm ich auch output…
Erwähnenswert wäre dennoch Strg-D nach dem ssmtp -v … das weiß sicher nicht jeder.
Vielen Dank für das Tut!
Cheers,
Mike
Super, dass es doch noch klappt 🙂
Danke für den Hinweis strg+d! 😉
Funktioniert prima ich hatte erst noch Probleme mit Resten von Sendmail als ich etwas wild rumprobierte.
Aber das ist ja eigene Unfähigkeit.
Geht das auch mit Hotmail????
Ausschließen will ich das nicht, es ist aber immer ein bisschen frickelig die richtigen Zugangsdaten herauszubekommen.
Grüße
Christoph
Nach dem ausführen von ssmtp -v echo@tu-berlin.de passierte bei mir erstmal – nichts. Ich habe gewartet und den ssmtp erstmal abgeschossen und nach Problemen mit meiner Netzwerkkonfiguration gesucht.
Vier Versuche später habe ich dann Strg-D gemacht und ssmtp hat dann die (leere) Mail verschickt. Ein ein paar mal „Enter“ wäre auch gegangen. Vielleicht sollte das noch mit rein in die ansonsten tolle Anleitung. Sonst wartet man nämlich lange darauf, dass ssmtp was verschickt 😀
Hallo!
Das hilft super. Gerade wenn man nicht in jedem OpenVZ-Container einen Mailserver fahren will – aber auch nicht seinen eigenen mit den Mails anderer „belasten“ will.
Funktioniert perfekt 🙂
Danke für die guten Tipps! Ich würde aber gerne meine logs als Attachment anhängen, nicht nur als body text evtl. auch als .tar . Das geht wohl so mit ssmpt nicht. Hast Du da eine Lösung?
Da gibt es tatsächlich eine Lösung, wenn auch nicht mit sSMTP. sSMTP kümmert sich ja nur um das zustellen der Mails an einen SMTP-Server, und nichts weiter. Dafür was du vorhast, brauchst du einen Mailclient.
Bei mir hat sich mutt als sehr nützlich herausgestellt:
mutt -a syslogs.tar.gz admin@domain.org < /dev/null
Das ist doch so ziemlich das was du suchst, oder? 😉 mutt übergibt die Mail dann an sSMTP.
Ich glaube ssmtp kann gar keine Attachments verschicken, du könntest daher auf msmtp umsteigen, das Attachment schickst du dann via $ msmtp foo.bar@example.com < attachment.txt raus. Siehe auch dieser Blog-Beitrag.
Grüße
Christoph
das funktioniert leider nicht. Die Eingabedatei hat nur die Adressaten,Subject und Body angaben.
btw
In der config bei 1und1 auth plain angeben der rest dürfte klar sein.
Wirf bitte mal einen Blick auf Biabam („Biabam Is A Bash Attachment Mailer“).
Ja das geht, welchen mailer verwendet er dann eigentlich.
Den des Systems.
Auf meinem Testsystem hat es funktioniert möglicherweise, weil ich msmtp bereits installierte.
Auf meinem Ubuntu Server im Netz habe ich jetzt apt-get install biabam ausgeführt und er hat dann exim mit installiert.
Deinstallieren von exim mit apt-get remove exim4 exim4-base exim4-config exim4-daemon-light hat auch biabam weginstalliert.
Dann muss ich jetzt wohl exim configurieren?
Ne, installiere erstmal deinen mta und das metapaket „mail-transport-agent“, davon hängt biabam ab. Siehe http://packages.ubuntu.com/precise/biabam
apt-get install msmtp-mta das hatte gefehlt.
Dannach wurde auch exim wieder entfernt. Die Conifgdatei war noch vorhanden /etc/msmtprc.
Danke an alle für Eure Hilfe hier bekommt man wirklich brauchbare antworten.
Hallo und THX für das gute Tut hat mir in sofern schonmal geholfen das E-Mails jetzt auch meine Webseite verschicken kann.
Habe das mit gmail.com gemacht funzt klasse.
Jedoch haben sich mir 4 Problehme eingestellt/dargestellt.
1. Es werden keine Systemmails lokal versendet und von root und user empfangen.
2. Ist bei versendeten E-Mails von der Webseite als Absender www-data angegeben.
3. E-Mails können nicht mehr Lokal versendet werden z.B. user1 möchte user2 eine Lokale E-Mail hinterlassen. (vermutlich selbe problem wie punkt 1)
4. habe ich keine lokale benachrichtigung ob ssmtp E-Mails versendet, leider nur im E-Mailkonto was mir etwas zuviel smaltalk nach aussen ist.
Gibt es da möglichkeiten das zu händeln ?
Habe bisher leider nichts gefunden was mich schlauer macht.
Für jeden Tip dankbar 😉
Mfg Berlinerping
P.S. benutze Debian 6 ohne GUI,Apache2, php5, mysql, DynDNS, CMS ist Joomla 2.5
Ersetzt diese Lösung sendmail vollständig ? Oder laufen sendmail und ssmtp parallel ?
Muss man ein bereits laufendes sendmail anhalten/deaktivieren ?
Läuft ssmtp dann als cron job oder als Daemon ? Wie erfolgt der Aufruf von ssmtp ?
Der Testversand ssmtp -v echo@tu-berlin.de funktioniert bei mir. Die Echo-Mails der TU Berlin landen im Postfach.
Ich habe in maillog noch Einträge wie:
Dazu laufen noch zwei Prozesse:
alternatives –config mta
hilft weiter.
Ist ja toll! So einfach kann das gehen. Nach endlosen Versuchen mit Postfix hatte ich das Thema „eMail über Formular versenden“ schon abgehakt. Und nun: installiert – die beiden Dateien angepasst – fertig 🙂
Gerne, ich bin immer froh wenn auch alte Beiträge noch hilfreich sind 🙂
Grüße
Christoph
Hallo Christoph!
Mit diesem Blog konnte ich auf simpelste und schnellste Weise meine Owncloud zu 100% meinen Bedürfnissen anpassen. Es leben Cronjob-Nachrichten 😉
Vielen Dank – Carsten
Schön, wenn auch alte Beiträge noch nützlich sind 🙂
Schön, dass Du mal darüber geschrieben hast! Ich habe letztens die Diskussion wieder gehabt, weil Fedora ja keinen eigenen MTA mehr installiert. Ich finde die Entscheidung auch richtig. Lediglich auf meinem, als MX eingetragenen, Server läuft Postfix: Eigener Mailserver. Auf allen anderen Büchsen wie z.B. meinem Raspberry Pi hab ich auch sSMTP und nutze darüber den externen Mailserver.
Ich glaube viele nutzen nicht sSMTP sondern Postfix oder Sendmail, weil es vorinstalliert ist und sie keine Lust haben die Dinger zu konfigurieren. Dann braucht man sich aber auch nicht wundern, wenn man immer im Spam-Filter landet. sSMTP ist mit Sicherheit die beste Lösung.
Genau das was ich für meinen kleinen Homeserver gesucht habe.
Vielen Dank für das tolle HowTo!
Gruß Frank
Hello,
erstmals danke an Christoph für den guten sSMTP-Überblick.
Irgendwie funzt’s bei mir nicht ganz!
Ich will mit meinem raspberry keine Mails von außen empfangen (sitzt auch hinter eine Firewall und von außen ist nur der ssh:22 port geforwarded).
Was ich brauche:
1. crontab (von root, user1, user2, …)
STDOUT soll per Mail an „MAILTO“-variable geschickt werden
-> landet zurzeit im dead.letter-file
2. Mails an lokale user (user1 an user2):
wie muss ich den Empfänger angeben, damit die Mail intern und nicht gleich über den SMTP-relay gesendet wird?
-> eine Mail an „user1“ wird nicht an die Adresse im /etc/ssmtp/revaliases (user1:myaddress@gmx.at:mail.gmx.net:465) – also myaddress@gmx.at – gesendet, sondern an user1@gmx.net
Mailversand an externe User funktioniert manuell problemlos.
Also zB ‚echo „Hello World“|mails -s „MySubject“ irgendwer@irgendwo.com‚
/etc/ssmtp/ssmtp.conf (analog Bsp oben)
/etc/ssmtp/revaliases:
root:myaddress@gmx.at:mail.gmx.net:465
user1:myaddress@gmx.at:mail.gmx.net:465
user2:myaddress@gmx.at:mail.gmx.net:465
PS: Ein Tipp von meiner Seite um Attachments zu schicken (sudo get-apt install uuenview). Bsp:
cat mail.txt|uuenview -a -bo MyAttachment.tgz |sendmail -t
wobei das file mail.txt zB folgendes enthält:
–cut–
From: MyAddress@gmx.at
To: irgendwer@irgendwo.com
Subject: MySubject
Hier kommt der Body-text
blabla
–cut–
Ich nutze mutt 1.5.22 unter cygwin zum mailen und hole mails per pop ab. Da gmx auf verschlüsselte mails umstellt, siehe http://www.gmx.net/e-mail-made-in-germany/ssl/, wollte ich meine Konfigurationsdatei .muttrc anpassen und ersetzte
durch
Leider bekam ich beim Abrufen der Mail die Meldung „Illegal instruction (core dumped)“. Der „core“ ist offenbar die Datei mutt.exe.stackdump mit folgendem Inhalt:
mutt -v | grep ssl zeigt, dass in den configure-options –with-ssl und –enable-pop steht:
Wenn ich den Standardport 110 eintrage, also
erhalte ich die identische Meldung und das gleiche mutt.exe.stackdump, das sich nur in der pid unterscheidet.
Die Datei .muttrc ist in Unix-Format gespeichert, das ist ja manchmal bei cygwin eine mögliche Fehlerquelle. Ich habe noch den Tipp verfolgt, die Variable pop_port extra zu setzen, aber mutt kennt sie nicht, und auch die Doku von mutt unter http://www.mutt.org/doc/manual/manual-6.html#ss6.3 sagt, dass der Port optional nach der Adresse und Doppelpunkt geschrieben wird:
Hat jemand eine Idee? (Mail schicken würde ich gern weiter mit ssmtp.exe, geht auch nicht, dazu mehr in separatem thread, wird sonst zuviel hier.)
Vielen Dank im voraus und beste Grüße von
Helmut
Hall Leute.
Ich habe mich an die Anleitung gehalten.
Was ich nicht so ganz verstehe.
Ich habe in der ssmtp.conf erste Zeile User_Name_AAAA=EIN.BEISPIEL@gmail.com und in der revalias User_Name_AAAA:EIN.BEISPIEL@gmail.com:smtp.gmail.com:587 eingetragen.
User_Name_AAAA gibt es auf dem System nicht als User.
Sowohl root als auch ich als normaler User können Mail versenden.
Was laut Anleitung für „User“ nicht gehen sollte.
eine Idee??
Gruß.
B. Zeljak
Hallo Leute!
Nach upgrade auf Ubuntu 14.04 und Apache2 2.4.7 klappt das Versenden von Mails mittels Web-Formular nicht mehr. Zwar meldet das Formular: „Die Mail wurde versendet“, es wurde also kein Fehler erkannt, aber im Error-Log steht:
[Wed Oct 08 15:33:14.665413 2014] [core:notice] [pid 3017] AH00094: Command line: ‚/usr/sbin/apache2‘
ssmtp: No recipients supplied – mail will not be sent
Folgerichtig kommt auch keine Mail beim Empfänger an.
Wer kann mir auf die Sprünge helfen?
Hm, sieht so aus, als ob ssmtp keine E-Mail-Adresse übermittelt bekommt. Stimmt mit deinen Skripten alles? Grüße.
Hi Christoph!
Ich verwende genau das gleiche „mailer.php“ und die gleiche html-Eingabemaske, wie schon unter Ubuntu 12.04 (siehe Eintrag vom 10.2.2013).
Mail aus dem Terminal verschicken mit „ssmtp -v mail@domain.de < test.mail" funktioniert.
Hallo Christoph,
danke für die Anleitung – sowas habe ich gesucht weil ich meinen N54L mit RAID5 aus der Ferne etwas „überwachen“ will.
Mit GMX funktioniert das prima, nun habe ich gerade mein (fast nutzloses) GMAIL-Postfach au das 2-Step_Verfahren umgestellt.
Bei meinem PC gings problemlos über die SMS – aber wie geht es bei einem debian7-Server über die Konsole?
Diese Variante über Gmail wäre mir lieber…
Danke.
hallo,
eins vorweg…bin raspi-neuling…
wollte den mailversand einrichten (mittels gmx) – wenn ich die testmail sende, tut sich nichts…nach mehrmaligen enter drücken, bekomme ich folgende Meldung:
was kann hie der fehler liegen? mit str+d hab ich es schon versucht...funzt auch nicht
wäre über Unterstützung sehr erfreut
danke
Der Fehler steht doch in der Ausgabe: „ssmtp: 550 Sender address is not allowed.“
GMX wird wohl vermutlich (auch) keine beliebigen Absenderadressen wie root@Hostname mehr erlauben. Ein „FromLineOverride=YES“ sollte das beheben.
Hi, wie Klaus schon sagte: Um sich vor Spammern zu schützen erlaubt GMX dir nicht mehr Mails mit einer beliebigen E-Mail-Adresse zu versenden. Du kannst als Absender-Adresse nun also deine GMX-Adresse verwenden, oder aber eben dein Glück mit FromLineOverride=YES versuchen. Grüße, Christoph.
Hallo,
ich habe schon länger ssmtp benutzt und es hat immer wunderbar funktioniert. Seit kurzem bekomme ich allerdings folgenden Fehler
„Invalid response SMTP server“
Hat GMX was geändert, sodass ssmtp nicht mehr funktioniert?
Ich verwende folgende Konfiguration:
Ich würde mich sehr über Antworten freuen.
Gruß,
Manuel
Auch von mir herzlichen Dank für die Anleitung. Hat alles auf Anhieb geklappt und ich konnte mir postfix ersparen und erfahre so jeden Morgen, ob meine Backups geklappt haben.
Gruß
Stefan
Vielen Dank für die Arbeit die Du dir gemacht hast!
Super geschriebene und verständliche Anleitung!!
Spart doch einige Ressourcen auf meinem Raspberry 🙂
Servus,
erstmal ein dickes Danke für den Tutorial. Ich kann nun via ssmtp (via konsole) auf meine pi2 Mails verschicken, das klappt schon mal. Nun möchte ich gern auch einen Anhang mit Hilfe von mutt vesenden. Mein Aufruf schaut folgendermaßen aus:
Als Fehler erhalte ich:
Irgendwo ist hier noch der Wurm drin, kannst du mir hier helfen?
Grüße Mike
Der Aufruf von:
msmtp -a default empfaenger@web.de < /home/pi/aufnahmen/image.jpg
gibt folgendes aus:
Würde mich sehr freuen, wenn du mir helfen könntest.
Vielen Dank für die tollen Infos zu ssmtp. Super Idee, wenn es für meine Planungen geht.
1.) Ich möchte Web-Formulare von meiner Webseite über ssmtp an Fremde versenden.
2.) Und Fremde sollen auch über ein Formular Kontakt zu mir aufnehmen können.
z.B. mit GMX
Kann mir jemand sagen, was ich dann unter
form name=“form1″ method=“post“ action=“adresse??“
und Versand mit php mail? (Absender) verwenden muss?
Kennt jemand eine Beispielseite?
Vielen Dank
Kannst Dir ja zB mal „http://www.lynda.com/articles/send-email-from-a-web-form-with-php“ anschauen.
Deine Aufgabe hat ja eigentlich nichts damit zu tun, wie die Mail dann letztendlich versendet wird …
Hat jemand schon mal eine Lösung gefunden wegen dem Klartext-Passwort? Ich überlege:
AuthUser=EIN.BEISPIEL
AuthPass=GEHEIM
von einer externen Datei includen zu lassen.
Man könnte dann per PHP vor dem Absenden die Daten bereitstellen und nach dem Absenden wieder entfernen.
include scheint aber in der ssmtp.conf nicht zu gehen. Oder muss man dazu irgendwas in den Einstellungen ändern?
Andere Ideen?
So ich habe es gelöst, das Problem bei ssmtp.
1.) Ich schreibe über ein Script und PHP exec die Daten des Mailaccounts in die beiden Dateien in /etc/ssmtp/
2.) Ich sende die Mail() ab.
3.) Ich lösche die Einträge aus den conf dateien wieder raus.
Der Vorteil ist, dass ich nun beliebige User und Konfigurationen verarbeiten kann. Jedes Mailkonto ein Dateiblock, der jeweils geschrieben und entfernt wird.
War eine ziemliche Fummelei. Passwort und Username liegen nun nicht mehr im Klartext in der ssmtp.conf.
Somit ein richtig schönes erweitertes Mailsystem.
Hat sich also erledigt 🙂
Hallo,
ich versuche seit Studen E-Mail via ssmtp auf einem Arduino Yun zu versenden. Dabei erhalte ich immer die Fehlermeldung:
ssmtp: 530 5.7.0 Must issue a STARTTLS command first. (YUN)
Ich verwende eine E-Mail-Adresse von T-Online. Mit den selben Zugangsdaten funktioniert der Mailvesand z.B. mit Thunderbird.
Gibt es irgend eine Strategie, wie ich den Fehler finden kann?
Danke vorab!
Hi Leute, ich hab die aleitung komplett befolgt, bin dem „gmail weg“ gefolgt und bekomme jetzt beim Test email senden folgende Fehlermeldung:
ssmtp: Cannot open smtp.gmail.com:587
Weiß jmd woran das liegt?
Ich habe es gerade auf einem Raspi mit Linux Mint mit Erfolg probiert, exakt nach der Anleitung. Eventuell blockiert dein Internetanbieter SMTP-Verbindungen zu anderen SMTP-Servern als seinem. Du kannst das bspw. mit…
…testen.
stell bei hostname=localhost ein, dann sollte es gehen
Super Anleitung, aber bei mir ergaben die Testmails immer ungefähr (wegen Gößer-Kleiner-Zeichen in der Original-Fehlermeldung) folgende Fehlermeldung:
Der Fehler war in der Zeile „hostname=EIN.BEISPIEL@gmail.com“. Aus dem @ wurde offensichtlich ein Fragezeichen. Bei mailbox.org zumindest darf hinter „hostname=“ nur die domain stehen, also „hostname=mailbox.org“. Vielleicht ist gmail da toleranter…
Ist klar der Artikel ist schon etwas älter, jedoch lag er immer in meinen Favoriten rum.
Hab mich heute mal dazu durch gerungen ein Ubuntu-Server auf zusetzten zum entwickeln von PHP usw.
alles soweit super.
hab auch alles ans laufen bekommen, jedoch solltest Du den Eintrag
hostname=EIN.BEISPIEL@gmail.com
bei gmail aufhostname=localhost
ändern. Denn sonst geht es nicht, jedenfalls bei mir.Eine Frage noch dazu, ich bekomme immer alle Emails auch an die gmail Adresse: kann man das verhindern?
Mit freundlichen Grüßen Andreas
Kann die Probleme von Andreas bestätigen, d.h.
–
hostname=localhost
muss gesetzt werden (oder zumindest nichthostname=EIN.BEISPIEL@gmail.com
– Alle Emails landen in der Mailbox des genutzten Mailservers
Gruß
Thomas
Hi zusammen,
ich verzweifle noch und hoffe auf Hilfe.
Ich hab alles so auf nem RasPi installiert wie beschrieben.
Das versenden über Komandozeile als user pi (root) funktionier auch einwandfrei.
Doch als www-data (hab ich auch in die /etc/ssmtp/revaliases eingetragen) bekomme ich den Fehler: ssmtp: Cannot open smtp.stato.de:465
Kann mir bitte jemand helfen?
Danke
Sebastian
Vielen Dank für die tolle Anleitung!
Ich habe zwei ganz kurze und ggf. doofe Fragen:
– Nimmt ssmpt E-Mails ‚asynchron‘ entgegen und leitet diese automatisch an den konfigurierten SMTP-Server weiter, auch wenn dieser mal nicht zur Verfügung steht?
– wenn man aus Java Mails versenden möchte, wie spreche ich dann ssmpt am einfachsten an? Horcht der Server auf einem lokalen Port?
Besten Dank!
Danke für diese Beschreibung, auch wenn ich jetzt sehr lange gesucht habe, warum ei mir immer nur der Fehler kam: ssmtp: Authorization failed (535 Authentication credentials invalid)
Ich echt alles probiert, aber leider erst keine Lösung gefunden.
Erst als ich irgendwo den Hinweis mit Sonderzeichen im PW gesehen habe, konnte ich mir schon denken was da im Busch ist. Und tatsächlich, ich habe das PW geändert und es geht!
Also Sonderzeichen im PW sind unter Linux immer wieder mal ein Problem!
Hi,
danke für die Anleitung. Ich verwende nen Raspberry mit Debian und das Mail versenden klappt auch soweit, nur hab ich folgendes komisches Phänomen:
Wenn ich die Mail über die Kommandozeile direkt mit:
echo „Hello world email body“ | mail -s „Test Subject“ recipientname@domain.com
sende kommt bei mir der eingetragene Alias in der /etc/ssmtp/revaliases „richtig“ an.
In der Revaliases sind die Nutzer root und pi wie in der Anleitung eingetragen.
Wenn ich den gleichen „Code“ in einem Bash-Script verwende dann ist der Absender immer „root“ ohne irgendetwas sonst??? Woran könnte das liegen?
Hallo Christoph,
vielen Dank für die tolle Anleitung. Leider musste ich mein Google Konto auf die Verwendung weniger sicherer Apps umstellen.
Gibt es dafür eine Abhilfe?
Gruß Jürgen
Moin Moin,
wie kann ich täglich um 00:00 den Befehl Uptime ausführen lassen und die ausgabe per E-Mail versenden?
Der ssmtp ist bereits eingerichtet.
Noch einige Nachträge.
1.) Den ssmtp habe ich wie oben steht auf GMX eingerichtet.
Es kommt aber beim Testen ein Fehler:
$ ssmtp -v echo@tu-berlin.de
[] EHLO gmx.net
[] AUTH LOGIN
[] bWFpbC12b24tamVubnlAZ214LkRF
[<-] 334 UGFzc3dvcmQ6
[<-] 535 Authentication credentials invalid
ssmtp: Authorization failed (535 Authentication credentials invalid)
2.) Wenn ich in der Console "mail -s ./usr/bin/uptime mail@mail.de" eingebe und absende kommt "-bash: mail: Kommando nicht gefunden.".
Mit welchem Befehl wird die Mail versendet?
1) dann ist bei dem GMX setup was falsch …
2) tgl um Mitternacht: Google einmal nach crontab
Mail Versand:
uptime | mail -s uptime-notice mail@gmx.net
Hi,
klasse Anleitung. Ich habe ssmtp auf einem RaspberryPi mit Debian 9 eingerichtet.
Hat wunderbar funktioniert.
Die Kommandozeile
die überall angepriesen wird funktioniert nur in so weit, daß ich eine EMail bekomme, aber Absender, Betreff und Text fehlen.
Ich habe dann eine EMail mit
geschickt.
Beim ersten mal funktioniert das wunderbar. Beim zweiten und weiteren malen, bekomme ich wieder kein Sender und kein Betreff, aber alles im Textfenster. Also To: …
Als ob ssmtp die weitere(n) EMails für als zugehörigen Text zur ersten EMail hält. Nach einem reboot funktioniert es wieder genau ein mal. Dann das gleiche Problem wieder.
Hat vielleicht einer eine Idee an was das liegen kann?
Vielen Dank.
Habe die letzten Stunden damit verbracht ssmtp mit einem neuen GMX Account zum laufen zubringen, bekommen habe Ich immer „ssmtp: Authorization failed (535 Authentication credentials invalid)“, habe es dann mit web.de probiert, die Error Meldung/Nummer dort brachte mich dann darauf, das man in den Einstellungen, auf der GMX/Web.de-Seite, die Nutzung von dritt Software wie Outlook/Thunderbird usw. extra aktivieren muß… danach funktionierte es sowohl mit gmx als auch web.de
Hallo Rene,
auch habe die „535“-Erfahrung mit meinem GMX-Account gemacht und bislang keine Lösung gefunden. Nach Umstellung des Config-Files auf meinen Account bei ‚kabelmail‘ lief alles innerhalb von 10min.
Den Hinweis, bei GMX eine externe Nutzung extra zu aktivieren, habe ich mehrfach gelesen. Nur nutze ich Thunderbird (PC) und K9-Mail (Android) seit Jahren, ohne dass ich jemals bei GMX etwas separat freigegeben hätte.
In der Web-Mail-Oberfläche von GMX habe ich keine Option gefunden, wo ich etwas aktivieren könnte.
Kannst du mir mitteilen, wie du das geschafft hast? Für deine Mühe vielen Dank im Voraus!
[…] Möchte man nicht Postfix installieren und konfigurieren nur um kleine Nachrichten per E-Mail zu versenden, kann man auch au ssmtp zurückgreifen. Eine Anleitung findet man hier ➡ http://linuxundich.de/gnu-linux/system-mails-ohne-einen-mail-server-mit-ssmtp-verschicken/ […]