FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: popperchris am 18 Mai 2016, 11:34:25

Titel: E-Mail Versand per postfix
Beitrag von: popperchris am 18 Mai 2016, 11:34:25
Hallo fhem Gemeide.

Nachdem ich "exim4" nicht mehr ans laufen gebracht habe bin ich umgestiegen auf "postfix".

Leider funktioniert der E-Mail versand aus FHEM damit nicht. Con der Console aus geht es.

Hat jemand ein Beispiel von euch was in der fhem.cfg und auch in der 99_myUtils.pm stehen muss damit das mit "postfix" funktioniert ??


Vielen Dank und Gruß
Christoph
Titel: Antw:E-Mail Versand per postfix
Beitrag von: Wernieman am 18 Mai 2016, 11:55:13
Genau so wie mit exim4 .... wie versendest Du denn auf der Console Mails?

Wie hast Du (ist stand) Dein Mailversand in FHEM konfiguriert?
Titel: Antw:E-Mail Versand per postfix
Beitrag von: popperchris am 18 Mai 2016, 12:34:29
Von der Console aus sende ich Mail via:
echo "Dies ist eine Testmail" | mailx -s "Test"  xxx@yy.de

die fhem.cfg :
define Schacht_Aussen_Alarm02 DOIF ([KFM100_Sensor_Aussen:content] < 50)({ exmail('xxx.@yy.de','Wasserstand Schach
t Aussen','Wasserstand unterschreitet Wert von 50. Pumpe scheint trocken zu laufen!');;;; })

und die 99_myUtils.pm:
sub exmail ($$$) {
my ($rcpt, $subject, $text) = @_;
system("echo \"$text\" | /usr/bin/mail -s \"$subject\" \"$rcpt\"");


Titel: Antw:E-Mail Versand per postfix
Beitrag von: Wernieman am 18 Mai 2016, 12:40:00
Warum probierst Du es auf der Konsole nicht so, wie in FHEM definiert?
echo "$text" | /usr/bin/mail -s "$subject" "$rcpt"

Vorher natürlich die Passenden variablen setzen
text="Supertoller Text"
subject="Toller Subjekt"
rcpt="toller_user@tolle-domain.de"


Und bitte ... mit dem fhem-User
Titel: Antw:E-Mail Versand per postfix
Beitrag von: popperchris am 18 Mai 2016, 13:25:58
"echo \"$text\" | /usr/bin/mailx -s \"$subject\" \"$rcpt\


so sollte es gehen
Titel: Antw:E-Mail Versand per postfix
Beitrag von: popperchris am 18 Mai 2016, 14:19:49
May 18 14:14:20 raspberrypi01 postfix/smtp[21505]: C3AAF425D9: to=<xxxx@yy.de>, relay=smtp.1und1.de[212.227.15.183]:587, delay=0.9, delays=0.32/0.11/0.46/0.02, dsn=5.0.0, status=bounced (host smtp.1und1.de[212.227.15.183] said: 550-Requested action not taken: mailbox unavailable 550 invalid DNS MX or A/AAAA resource record (in reply to MAIL FROM command))

Ich denke das dies aber ein Problem von postfix ist.

Hat da einer eine Idee zu ??
Titel: Antw:E-Mail Versand per postfix
Beitrag von: dev0 am 18 Mai 2016, 18:45:07
Sieht aus, als ob sich dein postfix nicht authentifiziert. Der 1+1 smtp server wird, wie meisten anderen smtp server auch, keine mails von IPs annehmen für die kein mx record gesetzt ist, wenn man nicht "angemeldet" ist.
Titel: Antw:E-Mail Versand per postfix
Beitrag von: Wernieman am 18 Mai 2016, 21:15:25
Du sagst, von der Konsole geht es, aber in FHEM nicht?
Diese Meldung bekommst Du nur, wenn Du per FHEM mailst?

Bin gerade etwas "verwirrt"....
Titel: Antw:E-Mail Versand per postfix
Beitrag von: Roman am 18 Mai 2016, 23:24:34
Hallo,

mailbox unavailable 550 invalid DNS MX or A/AAAA resource record (in reply to MAIL FROM command)

hier sollte das Problem die Absenderadresse sein (MAIL FROM), 1und1 checkt, ob der Absender eine offiziell erreichbare Adresse ist (Domain-Check).
Ich gehe davon aus, dass wenn Du über FHEM schickst keine offizielle Mailadresse gesetzt wird sonder eher etwas wie  'fhem@<hostname>.local gesetzt wird. Ein 'großer' Mailclient setzt den Absender nach deiner Konfiguration, bei mailx wird der Absender normalerweise aus <USER>@HOST zusammengesetzt. Der Absender sollte auch im Logfile zu finden sein.

system("echo \"$text\" | /usr/bin/mail -r echte@EMailadresse.com -s \"$subject\" \"$rcpt\"");

sollte funktionieren.

die bessere Lösung wäre postfix die Adressen gleich umschreiben zu lassen, hierfür in der /etc/postfix/main.cf folgende Zeile einfügen
sender_canonical_maps = hash:/etc/postfix/sender_canonical
und eine /etc/postfic/sender_canonical in folgendem Format erstellen

<user>@localhost     <user>@<echte Maildomain>
<user2>                   <user2>@<echte Maildomain>


danach ein
cd /etc/postfix ; postmap sender_canonical ; postfix reload

das sollte eigentlich alles sein.

Gruß
Roman
Titel: Antw:E-Mail Versand per postfix
Beitrag von: Wernieman am 19 Mai 2016, 08:02:10
Ups .. in "die Richtung" hatte ich gar nicht geschaut. Danke für den Beitrag!