Ordner anlegen in shared mailbox: "Permission denied"

Klaus Tachtler klaus at tachtler.net
So Mai 14 06:34:32 CEST 2017


Hallo Rainer,

ich kenne mich mit "Univention Corporate Server" nicht aus, aber  
kannst Du mit nachfolgendem Befehl ggf. Unterordner anlegen?

# doveadm mailbox create -u bob at example.de "INBOX/Unterordnername"

Und was würde dann nachfolgender Befehl ausgeben:

# doveadm mailbox list -u bob at example.de

Evtl. kannst Du dann auch überprüfen, wie die Rechte gesetzt sind,  
siehe nachfolgende Beschreibung aus meinem DokuWiki, welche ich mal  
für mich zusammengestellt habe:

https://dokuwiki.tachtler.net/doku.php?id=tachtler:dovecot_shares#doveadm_acl


Grüße
Klaus.


> Hallo an die Gurus,
>
> ich versuche jetzt den halben Tag, in einer shared mailbox einen
> Unterordner anzulegen, bekomme aber immer die Meldung "Permission denied".
> Mit Google und dem Dovecot-Wiki komme ich leider auch nicht weiter, deshalb
> seid Ihr so ziemlich meine letzte Hilfe.
>
> Zum Hintergrund: Ich spiele mit einem Univention Corporate Server herum
> (privat, lasst Euch nicht durch die Signatur verwirren :-) ), weil ich
> vermeiden will, mich als Hobby-Admin mit allen Details der
> Serverkonfiguration herumzuschlagen. Der Univention Support scheint bei
> meinem Problem momentan aber auch (noch) ratlos zu sein:
> https://help.univention.com/t/shared-folder-keine-berechtigung-fur-unterordner/5376
>
> Ich möchte eine shared mailbox mit eigener E-Mail-Adresse anlegen, die aber
> auch über Unterordner verfügen soll. Die erste Hürde (das UCS Web-Interface
> setzt die ACLs nicht vollständig) habe ich genommen. Ich sehe die mailbox
> in der Ordnerliste und kann auch Nachrichten dort ablegen.
>
> Aber ich kann keine Unterordner erstellen. Hier der IMAP-Test:
>
> root at client:~# openssl s_client  -crlf -connect imap-server:993
>
> CONNECTED(00000003)
> ...
> * OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE
> AUTH=PLAIN AUTH=LOGIN] Dovecot ready.
> . login alice at example.de secret
> . 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 NOTIFY QUOTA ACL
> RIGHTS=texk] Logged in
> . list "" "*"
> ...
> * LIST (\HasNoChildren) "/" shared/bob at example.de
> ...
> . OK List completed.
> . myrights shared/bob at example.de
> * MYRIGHTS shared/bob at example.de lrwstipekxacd
> . OK Myrights completed.
> . create shared/bob at example.de/test
> . NO [NOPERM] Permission denied
> . getacl shared/bob at example.de
> * ACL shared/bob at example.de alice at example.de akxeilprwtscd
> . OK Getacl completed.
> . logout
> * BYE Logging out
> . OK Logout completed.
> closed
>
> Ich habe also die benötigten Rechte, das "create" scheitert aber.
>
> Woran kann das liegen? Die Zugriffsrechte auf die Verzeichnisse scheinen
> sinnvoll zu sein (Liste folgt unten), die Konfiguration ebenfalls
> ("doveconf -n" ist auch unten). Ein Debug-Log von Dovecot bringt mich
> leider auch nicht weiter, da steht nichts verwertbares drin.
>
> Hat jemand von Euch eine Ahnung, was da schief läuft? Für Hinweise wäre ich
> sehr dankbar!
>
> Grüße Rainer
>
> PS: Zugriffsrechte und Konfiguration:
>
>root at imap-server:~# ls -al /var/spool/dovecot/private/
> example.de/alice/Maildir/shared/bob at example.de
>
> insgesamt 12
> drwx--S--- 3 dovemail dovemail 4096 Mai 12 16:16 .
> drwx--S--- 4 dovemail dovemail 4096 Mai 12 16:16 ..
> drwx--S--- 2 dovemail dovemail 4096 Mai 13 14:54 .INBOX
>
> root at imap-server:~# ls -al /var/spool/dovecot/private/
> example.de/alice/Maildir/shared/bob at example.de/.INBOX
>
> insgesamt 12
> drwx--S--- 2 dovemail dovemail 4096 Mai 13 14:54 .
> drwx--S--- 3 dovemail dovemail 4096 Mai 12 16:16 ..
> -rw------- 1 dovemail dovemail  684 Mai 13 16:54 dovecot.index.pvt.log
>
> root at imap-server:~# ls -al /var/spool/dovecot/private/example.de/bob/Maildir
>
> insgesamt 52
> drwx--S--- 5 dovemail dovemail 4096 Mai 13 15:36 .
> drwx--S--- 3 dovemail dovemail 4096 Mai 13 14:31 ..
> drwx--S--- 2 dovemail dovemail 4096 Mai 13 14:54 cur
> -rw------- 1 dovemail dovemail   89 Mai 13 14:38 dovecot-acl
> -rw------- 1 dovemail dovemail   17 Mai 13 15:36 dovecot-acl-list
> -rw------- 1 dovemail dovemail  360 Mai 13 14:54 dovecot.index.cache
> -rw------- 1 dovemail dovemail 1552 Mai 13 15:02 dovecot.index.log
> -rw------- 1 dovemail dovemail 1836 Mai 13 15:02 dovecot.list.index.log
> -rw------- 1 dovemail dovemail   51 Mai 13 14:58 dovecot-uidlist
> -rw------- 1 dovemail dovemail    8 Mai 13 14:31 dovecot-uidvalidity
> -r--r--r-- 1 dovemail dovemail    0 Mai 13 14:31
> dovecot-uidvalidity.5916fc85
> -rw------- 1 dovemail dovemail   19 Mai 13 14:54 maildirsize
> drwx--S--- 2 dovemail dovemail 4096 Mai 13 14:54 new
> drwx--S--- 2 dovemail dovemail 4096 Mai 13 14:54 tmp
>
> root at imap-server:~# cat /var/spool/dovecot/private/
> example.de/bob/Maildir/dovecot-acl
>
> user=alice at example.de akxeilprwts
>
> root at imap-server:~# ls -ld /var/spool/dovecot/private/example.de/bob
>
> drwx--S--- 3 dovemail dovemail 4096 Mai 13 14:31 /var/spool/dovecot/private/
> example.de/bob
>
> root at imap-server:~# ls -ld  /var/spool/dovecot/private/example.de
>
> drwx--S--- 13 dovemail dovemail 4096 Mai 13 14:31
> /var/spool/dovecot/private/example.de
>
> root at imap-server:~# ls -ld /var/spool/dovecot/private
>
> drwxr-s--- 5 dovemail dovemail 4096 Mai 12 14:50 /var/spool/dovecot/private
>
> root at imap-server:~# ls -ld /var/spool/dovecot
>
> drwxr-xr-x 4 dovemail dovemail 4096 Feb 26 20:42 /var/spool/dovecot
>
> root at imap-server:~# doveconf -n
>
> # 2.2.13: /etc/dovecot/dovecot.conf
> # OS: Linux 4.9.0-ucs103-amd64 x86_64 Univention Corporate Server 4.2-0
> errata15 (Lesum) ext4
> auth_cache_negative_ttl = 1 mins
> auth_cache_size = 100 k
> auth_cache_ttl = 5 mins
> auth_master_user_separator = *
> auth_mechanisms = plain login
> debug_log_path = syslog
> default_client_limit = 400
> default_process_limit = 400
> first_valid_gid = 127
> first_valid_uid = 121
> info_log_path = syslog
> last_valid_gid = 127
> last_valid_uid = 121
> mail_gid = dovemail
> mail_home = /var/spool/dovecot/private/%Ld/%Ln
> mail_location = maildir:/var/spool/dovecot/private/%Ld/%Ln/Maildir
> mail_plugins = " acl quota"
> mail_privileged_group = dovemail
> mail_uid = dovemail
> mailbox_list_index = yes
> managesieve_notify_capability = mailto
> managesieve_sieve_capability = fileinto reject envelope encoded-character
> vacation subaddress comparator-i;ascii-numeric relational regex imap4flags
> copy include variables body enotify environment mailbox date ihave
> imapflags notify
> namespace {
>   list = children
>   location = maildir:%%h/Maildir:INDEXPVT=~/Maildir/shared/%%u
>   prefix = shared/%%u/
>   separator = /
>   subscriptions = no
>   type = shared
> }
> namespace inbox {
>   inbox = yes
>   location =
>   mailbox Archives {
>     special_use = \Archive
>   }
>   mailbox Drafts {
>     special_use = \Drafts
>   }
>   mailbox Entw&APw-rfe {
>     special_use = \Drafts
>   }
>   mailbox "Gel&APY-schte Elemente" {
>     special_use = \Trash
>   }
>   mailbox Gesendet {
>     special_use = \Sent
>   }
>   mailbox "Gesendete Elemente" {
>     special_use = \Sent
>   }
>   mailbox Ham {
>     auto = subscribe
>   }
>   mailbox Junk-E-Mail {
>     special_use = \Junk
>   }
>   mailbox Junk {
>     special_use = \Junk
>   }
>   mailbox Papierkorb {
>     special_use = \Trash
>   }
>   mailbox Sent {
>     special_use = \Sent
>   }
>   mailbox "Sent Messages" {
>     special_use = \Sent
>   }
>   mailbox Spam {
>     auto = subscribe
>     special_use = \Junk
>   }
>   mailbox Trash {
>     special_use = \Trash
>   }
>   prefix =
>   separator = /
>   type = private
> }
> namespace public at local {
>   list = children
>   location =
> maildir:/var/spool/dovecot/public/local/public:INDEXPVT=~/Maildir/public/local/public
>   prefix = public at local/
>   separator = /
>   subscriptions = no
>   type = public
> }
> passdb {
>   args = /etc/dovecot/master-users
>   driver = passwd-file
>   master = yes
> }
> passdb {
>   args = cache_key=%Lu dovecot
>   driver = pam
> }
> plugin {
>   acl = vfile
>   acl_anyone = allow
>   acl_shared_dict = file:/var/lib/dovecot/shared-mailboxes
>   quota = maildir:User quota
>   quota_grace = 10%%
>   quota_rule = *:storage=0
>   quota_rule2 = Trash:storage=+100M
>   quota_status_nouser = DUNNO
>   quota_status_overquota = 552 5.2.2 Mailbox is full
>   quota_status_success = DUNNO
>   quota_warning = storage=95%% quota-warning 95 %Lu
>   quota_warning2 = storage=80%% quota-warning 80 %Lu
>   sieve = ~/.dovecot.sieve
>   sieve_dir = ~/sieve
>   sieve_extensions = +notify +imapflags
>   sieve_global_dir = /var/lib/dovecot/sieve
> }
> pop3_client_workarounds = outlook-no-nuls oe-ns-eoh
> protocols = " imap lmtp sieve pop3"
> service anvil {
>   client_limit = 1603
> }
> service auth {
>   client_limit = 2000
>   unix_listener /var/spool/postfix/private/auth {
>     group = postfix
>     mode = 0666
>     user = postfix
>   }
> }
> service imap-login {
>   client_limit = 400
>   process_min_avail = 0
>   service_count = 1
>   vsz_limit = 256 M
> }
> service imap-postlogin {
>   executable = script-login /usr/lib/dovecot/dovecot-postlogin.py
>   user = $default_internal_user
> }
> service imap {
>   executable = imap imap-postlogin
>   process_limit = 400
>   vsz_limit = 256 M
> }
> service lmtp {
>   unix_listener /var/spool/postfix/private/dovecot-lmtp {
>     group = postfix
>     mode = 0600
>     user = postfix
>   }
> }
> service managesieve-login {
>   inet_listener sieve {
>     address =
>     port = 4190
>   }
>   process_min_avail = 0
>   service_count = 1
>   vsz_limit = 256 M
> }
> service managesieve {
>   process_limit = 400
> }
> service pop3-login {
>   client_limit = 400
>   process_min_avail = 0
>   service_count = 1
>   vsz_limit = 256 M
> }
> service pop3 {
>   executable = pop3 imap-postlogin
>   process_limit = 400
>   vsz_limit = 256 M
> }
> service quota-status {
>   client_limit = 1
>   executable = quota-status -p postfix
>   inet_listener {
>     address = 127.0.0.1
>     port = 12340
>   }
> }
> service quota-warning {
>   executable = script /usr/lib/dovecot/quota-warning.sh
>   unix_listener quota-warning {
>     user = dovemail
>   }
>   user = dovemail
> }
> ssl_cert = </etc/univention/ssl/imap-server.example.de/cert.pem
> ssl_cipher_list =
> EDH+CAMELLIA:EDH+aRSA:EECDH+aRSA+AESGCM:EECDH+aRSA+SHA384:EECDH+aRSA+SHA256:EECDH:+CAMELLIA256:+AES256:+CAMELLIA128:+AES128:+SSLv3:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!DSS:!RC4:!SEED:!ECDSA:CAMELLIA256-SHA:AES256-SHA:CAMELLIA128-SHA:AES128-SHA
> ssl_client_ca_dir = /etc/ssl/certs
> ssl_dh_parameters_length = 2048
> ssl_key = </etc/univention/ssl/imap-server.example.de/private.key
> ssl_parameters_regenerate = 1 weeks
> ssl_prefer_server_ciphers = yes
> ssl_protocols = !SSLv2 !SSLv3
> syslog_facility = local5
> userdb {
>   args = /etc/dovecot/dovecot-ldap.conf.ext
>   driver = ldap
> }
> protocol lmtp {
>   mail_plugins = " acl quota quota sieve"
> }
> protocol lda {
>   mail_plugins = " acl quota sieve"
> }
> protocol imap {
>   mail_plugins = " acl quota imap_acl imap_quota"
> }
> protocol sieve {
>   mail_max_userip_connections = 10
> }​
>
>
> --
> Software Engineer | Trimble Imaging Division
> Rotebühlstraße 81 | 70178 Stuttgart | Germany
> Office +49 711 22881 0 | Fax +49 711 22881 11
> http://www.trimble.com/imaging/ | http://www.inpho.de/
>
> Trimble Germany GmbH, Am Prime Parc 11, 65479 Raunheim
> Eingetragen beim Amtsgericht Darmstadt unter HRB 83893,
> Geschäftsführer: Dr. Frank Heimberg, Jürgen Kesper


----- Ende der Nachricht von Rainer Wiesenfarth  
<rainer_wiesenfarth at trimble.com> -----




-- 

------------------------------------------
e-Mail  : klaus at tachtler.net
Homepage: http://www.tachtler.net
DokuWiki: http://www.dokuwiki.tachtler.net
------------------------------------------


-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : nicht verfügbar
Dateityp    : application/pgp-keys
Dateigröße  : 3120 bytes
Beschreibung: Öffentlicher PGP-Schlüssel
URL         : <https://listen.jpberlin.de/pipermail/dovecot/attachments/20170514/599f0e93/attachment.skr>


Mehr Informationen über die Mailingliste Dovecot