[Dovecot-de] Probleme beim Setzen von ACL/Shared Folder

Thomas Robers -TuTech Innovation gmbH robers at tutech.de
Di Aug 19 16:13:50 CEST 2014


Hallo Philipp,


Am 19.08.2014 um 15:07 schrieb Philipp Faeustlin:
[...]
> 
> Wie sieht es direkt mit den Dateien dovecot-acl bzw. dovecot-acl-list in den jeweiligen Ordnern aus?
> 
> In den jeweiligen dovecot-acl Dateien stehen da auch wirklich die Freigabe drin?

In der Datei z.B. /export/home/imap/userA/dovecot-acl steht:

  user=userB akxeilprwts

Und die Datei /export/home/imap/userA/dovecot-acl-list hat 695 Zeilen, die
exemplarisch so aussehen:

  1408429692 INBOX
  1408429995 IT-Sachen
  [...]
  1408429616 IT-Sachen.backup
  1408429616 IT-Sachen.backup.2011
  1408429616 IT-Sachen.backup.2010
  1408429617 IT-Sachen.backup.2009
  1408429617 IT-Sachen.backup.2008
  1408429617 IT-Sachen.backup.2007
  [...] usw

> Bezüglich den Rechten, wie sieht es mit selinux aus?
> Ausgabe von sestatus?

  root at mail:~# sestatus
  SELinux status:                 disabled

> Damit hatte ich am Anfang ziemliche Probleme, weil das bei den Rechten mitgespielt hat.

Sollte bei "disabled" aber keine Rolle mehr spielen?

[...]
>> Diese Einstellung habe ich nicht gefunden bzw weiß nicht genau, was Du damit meinst. Wo genau
>> kann man den Haken setzen oder eben nicht setzen?
> 
> Konto-Einstellungen -> Imap Konto -> Server-Einstellungen -> Erweitert... (Erweiterte
> Konten-Einstellungen) - "Nur abonnierte Ordner anzeigen"
> Wenn man diesen Haken entfernt, dann verwendet Thunderbird die Imap Subscription nicht mehr und
> zeigt alles an für was man Rechte hat.

Das habe ich gerade kontrolliert und hatte ich wohl auch schon versucht, denn
bei mir ist es so eingestellt, dass NICHT nur abonnierte Ordner angezeigt werden.
Das ändert also bei mir auch nichts :(

> 5. Was gibt doveadm mailbox list -u userB (Sharenehmer) aus?

  root at mail:~# doveadm mailbox list -u userB
  INBOX
  [...]
  INBOX/Sent
  INBOX/Trash
  INBOX/samba
  INBOX/Junk
  INBOX/Drafts
  shared
  shared/it
  shared/it/Trash

Ich verstehe nicht, warum ausgerechnet der Posteingang und der Ordner Trash als freigegeben
angezeigt werden und alle anderen Ordner nicht und warum die Ordner, die ich abonnieren kann
beim Sharenehmer (userB) leer sind, denn z.B.:

  root at mail:~# diff /export/home/imap/userA/.Trash/dovecot-acl \
                    /export/home/imap/userA/.IT-Sachen/dovecot-acl

zeigt, dass es keine Unterschiede bei den Dateien gibt, deren Inhalt:

  root at mail:~# less /export/home/imap/userA/.IT-Sachen/dovecot-acl
               user=userB akxeilprwts

ist.

Ebenso zeigt mir ein telnet, dass die ACL richtig vergeben sind:

  * OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE AUTH=PLAIN AUTH=LOGIN]
  Dovecot ready.
  a1 login userA ********
  a1 OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE SORT SORT=DISPLAY
  THREAD=REFERENCES THREAD=REFS THREAD=ORDEREDSUBJECT MULTIAPPEND URL-PARTIAL CATENATE UNSELECT
  CHILDREN NAMESPACE UIDPLUS LIST-EXTENDED I18NLEVEL=1 CONDSTORE QRESYNC ESEARCH ESORT SEARCHRES
  WITHIN CONTEXT=SEARCH LIST-STATUS SPECIAL-USE BINARY MOVE COMPRESS=DEFLATE ACL RIGHTS=texk]
  Logged in
  a2 getacl INBOX
  * ACL INBOX userB akxeilprwtscd userA lrwstipekxacd
  a2 OK Getacl completed.
  a3 getacl INBOX/IT-Sachen
  * ACL INBOX/IT-Sachen userB akxeilprwtscd userA lrwstipekxacd
  a3 OK Getacl completed.
  a4 getacl INBOX/Drafts
  * ACL INBOX/Drafts userB akxeilprwtscd userA lrwstipekxacd
  a4 OK Getacl completed.
  a5 getacl INBOX/Trash
  * ACL INBOX/Trash userB akxeilprwtscd userA lrwstipekxacd
  a5 OK Getacl completed.
  a6 getacl INBOX/Junk
  * ACL INBOX/Junk userB akxeilprwtscd userA lrwstipekxacd
  a6 OK Getacl completed.


Der Auszug aus dem Dovecot log sieht dabei so aus:

  Aug 19 16:02:15 mail dovecot: imap-login: Login: user=<userA>, method=PLAIN, rip=127.0.0.1,
  lip=127.0.0.1, mpid=22214, TLS, session=<eulU7/sAPQB/AAAB>
  Aug 19 16:02:15 mail dovecot: imap: Debug: Loading modules from directory: /usr/lib64/dovecot
  Aug 19 16:02:15 mail dovecot: imap: Debug: Module loaded: /usr/lib64/dovecot/lib01_acl_plugin.so
  Aug 19 16:02:15 mail dovecot: imap: Debug: Module loaded: /usr/lib64/dovecot
  /lib02_imap_acl_plugin.so
  Aug 19 16:02:15 mail dovecot: imap: Debug: Module loaded: /usr/lib64/dovecot/lib20_zlib_plugin.so
  Aug 19 16:02:15 mail dovecot: imap: Debug: Module loaded: /usr/lib64/dovecot
  /lib30_imap_zlib_plugin.so
  Aug 19 16:02:15 mail dovecot: imap(userA): Debug: Effective uid=10000, gid=10000, home=/export
  /home/imap/userA
  Aug 19 16:02:15 mail dovecot: imap(userA): Debug: Namespace inbox: type=private, prefix=INBOX/,
  sep=/, inbox=yes, hidden=no, list=yes, subscriptions=yes location=maildir:/export/home/imap/userA
  Aug 19 16:02:15 mail dovecot: imap(userA): Debug: maildir++: root=/export/home/imap/userA,
  index=, indexpvt=, control=, inbox=/export/home/imap/userA, alt=
  Aug 19 16:02:15 mail dovecot: imap(userA): Debug: acl: initializing backend with data: vfile
  Aug 19 16:02:15 mail dovecot: imap(userA): Debug: acl: acl username = userA
  Aug 19 16:02:15 mail dovecot: imap(userA): Debug: acl: owner = 1
  Aug 19 16:02:15 mail dovecot: imap(userA): Debug: acl vfile: Global ACLs disabled
  Aug 19 16:02:15 mail dovecot: imap(userA): Debug: Namespace : type=shared, prefix=shared/%u/,
  sep=/, inbox=no, hidden=no, list=children, subscriptions=yes location=maildir:%h/Maildir:INDEX=
  /export/home/imap/userA/shared/%u:CONTROL=/export/home/imap/userA/shared/%u
  Aug 19 16:02:15 mail dovecot: imap(userA): Debug: shared: root=/var/run/dovecot, index=,
  indexpvt=, control=, inbox=, alt=
  Aug 19 16:02:15 mail dovecot: imap(userA): Debug: acl: initializing backend with data: vfile
  Aug 19 16:02:15 mail dovecot: imap(userA): Debug: acl: acl username = userA
  Aug 19 16:02:15 mail dovecot: imap(userA): Debug: acl: owner = 0
  Aug 19 16:02:15 mail dovecot: imap(userA): Debug: acl vfile: Global ACLs disabled
  Aug 19 16:02:15 mail dovecot: imap(userA): Debug: Namespace : type=private, prefix=, sep=,
  inbox=no, hidden=yes, list=no, subscriptions=no location=fail::LAYOUT=none
  Aug 19 16:02:15 mail dovecot: imap(userA): Debug: none: root=, index=, indexpvt=, control=,
  inbox=, alt=
  Aug 19 16:02:30 mail dovecot: imap(userA): Debug: acl vfile: reading file /export/home/imap/userA
  /dovecot-acl
  Aug 19 16:02:49 mail dovecot: imap(userA): Debug: acl vfile: reading file /export/home/imap/userA
  /.IT-Sachen/dovecot-acl
  Aug 19 16:03:04 mail dovecot: imap(userA): Debug: acl vfile: reading file /export/home/imap/userA
  /.Drafts/dovecot-acl
  Aug 19 16:03:21 mail dovecot: imap(userA): Debug: acl vfile: reading file /export/home/imap/userA
  /.Trash/dovecot-acl
  Aug 19 16:03:38 mail dovecot: imap(userA): Debug: acl vfile: reading file /export/home/imap/userA
  /.Junk/dovecot-acl


Vielen Dank!

Gruß
Thomas


Mehr Informationen über die Mailingliste Dovecot