• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[jelöööst] Logsurfer / Ubuntu 20.04.2 / ARM / Cortex A72

suwelo schrieb:
..
Nach Prüfung, des Sender && Empfänger ist mir das Subject und der Content der Mail völlig egal ..
Ich versehe was du meinst, aber ..
( sender: router@example.com && recipient: internet-master@example com ) dann Bcc: nach script@example com
ist mir unter postfix nicht bekannt... was aber nichts bedeutet. Vielleicht findest du was im Netz, ich glaube aber nicht

Typisch ist:
( sender: router@example.com ) dann Bcc: nach script@example com
das ist eine ziemlich einfache Angelegenheit

Für
( Subject == "Ip changed (regex)" ) dann_job || verwerfen
braucht es 2 Zeilen, ist simpel. Viel einfacher als jede postfix Konfiguration

suwelo schrieb:
Den Filter will ich mit Python schreiben.
gut
Warum?
 
OP
suwelo

suwelo

Member
Hallo,
mit dem Scripten für Postfix habe ich mich bisher nie wirklich auseinandergesetzt. Mir hat es bisher genügt, wenn die Services das tun wofür ich die brauche.
Es war mit dem Bash Script, mit dem ich meine neue IP Adresse herausfinde und bei den "Dyn Diensten" aktualisiere schon ziemliches Kopfzerbrechen. Manche Aufgaben, so empfinde ich mit Bash, sind ziemlich Eingeschränkt zu bewerkstelligen.

Python ist garantiert kaum einfacher als Bash Scripting und die Linux Gemeinde kommt heut zu tage kaum mehr um Python drum herum. Auf jeden Fall wird es eine gute Übung sein um die Basics und das Verständnis dafür zu vertiefen.

Die andere Sache die ich mit Python sehe ist, welche Module brauch ich und was kann ich damit anstellen.
Ich dachte auch zuerst an Perl. Das sprech ich noch viel weniger. Die Modulauswahl ist mit Perl ebenso umfangreich.

Module brauch ich mit Bash Scripting keine um als Beispiel ein Script für Postfix zu erzeugen.

Was ich jetzt finden müsste sind Beispiele egal ob Bash, Python oder Perl, damit ich verstehe was da gemacht werden soll.
Wie trage ich den Bcc Empfänger in

Code:
/etc/postfix/recipient_bcc

ein.

Manche Beispiele zeigen

Code:
router@example.com	Filter	ipchange@example.com

aber auch

router@example.com	Filter:ipchange

Da gehts bei mir los. Wie kommt was da rein ..

:D


Die Aktualisierung der neuen "Datenbank" und der Eintrag in die "main.cf" ist klar.
 
suwelo schrieb:
Da gehts bei mir los. Wie kommt was da rein ..
Die Konfiguration von postfix mußt du dir schon selbst erarbeiten.

Ein Beispiel zur Übersicht und einfacheren Stichwortsuche im Netz

main.cf:
Code:
..
sender_bcc_maps = hash:/etc/postfix/sender_bcc
..

/etc/postfix/sender_bcc
Code:
# sender               bcc_to
router@example.com     rscript@example.com
testen ob bcc funktioniert, wenn ja,
dann in /etc/aliases (oder wo immer diese Datei auf deinem System ist)
Code:
..
rscript:       "|/usr/local/sbin/script.sh"
..
Sollte dein System - was ich nicht weiß - virtuelle optionen verwenden, dann muß die Konfiguration dem entprechen.
Wenn das funktioniert, dann sehen wir weiter
 
OP
suwelo

suwelo

Member
Hallo,
ich habe keine Virtuellen Optionen bzw. virtual aliases konfiguriert.
Dafür einen Log Auszug von den Änderungen, die ich bisher gemacht habe.


Das Berechtigungsproblem habe ich gelost.
Bcc geht an mich durch, das Script wird ausgeführt.

Code:
Mar  6 18:41:07 mail-host postfix/local[13937]: 7EBC280205: to=<rscript@example.com>, orig_to=<router@example.com>, relay=local, delay=2.1, delays=0.03/0.02/0/2.1, dsn=2.0.0, status=sent (delivered to command: /usr/local/bin/rscript.sh)

Morgen Früh seh ich, ob die IP Adresse upgedatet worden ist. Den Cron Job auf dem anderen RPI schalte ich heute aus.

:D
 
OP
suwelo

suwelo

Member
Hallo,
danke für das Brainstorming und die neue Cron Job lose Lösung.
Eben habe ich am Router eine Neuverbindung ausgelöst. Die neue IP Adresse ist bei allen Dyn Diensten upgedatet worden.

Danke

Jetzt sollte ich noch in dem Script den Betreff Prüfen. Ich denke, dass bei allen Mails die vom Router kommen das Script ausgelöst wird, egal an welchen Empfänger die Status Benachrichtigungen adressiert sind.

Eben habe ich von meinem Mobyl Telephone auf meine Festnetznummer angerufen. Mein Router sendet eine Benachrichtigung; aber das Script wird nicht ausgelöst. Dafür kommt die Benachrichtigung doppelt an.


:D
 
suwelo schrieb:
Eben habe ich von meinem Mobyl Telephone auf meine Festnetznummer angerufen. Mein Router sendet eine Benachrichtigung; aber das Script wird nicht ausgelöst. Dafür kommt die Benachrichtigung doppelt an.
So wird das nicht funktionieren,
Wenn du online bist, melde dich, dann gehen wir das Problem Schritt für Schritt durch
 
OP
suwelo

suwelo

Member
Hallo,
gut ist, dass bei einem Anruf das Script nicht ausgelöst wird.
Weniger gut ist eben die doppelte Benachrichtigung, die auch bei Nachrichten mit *.wav Anhang vom AB ankommen werden oder wenn mein Router FAXen macht.

:D

Ich bin wirklich happy, dass es funzt. Mit ein bisschen Shyzz denke ich muss man leben können..

Auf die tägliche Statusmail um 0:00MEZ bin ich gespannt.

Welche Verschlimmbesserungen gäbe es, was schlügest Du vor?

:D


UPDATE 07.03.2021 - 00:07

Die mitternächtliche Zusammenfassung der FritzBox kommt auch doppelt an

Code:
FRITZ!Box-Info: Nutzungs- und Verbindungsdaten vom 06.03.2021	00:03
FRITZ!Box-Info: Nutzungs- und Verbindungsdaten vom 06.03.2021	00:03

MAIL Log

Mar  7 00:03:59 mail-host postfix/local[18234]: 47F078020B: to=<suwelo@example.com>, relay=local, delay=0.16, delays=0.13/0.02/0/0.01, dsn=2.0.0, status=sent (delivered to maildir)
Mar  7 00:03:59 mail-host postfix/local[18235]: 47F078020B: to=<suwelo@example.com>, relay=local, delay=0.17, delays=0.13/0.03/0/0.01, dsn=2.0.0, status=sent (delivered to maildir)
Mar  7 00:03:59 mail-host postfix/qmgr[17362]: 47F078020B: removed
 
OP
suwelo

suwelo

Member
Hallo,
ich hab heute nochmal damit herum experimentiert.

Am Router selbst kann ich die Sender && Empfänger Mailadressen frei wählen. Der Router versendet Statusmails an mein Postfach.

Code:
suwelo@example.com

Zusätzlich kann ich in den Push Service Benachrichtigungen eigene Empfänger eintragen.

Code:
Aktuelle IP-Adresse Zusendung der IP-Adresse bei Neuaufbau der Internetverbindung:

connection-master@example.com

Führte dazu, dass die Mail mit dem Script ausgeführt worden ist, ich habe aber keine Mitteilung darüber erhalten. Dann dachte ich mir versuch mal eine weitere Mailadresse Komma separiert da dran zu hängen.

Code:
connection-master@example.com, suwelo@example.com

Und siehe da, das Script wird ausgeführt und ich bekomme die Benachrichtigung.

Dann bin ich in die

Code:
/etc/postfix/sender_bcc

und habe alle Mailadressen mit "#" Kommentiert.

In der "main.cf" habe ich den Eintrag ebenfalls Kommentiert
Code:
# sender_bcc_maps = hash:/etc/postfix/sender_bcc


Danach an der Konsole

Code:
rm /etc/postfix/sender_bcc /etc/postfix/sender_bcc.db
service postfix restart

Meine "aliases" sieht für die Script Ausführung folgendermaßen aus

Code:
connection-master:	ipchange@example.com
ipchange:	"|/usr/local/bin/rscript.sh"

Und es geht.

Keine doppelten Benachrichtigungen mehr.

Auch nach einem System Neustart und einem Neuaufbau der Verbindung funktioniert das, wie es sein soll.
 
Oben