Mailsetup

Debian macht sich hervorragend als Web- und Mailserver. Schau auch in den " Tipps und Tricks"-Bereich.
inne
Beiträge: 3273
Registriert: 29.06.2013 17:32:10
Lizenz eigener Beiträge: GNU General Public License
Kontaktdaten:

Mailsetup

Beitrag von inne » 03.10.2018 17:15:04

Hallo,

ich habe mein Mailsetup überarbeitet.

Auf dem Homeserver läuft nun ein getmail4/getmails cronjob und holt alle Mails ab und tut die nach /var/mail/inne. Ein dovecot mit mail_location = mbox:~/mail:INBOX=/var/mail/%u, stellt die Mails dann für die Clients Laptop, Desktop, Smartphone bereit.

Das funktioniert auch, nur kann ich in Thunderbird die Mails nicht löschen. Ist das ein wirres Setup, und wie macht mans richtig?

Der Versand mit Exim als Smarthost auf dem Homeserver funktioniert.

Danke,
Inne

hec_tech
Beiträge: 1093
Registriert: 28.06.2007 21:49:36
Wohnort: Wien
Kontaktdaten:

Re: Mailsetup

Beitrag von hec_tech » 03.10.2018 18:08:05

Ich nehme mal an du verwendest IMAP.

Was heißt genau du kannst die Mails nicht löschen? Ansich heißt bei IMAP löschen eigentlich nur dass ein delete Flag gesetzt ist. Das richtige löschen ist seperat.

Steht etwas in den Logs? Stimmen die Berechtigungen am Filesystem? Verwendest du Systemuser oder Virtualusers?

inne
Beiträge: 3273
Registriert: 29.06.2013 17:32:10
Lizenz eigener Beiträge: GNU General Public License
Kontaktdaten:

Re: Mailsetup

Beitrag von inne » 03.10.2018 19:14:43

Sorry dass ich das nicht gleich geschrieben habe!

Es ist ein Systemuser, IMAP, und nicht löschen bedeutet das die Mail im Thunderbird in den Papierkorb kommt aber dann neu wieder im Posteingang ist. Der Papierkorb kann geleerte werden. Die Mail bleibt auch in /var/mail/inne und kann dort mir mail(1) gelesen und erfolgreich gelöscht werden.

Mit den Dateiberechtigungen könntest Du richtig liegen:

Code: Alles auswählen

id dovecot
uid=112(dovecot) gid=116(dovecot) Gruppen=116(dovecot)
Dovecot läuft ja nicht als UID inne oder root. Ist es sauber dovecot einfach zu mail hinzuzufügen?

Code: Alles auswählen

ls -l /var/mail/inne 
-rw-rw---- 1 inne mail 12580 Okt  3 17:07 /var/mail/inne
adduser dovecot mail
Oder anders gefragt: Warum ist das nicht in der Standardinstallation so? Kann man besser noch die Mails aus /var/mail/inne nach ~/mail verschieben?

Ein tailf /var/log/mail.{err,warn,info} bringt keine Meldungen, wenn die Mail im Thunderbird lösche. Ich werde noch das Debuglog von Tunderbird durchsuchen, muss aber erst noch nachlesen wie das mit den Umgebungsvariablen dazu war..

Benutzeravatar
bluestar
Beiträge: 2333
Registriert: 26.10.2004 11:16:34
Wohnort: Rhein-Main-Gebiet

Re: Mailsetup

Beitrag von bluestar » 03.10.2018 19:21:27

Ich habe zwei Cronjobs laufen, die gelöscht markierte Mails aufräumen:

Code: Alles auswählen

0	*/1	*	*	*	mail	/usr/bin/doveadm expunge -A mailbox '*' DELETED
und

Code: Alles auswählen

5	23	*	*	*	mail	/usr/bin/doveadm purge -A

inne
Beiträge: 3273
Registriert: 29.06.2013 17:32:10
Lizenz eigener Beiträge: GNU General Public License
Kontaktdaten:

Re: Mailsetup

Beitrag von inne » 03.10.2018 19:21:40

Im Log steht aber natürlich was:

Code: Alles auswählen

[...], we're not in group 8(mail), dir owned by 0:8 mode=0775) (set mail_privileged_group=mail)
Was bedeutet set mail_privileged_group=mail :?:

Kann man das in der Konfiguration setzen?

inne
Beiträge: 3273
Registriert: 29.06.2013 17:32:10
Lizenz eigener Beiträge: GNU General Public License
Kontaktdaten:

Re: Mailsetup

Beitrag von inne » 03.10.2018 19:24:09

Mein Lösung:

Code: Alles auswählen

rgrep mail_privileged_group /etc/dovecot/ 
/etc/dovecot/conf.d/10-mail.conf:#mail_privileged_group =
/etc/dovecot/conf.d/10-mail.conf:mail_privileged_group = mail
:?:

inne
Beiträge: 3273
Registriert: 29.06.2013 17:32:10
Lizenz eigener Beiträge: GNU General Public License
Kontaktdaten:

Re: Mailsetup

Beitrag von inne » 03.10.2018 19:25:34

Hat @bluestars Lösung Vorteile gegenüber meiner obigen?

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

Re: Mailsetup

Beitrag von weshalb » 04.10.2018 13:04:35

Das finde ich merkwürdig, denn nach den 0815 Setups gehören die Mails dem Systemuser, der sich per Imap anmeldet...und der kann die dann auch löschen. Kannst du mal bitte interessehalber deine dovecot Konfiguration hochladen?

Ich habe sämtliche Einstellungen , die man in den unzähligen Dateien im conf.d-Ordner findet, in nur einer sog. local.conf zusammengefasst und die ist recht übersichtlich.

Zum Vergleich:

Code: Alles auswählen

## Mailconf-Settings
namespace inbox {
  separator = .
  prefix =
  inbox = yes
}


mail_location = maildir:~/Maildir

##Master-Settings

service auth {
  # Postfix smtp-auth
  unix_listener /var/spool/postfix/private/auth {
   mode = 0666
  }
 }


##auth-settings

disable_plaintext_auth = no
auth_mechanisms = plain login



##lda-setting

postmaster_address = root@localhost

protocol lda {
  # Space separated list of plugins to load (default is global mail_plugins).
  mail_plugins = $mail_plugins sieve
}

##SSL-setting

ssl = yes
ssl_cert = </etc/letsencrypt/live/xxxxxxx/fullchain.pem
ssl_key = </etc/letsencrypt/live/xxxxx/privkey.pem



inne
Beiträge: 3273
Registriert: 29.06.2013 17:32:10
Lizenz eigener Beiträge: GNU General Public License
Kontaktdaten:

Re: Mailsetup

Beitrag von inne » 04.10.2018 13:29:02

Habe die Ausgabe von doveconf nach NoPaste-Eintrag40445 getan. Das sollte die Original Raspbian Konfiguration sein. Geändert habe ich nur :

disable_plaintext_auth = no

und

mail_privileged_group = mail

PS: Kannst Du bitte den absoluten Pfad der local.conf sagen, dann würde ich dort auch meine Änderungen gegenüber der Maintainer zusammenfassen.
Zuletzt geändert von Anonymous am 04.10.2018 13:29:59, insgesamt 1-mal geändert.

Benutzeravatar
bluestar
Beiträge: 2333
Registriert: 26.10.2004 11:16:34
Wohnort: Rhein-Main-Gebiet

Re: Mailsetup

Beitrag von bluestar » 04.10.2018 13:29:20

inne hat geschrieben: ↑ zum Beitrag ↑
03.10.2018 19:21:40
Was bedeutet set mail_privileged_group=mail :?:
Schau mal hier: https://wiki.dovecot.org/BasicConfiguration

Code: Alles auswählen

# ls -ld /var/mail
drwxrwxr-- 2 root mail 47 2006-01-07 20:44 /var/mail/
In this case only the root and the mail group has write permission to the directory. You'll need to give Dovecot's mail processes ability to use this group by changing conf.d/10-mail.conf:

Code: Alles auswählen

mail_privileged_group = mail
Note: Specifying the privileged user must be done as shown. Simply adding dovecot user to the mail group does not grant write permission.

Benutzeravatar
bluestar
Beiträge: 2333
Registriert: 26.10.2004 11:16:34
Wohnort: Rhein-Main-Gebiet

Re: Mailsetup

Beitrag von bluestar » 04.10.2018 13:31:57

inne hat geschrieben: ↑ zum Beitrag ↑
04.10.2018 13:29:02
PS: Kannst Du bitte den absoluten Pfad der local.conf sagen, dann würde ich dort auch meine Änderungen gegenüber der Maintainer zusammenfassen.
die local.conf muss nach /etc/dovecot/

Kennt ihr eigentlich

Code: Alles auswählen

doveconf -n
Damit zeigt Dovecot seine Konfiguration an, alle Parameter die vom Default abweichen.

inne
Beiträge: 3273
Registriert: 29.06.2013 17:32:10
Lizenz eigener Beiträge: GNU General Public License
Kontaktdaten:

Re: Mailsetup

Beitrag von inne » 04.10.2018 14:34:28

Hier noch die Ausgabe von doveconf -n: NoPaste-Eintrag40446 Das mail_location = mbox:~/mail:INBOX=/var/mail/%u ist wohl doch kein Default :-/

inne
Beiträge: 3273
Registriert: 29.06.2013 17:32:10
Lizenz eigener Beiträge: GNU General Public License
Kontaktdaten:

Re: Mailsetup

Beitrag von inne » 04.10.2018 14:51:25

weshalb hat geschrieben: ↑ zum Beitrag ↑
04.10.2018 13:04:35

Code: Alles auswählen

mail_location = maildir:~/Maildir
Und wie/womit kopierst Du die Mails auch /var/mail/$USER nach ~/Maildir, das ist mir noch nicht klar? Weshalb ich auch mail_location = mbox:~/mail:INBOX=/var/mail/%u gesetzt habe.

Schöner wäre es schon alles in ~/Maildir zu haben.

Benutzeravatar
bluestar
Beiträge: 2333
Registriert: 26.10.2004 11:16:34
Wohnort: Rhein-Main-Gebiet

Re: Mailsetup

Beitrag von bluestar » 04.10.2018 14:55:04

inne hat geschrieben: ↑ zum Beitrag ↑
04.10.2018 14:51:25
Und wie/womit kopierst Du die Mails auch /var/mail/$USER nach ~/Maildir, das ist mir noch nicht klar? Weshalb ich auch mail_location = mbox:~/mail:INBOX=/var/mail/%u gesetzt habe.
Ich vermute mal dass weshalb seine Mails über den Dovecot-LDA oder Dovecot-LMTP einliefert, in meinen Exim-Setup sieht das wie folgt aus:

Dovecot-LMTP:

Code: Alles auswählen

dovecot_delivery_lmtp:
	driver	= lmtp
	user	= mail
	group	= mail
	socket	= /var/run/dovecot/lmtp
oder über Dovecot-LDA:

Code: Alles auswählen

dovecot_delivery_spam:
	driver				= pipe
	command				= /usr/lib/dovecot/deliver -d "${local_part}" 
	message_prefix			=
	message_suffix			=
	user				= mail
	group				= mail
	delivery_date_add
	envelope_to_add
	return_path_add
	log_output

inne
Beiträge: 3273
Registriert: 29.06.2013 17:32:10
Lizenz eigener Beiträge: GNU General Public License
Kontaktdaten:

Re: Mailsetup

Beitrag von inne » 04.10.2018 14:58:35

Ah ok, das schaue ich mir mal genauer an. Man muss Exim und Getmail dann auf Maildir umstellen, ich glaube dann hat man das Problem nicht!?

Benutzeravatar
bluestar
Beiträge: 2333
Registriert: 26.10.2004 11:16:34
Wohnort: Rhein-Main-Gebiet

Re: Mailsetup

Beitrag von bluestar » 04.10.2018 15:00:45

inne hat geschrieben: ↑ zum Beitrag ↑
04.10.2018 14:58:35
Ah ok, das schaue ich mir mal genauer an. Man muss Exim und Getmail dann auf Maildir umstellen, ich glaube dann hat man das Problem nicht!?
Du musst Exim bzw. Getmail gar nicht sagen, in welchem Format die Mails gespeichert werden sollen... Du sagst Exim bzw. Getmail übergib die Mail an Dovecot über LTMP (SMTP Protokoll) oder übergibt die Mail an Dovecot-LDA (via stdout/stdin)

inne
Beiträge: 3273
Registriert: 29.06.2013 17:32:10
Lizenz eigener Beiträge: GNU General Public License
Kontaktdaten:

Re: Mailsetup

Beitrag von inne » 04.10.2018 16:09:10

LDA ist der Vorgänger von LTMP und beide kopieren die Mails dann wohin nach ~/mail?

Vielleicht kannst Du noch so nett sein, und mir eine Getmail [destination] Section aufzeigen mit MDA_external? Ich verstehe das noch nicht wirklich...

Ich hatte fogendes, was aber nicht funktioniert:
[destination]
type = MDA_external
path = /usr/lib/dovecot/dovecot-lda
arguments = ("-e", "-d", "$LOGNAM",)

Ich verstehe auch gerade nicht ob ich das brauche...

Was ich habe ist das Exim als Smarthost Mails an meine Gmail Adresse sendet oder local nach /var/mail/$USER zustellt. Für ersteres habe ich beim root und einem User die .forward auf meine Gmail Adresse gesetzt. Das sollte so bleiben.

Das Getmail soll nun insgesamt 4 Mail-Konten abholen und an /var/mail/$USER local zustellen und Dovecot soll die localen Mail von inne dann im Netzwerk bereit stellen, das ich die Mails von allen Geräten aus lesen kann.

Das Setup habe ich nun. Da fehlt mir halt vom Verständnis nur wo ich dovecot-lda oder fetchmail etc. einbinde um Mails auf dem Server z.B. in Order usw. zu sortieren.

Benutzeravatar
bluestar
Beiträge: 2333
Registriert: 26.10.2004 11:16:34
Wohnort: Rhein-Main-Gebiet

Re: Mailsetup

Beitrag von bluestar » 04.10.2018 16:15:52

inne hat geschrieben: ↑ zum Beitrag ↑
04.10.2018 16:09:10
LDA ist der Vorgänger von LTMP und beide kopieren die Mails dann wohin nach ~/mail?
Beide kopieren die Mail an den Speicherort, den du in deiner Dovecot-Konfiguration eingestellt hast.
inne hat geschrieben: ↑ zum Beitrag ↑
04.10.2018 16:09:10
Vielleicht kannst Du noch so nett sein, und mir eine Getmail [destination] Section aufzeigen mit MDA_external? Ich verstehe das noch nicht wirklich...
...
Ich habe leider kein getmail im Einsatz.
inne hat geschrieben: ↑ zum Beitrag ↑
04.10.2018 16:09:10
Was ich habe ist das Exim als Smarthost Mails an meine Gmail Adresse sendet oder local nach /var/mail/$USER zustellt. Für ersteres habe ich beim root und einem User die .forward auf meine Gmail Adresse gesetzt. Das sollte so bleiben.
Du musst in Exim den Transport für lokale Mails abändern, von /var/mail/$USER nach LMTP oder LDA - Was immer du in Kombination mit Dovecot nutzen willst.
inne hat geschrieben: ↑ zum Beitrag ↑
04.10.2018 16:09:10
Da fehlt mir halt vom Verständnis nur wo ich dovecot-lda oder fetchmail etc. einbinde um Mails auf dem Server z.B. in Order usw. zu sortieren.
Wenn du Mails filtern willst, dann nutze doch Sieve innerhalb von Dovecot. Bei Fetchmail kannst du z.B. direkt Dovecot ansprechen:

Code: Alles auswählen

set daemon 300
set logfile /home/vmail/fetchmail.log
set no bouncemail
set postmaster vmail
poll imap.domain.co.uk protocol imap
     username "test@domain.org.uk" password "mypassword" fetchall keep
     mda "/usr/libexec/dovecot/dovecot-lda -d test@domain.org.uk"
Das Beispiel hab ich mir hier entliehen: http://wiki.indie-it.com/wiki/Dovecot In dem Falle ist Exim komplett außen vor!

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

Re: Mailsetup

Beitrag von weshalb » 05.10.2018 08:24:57

bluestar hat geschrieben: ↑ zum Beitrag ↑
04.10.2018 14:55:04
Ich vermute mal dass weshalb seine Mails über den Dovecot-LDA oder Dovecot-LMTP einliefert, in meinen Exim-Setup sieht das wie folgt aus:
Genau so ist es, das hatte ich glatt vergessen zu erwähnen. Innerhalb von Postfix lautet der Eintrag beispielsweise:
main.cf
mailbox_command = /usr/lib/dovecot/deliver
master.cf
# or with v1.1.2+ if you have a INBOX/ namespace prefix:
dovecot unix - n n - - pipe
flags=DRhu user=vmail:vmail argv=/usr/local/libexec/dovecot/deliver -f ${sender} -d ${user}@${nexthop} -n -m INBOX/${extension}
Die Übergabe scheint auch der entscheidene Punkt zu sein.

inne
Beiträge: 3273
Registriert: 29.06.2013 17:32:10
Lizenz eigener Beiträge: GNU General Public License
Kontaktdaten:

Re: Mailsetup

Beitrag von inne » 24.10.2018 12:44:23

Ich muss mal noch was loswerden. Das Debian bzw. die Software spielt perfekt zusammen. Ich habe so wenige konfigurieren müssen und es läuft alles zusammen.

Mails mit Localnet werden super ausgelifert und verschickt und auch das Sortieren mittel procmail tut. Ich musste es nur installieren und ~./procmailrc entsprechend konfigurieren. Da ist für mich zwar noch soviel Magie dabei, aber eh es tut!

Danke!

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

Re: Mailsetup

Beitrag von weshalb » 24.10.2018 13:54:58

Das freut mich. Welches Setting bentzt du denn nun?
Falls Dovecot, dann schau dir zum Sortieren/Filtern mal Dovecot Sieve an. Ist schnell eingebunden.

inne
Beiträge: 3273
Registriert: 29.06.2013 17:32:10
Lizenz eigener Beiträge: GNU General Public License
Kontaktdaten:

Re: Mailsetup

Beitrag von inne » 24.10.2018 14:17:49

Ja Exim4, Dovecot, Procmail und auf den Clients Thunderbird und die E-Mail Äpp von Samsung.

Ich will das auch noch als Blog oder Wikieintrag zusammenfassen, weils so simple ist. Man denkt da soviel an Konfiguration, aber es waren eigentlich nur 2 Dateien anzufassen und Exim stellt mit debconf entsprechend ein (Wobei es da sicher noch bessere MTAs für das Heimnetz gibt).

Das Sivie schau ich mir mal an, erstmal Doku dazu zusammensuchen!

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

Re: Mailsetup

Beitrag von weshalb » 24.10.2018 14:26:19

Ganz einfach, für ein Sieve in der local.conf (da wo ich alle Einträge der Konfigurationen zusammengefasst habe) oder in der (glaube ich) managesieve.conf und sieve.conf, wenn du keine local.conf besitzt, folgende Einträge machen:

Code: Alles auswählen

## ManageSieve specific settings

service managesieve-login {
  inet_listener sieve {
    port = 4190
  }

  inet_listener sieve_deprecated {
    port = 2000
  }
  service_count = 1
  process_min_avail = 0
  vsz_limit = 64M
}



##Sieve-settings

protocol sieve {

  managesieve_max_line_length = 65536
  mail_max_userip_connections = 10
  managesieve_logout_format = bytes=%i/%o
  managesieve_implementation_string = Dovecot Pigeonhole
  managesieve_max_compile_errors = 5
  log_path=/var/log/sieve.log
  info_log_path=/var/log/sieve.log
}

plugin {

  sieve = ~/.dovecot.sieve
  sieve_dir = ~/sieve
  }

plugin {
    sieve_before = ~/.spam-global.sieve
    sieve_dir = ~/sieve
}


inne
Beiträge: 3273
Registriert: 29.06.2013 17:32:10
Lizenz eigener Beiträge: GNU General Public License
Kontaktdaten:

Re: Mailsetup

Beitrag von inne » 09.03.2019 17:56:59

Hallo,

eine Nachfrage habe ich noch, ich habe meine /etc/dovecot/local.conf erweitert um: !include conf.d/auth-passwddile.conf.ext und die Datei users erstellt. Anmeldung usw. funktioniert. So habe ich immer noch nur Mailboxen für reale User, aber das Passwort für Unix und Mail ist verschieden?!
Mein Frage ist: Kann ein user sein Passwort in die users auch selbst eintragen? Ich las etwas von dovecot-passwd (im Wiki von UU.de), aber das scheint es nicht zu geben?
Zuletzt geändert von Anonymous am 10.03.2019 14:21:21, insgesamt 1-mal geändert.

Benutzeravatar
bluestar
Beiträge: 2333
Registriert: 26.10.2004 11:16:34
Wohnort: Rhein-Main-Gebiet

Re: Mailsetup

Beitrag von bluestar » 10.03.2019 11:19:24

inne hat geschrieben: ↑ zum Beitrag ↑
09.03.2019 17:56:59
eine Nachfrage habe ich noch, ich habe meine /etc/dovecot/local.conf erweitert um: !include conf.d/auth-passwddile.conf.ext und die Datei users erstellt. Anmeldung usw. funktioniert. So habe ich immer noch nur Mailboxen für reale User, aber das Passwort für Unix und Mail ist verschieden?!
Durch die Datei hast du zwei Benutzer-Datenbanken (einmal das System und einmal deine Datei), die Passwörter in beiden Systemen können verschieden sein, müssen sie jedoch nicht.

Brauchst du denn wirklich zwei Benutzer-Datenbanken, lass deine Mail-User doch einfach über die System-Benutzer-Datenbank authentifizieren.
inne hat geschrieben: ↑ zum Beitrag ↑
09.03.2019 17:56:59
Mein Frage ist: Kann ein user sein Passwort in die users auch selbst eintragen?
Wenn du ein entsprechendes Tool oder eine GUI findest, dann ja ... Dovecot selbst bietet da nichts für an.
inne hat geschrieben: ↑ zum Beitrag ↑
09.03.2019 17:56:59
Ich lass etwas von dovecot-passwd (im Wiki von UU.de), aber das scheint es nicht zu geben?
Auf uu.de finde ich kein Wiki ...

Antworten