E-Mail Versand per postfix

Begonnen von popperchris, 18 Mai 2016, 11:34:25

Vorheriges Thema - Nächstes Thema

popperchris

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

Wernieman

Genau so wie mit exim4 .... wie versendest Du denn auf der Console Mails?

Wie hast Du (ist stand) Dein Mailversand in FHEM konfiguriert?
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

popperchris

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\"");



Wernieman

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
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

popperchris

"echo \"$text\" | /usr/bin/mailx -s \"$subject\" \"$rcpt\


so sollte es gehen

popperchris

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 ??

dev0

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.

Wernieman

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"....
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

Roman

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

Wernieman

Ups .. in "die Richtung" hatte ich gar nicht geschaut. Danke für den Beitrag!
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html