E-Mail Versand über SMTP scriptgesteuert

  • Einen schönen guten Tag.

    Ich möchte mir Emails schicken lassen bei best. Ereignissen. Dazu gibt es ja die SMTP-Funktion auf QTS. Das funktioniert über die Testfunktion auch ganz gut, jedenfalls bei gmx.de.

    Ich möchte dies jedoch auch aus einem Script heraus tun.

    ssmtp [email='xyz@123.de'][/email] </tmp/mail.txt 

    Folgende Fehlermeldung:

    Code
    Server didn't like our AUTH LOGIN (530 Must issue a STARTTLS command first)

    Kann mir jemand erklären, was hier zu tun ist bzw. wie ich Emails über sh verschicken kann?

    Vielen Dank.

  • Dürfte auch mit am Mail-Provider liegen.

    Ich nutze dafür in der CLI sendmail, damit klappt bei mir alles.


    Als Beispiel hier der Code-Schnipsel (die Variablen sind natürlich schon im Script Header angegeben):



    Gruss

  • Probier mal direkt hinter dem SSMTP (ich mutmaße)


    Mehr als meckern kann er ja nicht (und das ganze Haus explodiert)

  • Jetzt kam dies:

    Code
    ssmtp: 550 Sender address is not allowed.

    Ich nutze dafür in der CLI sendmail, damit klappt bei mir alles.

    Sendmail scheint ja wohl auf QNAP installiert zu sein.

    Könntest du das einmal näher erläutern? Wo konfiguriert man sendmail. Wo gibt man die Parameter (Passwort, Server, Port etc) ein?

    Einmal editiert, zuletzt von jauno () aus folgendem Grund: Ein Beitrag von jauno mit diesem Beitrag zusammengefügt.

  • Habe ich ganz normal über die GUI gemacht SMTP Settings oder bei neuerer Firmware im Notification Center, sendmail holt sich das dann aus den Einstellungen, funktioniert bei mir von QTS 4.2.6 bis 5.1.0 auf allen NAS.


    Gruss

  • Mod: Unnötiges Volltext-/Direktzitat entfernt! :handbuch::arrow: Forenregeln beachten und Die Zitat Funktion des Forums richtig nutzen


    Ja, klar, das funktioniert bei mir auch. Ich möchte das aber eben auch über das CLI scriptgesteuert tun, z. B. nach einem ausgeführten Backup. Das Problem ist wohl auch, dass die meisten Provider aus Sicherheitsgründen Fremdapps wie NAS blocken (Code 550). D. h. man müsste einen eigenen Emailserver aufsetzen. Keine Ahnung, wie das geht. Früher ging es mit Yahoo. Die haben die Funktion gesperrt.

    Wäre wirklich dannkbar für Tips wie ihr das macht.

  • Nochmals: ich habe keinen eigenen Mailserver aufgesetzt. Ich habe im NAS einen Account eingerichtet, der funktioniert aus der GUI (ist bei mir ein GMX Konto, aber auch ein Strato Konto bzw. ein gmail Konto funktionieren bei mir). Das default Konto wird von sendmail benutzt, da musste ich nichts weiter konfigurieren.

    Und in den (cron-gesteuerten) Scripten ist der o.a. Code eingebaut, damit erhalte ich meine Mails, auch bei manueller Ausführung natürlich.


    Gruss

  • Hast Du den o.a. Code benutzt? Da werden die Angaben wie Empfänger und Sender, Betreff und Nachrichten Text erst in eine Datei geschrieben.

    Sendmail holt sich dann alles aus dieser Datei, es müssen selbstverständlich gültige Adressen sein.


    Gruss

  • Ich hatte mit "sendmail" vom CLI das Problem, dass Umlaute in Outlook oder bei Android E-Mail Clients nicht richtig angezeigt werden.

    Wie ist es hier? QNAP hat doch nur die einzige Locale unter bash: "en_US.UTF-8" - Englisch - USA, oder?

  • Da zitiere ich mich aus einem anderen Thread, habe aber auch Thunderbird am laufen. Habe noch keine Probleme derart bemerkt, auch nicht im Android.

    Aber 1. Verwende ich in der GUI immer English als Sprache und 2. siehe mein Zitat, in meinen Scripten kann ich das ja selbst steuern ;) .


    Gruss

  • Ich nutze dafür in der CLI sendmail, damit klappt bei mir alles.

    Als Beispiel hier der Code-Schnipsel (die Variablen sind natürlich schon im Script Header angegeben):

    Hat endlich geklappt. Vielen Dank für das Script. 8)


    FSC830

    Was bedeutet nobody@somewhere.com

    Einmal editiert, zuletzt von jauno () aus folgendem Grund: Ein Beitrag von jauno mit diesem Beitrag zusammengefügt.

  • Ach so, das habe ich eingebaut als Pseudo Adresse. Wenn diese Adresse verwendet wird, wird keine Mail gesendet. ;)


    Gruss


    Edit: Nochmals zur Erklärung: in meinen Scripten ist i.d.R. der Empfänger "TOMAIL" fest hinterlegt, aber man kann ihn "übersteuern", in dem man eine Adresse im Aufruf mit angibt.

    Wenn ich das Script z.B. mit dem Parameter -t johndoe@domain.biz angebe, dann wird eine Mail an diese Adresse gesendet und nicht an die im Script eingetragene.

    Genauso gut will ich manchmal aber gar keine Mail haben, z.B. wenn ich das Script manuell aufrufe, dann gebe ich -t nobody@somewhere.com an und das Script wird ausgeführt, aber es wird keine Mail versendet. Denn damit brauche ich im Script nichts zu ändern. Das ist der Hintergedanke bei dieser Adresse gewesen.

    2 Mal editiert, zuletzt von FSC830 ()