[gelöst] Redirect Srv-Cron-Emails > local Dovecot-Client

Debian macht sich hervorragend als Web- und Mailserver. Schau auch in den " Tipps und Tricks"-Bereich.
Antworten
TomL

[gelöst] Redirect Srv-Cron-Emails > local Dovecot-Client

Beitrag von TomL » 24.04.2017 11:48:37

Moin

Mit der Installation Postfix/Dovecot habe ich einen neuen Effekt erhalten, den ich im Moment noch nicht so recht bewerten kann. Ich weiss also nicht, ob ich mich drüber freuen soll oder besser nicht, weil hier vielleicht sensible Infos versendet werden.

Ich bekomme seit neuestem EMails von Cron, mit denen er mir seine ge'capture'ten stdout- und err-Ausgaben zusendet. Zuerst fand ich das ja ganz lustig, aber heute kam dann diese Nachricht von einem in der Nacht laufenden Job:

Code: Alles auswählen

Stopping samba-ad-dc (via systemctl): samba-ad-dc.service.
Stopping smbd (via systemctl): smbd.service.
Stopping nmbd (via systemctl): nmbd.service.
Stopping cups (via systemctl): cups.serviceWarning: Stopping cups.service, but it can still be activated by:
  cups.path
  cups.socket
.
Starting nmbd (via systemctl): nmbd.service.
Starting smbd (via systemctl): smbd.service.
Starting samba-ad-dc (via systemctl): samba-ad-dc.service.
Starting cups (via systemctl): cups.service.
mit einer Betreffszeile, die den vollständigen Pfad des Jobs (ein Backup) enthält, sowie das vollständige Zip-Ziel und den vollständigen Pfad der Exclude-File-List. Das fand ich dann nicht mehr so lustig, weil die Mail eben über mein Postfach meiner eigenen Strato-Domain gekommen ist.... also einmal über den Umweg durchs Internet.

Gibt es eine Möglichkeit, die Mails beizubehalten, aber sie lokal direkt in ein Dovecot-Postfach (auf der gleichen Maschine) einzustellen, so dass sie das "Haus" also nicht verlassen?
Zuletzt geändert von TomL am 21.05.2017 18:39:59, insgesamt 1-mal geändert.

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: Redirect Cron-Emails vom Server > local Dovecot-Client

Beitrag von rendegast » 18.05.2017 08:55:08

klassische Kopplung:

Code: Alles auswählen

postconf:
mailbox_command = /usr/lib/dovecot/deliver

postconf -M:
dovecot unix - n n - - pipe flags=DRhu user=vmail argv=/usr/lib/dovecot/deliver -f ${sender} -d ${recipient}
Benutzer vmail ist dafür anzulegen und mit dovecot abzugleichen.

für die anderen Maildomains "modern", dovecot 2.x, derart mit lmtp:

Code: Alles auswählen

postconf:
transport_maps = hash:/etc/postfix/transport,hash:/etc/postfix/relay_domains
relay_domains = hash:/etc/postfix/relay_domains

/etc/postfix/relay_domains:
meine.domain lmtp:unix:private:private/dove-lmtp
meine-andere.domain lmtp:unix:private:private/dove-lmtp
Die Socketbezeichnung muß in dovecot entsprechend gemacht werden.
Per lmtp laufen dann Authentifizierung und Transport.
Die Authentifizierung geschieht in dovecot, dort Benutzer+PW als password-Datei oder aus einer DB.

(Da postfix hier ein smarthost ist, benutzt es für das Versenden über die "richtigen" Mailserver eine separate DB/Datei mit Passworten, weiterhin Regeln für das Umschreiben von Adressen der lokalen Domains auf die der "richtigen" Mailserver, zBsp.

Code: Alles auswählen

/etc/postfix/meine.domain/generic_map:
@meine.domain @domain.de
Bei Aufsetzen als "vollwertiger" Mailserver entfiele das.)

Die Trennung lokale Mail <-> externe Mail passiert in dovecot,
indem in 10-auth-conf (zuerst) auth-system.conf.ext aufgerufen wird.
(Für eine Sperrung von Benutzern includiere ich vorher noch auth-deny.conf.ext -> /etc/dovecot/deny-users)

Das ist so die grobe Herangehensweise,
genauer kann bei heinlein nachgesehen werden.



Mittlerweile würde ich das nicht mehr händisch machen, sondern ein Konfigurations-Frontend benutzen.
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

Benutzeravatar
weshalb
Beiträge: 1265
Registriert: 16.05.2012 14:19:49

Re: Redirect Cron-Emails vom Server > local Dovecot-Client

Beitrag von weshalb » 19.05.2017 08:53:22

rendegast hat geschrieben:
Mittlerweile würde ich das nicht mehr händisch machen, sondern ein Konfigurations-Frontend benutzen.
Hast du da eins, was du empfehlen kannst? Postfixadmin war für Smarthostkonfigs ungeeignent und ich weiß nicht, ob sich das bisher geändert hat.

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: Redirect Cron-Emails vom Server > local Dovecot-Client

Beitrag von rendegast » 19.05.2017 17:43:24

Im debian-Repo gibt es wohl nur
Debianpostfixadmin oder Debianvmm.

http://www.webmin.com?
http://www.vboxadm.net? (Latest release: 0.2.32 - 31.03.2013)

google: "postfix administrieren frontend"?
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

Benutzeravatar
seep
Beiträge: 544
Registriert: 31.10.2004 14:21:08
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: HSK

Re: Redirect Cron-Emails vom Server > local Dovecot-Client

Beitrag von seep » 19.05.2017 18:20:25

TomL hat geschrieben:Gibt es eine Möglichkeit, die Mails beizubehalten, aber sie lokal direkt in ein Dovecot-Postfach (auf der gleichen Maschine) einzustellen, so dass sie das "Haus" also nicht verlassen?
Ja. Ich nutze postfix und dovecot (Maildir-Format).

/etc/postfix/main.cf:

Code: Alles auswählen

sender_canonical_maps = hash:/etc/postfix/sender_canonical
virtual_maps = hash:/etc/postfix/virtual
home_mailbox = Maildir/
In /etc/postfix/sender_canonical stehen die Umsetzungen von internen Benutzer zu externen Adressen:

Code: Alles auswählen

username    someone.somewhere@summertime.test
In /etc/postfix/virtual stehen die Umsetzungen von extern nach intern:

Code: Alles auswählen

username  username
username.localdomain   username
someone.somewhere@summertime.test    username
Läuft der Cronjob nun für User "username", sollte er nur lokal verteilt werden und das System nicht verlassen. Läuft der Cronjob als root und soll auch an "username" gehen, dann wimre entweder in der /etc/postfix/virtual noch "root username" hinzufügen oder gleich den Alias in /etc/aliases definieren.

Benutzeravatar
weshalb
Beiträge: 1265
Registriert: 16.05.2012 14:19:49

Re: Redirect Cron-Emails vom Server > local Dovecot-Client

Beitrag von weshalb » 19.05.2017 22:06:23

rendegast hat geschrieben:Im debian-Repo gibt es wohl nur
Debianpostfixadmin oder Debianvmm.

http://www.webmin.com?
http://www.vboxadm.net? (Latest release: 0.2.32 - 31.03.2013)

google: "postfix administrieren frontend"?
Sorry, Ich hatte mich wahrscheinlich etwas unmissverständlich ausgedrückt. Ich wollte fragen, bevor ich es installiere, ob es ein Frontend gibt, womit man Postfix als Smarthost konfigurieren kann. Die, die ich kenne (isp-config und postfixadmin), konnten das nicht.

TomL

Re: Redirect Cron-Emails vom Server > local Dovecot-Client

Beitrag von TomL » 21.05.2017 18:21:29

rendegast hat geschrieben:

Code: Alles auswählen

transport_maps = hash:/etc/postfix/transport,hash:/etc/postfix/relay_domains
Das war die Lösung. Allerdings hat es mir doch einiges an Kopfzerbrechen bereitet, bis ich die Zusammenhänge verstanden habe. Es war noch notwendig, das Dovecot-Paket "dovecot-lmtpd" zu installieren, also als lokale Ableitung zum smtp. Darüber hinaus war nix weiteres notwendig. Über dieses Transport-Mapping landen die Mails mit lokalem Empfänger automatisch bei Dovecot, der sie quasi als lokaler smtp einfach annimmt und korrekt handhabt. Ich interpretiere dieses Verfahren auch nur als "Vorfilter". Alles, was hängenbleibt, bleibt lokal. Alles andere darüber hinaus geht den Weg über die Relay-Hosts, also die regulären ISP-Smtp-Server, die auch entsprechend über Mappings passend ausgewählt werden.
rendegast hat geschrieben:(Da postfix hier ein smarthost ist, benutzt es für das Versenden über die "richtigen" Mailserver eine separate DB/Datei mit Passworten, weiterhin Regeln für das Umschreiben von Adressen der lokalen Domains auf die der "richtigen" Mailserver, zBsp.
Ja, diese "Filter" hatte ich ja vorher schon, eben auch in Form von gehashten Mappings.
rendegast hat geschrieben:Die Trennung lokale Mail <-> externe Mail passiert in dovecot,
indem in 10-auth-conf (zuerst) auth-system.conf.ext aufgerufen wird.
(Für eine Sperrung von Benutzern includiere ich vorher noch auth-deny.conf.ext -> /etc/dovecot/deny-users)

Das ist so die grobe Herangehensweise,...
Das war imho eigentlich gar nicht so kompliziert. Seit meinen ersten Tests habe ich mich eigentlich die ganze Zeit auch nicht mehr so recht mit dieser Menge an Subdir-Confs befasst, sondern relevante Passagen daraus einfach direkt in der /etc/dovecot/dovecot.conf eingetragen, ohne diese Sub-Conf selbst zu verändern. In der Menge dieser zusätzlichen Confs verliere ich jedenfalls total den Überblick, was wo geändert wurde und ich such mir da jedesmal nen Wolf. Jetzt und alles komprimiert an einer Stelle, gruppiert und lesbar aufbereitet offenbaren sich auch die Zusammenhänge und man sieht das zusammen, was gemeinsam eine Auswirkung beeinflusst, was aber zuvor in verschiedenen Confs getrennt eingestellt war.
rendegast hat geschrieben:Mittlerweile würde ich das nicht mehr händisch machen, sondern ein Konfigurations-Frontend benutzen.
*hmmm* Auch das kommt mir jetzt nicht mehr so aufwendig vor. Ich glaube, mit hoher Fluktuation bei den Anwendern, da würde ich mir das auch wünschen.... aber bei so wenigen Clients ist das unkritisch.... und es ändert sich wohl nur äusserst selten.

TomL

Re: Redirect Cron-Emails vom Server > local Dovecot-Client

Beitrag von TomL » 21.05.2017 18:38:28

seep hat geschrieben:

Code: Alles auswählen

sender_canonical_maps = hash:/etc/postfix/sender_canonical
Das Equivalent (smtp_generic_maps) dazu hatte ich vorher schon in Betrieb, deshalb wusste ich, dass mir das nicht so recht helfen wird. Mir reichte ein einfaches Rewrite der lokalen Adresse in eine global gültige Adresse - deswegen hatte ich mich damals entschlossen, diesen Filter zu nutzen und nicht die canonical-maps. Aber leider ist imho mit beiden keine Transport-Steuerung möglich, was mit dem obigen Transport-Mapping jetzt sofot geklappt hat.

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: [gelöst] Redirect Srv-Cron-Emails > local Dovecot-Client

Beitrag von rendegast » 21.05.2017 21:26:03

TomL hat geschrieben: ... habe ich mich eigentlich die ganze Zeit auch nicht mehr so recht mit dieser Menge an Subdir-Confs befasst,
sondern relevante Passagen daraus einfach direkt in der /etc/dovecot/dovecot.conf eingetragen,
ohne diese Sub-Conf selbst zu verändern.
In der Menge dieser zusätzlichen Confs verliere ich jedenfalls total den Überblick,
was wo geändert wurde und ich such mir da jedesmal nen Wolf.
Eigene Änderungen in den mitgebrachten *.conf könnten auch bei Upgrades problematisch sein.
Ich habe da sowas

Code: Alles auswählen

...
09-auth_LOKALpre.conf
10-auth.conf
10-auth_LOKAL.conf
...
10-mail.conf
10-mail_LOKAL.conf
10-master.conf
10-master_LOKAL.conf
...
die *LOKAL* sind (meist) entsprechend geänderte Kopien der Vorlagen.

Meine oder Upgrade-Änderungen sehe ich per vimdiff,
auch eine durch Upgrade entsorgte *.conf würde auffallen.

Aber ein Vergleich von 'doveconf' sollte genausogut herhalten.
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

TomL

Re: [gelöst] Redirect Srv-Cron-Emails > local Dovecot-Client

Beitrag von TomL » 21.05.2017 22:55:00

Ist das verrückt... das klappte immer noch nicht... *lol*.... ich bin zunächst auf den Irrtum reingefallen, dass Postfix auch in die /etc/aliases reinguckt.... tuts aber nicht. Nachdem ich dann auch noch das von seeb erwähnte virtual mapping übernommen habe, klappte es endlich. Sowohl die Nachrichten von "root" vom Server bleiben jetzt lokal im LAN, als auch die Mails der User untereinander - die vorher auch übers Web gesendet wurden. Mit dem Virt-Mapping konnte ich jetzt auch noch ein Rewrite untauglicher Empfänger auf gültiger LAN-Mail-User durchführen, was die lokale Adresse schön kurz macht.

Mittlerweile muss ich sagen, dass die Kombination von Postfix, Dovcot, Getmail einfach nur genial ist..... nur werde ich in kürze procmail noch gegen maildrop tauschen, das ist nicht so alt und wird aktuell noch gepflegt. Aber schlussendlich bin ich begeistert.

Antworten