[gelöst] Thunderbird - Neue Wege..?...Entscheidungshilfen...

Debian macht sich hervorragend als Web- und Mailserver. Schau auch in den " Tipps und Tricks"-Bereich.
scientific
Beiträge: 3020
Registriert: 03.11.2009 13:45:23
Lizenz eigener Beiträge: Artistic Lizenz
Kontaktdaten:

Re: Thunderbird - Neue Wege...?...Entscheidungshilfen ...

Beitrag von scientific » 08.04.2017 01:45:55

Hab hier noch eine interessante Seite gefunden. Bezieht sich zwar auch auf ein uraltes Debian (squeeze mit Hinweise auf etch...) und die Authentifikation läuft über eine Mysql-Datenbank und nicht über Unix-User... aber es sich doch spannende Lektüre, die etwas Aufschluss über die ganze Mailserver-Geschichte gibt.

http://developer.gauner.org/ispmail-exim

lg scientific
dann putze ich hier mal nur...

Eine Auswahl meiner Skripte und systemd-units.
https://github.com/xundeenergie

auch als Debian-Repo für Testing einbindbar:
deb http://debian.xundeenergie.at/xundeenergie testing main

TomL

Re: Thunderbird - Neue Wege...?...Entscheidungshilfen ...

Beitrag von TomL » 08.04.2017 12:38:43

Moin Scientific

Ganz kurz der aktuelle Stand und eine Antwort auf eine Frage in Deinem Posting.

Ja, unsere Androids sind nur "flüchtig" fähig zu lesen. Wir nutzen das nur unterwegs... um mal eben in die Postfächer reinzusehen. Primär werden die Provider-Postfächer aber grundsätzlich via POP3 regelmäßig geleert, immer dann, wenn sich ein Thunderbird anmeldet. Das ist eine Prämisse und auch einer der Gründe, warum ich jetzt über den eigenen Home-IMAP-Server nachdenke. Mit eigenem Home-IMAP im heimischen LAN ist es nämlich problemlos möglich, via OpenVPN von allen Mobilgeräten auf alle persönlichen Postfächer zuzugreifen. Das heisst, auch unterwegs und von draussen (internet) kann ich dann die Postfächer lesen, ohne dass der Mailserver selber einen Zugang ins Internet anbietet. OpenVPN nutze ich ja schon ewig, zum Surfen bei unsicheren Hotspots und für den Zugang ins Netz. Warum nicht also auch darüber das Home-IMAP nutzen?

So, der aktuelle Stand ist:
Dovecot läuft bestens. Ich muss gar nicht jeweils einen Linux-User pro Postfach anlegen, was ich anfangs getan habe, weil ich für die Authentifizierung eben den Linux-User genutzt habe. Ich konnte das jetzt über eine Dovecot-eigene UserDB lösen... absolut klasse....

Das sieht jetzt so aus, wo auf dem Mailserver alle Postfächer bzw. Provider-Mail-Accounts für den Linux-User "thomas" auch wirklich in seinem Homedir stehen:

Code: Alles auswählen

/home
     /thomas
            /Mail
                 /Thunderbird
                 /Imap
                      /toml             # (strato)
                      /tommyl           # (strato)
                      /thomasl          # (strato)
                      /goofyfake        # (web)
                      /lupofake         # (gmx)
                      /donaldfake       # (gmail)
Dazu muss man jetzt noch folgendes wissen: Der Ordner "~/Mail" wird von der fstab ins Server-Homedir des Users rein gebindet. In Wirklichkeit ist das eine SSD, deren Verzeichnis /Mail die tatsächlichen User-Maildirs enthält

Code: Alles auswählen

/dev/SSD -> /media/SSD
                      /Mail
                           /thomas
                           /luise
                           /karl
                           /sofie
                           /julchen
Samba sorgt nun dafür, dass jeder User sein eigenes Home-Dir geliefert bekommt. Auf den Clients ist dann das persönliche Mail-Dir im Client-Homedir des User als ~/SMail gemountet. Oben siehst Du, dass Thunderbird noch enthalten ist. Richtig, das läuft ja auch noch... da stehen derzeit die Thunderbird-Mail-Daten aus dem eigentlichen Thunderbird-Profil der Clients drin. Das heisst, das kann durch diese Struktur problemlos erst mal parallel laufen. Der Vorteil ist, jeder User fummelt nur -und wirklich nur- in seinem Homedir rum, aber dennoch kann ich mit einer Rutsche das komplette Mail-Gedöns aller User backup'en.

Definitiv liegen die jetzt noch bestehenden Probleme bei Exim.... damit werde ich mich heute nachmittag beschäftigen.... ich hoffe, mit Deiner Hilfe.... und dann werde ich auch noch die fehlenden Fragen beantworten. Jetzt lauf ich erst mal meine große Runde mit dem vierbeinigen Chef... :mrgreen:

TomL

Re: Thunderbird - Neue Wege...?...Entscheidungshilfen ...

Beitrag von TomL » 08.04.2017 14:43:32

scientific hat geschrieben:Hast du die mein Paket[1] installiert? Oder hast du die Änderungen manuell vorgenommen?
Ich habs anfangs in meiner allgemeinen Verwirrung durch die Menge an Problemen und Informationen nicht richtig installiert..... das habe ich jetzt aber schrittweise kontrolliert und nachgeholt. Dabei ist mir jedoch eines unklar... Deine Web-Site sagt
"Um DKIM für abgehende Emails zu aktivieren /usr/local/bin/mkexim4-dkim domain.tld ausführen. Es werden Zertifikat und Public-Key in /etc/exim4/dkim erzeugt. Die Ausgabe des Programms liefert bereits den korrekten TXT-Eintrag für den DNS-Server."

Was stelle ich mit dem "bereits korrekten TXT-Eintrag für den DNS-Server" an? Muss das irgendwo eingetragen werden?

Mein Exim sagt:

Code: Alles auswählen

/usr/sbin/exim -bV | grep 'Support for'
Support for: crypteq iconv() IPv6 GnuTLS move_frozen_messages DKIM PRDR OCSP
DKIM wird also anscheinend schon unterstützt, aber ich habe keine "/usr/local/bin/mkexim4-dkim". Muss ich noch was nachinstallieren? Ist Signierung überhaupt zwingend notwendig und sind Probleme vorhersehbar, wenn nicht signiert wird? Wie handhabt Thunderbird das, wenn er sich direkt mi einem Provider-Postfach via POP3 oder IMAP verbindet und eine Mail sendet...?.... sind die auch signiert?

scientific
Beiträge: 3020
Registriert: 03.11.2009 13:45:23
Lizenz eigener Beiträge: Artistic Lizenz
Kontaktdaten:

Re: Thunderbird - Neue Wege...?...Entscheidungshilfen ...

Beitrag von scientific » 08.04.2017 14:48:54

TomL hat geschrieben:
scientific hat geschrieben:Hast du die mein Paket[1] installiert? Oder hast du die Änderungen manuell vorgenommen?
Ich habs anfangs in meiner allgemeinen Verwirrung durch die Menge an Problemen und Informationen nicht richtig installiert..... das habe ich jetzt aber schrittweise kontrolliert und nachgeholt. Dabei ist mir jedoch eines unklar... Deine Web-Site sagt
"Um DKIM für abgehende Emails zu aktivieren /usr/local/bin/mkexim4-dkim domain.tld ausführen. Es werden Zertifikat und Public-Key in /etc/exim4/dkim erzeugt. Die Ausgabe des Programms liefert bereits den korrekten TXT-Eintrag für den DNS-Server."

Was stelle ich mit dem "bereits korrekten TXT-Eintrag für den DNS-Server" an? Muss das irgendwo eingetragen werden?

Mein Exim sagt:

Code: Alles auswählen

/usr/sbin/exim -bV | grep 'Support for'
Support for: crypteq iconv() IPv6 GnuTLS move_frozen_messages DKIM PRDR OCSP
DKIM wird also anscheinend schon unterstützt, aber ich habe keine "/usr/local/bin/mkexim4-dkim". Muss ich noch was nachinstallieren? Ist Signierung überhaupt zwingend notwendig und sind Probleme vorhersehbar, wenn nicht signiert wird? Wie handhabt Thunderbird das, wenn er sich direkt mi einem Provider-Postfach via POP3 oder IMAP verbindet und eine Mail sendet...?.... sind die auch signiert?
Ah... ja, das hab ich in der Tat noch nicht in das Paket gepackt, weil es - glaub ich - in einem eigenen Paket besser aufgehoben ist.
Lass dkim einmal weg. Das ist nur ein zusätzliches Feature, ich reiche die Infos noch nach.

lg scientific
dann putze ich hier mal nur...

Eine Auswahl meiner Skripte und systemd-units.
https://github.com/xundeenergie

auch als Debian-Repo für Testing einbindbar:
deb http://debian.xundeenergie.at/xundeenergie testing main

TomL

Re: Thunderbird - Neue Wege...?...Entscheidungshilfen ...

Beitrag von TomL » 08.04.2017 16:54:26

scientific hat geschrieben:Lass dkim einmal weg. Das ist nur ein zusätzliches Feature, ich reiche die Infos noch nach.
Sorry... aber was muss ich jetzt wieder "rausnehmen" aus den Confs..... im Moment bin ich ratlos, welche Einträge oder Files entfernt werden müssen.

Mit exim komme ich jetzt auch nicht mehr weiter.... ich habe keine Ahnung, welche Schrauber da locker ist.... irgendwas wird nicht gefunden.... möglicherweise nicht die "echten" smtp-Daten zur lokalen Dovecot-Absender-Adresse:

Code: Alles auswählen

echo "Subject: test" | /usr/sbin/exim4 -v toml@xyz.de
LOG: MAIN
  <= root@localhost.localdomain U=root P=local S=334
root@raspi3:~
# delivering 1cwrRy-0000NB-IW
R: smarthost for toml@xyz.de
LOG: host_lookup_failed MAIN
  no IP address found for host mail.localhost.localdomain
LOG: MAIN
  == toml@xyz.de R=smarthost defer (-1): lookup failed for all hosts in smarthost router: host_find_failed=ignore host_all_ignored=defer
"Der" sollte sich eigentlich nicht den smarthost von "R: smarthost for toml@xyz.de" holen, denn das ist ja der Empfänger. Es müsste ein Smarthost der lokalen Absender verwendet werden. :roll:

scientific
Beiträge: 3020
Registriert: 03.11.2009 13:45:23
Lizenz eigener Beiträge: Artistic Lizenz
Kontaktdaten:

Re: Thunderbird - Neue Wege...?...Entscheidungshilfen ...

Beitrag von scientific » 08.04.2017 17:12:50

Wenn du keine eigene Domain besitzt, dann musst du nichts bzgl. Dkim nichts tun. Keine Datei anlegen, keinen Nameservereintrag machen.

Bin leider grad unterwegs.
dann putze ich hier mal nur...

Eine Auswahl meiner Skripte und systemd-units.
https://github.com/xundeenergie

auch als Debian-Repo für Testing einbindbar:
deb http://debian.xundeenergie.at/xundeenergie testing main

TomL

Re: Thunderbird - Neue Wege...?...Entscheidungshilfen ...

Beitrag von TomL » 08.04.2017 18:35:01

Ich deute die Fehlermeldung, dass Exim für der Dovecot-User (der ja via Thunderbird senden möchte) keine Verbindung zum passenden Smarthost herstellen kann.... vermutlich, weil ich irgendwo einen Fehler gemacht habe. :roll: ... also der smarthost-router funktioniert hier nicht:
Laut exim-log, was ich via tail -f mitlaufen lasse, sehe ich:

Code: Alles auswählen

lookup failed for all hosts in smarthost
Möglicherweise hängt das mit der Einstellung in

Code: Alles auswählen

/etc/exim4/sender.multismarthost_multiaccount.passwd
Entweder wird die nicht gefunden, oder ich habe Formatfehler eingebaut:

Code: Alles auswählen

toml@raspi3.local:smtp.strato.de:toml@strato.de:mailpwd
Dann gibts noch die

Code: Alles auswählen

/etc/email-addresses

Code: Alles auswählen

toml:toml@strato.de
Warum wird der lokale dovecot-User zwei mal zugewiesen? Irgendwas habe ich wohl falsch verstanden .... oder bin falsch abgebogen. Dann bin ich völlig unsicher, wie der korrekte Name überhaupt aussehen muss. Der in der dovecot-UserDB eingetragene ist nackig, also nur der Name, ohne Domain-Anhang. Wie betrachtet exim4 das? Oder besser, wie verlangt exim4 den Namen? Mein Problem ist dabei, dass ich ja auch gar keinen Einfluss darauf habe, was Thunderbird sendet. Ich vermute, dass toml@raspi3.local gesendet wird... aber mischt sich dovecot da noch mal ein und verändert den vielleicht wieder auf nur "toml", eben zurück auf den dovecot-User? Thunderbird wird doch nicht exim direkt und an dovecot vorbei über die Ports 25/587 bedienen? Oder doch?

BTW: von Dovecot bin ich total begeistert... das ist wirklich klasse. Ich bin jetzt echt interessiert daran, das ans laufen zu bringen.... 8)

scientific
Beiträge: 3020
Registriert: 03.11.2009 13:45:23
Lizenz eigener Beiträge: Artistic Lizenz
Kontaktdaten:

Re: Thunderbird - Neue Wege...?...Entscheidungshilfen ...

Beitrag von scientific » 08.04.2017 19:16:50

TomL hat geschrieben:Ich deute die Fehlermeldung, dass Exim für der Dovecot-User (der ja via Thunderbird senden möchte) keine Verbindung zum passenden Smarthost herstellen kann.... vermutlich, weil ich irgendwo einen Fehler gemacht habe. :roll: ... also der smarthost-router funktioniert hier nicht:
Laut exim-log, was ich via tail -f mitlaufen lasse, sehe ich:

Code: Alles auswählen

lookup failed for all hosts in smarthost
Möglicherweise hängt das mit der Einstellung in

Code: Alles auswählen

/etc/exim4/sender.multismarthost_multiaccount.passwd
Entweder wird die nicht gefunden, oder ich habe Formatfehler eingebaut:

Code: Alles auswählen

toml@raspi3.local:smtp.strato.de:toml@strato.de:mailpwd
ja, da hast du einen Fehler. So soll es aussehen.

Code: Alles auswählen

toml@strato.de:smtp.strato.de:toml@strato.de:mailpwd
Das erste Feld ist ja die Absenderadresse, anhand der meine multiaccount-Config für exim entscheidet, welchen Smarthost (smtp.strato.de) mit welchem Usernamen (toml@strato.de) und welchem Passwort (mailpwd) der Versand stattzufinden hat.
Sollte toml@strato.de einen Alias "derbestetom@wasweissich.org" haben, dann wäre das erste Feld "derbestetom@wasweissich.org", der Rest der Zeile entspräche der obigen.

In Thunderbird hast du den Account toml@raspi.local angelegt. Dieser Account hat eine weitere Identität "toml@strato.de", der als smtp-Server raspi3.local eingetragen.
Für den Alias müsstest du eine weitere Identität anlegen, die als Adresse derbestetom@wasweissich.org hat und als smtp-server ebenfalls den raspi3.local (siehe weiter unten, wo der SMTP-Server anzulegen ist)
TomL hat geschrieben: Dann gibts noch die

Code: Alles auswählen

/etc/email-addresses

Code: Alles auswählen

toml:toml@strato.de
Warum wird der lokale dovecot-User zwei mal zugewiesen? Irgendwas habe ich wohl falsch verstanden .... oder bin falsch abgebogen. Dann bin ich völlig unsicher, wie der korrekte Name überhaupt aussehen muss. Der in der dovecot-UserDB eingetragene ist nackig, also nur der Name, ohne Domain-Anhang. Wie betrachtet exim4 das? Oder besser, wie verlangt exim4 den Namen? Mein Problem ist dabei, dass ich ja auch gar keinen Einfluss darauf habe, was Thunderbird sendet. Ich vermute, dass toml@raspi3.local gesendet wird... aber mischt sich dovecot da noch mal ein und verändert den vielleicht wieder auf nur "toml", eben zurück auf den dovecot-User? Thunderbird wird doch nicht exim direkt und an dovecot vorbei über die Ports 25/587 bedienen? Oder doch?
Du musst gut unterscheiden!
Du hast in Dovecot einen usernamen mit einem Passwort konfiguriert, und exim greift auf die Unix-User zu (hab ich das in deinem Setup so korrekt verstanden? Bei mir ist es zumindest so!)

Damit du mit Tunderbird per Imap auf die Emails zugreifen kannst, musst du in den "Kontoeinstellungen" den Server "raspi3.local" mit dem Usernamen eintragen, den du in der User-DB von dovecot verwendest.
Damit du Emails versenden kannst, findest du in den Kontoeinstellungen den "Postausgangsserver", den du ebenfalls mit "raspi3.local" festlegst. Aber der Username ist jener für Exim.
Diesen Postausgangsserver weist du dann bei den Kontoeinstellungen der Identität hinzu.

Ich hoffe, ich konnte mich verständlich ausdrücken.

TomL hat geschrieben: BTW: von Dovecot bin ich total begeistert... das ist wirklich klasse. Ich bin jetzt echt interessiert daran, das ans laufen zu bringen.... 8)
Verstehe ich... :) Ich hab dovecot auch sehr schätzen gelernt. Ebenso exim4... auch wenn es ziemlich komplex ist, und die Konfigurationssprache so überhaupt nichts entsprich, was ich sonst an Programmiersprachen kennengelernt habe.

lg scientific
dann putze ich hier mal nur...

Eine Auswahl meiner Skripte und systemd-units.
https://github.com/xundeenergie

auch als Debian-Repo für Testing einbindbar:
deb http://debian.xundeenergie.at/xundeenergie testing main

TomL

Re: Thunderbird - Neue Wege...?...Entscheidungshilfen ...

Beitrag von TomL » 08.04.2017 20:23:19

Oh je... ich glaube, jetzt fehlt uns der gemeinsame Nenner.... :roll:

So sieht das derzeit aus:

Code: Alles auswählen

TomL                host->thomaspc
|
v
Thunderbird         Anmeldung an Dovecot mit einem oder mehreren Dovecot-Accounts
|                   Sendet Mail mit Konto Toml@raspi3.local
v
Dovecot             host->raspi3.local
|
v
Exim4               Routen von Toml@raspi3.local nach TomL@strato.de (richtigen smtp ermitteln)
|
v
smtp-Provider       senden über Konto TomL@strato.de
Das ganz Frontend-Handling zwischen Client-User und Dovecot funktioniert mit Thunderbird fehlerlos, ruckelfrei, perfekt. Der User "TomL" kann über Thunderbird alle seine Ordner sehen und beliebig damit umgehen, so wie das schon immer unter Thunderbird möglich war. Nur sind es jetzt nicht mehr die Thunderbird-Files, sondern die IMAP-Ordner von Dovecot. Also dovecot ist jetzt nicht das Thema, das klappt tadellos.

Ebenso klappt es jetzt schon tadellos, wenn ich von TB eine Mail erstelle und sende. Die steht danach korrekt im Sent-Ordner, ich finde sie auf dem Server in der Verzeichnisstruktur meines Server-Homedirs und sie kommt völlig korrekt im Exim-Queue an.... nur stirbt sie da, weil eben das smtp-Routing failed.

Also, das einzige Problem ist, exim kann vermutlich wegen meiner Einstellungsfehler die Mail des lokalen User toml*rasp3.local nicht über den smtp-Server des User toml*strato.de senden.
ja, da hast du einen Fehler. So soll es aussehen.

Code: Alles auswählen

toml*strato.de:smtp.strato.de:toml*strato.de:mailpwd
Ja, das habe ich jetzt geändert.... aber weiterhin erfolglos. Irgendwo muss doch stehen "senden durch toml*rasp3.local über toml*strato.de" Es handelt sich ja definitiv um zwei Konten, ein lokales und eines beim Provider... wo ist die Verknüpfung dieser 2 Konten? In der vorherigen anscheinend falschen Einstellung (TomL*raspi3.local:smtp.strato.de:TomL*strato.de:mailpwd) war aber zumindest diese Verknüpfung ersichtlich, jetzt fehlt sie aber.
Das erste Feld ist ja die Absenderadresse, anhand der meine multiaccount-Config für exim entscheidet, welchen Smarthost (smtp.strato.de) mit welchem Usernamen (toml*strato.de) und welchem Passwort (mailpwd) der Versand stattzufinden hat.
Nee, eigentlich nicht. Die Absender-Adresse ist ja in Thunderbird "TomL*rasp3.local", Thunderbird weiss ja gar nix von Strato. Deswegen war ich über diese Änderung so erstaunt....
Du hast in Dovecot einen usernamen mit einem Passwort konfiguriert, und exim greift auf die Unix-User zu (hab ich das in deinem Setup so korrekt verstanden? Bei mir ist es zumindest so!)
Nee! So isses nicht. Exim weiss nix von Linux-Usern... da gibt es keine Verbindung. Ich habe auf dem Server nur echte Linux-User eingerichtet, also Linux-(Samba-)Accounts für echte Menschen, und zwar unsere User. Ich habe in der Dovecot-UserDB darüber hinaus Imap-Konten eingerichtet, das sind keine echten Menschen, sondern nur virtuelle Dovecot-User. Ein echter User kann beliebige Anzahl Dovecot-Accounts haben... und jeder Account ist für diesen User ein eigenes IMAP-Mailkonto. Auf den Clients können sich nun die echten User mit all ihren virtuellen Usern des Dovecot-Kontos in dovecot anmelden und sehen dann alle ihre persönlichen Mail-Ordner. Ein "echter" User kann natürlich mehrere Dovecot-Accounts öffnen, eben so viele, wie in der dovecot-UserDB für ihn mit seinem Passwd angelegt sind.
Damit du mit Tunderbird per Imap auf die Emails zugreifen kannst, musst du in den "Kontoeinstellungen" den Server "raspi3.local" mit dem Usernamen eintragen, den du in der User-DB von dovecot verwendest.
Ja, das klappt ja schon perfekt.
Damit du Emails versenden kannst, findest du in den Kontoeinstellungen den "Postausgangsserver", den du ebenfalls mit "raspi3.local" festlegst. Aber der Username ist jener für Exim.
Aaaah... mir schwant da was.... wie lautet denn der Name für Exim, den ich in thunderbird eintragen muss? Jetzt steht in dem Feld einfach nur "TomL", und exim müsste nun über diesen Namen den passenden smtp und die passende echte Absender-Adresse finden. Aber genau das passiert leider nicht. Die Kernfrage ist, der Client "TomL@Raspi3.local" sendet und verwendet dabei den Benutzernahmen in den Thunderbird-Konteneinstellungen "TomL" - wo finde ich die exim-Benutzerverwaltung, anhand derer der Name "TomL" (von Thunderbird) in "smtp.strato.de->TomL@strato.de" übersetzt wird?

Und die Bedeutung oder der Zweck für

Code: Alles auswählen

/etc/email-addresses
ist mir auch noch nicht klar... weil die Datei eben ähnliche Daten enthält, wie

Code: Alles auswählen

/etc/exim4/sender.multismarthost_multiaccount.passwd
Ich hoffe, ich konnte mich verständlich ausdrücken.
Bin mir noch unsicher, weil das ja wirklich alles total komplex ist.

scientific
Beiträge: 3020
Registriert: 03.11.2009 13:45:23
Lizenz eigener Beiträge: Artistic Lizenz
Kontaktdaten:

Re: Thunderbird - Neue Wege...?...Entscheidungshilfen ...

Beitrag von scientific » 08.04.2017 21:10:28

Nun...

/etc/email-adresses enthält eine Übersetzung, zu welchem Unix-Account welche Email-Adresse gehört. Das ist wichtig, wenn du von der Commandline ein Email vom Mailserver selbst wegschickst. Z.B. mit

Code: Alles auswählen

echo "bla"|mail -s "blubb" xyz@example.org
Dann schreibt exim z.B. toml in toml@strato.de um.

die multiaccount-Config wiederum wählt dann anhand der Adresse toml@strato.de den Smarthost smtp.strato.de mit den entsprechenden Login-Daten aus.

Wenn du von Thunderbird einfach nur als toml ein Email sendest, passiert das selbe.

Sendest du aber von einer anderen Adresse über den smtp-Server raspi3.local, wird der Smarthost entsprechend wieder der multiuser-multiaccount-Datei ausgewählt.

Das ist der springende Punkt.
dann putze ich hier mal nur...

Eine Auswahl meiner Skripte und systemd-units.
https://github.com/xundeenergie

auch als Debian-Repo für Testing einbindbar:
deb http://debian.xundeenergie.at/xundeenergie testing main

scientific
Beiträge: 3020
Registriert: 03.11.2009 13:45:23
Lizenz eigener Beiträge: Artistic Lizenz
Kontaktdaten:

Re: Thunderbird - Neue Wege...?...Entscheidungshilfen ...

Beitrag von scientific » 08.04.2017 21:32:31

In Thunderbird hast du einen einzigen Account mit Username toml am IMAP-Server raspi3.local.
Dieser Account hat soviele Identitäten, wie du "echte" Accounts bei gmx, google, strato usw. hast. Auch für jeden Alias legst du eine Identität an.

Jede dieser Identitäten bekommt den selben SMTP-Server raspi3.local mit dem user toml und dem Passwort, das du in dovecot festgelegt hast.

Und für jede Emailadresse von "draußen" und für jede Alias-Adresse legst du eine eigene Zeile in sender.multiuser-multiaccount.passwd an.

Code: Alles auswählen

 User1@domain1.tld:smtp.server.domain1.tld:login@domain1:passwd
User2@domain1.tld:smtp.server.domain1.tld:login2@domain1:passwd
Usera@domain2.tld:smtp.domain2.tld:loginname:passwd
AliaszuUsera@fundomain.xy:smto.domain2.tld:loginname:passwd
dann putze ich hier mal nur...

Eine Auswahl meiner Skripte und systemd-units.
https://github.com/xundeenergie

auch als Debian-Repo für Testing einbindbar:
deb http://debian.xundeenergie.at/xundeenergie testing main

scientific
Beiträge: 3020
Registriert: 03.11.2009 13:45:23
Lizenz eigener Beiträge: Artistic Lizenz
Kontaktdaten:

Re: Thunderbird - Neue Wege...?...Entscheidungshilfen ...

Beitrag von scientific » 08.04.2017 21:35:17

In exim am raspi3 kippst du immer als toml die Emails ab, aber mit unterschiedlichen From: je nach Identität.
In /etc/email-addresses legst du lediglich die Defaultidentität fest, wenn du ein email ohne From oder konkreter Absenderadresse wegschickst.

Jetzt besser verständlich?
dann putze ich hier mal nur...

Eine Auswahl meiner Skripte und systemd-units.
https://github.com/xundeenergie

auch als Debian-Repo für Testing einbindbar:
deb http://debian.xundeenergie.at/xundeenergie testing main

scientific
Beiträge: 3020
Registriert: 03.11.2009 13:45:23
Lizenz eigener Beiträge: Artistic Lizenz
Kontaktdaten:

Re: Thunderbird - Neue Wege...?...Entscheidungshilfen ...

Beitrag von scientific » 08.04.2017 21:42:34

Ich würd auch für jede reale Person nur einen einzigen Account in dovecot anlegen. Da hinein kommen alle Email dieses Users von allen "echten" Accounts draußen. Abholung mit fetchmail/getmail.
Und die selben account-Logins - also einen pro Person - gibts auch in exim.
Dann funktioniert auch das multiuser-muliaccount-Setup ohne gröbere Verwirrungen.
dann putze ich hier mal nur...

Eine Auswahl meiner Skripte und systemd-units.
https://github.com/xundeenergie

auch als Debian-Repo für Testing einbindbar:
deb http://debian.xundeenergie.at/xundeenergie testing main

TomL

Re: Thunderbird - Neue Wege...?...Entscheidungshilfen ...

Beitrag von TomL » 08.04.2017 23:37:27

So kurz vorm Schlafengehen.... :)

Dein unten folgendes Posting zeigt mein Problem ganz deutlich... es fehlt immer noch ein Verbindungsmerkmal. Aber vorab... so sieht das bei mir aus:

Code: Alles auswählen

host->thomaspc/

Linux-User:              /thomas
Thunderbird-Identitäten:        /toml             # (strato)
                                /tommyl           # (strato)
                                /thomasl          # (strato)
                                /goofyfake        # (web)
                                /lupofake         # (gmx)
                                /donaldfake       # (gmail)
Der User "thomas" hat also mehrere Thunderbird-Identitäten, und somit mehrere dovecot-Accounts und auch natürlich mehrere/verschiedene Internet-Provider-Accounts.
scientific hat geschrieben:In Thunderbird hast du einen einzigen Account mit Username toml am IMAP-Server raspi3.local.
Dieser Account hat soviele Identitäten, wie du "echte" Accounts bei gmx, google, strato usw. hast. Auch für jeden Alias legst du eine Identität an.

Jede dieser Identitäten bekommt den selben SMTP-Server raspi3.local mit dem user toml und dem Passwort, das du in dovecot festgelegt hast. Und für jede Emailadresse von "draußen" und für jede Alias-Adresse legst du eine eigene Zeile in sender.multiuser-multiaccount.passwd an.
Ja, eigentlich ist das bei mir genau so eingestellt. Und nun zur offenen Frage: Der User bzw. die Identität "toml" sendet über TB und seinen dovecot-Account an dem smtp "raspi3.local". Nach welchen Kriterien wird nun der passende Provider-Account in der folgenden Liste ausgewählt? Was ist das Verbindungsmerkmal zu dieser Liste? Richtig wäre es, wenn der vierte Account gewählt werden würde. Und genau das klappt momentan nicht.
scientific hat geschrieben:

Code: Alles auswählen

User1@domain1.tld:smtp.server.domain1.tld:login@domain1:passwd
User2@domain1.tld:smtp.server.domain1.tld:login2@domain1:passwd
Usera@domain2.tld:smtp.domain2.tld:loginname:passwd
toml@strato.de:smtp.strato.de:toml@strato.de:passwd
AliaszuUsera@fundomain.xy:smto.domain2.tld:loginname:passwd

scientific
Beiträge: 3020
Registriert: 03.11.2009 13:45:23
Lizenz eigener Beiträge: Artistic Lizenz
Kontaktdaten:

Re: Thunderbird - Neue Wege...?...Entscheidungshilfen ...

Beitrag von scientific » 09.04.2017 01:24:17

Ja weil du für jeden emailaccount einen eigenen dovecotaccount hast...
So kann das nicht funktionieren.

1 dovecotaccount für ALLE emailadressen.
In fetchmail trägst du immer diesen einen user als "is" ein.
Alle emails werden auf einen einzigen dovecotaccount gesammelt.
Und in thunderbird gibts auch nur diesen einen account!
Aber dieser eine Account hat mehrere Identitäten... Mit nur einem dovecot-account...
Die Identitäten setzen nur ein anderes From ins email. Bei exim aber liefert immer der gleiche User - thomas in deinem Fall - ab.

Siehst du den Unterschied?

Wenn es nur einen dovecot-account gibt, gibt es nur einen eximaccount.
Und wenn es nur einen eximaccount gibt, kann die zuordnung zu verdchiedenen smarthosts über die sender.multiuser-multiaccount.passwd funktionieren.

So wie du das gelöst hast, überträgst du bloß deine vielen Mailaccounts auf den lokalen Mailserver und musst diesr dann auch auf Thunderbird und auch deine Androiden übertragen...
Dann brauchst du aber mein multiuser-muliaccount-Setup nicht...

Erkennst du den Schlauch auf dem du stehst?
Zugegeben... Es ist wirklich komplex! Und ich hab auch mehrere Jahre damit gekämpft.

Lg scientific.
dann putze ich hier mal nur...

Eine Auswahl meiner Skripte und systemd-units.
https://github.com/xundeenergie

auch als Debian-Repo für Testing einbindbar:
deb http://debian.xundeenergie.at/xundeenergie testing main

TomL

Re: Thunderbird - Neue Wege...?...Entscheidungshilfen ...

Beitrag von TomL » 09.04.2017 10:40:28

scientific hat geschrieben:Ja weil du für jeden emailaccount einen eigenen dovecotaccount hast...
So kann das nicht funktionieren.
Ich glaube, dass ist mein Problem.... ich habe den Unterschied zwischen separatem dovecot-Account pro WebMail-Provider-Account und nur-verschiedene-TB-Identitäten unter EINEM linux-und-dovecot-Account nicht verstanden. Für mein Verständnis macht das überhaupt keinen Unterschied, weil weder Thunderbird, noch dovecot, noch exim etwas über den dahinterstehenden Linux-Account wissen. Thunderbird kommuniziert über port 143 und dabei ist mein lokaler Linux-Account völlig irrelevant. Der ist ja auch irrelevant, wenn TB direkt nach GMX, WEB oder Strato via Internet verbindet. Mit welchem Linux-User ich meinen Thunderbird öffne, ist dem Thunderbird auch völlig egal, solange ich nur RW-Rechte habe. Ebenso ist es dem Dovecot völlig egal, von welchem Linux-Account ich die verschiedenen ThomasL-Dovecot-Accounts öffne, solange dieser "fremde" Linux-Account eben RW-Rechte auf meine Daten hat.

Darüber hinaus kann auch das auf dem Server laufende Exim nix über meinen Linux-Account wissen, weder über den vom host->thomaspc, noch vom host->raspi3.... zumal auf dem raspi3 sowieso kein Linux-User angemeldet ist. Also die Linux-User können weder was mit Thunderbird, noch mit dovecot, noch mit exim zu tun haben.... das war bisher mein Verständnis.

Die folgenden Code-Blöcke verdeutlichen das ungelöste Problem.... dabei wäre es mir egal, ob es über TB-Identitäten oder eigene dovecot-Accounts realisiert wird. Nur bin ich bislang davon ausgegangen, dass eben die TB-Identität gleichzeitig auch der dovecot-Account ist... eben weil keiner der beteiligten Prozesse meine tatsächliche Linux-Identität kennt:

Code: Alles auswählen

host->thomaspc/

Linux-User:     /thomas
Thunderbird-           /toml             # (strato)
    - Postfächer       /goofy_w          # (web)
                       /goofy_g          # (gmx)
                       /goofy_m          # (gmail)

Code: Alles auswählen

goofy@web.de:smtp.web.de:goofy@web.de:passwd
goofy@gmx.de:mail.gmx.net:goofy@gmx.de:passwd
goofy@gmail.de:smtp.gmail.de:goofy@gmail.de:passwd
Für jeden "goofy" in Thunderbird sollte der passenden relay-host ausgewählt werden, damit nicht auf einmal im Internet-Provider-IMAP-Sent des einen goofy die gesendeten Mails eines anderen goofy's stehen. Dabei spielt es keine Rolle, ob ich selber 2 goofy-Accounts habe, oder ob es zwei LAN-User sind, wo der eine goofy@gmx.de hat, der andere hat goofy@web.de

Offensichtlich fehlt exim diese Fähigkeit:
http://www.postfix.org/SASL_README.html ... asl_sender

scientific
Beiträge: 3020
Registriert: 03.11.2009 13:45:23
Lizenz eigener Beiträge: Artistic Lizenz
Kontaktdaten:

Re: Thunderbird - Neue Wege...?...Entscheidungshilfen ...

Beitrag von scientific » 09.04.2017 12:59:50

Ich glaub ich muss nochmal konkreter werden.

Auf dem raspi gibt es genau einen User goofy.
Fetchmail ruft die emails von strato, gmx usw für den user goofy ab und liefert sie exim, der diese dann in dovecot in die Inbox des Users goofy auf dem raspi ablegt und per IMAP präsentiert.

Mit Thunderbird auf Linux, mit Thunderbird auf Windows, mit deinem Androiden hast du genau einen Account goofy@raspi.

In Thunderbird definierst du genau einen SMTP-Server: raspi3.local. Der login auf diesem SMTP-Server erfolgt mit dem User goofy.

Kein goofy_w, kein goofy_g. Nur ein einziger goofy.

In der Kontoübersicht des Kontos goofy@raspi3.local in Thunderbird findest du rechts unten den Button "weitere Identitäten". Da legst du für das Konto goofy@raspi weitere Identitäten mit den Adressen von gmx, strato, web.de und anderen an. Als smtp stellst du zu jeder Identität den raspi mit dem loginuser goofy ein.

Dann funktioniert auch der multiuser-multiaccount in exim.

Ich hab das gefühl, du willst unbedingt die Struktur deiner mehreren Mailaccounts bei Strato, gmx und co auf deinem Raspi abbilden. Da kriegst du natürlich ein Problem.

Sammelst du von allen Accounts die Mail auf deinem Raspi ein, genügt dort genau ein Account für dich. (die Anderen Personen mach ma später, zuerst solls mal nur für dich klappen!)

Und dieser Account wird per Imap von allen deinen Geräten als einziger verwendet.

Siehst du den Unterschied zu deinem gewollten Setup?

Ich hab auch den Eindruck, du verstehst unter "mehrere Identitäten" in Thunderbird verschiedene Accounts, und nicht ein Account mit mehreren Identitäten...

Kann das sein.
Damit wirfts dich auch über die scheinbar fehlende Zuordnung in exim zu verschiedenen Smarthosts.

Lg scientific
dann putze ich hier mal nur...

Eine Auswahl meiner Skripte und systemd-units.
https://github.com/xundeenergie

auch als Debian-Repo für Testing einbindbar:
deb http://debian.xundeenergie.at/xundeenergie testing main

TomL

Re: Thunderbird - Neue Wege...?...Entscheidungshilfen ...

Beitrag von TomL » 09.04.2017 18:25:55

scientific hat geschrieben:Ich glaub ich muss nochmal konkreter werden.
Das ist aber jetzt leider völlig durcheinander :mrgreen:
scientific hat geschrieben:Auf dem raspi gibt es genau einen User goofy.
Nein, gibt es nicht.... goofy ist kein User... goofy existiert gar nicht, weder einer, noch mehrere, weder auf dem Raspi, noch auf den Clients. Es gibt auf dem Raspi die User Thomas, Klothilde, Augustinus, Franz-Ferdinand, Elisabethania, Julchen, usw... alles reale Menschen... und das ebenso auf dem jeweiligen persönlichen Client. Die melden sich als sambauser auf dem PI an und machen einfach ihr Ding.

Kein zum Mailsystem gehörender Prozess hat Kenntnis von diesen Menschen. Die Mail-Prozesse laufen völlig unabhängig von diesen Usern. Die Mailprozesse kennen nur ISP-Mail-Konten, lokale Dovecot-Mail-Konten und lokale Userspace-Zielverzeichnisse, in denen sich das persönliche Mailgedöns abspielt. Das wichtige ist: Es gibt keine Verbindung zwischen Linux-Konten und Mail-Konten. Die Verbindung ist einzig das Linux-Berechtigungssystem. Also wer berechtigt ist, ein Dovecot-Konto zu öffnen und das dovecot-userdb-Password kennt, kann damit arbeiten... ganz egal, ob er der Owner ist oder nicht.

Du sagst, es gibt nur einen "Goofy" als Mail-Indentität. Nein, es gibt so viele, wie es Anwender mit einem solchen ISP-Account gibt. Ich habe goofy@web.de, mein Sohn hat goofy@gmail.de, mein Opa hat goofy@gmx.de, mein Vater hat goofy@strato.de... also muss es auch 4 goofy-Accounts in dovecot geben, und dementsprechend 4 goofy-smtp-Server-Unterscheidungen, die exim handhaben kann - deshalb, weil es vier verschiedene Menschen sind, denen jeweils ein Account gehört. Allein die Linux-Zugriffsrechte regeln, welcher User welche Daten sieht. Aber genau diesen Punkt konnte ich nicht mit exim lösen.
Fetchmail ruft die emails von strato, gmx usw für den user goofy ab und liefert sie exim, der diese dann in dovecot in die Inbox des Users goofy auf dem raspi ablegt und per IMAP präsentiert.
Nochmal nein, denn das ist meines erachtens falsch. Exim kriegt gar nix von eingehender Post mit.... zumindest bei mir nicht. Bei mir machen das getmail und dovecot völlig alleine unter sich aus. Das Abholen, Speichern, Verarbeiten in dovecot und Anzeigen in Thunderbird funktionierte schon, da war exim noch gar nicht installiert. Wie gesagt, der Prozess "eingehend" war zu keiner Zeit ein Problem. Lediglich Exim konnte ich nicht so konfigurieren, dass es meinen Vorstellungen vom Prozess "ausgehend" entsprach.
scientific hat geschrieben:Kein goofy_w, kein goofy_g. Nur ein einziger goofy.
Und wie soll das bei den 4 Usern mit je einem Goofy-ISP-Account funktionieren...?... siehe oben...
scientific hat geschrieben:Dann funktioniert auch der multiuser-multiaccount in exim.
Ich habe das Problem mit exim gelöst.... und jetzt funktioniert es anscheinend so wie gewünscht. Im Moment allerdings erst mit nur 2 Adressen und 2 smtp-Servern, strato und web.de... aber es funktioniert anscheinend und nach den ersten Tests tatsächlich so wie gewünscht.
Das waren die Lösungsschritte: :mrgreen:

Code: Alles auswählen

apt-get purge exim4*
apt-get install postfix
Nimms mir nicht übel oder gar persönlich, aber ich will das nicht mit irgendwelchen vagen Identitäten innerhalb eines imaginären Main-Accounts... ich will das rigoros getrennt haben. EIN ISP-Account spiegelt sich hier bei uns im Netz als EIN dovecot-Account wieder. Und EIN dovecot-account ist EIN vollständig autonomer Thunderbird-Account. Und es gibt an keiner Stelle eine eingestellte Verbindung, Mapping, Routing oder sonstwas zu den Linux-Usern oder das für irgendein Mailing-Prozess der Linux-User als Identifikationsmerkmal herangezogen nwird.... es gibt nur für jeden Linux-User dessen Linux-Rechte.
scientific hat geschrieben:Da kriegst du natürlich ein Problem.
Nein, kein Problem, es ist gelöst. Postfix kann genau das:
http://www.postfix.org/SASL_README.html ... asl_sender
http://www.postfix.org/ADDRESS_REWRITIN ... ml#generic
scientific hat geschrieben:Siehst du den Unterschied zu deinem gewollten Setup?
Ja, es sind genau diese Unterschiede, wegen derer ich das Modell mit den Identitäten ausschließe. Mir fehlt da die saubere Trennung zu den anderen Linux-Usern. Aber wie gesagt, vielleicht habe ich das auch nur noch nicht so richtig verstanden....
scientific hat geschrieben:Ich hab auch den Eindruck, du verstehst unter "mehrere Identitäten" in Thunderbird verschiedene Accounts, und nicht ein Account mit mehreren Identitäten...
Richtig, weil die 2 Accounts (oder mehr) eines Users im Thunderbird genau so getrennt sein müssen, wie sie es sind, wenn einer bei gmx und der andere bei web.de liegt.

Ich bin im Moment noch nicht so weit, um wirklich ein abschließendes Urteil zu treffen.... erst mal bin ich geflasht, weil nach dem Wechsel zu Postfix wieder alles neu auf mich eingedröhnt ist.... und tonnenweise englische Man-Pages zu lesen ist echt hart, weil ich da nur auf 50 Jahre altes Schulenglisch zurückgreifen kann. Aber nach den ersten Eindrücken passiert alles so, wie gewünscht und entsprechend meinen Anforderungen bzw. meinen Vorstellungen.
Zuletzt geändert von TomL am 09.04.2017 19:21:27, insgesamt 1-mal geändert.

scientific
Beiträge: 3020
Registriert: 03.11.2009 13:45:23
Lizenz eigener Beiträge: Artistic Lizenz
Kontaktdaten:

Re: Thunderbird - Neue Wege...?...Entscheidungshilfen ...

Beitrag von scientific » 09.04.2017 19:15:46

Wir haben in der Tat aneinander vorbeigeredet...

Mein Setup bezieht sich - und das hab ich mehrfach dargelegt - darauf, dass ich mehrere Emailadressen bei mehreren Mailprovidern habe, die ich auf meinen eigenen Mailserver zusammenhole.
Meine eximkonfiguration (multiuser-multiaccount) stell in exim die Fähigkeit zur Verfügung, dass ich von diesem einen Account abhängig vom Absender den richtigen smarthost zum Versand kriege.
Das funktioniert dann auch mit anderen Usern auf anderen oder gar den selben Mailprovider-Smarthosts mit deren Adresse.

Jeder der User hat seinen eigenen Mailclient und in diesem Mailclient hat jeder User für sich für seine eigenen Mailadressen (incl. Alias) die Identitäten...

Wie du auf die Idee kommst, ich würd allen Personen nur einen einzigen Mailaccount auf dem eigenen Mailserver geben ist mir schleierhaft...

Wenns jetzt klappt, passts ja.
dann putze ich hier mal nur...

Eine Auswahl meiner Skripte und systemd-units.
https://github.com/xundeenergie

auch als Debian-Repo für Testing einbindbar:
deb http://debian.xundeenergie.at/xundeenergie testing main

TomL

Re: Thunderbird - Neue Wege...?...Entscheidungshilfen ...

Beitrag von TomL » 09.04.2017 19:34:21

scientific hat geschrieben:Mein Setup bezieht sich - und das hab ich mehrfach dargelegt - darauf, dass ich mehrere Emailadressen bei mehreren Mailprovidern habe, die ich auf meinen eigenen Mailserver zusammenhole.
Genau das habe ich doch auch. Ich selber habe beispielswiese mehrfach die Adresse TomL, und zwar bei verschiedenen ISP-Providern. Das mus exim handhaben können. Gleichermaßen habe ich aber auch bei einem Provider mehrere Adressen... und zwar über meine Strato-Domain. Da gibts TomL, ThomasL, eine mit vollem Namen, usw. Und auch das muss exim handhaben können. Und natürlich darf es nicht sein, dass es da zu Vermischungen hinsichtlich der Absender-Daten kommt. Oder das mit korrekten Zugangsdaten der falsche smtp-Server verwendet wird. Ich sende von toml@strato und der Mailer versendet mit korrektem Passwort und gmx-Account über mail.gmx.net. All das war mir mit exim total undurchsichtig und nicht zweifelsfrei handelbar.

Jetzt in postfix gibts konkrete Mapping-Tabellen, in denen die Zuordnungen von lokalem Mailaccount zu ISP-Mailaccount festgezurrt sind. Genau die habe ich nämlich in exim vermisst. Ich habe jetzt die dritte Adresse eingefügt und auch das klappt konfliktfrei und fehlerlos. Ich muss das aber noch mehr austesten mit verschiedenen toml-Adressen... denn in solchen Konstellationen steckt das größte Potential für Probleme drin... aber genau das muss natürlich sauber abgewickelt werden und hinsichtlich der möglichen Daten-Speicherungs-Orte vollständig getrennt sein. Denn hinsichtlich der Speicherorte gibts ja zwei Kandidaten... ISP-Postfach und lokales Postfach.

scientific
Beiträge: 3020
Registriert: 03.11.2009 13:45:23
Lizenz eigener Beiträge: Artistic Lizenz
Kontaktdaten:

Re: Thunderbird - Neue Wege...?...Entscheidungshilfen ...

Beitrag von scientific » 09.04.2017 19:50:29

Nun...
Meine Datei sender.multiuser-multiaccount.passwd odnet jeder Absenderadresse genau einen smarthost mit genau einem loginuser auf diesem smarthost und genau dem richtigen passwort zu.

Allerdings gibts keine Zuordnung von einem exim-login zu bestimmten emailadressen....
Das bedeutet, wenn meine Freundin von ihrem thunderbird ein email schickt, dass eine meiner Adressen als from gesetzt hat, würde die auch rausgehen...

Ist aber eine Anregung, die ich aufnehmen werde.

Exim hat aber auch die exakte zuordnung von einem Unixuser zu einer externen Adresse... Allerdings nur zu einer... Alias klappen nicht, zwei verschiedene Accounts bei einem Provider klappen auch nicht - in der Standardconfig.
Darum gibts ja auch meine Erweiterung.

Lg scientific
dann putze ich hier mal nur...

Eine Auswahl meiner Skripte und systemd-units.
https://github.com/xundeenergie

auch als Debian-Repo für Testing einbindbar:
deb http://debian.xundeenergie.at/xundeenergie testing main

TomL

Re: Thunderbird - Neue Wege...?...Entscheidungshilfen ...

Beitrag von TomL » 09.04.2017 20:47:13

scientific hat geschrieben:Meine Datei sender.multiuser-multiaccount.passwd odnet jeder Absenderadresse genau einen smarthost mit genau einem loginuser auf diesem smarthost und genau dem richtigen passwort zu.
*hmmm*...merkwürdig.... genau das hätte ja meine Anforderungen erfüllt. Ich muss 10, 20 oder 100 local-domain-Email-Adressen der gleichen Anzahl ISP-Email-Adressen zuordnen können. Und der MTA ersetzt dann im Sendeprozess die lokal-domain-Froms durch ISP-Froms und wählt den passenden Relay-Hosts plus zugehörigen ISP-Anmelde-Daten aus. Dabei muss das völlig unabhängig von den Linux-User klappen. Das sind eigentlich die von mir geforderten Schritte.
scientific hat geschrieben:Allerdings gibts keine Zuordnung von einem exim-login zu bestimmten emailadressen....
Das ist imho das Problem... 1 oder 100 locale-domain-Adresses müssen die gleiche Anzahl ISP-Adressen 1:1 konfliktfrei abbilden können. Konfliktfrei ist das Problem, weil die voneinander eigentlich "isolierten" ISP-Provider auf einmal in Dovecot zusammengeführt werden.
Exim hat aber auch die exakte zuordnung von einem Unixuser zu einer externen Adresse... Allerdings nur zu einer..
Warum? Wie? Wieso kennt exim den Linux-User? Das konnte ich bei mir doch gar nicht einstellen. Lediglich für dovecot konnte ich auswählen, ob die Authentifizierung über /etc/shadow stattfinden soll oder über eine eigene gehashte dovecot-userdb. Ich habe mich für die userdb entschieden, weil ich gerade damit auch die Abhängigkeiten zu den Linux-Usern ablösen konnte. Aber dovecot hat doch hinsichtlich der user mit exim auch nix zu tun........

scientific
Beiträge: 3020
Registriert: 03.11.2009 13:45:23
Lizenz eigener Beiträge: Artistic Lizenz
Kontaktdaten:

Re: Thunderbird - Neue Wege...?...Entscheidungshilfen ...

Beitrag von scientific » 09.04.2017 23:26:04

TomL hat geschrieben:
scientific hat geschrieben:Meine Datei sender.multiuser-multiaccount.passwd odnet jeder Absenderadresse genau einen smarthost mit genau einem loginuser auf diesem smarthost und genau dem richtigen passwort zu.
*hmmm*...merkwürdig.... genau das hätte ja meine Anforderungen erfüllt. Ich muss 10, 20 oder 100 local-domain-Email-Adressen der gleichen Anzahl ISP-Email-Adressen zuordnen können. Und der MTA ersetzt dann im Sendeprozess die lokal-domain-Froms durch ISP-Froms und wählt den passenden Relay-Hosts plus zugehörigen ISP-Anmelde-Daten aus. Dabei muss das völlig unabhängig von den Linux-User klappen. Das sind eigentlich die von mir geforderten Schritte.
scientific hat geschrieben:Allerdings gibts keine Zuordnung von einem exim-login zu bestimmten emailadressen....
Das ist imho das Problem... 1 oder 100 locale-domain-Adresses müssen die gleiche Anzahl ISP-Adressen 1:1 konfliktfrei abbilden können. Konfliktfrei ist das Problem, weil die voneinander eigentlich "isolierten" ISP-Provider auf einmal in Dovecot zusammengeführt werden.
Exim hat aber auch die exakte zuordnung von einem Unixuser zu einer externen Adresse... Allerdings nur zu einer..
Warum? Wie? Wieso kennt exim den Linux-User? Das konnte ich bei mir doch gar nicht einstellen. Lediglich für dovecot konnte ich auswählen, ob die Authentifizierung über /etc/shadow stattfinden soll oder über eine eigene gehashte dovecot-userdb. Ich habe mich für die userdb entschieden, weil ich gerade damit auch die Abhängigkeiten zu den Linux-Usern ablösen konnte. Aber dovecot hat doch hinsichtlich der user mit exim auch nix zu tun........
Natürlich kann man exim auch die Unix-User wissen und gegen diese authentifizieren lassen. Mit pam, oder mit sasl. Genauso wie man auch dovecot gegen die Linux-User authentifizieren lassen kann.
Aber es geht natürlich auch mit "virtuellen Usern" wie das in dovecot genannt wird. Dann wird das mit der userdb wie von dir beschrieben gemacht.
Man kann die User-Infos auch in eine sql-Datenbank oder einem LDAP-Verzeichnis ablegen und von dort die Credentials holen/abfragen. Exim ist auch hier extrem vielseitig konfigurierbar.

Ich bin durch die Beschäftigung mit deinem Thema auch wieder einmal (lustigerweise exakt ein Jahr nachdem ich mich dem das letzte Mal intensiver gewidmet habt) in die Thematik eingetaucht.

So wie ich die ganze Geschichte verstehe füttert man sowohl exim als auch dovecot irgend eine User-Datenbank (in welcher Form auch immer), wenn man eine Authentifizierung vor dem Abruf per IMAP/POP3 oder dem Versenden via SMTP von Emails haben möchte.
In Dovecot ist dann entweder in der userdb oder in der allgemeinen Config festgelegt, wo die Emails für die User abgelegt werden. Jeder User (ob virtuell oder reale) erhält dabei ein eigenes Verzeichnis wo alle Emails abgelegt werden (oder in einem Unterverzeichnis davon).

Man kann es so konfigurieren, dass man für SMTP und IMAP/POP die gleichen oder verschiedene Passwörter verwendet. Und wenn man die gleichen Passwörter verwendet, dann hat man die Möglichkeiten, die Infos in - für exim und dovecot - getrennten Datenbanken oder sogar der selben speichert. Man kann die /etc/passwd bzw. /etc/shadow nehmen oder eigene Files oder eben auch eine SQL-Datenbank.

Eine Erhöhung der Sicherheit ist natürlich, wenn man für den Login am Mailaccount ein anderes Passwort verwendet, als für den allenfalls vorhanden Unix-User.

Wenn du den raspi als extra Mailserver konfigurierst, dann haben die dortigen Unix-User einmal überhaupt nix mit den Usern zu tun, die du auf anderen Maschinen konfiguriert hast.

Zum ersten Teil
Ich muss 10, 20 oder 100 local-domain-Email-Adressen der gleichen Anzahl ISP-Email-Adressen zuordnen können. Und der MTA ersetzt dann im Sendeprozess die lokal-domain-Froms durch ISP-Froms und wählt den passenden Relay-Hosts plus zugehörigen ISP-Anmelde-Daten aus. Dabei muss das völlig unabhängig von den Linux-User klappen
Das ist ja genau der Punkt, wo wir die ganze Zeit aneinander vorbeigeredet haben...

MEINE Konfiguration schau so aus.
Ich habe bei 7 Providern 10 Email-Accounts. Davon haben 5 Adressen bis zu 4 Alias-Adressen.
Nach deiner Denke bräuchte ich jetzt auf meinem lokalen Mailserver 10 Email-Accounts in Dovecot - damit habe ich 10 lokale Email-Accounts, die ich irgendwie übersetzen muss.
In meinem Konzept habe ich 1 einzigen lokalen Email-Account. In den sammle ich von den 7 Providern die Emails der 10 Email-Accounts ein.

In Thunderbird habe ich genau diesen einen Account konfiguriert "jakob@localhost"
Der Imap-Server ist localhost, der SMPT-Server ist localhost. Der Username sowohl beim IMAP als auch beim SMTP-Server ist jakob, und das Passwort ist geheim. :)

Bei mir läuft der Mailserver auf localhost am Laptop, wo auch der Thunderbird läuft. Bei dir würde das statt localhost raspi3.local sein, das tut hier einmal wenig zur Sache.

Verfasse ich in Thunderbird ein neues Email, ist der Absender "jakob@localhost". Das würde einmal relativ wenig bewirken.
Also gibt es in Exim eine Rewriteregel, die in /etc/email-addresses festgelegt ist, wo jakob auf user.xy@isp.tld umgeschrieben wird.
Das heißt, ich lege in /etc/email-addresses fest, welches mein default-Absender ist, wenn nichts näher spezifiziert ist.

Dieser Account in Thunderbird (geht auch in Evolution, geht auch am Androiden in einem Client, dessen Namen ich jetzt vergessen habe) hat nun mehrere Identitäten.
In jeder dieser Identität trage ich die tatsächliche Email-Adresse bei meinem isp ein. Also z.B. jakob@gmx.at, blablubb@tollerprovider.net, bullubullu@nichtsotollerprovider.com ein. Jede dieser Identitäten bekommt eine andere Signatur, eine andere "Organisation-Kennzeichnung", wenn ich diese Identitäten z.b. für berufliche Emails aus verschiedenen Projekten verwende. Ich kann mir jede Identität so herrichten, wie einen eigenen Account - auch mit Reply-To.

Die Datei /etc/exim4/sender.multiuser-multiaccount.passwd enthält dann in der 1. Spalte dann auch jede einzelne Adresse (inclusive aller Alias) meiner externen Mailprovider.
Und in den weiteren Spalten ist dann der zugehörige SMTP-Server und die Login-Daten enthalten. Die letzten 3 Spalten können durchaus öfter vorkommen - z.B. bei den Alias-Adressen...

Ich sende also als jakob@localhost ein Email mit einem From: blablubb@tollerprovider.net weg. Exim schaut dann in /etc/exim4/sender.multiuser-multiaccount.passwd welcher SMTP-Server für blablubb@tollerprovider.net zu nehmen ist und meldet sich dort mit den Credentials an und liefert das EMAIL ab.

Im Header des Emails ist dann als erster Hop jakob@localhost, dann der smtp-Server von tollerprvider.net usw. zu sehen. Für den Empfänger sieht es dann so aus, als ob das Email von meinem Account bei tollerprovider.net abgeschickt worden wäre - obwohl der Zwischenschritt über den lokalen Mailserver mit dabei ist.

In die Datei /etc/exim4/sender.multiuser-multiaccount.passwd musst du als Admin jede einzelne Email-Adresse aller deiner User mit den korrekten Credentials und dem passenden SMTP-Server eintragen. Und da Email-Adressen ohnehin uniq sind, kann es keine zwei gleichen Einträge in der ersten Spalte geben.

Ich hab mir mal ein Szenario überlegt, wo ich diese eine Datei nicht ähnlich wie die .fetchmailrc auch im Userverzeichnis auslagern könnte, damit sie von den Usern selbst gepflegt werden können. Aber da die Anzahl der User bei mir daheim sehr überschaubar ist (wir sind 2 Menschen), hab ich den Ansatz noch nicht weiter verfolgt.
Ein Nachteil dieser Lösung ist natürlich, dass neben dem tatsächlichen Account-Inhaber auch der Admin die Logindaten für die verschiedensten Mailadressen kennt... Aber der Admin kann auch in die .fetchmailrc-Files der User schauen...

Um nochmal zu dem Punkt zurückzukommen, wo wir uns nicht einig wurden: Ich brauche keine gespiegelten Accounts am lokalen Mailserver, damit brauche ich auch keine Mailadressen übersetzen/ersetzen. Ich brauche aber eine Datei, wo zu jeder "echten" Email-Adresse und zu jeder Alias-Adresse Logindaten und SMTP-Server verzeichnet sind.

Eine Verknüpfung mit einem Linux/Unix-User aus der /etc/passwd benötige ich nur, wenn ich ohne weitere Angabe einer Absenderadresse vom Rechner auf dem der Mailserver läuft einen Default-Absender festlegen will/muss.
Mein Mailserver (dovecot/exim4) läuft auf localhost am Laptop. Sende ich von der Shell ein Email mit
echo BLA|mail -s "Blubb" irgend.jemand@irgend.wo, so wird als Absender im From jener eingetragen (und über den entsprechenden Smarthost gesendet), der in /etc/email-addresses für meinen User jakob festgelegt wurde.

Die "isolierte" Ablage der Mails je ISP-Account habe ich nicht so streng, da ich meine Emails mit Sieve mehr nach Absender und Themen sortiere. Das heißt, mir ist eigentlich ziemlich egal, über welche Email-Adresse ein Email reinkommt, aber wenn im Betreff ein Begriff vorkommt, dann kommt dieses Email in den einen Unterordner, wenn es über jenen Account reinkommt und eine bestimmte Adresse als CC gesetzt ist, dann kommt es in einen anderen Ordner, wenn in der Absenderadresse "debian.org" vorkommt und eine list-id debian-user-german enthält, dann kommt es in einen anderen Ordner... usw.
Ich kann natürlich auch Sieve-Filter-Regeln definieren, welche mir nach To-Adressen filtert, und jene Emails von einem ganz bestimmten Account (z.B. TO: vom Büro-Account) in einen ganz bestimmten Ordner schiebt.

Das habe ich auch mit bestimmten Adressen so in Verwendung. Zusätzlich mit der Geschichte, dass ich mit einer Erweiterung in Thunderbird pro Ordner festlegen kann, welche Adresse bei neuen Emails aus diesem Ordner als From, welche als To usw. gesetzt wird, kann ich in einzelnen Ordnern gezielt ohne weitere Aufmerksamkeit auf den Absender Konversationen führen, die immer über den selben Account raus und rein gehen.

Und ich hab sogar mit dieser Konfiguration alle Emails, die ich von der Commandline mit mail versende in den Gesendeten...

Vielleicht ist es jetzt ein wenig klarer, was ich meine...

Btw: Ich habe auch Roundcube auf dem System. Damit ich ALLE meine Emails einsehen kann, muss ich mich nur mit einem einzigen Usernamen anmelden... In deinem Setup bräuchte ich wieder für jede einzelnen externen Mail-Account ein Login für den "internen" Spiegelaccount... das ist doch mühsam!
lg scientific
dann putze ich hier mal nur...

Eine Auswahl meiner Skripte und systemd-units.
https://github.com/xundeenergie

auch als Debian-Repo für Testing einbindbar:
deb http://debian.xundeenergie.at/xundeenergie testing main

TomL

Re: Thunderbird - Neue Wege...?...Entscheidungshilfen ...

Beitrag von TomL » 10.04.2017 17:35:13

Moin

Ich glaube, ich habe jetzt endlich kapiert, wie Du das Problem betrachtest bzw. es gelöst hast. Heute morgen hat es auf einmal "Klick" gemacht und die Erkenntnis war von einem Moment zum anderen da. Ich selber habe sogar auch dieses Identitäten-Modell... aber nur so nebenherlaufend, bedeutungslos, meist ungenutzt, oder besser, ohne regelmäßige bewusste Verwendung. Deswegen war das auch so weit im Hintergrund meines Bewusstseins vergraben.
Ich habe einen GMX-Account. Meine GMX-Account-ID (Kundennummer) ist 123454321. Unter dieser Account-ID habe ich 2 Identitäten, einmal Fix@gmx.de und einmal Foxi@gmx.de. Egal, mit welcher Identität ich das Postfach öffne, ich sehe immer die Posteingänge beider Identitäten und ich kann beim Senden einer Mail auswählen, welche Identität als 'From' verwendet werden soll. Genau das unterstützt auch Thunderbird.....verschiedene Identitäten für EINEN Account. Ich nutze diesen Account allerdings nur, wenn ich mal irgendwo eine Anmeldung brauche und ich weiss vorher schon, dass ich da nur ein kurzzeitiger Gast bin. Mir ist es auch egal, welche Post für wen da ankommt... es sind eh nur Anmelde-Bestätigungs-Mail oder Junk. Gesendet wird von diesen Identitäten nie.

Bei mir sind es also nur diese zwei Identitäten in einem Account. Und jetzt ist mir klar, Du hast dieses Identitäten-Modell angewandt, um Multi-ISP-Accounts (also mehrere) zu Identitäten innerhalb eines Home-IMAP-Account zu komprimieren. Da sträuben sich bei mir rein gefühlsmäßig allerdings alle Nackenhaare hinsichtlich Prozess-Integrität und notwendiger Datenkapselung.

Der gravierenste Nachteil ist, ich muss beim Senden einer Mail jedesmal genauestens darauf achten, dass ich vor dem Senden den richtigen "From" auswähle. Mach ich was hektisch und auf die schnelle oder bin unkonzentriert besteht immer die Gefahr, dass ich auf einmal mit dem Absender "Rrrrruf-MICH-AN!@gmx.de" bei unserem Pfarrer per Mail nach einem Tauftermin nachfrage. :mrgreen: Das geht ja wohl gar nicht... *lol* Bei meinem Modell kann sowas gar nicht erst passieren, weil der Account nur seine eigene Identität und damit einen eindeutigen "From" innehat.
scientific hat geschrieben:Natürlich kann man exim auch die Unix-User wissen und gegen diese authentifizieren lassen.
Nein, das ist imho falsch. Exim hat keine Benutzerverwaltung, braucht keine und muss auch keine Linux-Benutzer kennen. Mit Exim kann ich völlig ohne Benutzerverwaltung via Telnet eine Mail senden, wenn ich einen Relay-Host und die Mail-ISP-Login-Daten eintrage. Exim muss also nur Zugangsdaten zu einem Mail-ISP kennen, aber überhaupt nix von lokaler Seite. Und die lokalen Benutzerdaten (wie /etc/shadow) haben absolut gar nix mit Exim oder mit dem Mail-ISP-Login zu tun... denn dahinter steht die Benutzerverwaltung des Mail-ISP. Exim ist ein reiner "Prozessor", ohne eigene Benutzer. Das ist anders bei dovecot, denn dovecot führt selber Benutzer-getrennte und authentifizierungswürdige Aufgaben durch. Dovecot hat halt nur die Möglichkeit, auf verschiedene Benutzer-DB zurückzugreifen... man muss sich nur für eine entscheiden.
Aber es geht natürlich auch mit "virtuellen Usern" wie das in dovecot genannt wird. Dann wird das mit der userdb wie von dir beschrieben gemacht.
Richtig, und ich halte das auch für sinnvoll, weil ich damit die Abhängigkeit zu einem User löse. Weil die Maildaten ja auch sowieso nicht im Homedir des Users gespeichert werden, sehe ich auch gar keinen Grund, den dovecot-Account an den User per UID oder GID zu binden. Ich mounte (per bind) einfach das entsprechende Daten-Dir in sein Home-Dir und gut is. Das vereinfacht ausserdem auch maßgeblich die automatischen Backups, weil eben nicht mühsam einzelne Home-Dirs in die Backup-Jobs eingetragen werden müssen, sondern einfach nur das primäre Mail-Dir auf der Platte. Ich will allein gemappte, logische Verknüpfungen, keine harten an GID oder UID gebundene.
So wie ich die ganze Geschichte verstehe füttert man sowohl exim als auch dovecot irgend eine User-Datenbank (in welcher Form auch immer), wenn man eine Authentifizierung vor dem Abruf per IMAP/POP3 oder dem Versenden via SMTP von Emails haben möchte.
In Dovecot ist dann entweder in der userdb oder in der allgemeinen Config festgelegt, wo die Emails für die User abgelegt werden. Jeder User (ob virtuell oder reale) erhält dabei ein eigenes Verzeichnis wo alle Emails abgelegt werden (oder in einem Unterverzeichnis davon).
Ich glaube, Du machst hier den Fehler und betrachtest ein Konglomerat an Mail-Prozessen als eine Einheit.... das ist aber nicht eine Einheit. Es sind faktisch vier Prozesse, von denen keiner der Anwesenheit des anderen bedarf. Jeder Prozess läuft auch komplett alleine.

Fangen wir mit Getmail an. Getmail braucht kein Dovecot, kein Exim, kein Thunderbird. Getmail loggt sich bei den Mail-ISP ein, holt die Mails ab und schreibt sie stupide gemäß seiner Verteilregeln in die Zieldirs.

Als nächtstes Dovecot. Dovecot benötigt kein Getmail, kein Exim und kein Thunderbird. Hast Du ein Password, kannst Du Dich via Telnet Port 143 anmelden und einfache Sachen nachsehen. Es ist dovecot völlig egal, ob sich ein Thunderbird-Client anmeldet, Mails versendet, oder ob Getmail Daten reingeschaufelt hat. Wenn Du dich anmeldest, zeigt er an, was da ist, oder eben nix, wenns leer ist.

Thunderbird benötigt ebenfalls nix. Es lief ja immer schon ohne dovecot, exim und getmail. Man konnte sich immer schon direkt beim ISP-Mailer anmelden.

Als letztes exim... auch das benötigt keines der anderen Programme. Installiere es, öffne den Dienst via Telnet und vesende einfach ne Mail. Ganz ohne den anderen Overhead, ganz ohne, dass eines der anderen Programme installiert ist.

Der Vorteil ist halt, diese vier Prozesse verrichten nach gemeinsam getroffenen Vereinbarungen (verschiedene Schnittststellen) ein Aufgaben-Umfeld, was uns als ein kompletter Prozess vorkommt. Das ist es aber nicht... es sind vier eigenständige Prozesse, bei dem jeder für sich arbeitet und wo jeder einzelne Prozess für sich über seine Settings eingestellt werden muss. Dabei ist Thunderbird das Frontend, Getmail und Exim sind Prozessoren (ein- und ausgehender Traffic) und Dovecot ist das Backend. Und es gibt nur zwei Benutzerverwaltungen, die des ISP-Mailers und die von Dovecot.
Ich muss 10, 20 oder 100 local-domain-Email-Adressen der gleichen Anzahl ISP-Email-Adressen zuordnen können. Und der MTA ersetzt dann im Sendeprozess die lokal-domain-Froms durch ISP-Froms und wählt den passenden Relay-Hosts plus zugehörigen ISP-Anmelde-Daten aus. Dabei muss das völlig unabhängig von den Linux-User klappen
Das ist ja genau der Punkt, wo wir die ganze Zeit aneinander vorbeigeredet haben...
Dabei bin ich jetzt unsicher, ob wir wirklich so weit auseinander sind. Faktisch haben wir sogar die gleiche Basis. Wir haben beide 10 ISP-Mail-Accounts, ich habe dazu passend 10 lokale Accounts, Du hast dafür 10 lokale Identitäten... und sowohl für Deine 10 Identitäten müssen gleichermaßen wie für meine 10 Accounts jeweils beim Senden der "From" ersetzt werden, der passende relayhost und die passenden Mail-ISP-Login-Daten ermittelt werden. Da kann man sich drehen und wenden, wie man will, da besteht zwischen unseren Modellen kein Unterschied.

Dabei ist es für den separaten Prozess "exim" völlig egal, ob der Frontend-Thunderbird einen lokalen "From" aus einer lokalen Identität ableitet oder einem lokalen Account... beim Prozess "Exim" kommt ein "From" an, den es im WWW nicht gibt und für den ein passender relay-host und Login-Daten ermittelt werden muss. Also ich sehe an diesem Punkt keinen Unterschied. Wenn das Datenpaket (die Mail) bei Exim angekommen ist, ist es völlig egal, was die Quelle "Thunderbird" damit vorher angestellt hat... Identität oder Account... ist beides dasselbe, weil Exim als reiner Prozessor sowieso wirklich NULL von Thunderbird weiss. Insofern verstehe ich auch gerade nicht, warum mir das mit Exim nicht gelungen ist. Wobei ich allerdings bemerke, dass Exim anscheinend versucht zu interpretieren, Postfix aber einfach auf statische Mappings-Tables zurückgreift.... was mir deutlich vertrauenswürdiger erscheint und auch weniger "Irrläufer"-Potential beinhaltet.
Um nochmal zu dem Punkt zurückzukommen, wo wir uns nicht einig wurden: Ich brauche keine gespiegelten Accounts am lokalen Mailserver, damit brauche ich auch keine Mailadressen übersetzen/ersetzen. Ich brauche aber eine Datei, wo zu jeder "echten" Email-Adresse und zu jeder Alias-Adresse Logindaten und SMTP-Server verzeichnet sind.
Denk noch mal vor dem Aspekt der von mir beschriebenen separaten Prozesse daüber nach, ob die Unterschiede bezüglich Backend-Identität oder Backend-Account wirklich relevant sind. Meiner Meinung nach nicht. Wie gesagt, wenn Thunderbird das Paket abschickt, kommt ein Paket bei Exim an.... es steht ein lokaler "From" drin ... und genau hier ist es bei unseren beiden Sachverhalten egal, ob der "From" eine Identität oder ein Account war. Er muss ersetzt werden.
Die "isolierte" Ablage der Mails je ISP-Account habe ich nicht so streng, da ich meine Emails mit Sieve mehr nach Absender und Themen sortiere.
Das ist für mich einer der ganz wichtigen Punkte. Gerade auch die Archivierung nach Themen und Absender ist enorm wichtig. Ich habe jetzt tolle neue Möglichkeiten der Prozess- und Daten-Skalierung. Die üblichen Sekundär-Email-Adressen bleiben wie bisher und werden gar nicht erst in den Prozess eingebunden. Die bleiben in Thunderbird einfach weiterhin Direkt-Imap-ISP-Accounts - ist eh alles für'n Eimer. In den neuen Prozess werden nur die primären personifizierten EMails eingebunden. Und nun das wichtigste... ich kann dann endlich auch unsere Archive einbinden, die bisher in separaten TB-Profilen gelagert waren. Das war z.T. sehr umständlich, relevante Daten aus den aktuellen Profilen in die Archive zu überführen. Ich habe dafür einen Transfer-Imap-Account auf meiner Strato-Domain eingerichtet. Aber das konnte ich immer nur schwer den anderen vermitteln. Speziell dieser Vorgang vereinfacht sich massgeblich. Darüber hinaus "atmet" der Datenbereich auf der Platte nicht mehr so tief. Das heisst, das aufblasen und ablassen wird deutlich geringer ausfallen, was sich wiederum in meinm Backup positiv bemerkbar machen wird.
In deinem Setup bräuchte ich wieder für jede einzelnen externen Mail-Account ein Login für den "internen" Spiegelaccount... das ist doch mühsam!
Nein, überhaupt nicht. Das hast Du missverstanden. Ich starte Thunderbird und sehe mit einem Blick alle Konten und deren Inhalte. Alle "meine" Dovecot-Accounts haben in der Dovecot-UserDB mein Linux-Password. Ich richte in TB den Account ein, trage dazu die lokale Adresse ein, z.B. TomL@raspi3.local, gebe mein Linux-Password ein und fertig. Wie gesagt, das passende Mapping macht Postfix anhand seiner Mapping-Tables. Postfix weiss nix von Linux-Usern, auch nix von Thunderbird-Usern... es kennt nur die ISP-Mailer-Login-Daten und die passenden relayhosts... das sind eben die Daten, die in den Mapping-Tables drinstehen ... als Referenz kriegt es nur die local-domain-Adresse im "From" übergeben.... und genau das, diese Referenz, kann meiner Meinung nach bei Dir und Exim nicht anders sein.

scientific
Beiträge: 3020
Registriert: 03.11.2009 13:45:23
Lizenz eigener Beiträge: Artistic Lizenz
Kontaktdaten:

Re: Thunderbird - Neue Wege...?...Entscheidungshilfen ...

Beitrag von scientific » 10.04.2017 18:04:12

Hmmm...
Bei mir landen die Emails der User in /var/spool/dovecot/mails/$USER
Und ein Login bei dovecot als $USER liefert nur die Emails aus diesem Verzeichnis. Streng nach User (=Account am Mailserver) getrennt.
Das Backup erfolgt durch das Sichern von /var/spool in einem Rutsch.

Was exim und die User angeht... Ich mache authentifiziertes smtp. Damit kann über diesen Server nzr jemand Emails versenden, der auf dieser Maschine einen Account hat, oder in einer User-db eingetragen ist.
Und diese Userdb kann /etc/passwd bzw. /etc/shadow sein oder eine SQL-DB. sollte aus irgend einem Grund mein Mailserver in ein Netz gelangen, wo er missbraucht werden könnte, ist dies mit smtp-auth wiederum ausgeschlossen.

Und sag nicht, das geht nicht, denn hier läuft es erfolgreich.

Fetchmail liefert bei mir auch an exim, da ich hier die Spamprüfung durchführen lasse. Und exim liefert an dovecot, der wiederum die emails serverseitig mit sieve filtert und in die verschiedene Ordner einsortiert (oder auch weiterleitet - wieder über exim). Die Ablage nach Themen und auch Absender oder auch Eingangsaccount kannst du doch mit Sieve genauso realisieren - nur wesentlich flexibler.

Was die gespiegelten lokalen Accounts vs. einem lokalen Account und mehrere Identitäten in Thunderbird angeht... Ich muss natürlich jede Email-Adresse als Identität zu einem Account anlegen. Sollte ich aber aus irgend einem Grund meine Logindaten des IMAP-Servers ändern, muss ich in Thunderbird genau einmal das neue Passwort eingeben. Du muss bei 10 Accounts 10 mal das Passwort angeben - und in der User-DB für dovecot 10 mal das Passwort ändern.
Und du musst in Thunderbird 10 neue Accounts anlegen und in deinem Smartphone 10 neue Accounts anlegen und am Tablet 10 neue Accounts anlegen und am anderen PC im Thunderbird musst du 10 neue Accounts anlegen. Und wenn du das Passwort im Mailserver änderst, musst du im Thunderbird, im Smartphone, im Tablet am anderen PC jeweils 10 Mal das neue Passwort ändern... Ich jeweils nur ein einziges Mal.

Was das Auswählen eines Absenders anbelangt... Thunderbird bietet mir die Möglichkeit für jeden einzelnen Ordner einen Absender und einem Empfänger vorzugeben.
Hab ich einen Ordner "Arbeit" mit den Unterordnern "Projekt 1", "Projekt 2", "Dauerstelle" und alle 3 verlangen unterschiedliche Absender, so stelle ich die ein. Will ich an als Projekt 2 kommunizieren, so öffne ich diesen Ordner und erstelle ein neues Email... mit dem richtigen Absender - ohne viel überlegen zu müssen.
So habe ich verschiedenste Mailinglisten konfiguriert, wo ich früher nie wusste, mit welcher Adresse ich da überhaupt registriert bin... Jetzt muss ich gar nicht viel nachdenken.

Und natürlich ist es exim egal, ob Thunderbird, oder Icedove oder die Gmail-App vom Androiden oder die Mail-App vom Androiden, oder Windows-Mail oder was auch immer für ein Client (auch bsd-mailx!!) auf einem berechtigten Endgerät die Emails abliefert. Aber ich melde mich mit einem Usernamen und Passwort am SMTP-Server an (ja, das geht wirlich!!!) und das ist die Standard-Absender-Adresse, die ich von exim mittels Rewrite-Rule umschreiben lassen kann. Wie, das ist in /etc/email-addresses festgelegt.

Exim zaubert oder ratet hier auch nicht. In der Standardkonfiguration ist bloß nicht mein Szenario vorgesehen, sondern ein etwas "einfacheres", wo anhand der domain eines FROM ein Smarthost ausgewählt wird. Das klappt aber bei Alias-Adressen nicht (hudriwudri@fundomain.xyz ist ein Alias zu seriöser.user@gmx.org - beide haben den selben Smarthost als Smpt-Server mit den selben Logindaten).
Exim fungiert in zwei Richtungen. Einmal als SMTP-Server für den Versand nach Draußen, einmal als SMTP-Server für den Versand nach innen.
Nach draußen benötigt er die Login-Daten bei den verschiedenen Smarthosts, nach drinnen benötigt er die Login-Daten für den localen dovecot.

Ich geben in Dovecot als From die Adressen bei den Externen ISP an. Und in der Zuordnungstabelle /etc/exim4/sender.multiuser-multiaccount.passwd sucht exim exakt zu dieser Adresse Loginuser, Passwort und smtp-Server. Das entspricht wohl der Mapping-Tabelle von dir bei postfix.

Apropos exim weiß nix von Usern... wie denkst du wird realisiert, dass ich per SMTP nur dann versenden kann (z.B. gmx, z.B. gmail), wenn ich mir zuvor eingeloggt habe? Früher war das Pop vor smtp, heute wird da tatsächlich ein Login durchgeführt. Weil das SMTP-Protokol aufgebohrt und um eine Authentifikationsmöglichkeit erweitert wurde.

Aber egal... unterschiedliche Philosophien... mir war es immer schon egal, über welchen Account die Emails reinkommen. Ich fand es immer nur mühsam in zig Accounts nach einem bestimmten Email zu suchen... Jetzt suche ich in genau einem Account. Und das über Thunderbird, über Roundcube, über Android oder gar nur in einem Verzeichnis auf /var/spool/dovecot/mails/jakob mit grep... :)

Wenn dein Setup jetzt funktioniert, passt es. Wenn du auch zufrieden bist, ist alles bestens.

lg scientific
dann putze ich hier mal nur...

Eine Auswahl meiner Skripte und systemd-units.
https://github.com/xundeenergie

auch als Debian-Repo für Testing einbindbar:
deb http://debian.xundeenergie.at/xundeenergie testing main

Antworten