[Postfixbuch-users] OT: dovecot shared mailboxes permission problem
Leo Unglaub
leo.unglaub at gmail.com
Do Mär 18 10:14:05 CET 2010
Hallo Leute,
ich habe folgendes Problem mit meinem Dovecot. Der normale Zugriff und
Betrieb funktioniert wunderbar. Postfix und Dovecot arbeiten super
zusammen. Nun musste ich auf Wunsch meines Chefs ein Mailbox sharing
aktivieren dass jeder Mitarbeiter aus der Domain in !! alle !! anderen
Mailboxen (der gleichen Domain, aber gibt auf dem Server aktuell nur
eine) am Server schauen kann. (Ich weiß, ist rechtlich ein kleines
Problem und auch Sicherheitstechnisch nicht optimal, aber das sind
meistens Projektmailboxen in die Mails verschoben werden)
Daher habe ich in Dovecot 2 Namespaces aktiviert und eingerichtet.
(Output siehe unten) Dann habe ich die ACL's per IMAP ACL Command neu
gesetzt sodass die shared-mailboxes.db geschrieben wurde.
Wenn ich mich als User in meine normale Mailbox einlogge bekomme ich
folgendes zu sehen im Log:
> 2010-03-18 09:52:28 dovecot: Info: Dovecot v1.2.11 starting up (core
> dumps disabled)
> 2010-03-18 09:52:40 imap-login: Info: Login: user=<unglaub>,
> method=PLAIN, rip=192.168.1.11, lip=192.168.1.235
> 2010-03-18 09:52:40 IMAP(unglaub): Info: Loading modules from
> directory: /usr/lib/dovecot/modules/imap
> 2010-03-18 09:52:40 IMAP(unglaub): Info: Module loaded:
> /usr/lib/dovecot/modules/imap/lib01_acl_plugin.so
> 2010-03-18 09:52:40 IMAP(unglaub): Info: Module loaded:
> /usr/lib/dovecot/modules/imap/lib02_imap_acl_plugin.so
> 2010-03-18 09:52:40 IMAP(unglaub): Info: Effective uid=501, gid=501,
> home=(none)
> 2010-03-18 09:52:40 IMAP(unglaub): Info: Namespace: type=private,
> prefix=, sep=/, inbox=yes, hidden=no, list=yes, subscriptions=yes
> 2010-03-18 09:52:40 IMAP(unglaub): Info: maildir:
> data=/var/mail/e-c-o.at/unglaub
> 2010-03-18 09:52:40 IMAP(unglaub): Info: maildir++:
> root=/var/mail/e-c-o.at/unglaub, index=, control=,
> inbox=/var/mail/e-c-o.at/unglaub
> 2010-03-18 09:52:40 IMAP(unglaub): Info: acl: initializing backend
> with data: vfile:/etc/dovecot-acl
> 2010-03-18 09:52:40 IMAP(unglaub): Info: acl: acl username = unglaub
> 2010-03-18 09:52:40 IMAP(unglaub): Info: acl: owner = 1
> 2010-03-18 09:52:40 IMAP(unglaub): Info: acl vfile: Global ACL
> directory: /etc/dovecot-acl
> 2010-03-18 09:52:40 IMAP(unglaub): Info: Namespace: type=shared,
> prefix=shared/mitarbeiter/%u/, sep=/, inbox=no, hidden=no,
> list=children, subscriptions=no
> 2010-03-18 09:52:40 IMAP(unglaub): Info: shared: root=, index=,
> control=, inbox=
> 2010-03-18 09:52:40 IMAP(unglaub): Info: acl vfile: reading file
> /etc/dovecot-acl/INBOX
> 2010-03-18 09:52:40 IMAP(unglaub): Info: acl vfile: reading file
> /var/mail/e-c-o.at/unglaub/dovecot-acl
> 2010-03-18 09:52:40 IMAP(unglaub): Info: Namespace : Using permissions
> from /var/mail/e-c-o.at/unglaub: mode=0700 gid=-1
In diesem BSP habe ich 2 User eingerichtet (LDAP auth) unglaub und
kirchmeir. Wenn ich als User unglaub nun die Mailboxen abbonieren will
und im Thunderbird das abbonierne Fenster wähle bekomme ich folgendes im
Log:
> 2010-03-18 10:03:04 IMAP(unglaub): Info: maildir:
> data=/var/mails/e-c-o.at/kirchmeir:INDEX=/var/mails/e-c-o.at/shared/mitarbeiter/kirchmeir
> 2010-03-18 10:03:04 IMAP(unglaub): Info: maildir++:
> root=/var/mails/e-c-o.at/kirchmeir,
> index=/var/mails/e-c-o.at/shared/mitarbeiter/kirchmeir, control=,
> inbox=/var/mails/e-c-o.at/kirchmeir
> 2010-03-18 10:03:04 IMAP(unglaub): Info: acl: initializing backend
> with data: vfile:/etc/dovecot-acl
> 2010-03-18 10:03:04 IMAP(unglaub): Info: acl: acl username = unglaub
> 2010-03-18 10:03:04 IMAP(unglaub): Info: acl: owner = 0
> 2010-03-18 10:03:04 IMAP(unglaub): Info: acl vfile: Global ACL
> directory: /etc/dovecot-acl
> 2010-03-18 10:03:04 IMAP(unglaub): Info: acl vfile: file
> /etc/dovecot-acl//.DEFAULT not found
> 2010-03-18 10:03:04 IMAP(unglaub): Info: Namespace
> shared/mitarbeiter/kirchmeir/: Permission lookup failed from
> /var/mails/e-c-o.at/kirchmeir
> 2010-03-18 10:03:04 IMAP(unglaub): Info: Namespace
> shared/mitarbeiter/kirchmeir/: Using permissions from
> /var/mails/e-c-o.at/kirchmeir: mode=0700 gid=-1
> 2010-03-18 10:03:04 IMAP(unglaub): Error:
> mkdir_parents(/var/mails/e-c-o.at/kirchmeir) failed: Permission denied
Meine Dovecot.conf sieht so aus:
> # 1.2.11: /etc/dovecot/dovecot.conf
> # OS: Linux 2.6.30-bpo.1-amd64 x86_64 Debian 5.0.4 ext3
> log_path: /var/log/dovecot/dovecot.log
> log_timestamp: %Y-%m-%d %H:%M:%S
> disable_plaintext_auth: no
> login_dir: /var/run/dovecot/login
> login_executable: /usr/lib/dovecot/imap-login
> mail_privileged_group: mail
> mail_uid: 501
> mail_gid: 501
> mail_location: maildir:/var/mail/%d/%n
> mail_debug: yes
> maildir_copy_preserve_filename: yes
> mbox_write_locks: fcntl dotlock
> mail_plugins: acl imap_acl
> namespace:
> type: private
> separator: /
> inbox: yes
> list: yes
> subscriptions: yes
> namespace:
> type: shared
> separator: /
> prefix: shared/mitarbeiter/%%u/
> location:
> maildir:/var/mails/e-c-o.at/%%u:INDEX=/var/mails/e-c-o.at/shared/mitarbeiter/%%u
> list: children
> lda:
> postmaster_address: postmaster at e-c-o.at
> mail_plugins: acl
> auth_socket_path: /var/run/dovecot/auth-master
> log_path: /var/log/dovecot/dovecot-deliver-errors.log
> info_log_path: /var/log/dovecot/dovecot-deliver.log
> auth default:
> default_realm: e-c-o.at
> passdb:
> driver: ldap
> args: /etc/dovecot/dovecot-ldap.conf
> userdb:
> driver: ldap
> args: /etc/dovecot/dovecot-ldap.conf
> socket:
> type: listen
> client:
> path: /var/spool/postfix/private/auth
> mode: 432
> user: postfix
> group: postfix
> master:
> path: /var/run/dovecot/auth-master
> mode: 384
> user: dovecot-data
> group: dovecot-data
> plugin:
> acl: vfile:/etc/dovecot-acl
> acl_shared_dict: file:/var/mail/%d/shared-mailboxes.db
Weiß jemand von euch warum Dovecot das so macht und was ich hier falsch
konfiguriert habe? Kann es mit dem LDAP zusammenhängen? Obwohl der Login
über LDAP wunderbar funktioniert. Komisch ist auch, dass beim Parameter
acl_shared_dict: file:/var/mail/%d/shared-mailboxes.db das %d nicht
ersetzt wird, sondern dasFile schlussentlich unter
/var/mail/shared-mailboxes.db liegt. Kann dieses nicht parsen der
Platzhalter auch zu dem Problem führen dass Dovecot nicht in die
richtigen Mailfolder "schauen" kann?
Vielen Dank im Vorraus und viele Grüße
Leo
Mehr Informationen über die Mailingliste Postfixbuch-users